Compare commits

..

13 commits

Author SHA1 Message Date
caandt 299c8441c1 suppress kwallet 2025-12-23 19:34:54 -06:00
caandt 40c18873e6 version bump 2025-11-24 19:15:34 -06:00
caandt 6f02f543b4 /mnt tmpfiles 2025-11-24 19:14:47 -06:00
caandt d11bc6a722 format 2025-11-24 19:14:47 -06:00
caandt f2d640dcd2 tachibana vfio 2025-11-24 19:14:47 -06:00
caandt 81dc5997a2 pciutils 2025-11-16 18:04:33 -06:00
caandt fc951aa8e9 tachibana autologin 2025-11-16 18:04:33 -06:00
caandt 7ae462acd7 tachibana hardware 2025-11-16 18:04:33 -06:00
caandt c3814aac58 grub uefi menu 2025-11-14 21:14:16 -06:00
caandt 6aae3a6d9e xdg 2025-11-14 21:14:16 -06:00
caandt 37308f6b52 tmux clipboard 2025-11-01 12:47:34 -05:00
caandt 15d271a24f tachibana kernel 2025-11-01 12:47:06 -05:00
caandt aff6943b18 fix type in nsxiv patch 2025-11-01 12:36:11 -05:00
17 changed files with 122 additions and 76 deletions

View file

@ -26,11 +26,11 @@
"nixpkgs-lib": "nixpkgs-lib" "nixpkgs-lib": "nixpkgs-lib"
}, },
"locked": { "locked": {
"lastModified": 1760948891, "lastModified": 1763759067,
"narHash": "sha256-TmWcdiUUaWk8J4lpjzu4gCGxWY6/Ok7mOK4fIFfBuU4=", "narHash": "sha256-LlLt2Jo/gMNYAwOgdRQBrsRoOz7BPRkzvNaI/fzXi2Q=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "864599284fc7c0ba6357ed89ed5e2cd5040f0c04", "rev": "2cccadc7357c0ba201788ae99c4dfa90728ef5e0",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -47,11 +47,11 @@
"utils": "utils" "utils": "utils"
}, },
"locked": { "locked": {
"lastModified": 1761867757, "lastModified": 1763949729,
"narHash": "sha256-pvmCYWRM3CCVWj0Dri4N2iJweKF3++q4DwklnWJ2doA=", "narHash": "sha256-nZvKJf6WVjOAe9j5BoB0BLRTWdfMGF5Bci4/ITcWjps=",
"owner": "wamserma", "owner": "wamserma",
"repo": "flake-programs-sqlite", "repo": "flake-programs-sqlite",
"rev": "671655f1a74ad32b830e429c68736eaf9969d342", "rev": "0ceee55b8a9b70b7c3068fc5bb40ab502975e858",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -67,11 +67,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1761878381, "lastModified": 1763963090,
"narHash": "sha256-lCRaipHgszaFZ1Cs8fdGJguVycCisBAf2HEFgip5+xU=", "narHash": "sha256-zR7uDZdQUUC+gBOi4byefMvIZuSBeMC6GswGNsTgQlM=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "4ac96eb21c101a3e5b77ba105febc5641a8959aa", "rev": "7702d14879e8f0148fa168e38f3eaa2650fa0d85",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -80,26 +80,6 @@
"type": "github" "type": "github"
} }
}, },
"lightly": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1761698061,
"narHash": "sha256-iyvYHJn9K+cnW2+icxGA3qm69W8RpCz1v8+rb2U/KzQ=",
"owner": "Bali10050",
"repo": "Darkly",
"rev": "b9260d390fb8c673a37500f567b11e3b297216cc",
"type": "github"
},
"original": {
"owner": "Bali10050",
"repo": "Darkly",
"type": "github"
}
},
"nix-gaming": { "nix-gaming": {
"inputs": { "inputs": {
"flake-parts": "flake-parts", "flake-parts": "flake-parts",
@ -108,11 +88,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1761789455, "lastModified": 1763949820,
"narHash": "sha256-mVv+SUFdNOPBBbBFKTQrJgIIVxN4K9sSC1Amob2PAM4=", "narHash": "sha256-nN+Ebv2czqqMFIpH1/VfrjoaHzZTxTE/diuLhw1HqPQ=",
"owner": "fufexan", "owner": "fufexan",
"repo": "nix-gaming", "repo": "nix-gaming",
"rev": "58d8eb3ad69319b02cab1c246469a27bfbeda167", "rev": "faa39649d0ad7e11bfcb7887ccda478515e489e8",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -123,11 +103,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1761672384, "lastModified": 1763835633,
"narHash": "sha256-o9KF3DJL7g7iYMZq9SWgfS1BFlNbsm6xplRjVlOCkXI=", "narHash": "sha256-HzxeGVID5MChuCPESuC0dlQL1/scDKu+MmzoVBJxulM=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "08dacfca559e1d7da38f3cf05f1f45ee9bfd213c", "rev": "050e09e091117c3d7328c7b2b7b577492c43c134",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -139,11 +119,11 @@
}, },
"nixpkgs-lib": { "nixpkgs-lib": {
"locked": { "locked": {
"lastModified": 1754788789, "lastModified": 1761765539,
"narHash": "sha256-x2rJ+Ovzq0sCMpgfgGaaqgBSwY+LST+WbZ6TytnT9Rk=", "narHash": "sha256-b0yj6kfvO8ApcSE+QmA6mUfu8IYG6/uU28OFn4PaC8M=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nixpkgs.lib", "repo": "nixpkgs.lib",
"rev": "a73b9c743612e4244d865a2fdee11865283c04e6", "rev": "719359f4562934ae99f5443f20aa06c2ffff91fc",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -178,11 +158,11 @@
"uv2nix": "uv2nix" "uv2nix": "uv2nix"
}, },
"locked": { "locked": {
"lastModified": 1761743882, "lastModified": 1763909018,
"narHash": "sha256-dRKT5It0YFNVgnmGX342ivFZwAuF9FlPB+SBgMKkZjs=", "narHash": "sha256-nX/L4W7z3DYlqXRduT8KyRWj7lTG5+6n0HlRY80B4HE=",
"owner": "pwndbg", "owner": "pwndbg",
"repo": "pwndbg", "repo": "pwndbg",
"rev": "e5ab2350499445daa2bef53eb3d26fc28a578cd9", "rev": "4f7e515775f4d5910017316493cc10e9e03c8892",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -246,7 +226,6 @@
"disko": "disko", "disko": "disko",
"flake-programs-sqlite": "flake-programs-sqlite", "flake-programs-sqlite": "flake-programs-sqlite",
"home-manager": "home-manager", "home-manager": "home-manager",
"lightly": "lightly",
"nix-gaming": "nix-gaming", "nix-gaming": "nix-gaming",
"nixpkgs": "nixpkgs", "nixpkgs": "nixpkgs",
"nixpkgs-stable": "nixpkgs-stable", "nixpkgs-stable": "nixpkgs-stable",
@ -261,11 +240,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1760998189, "lastModified": 1763870012,
"narHash": "sha256-ee2e1/AeGL5X8oy/HXsZQvZnae6XfEVdstGopKucYLY=", "narHash": "sha256-AHxFfIu73SpNLAOZbu/AvpLhZ/Szhx6gRPj9ufZtaZA=",
"owner": "Mic92", "owner": "Mic92",
"repo": "sops-nix", "repo": "sops-nix",
"rev": "5a7d18b5c55642df5c432aadb757140edfeb70b3", "rev": "4e7d74d92398b933cc0e0e25af5b0836efcfdde3",
"type": "github" "type": "github"
}, },
"original": { "original": {

View file

@ -28,10 +28,6 @@
url = "github:/pwndbg/pwndbg"; url = "github:/pwndbg/pwndbg";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
lightly = {
url = "github:/Bali10050/Darkly";
inputs.nixpkgs.follows = "nixpkgs";
};
}; };
outputs = { outputs = {

View file

@ -1,21 +1,43 @@
{inputs, ...}: { {
config,
pkgs,
inputs,
...
}: {
imports = [ imports = [
../../system ../../system
./hardware-configuration.nix ./hardware-configuration.nix
./disk.nix ./disk.nix
./virt.nix
inputs.disko.nixosModules.disko inputs.disko.nixosModules.disko
]; ];
boot.kernelPackages = pkgs.linuxPackages_latest;
boot.extraModulePackages = [config.boot.kernelPackages.it87];
boot.kernelParams = ["acpi_enforce_resources=lax"];
boot.kernelModules = ["it87"];
boot.extraModprobeConfig = "options it87 ignore_resource_conflict=1 force_id=0x8622";
services.getty = {
autologinOnce = true;
autologinUser = "ahnwuoa";
};
networking.hostName = "tachibana"; networking.hostName = "tachibana";
time.timeZone = "America/Chicago"; time.timeZone = "America/Chicago";
services.xserver = { services.xserver = {
videoDrivers = ["nvidia"]; videoDrivers = ["nvidia"];
deviceSection = ''Option "TearFree" "true"''; deviceSection = ''Option "TearFree" "true"'';
}; };
hardware.nvidia.open = false; hardware.nvidia.open = true;
nixpkgs.config.allowUnfree = true; nixpkgs.config.allowUnfree = true;
users.users.ahnwuoa = { users.users.ahnwuoa = {
isNormalUser = true; isNormalUser = true;
extraGroups = ["wheel"]; extraGroups = ["wheel"];
}; };
boot.loader.grub.extraEntries = ''
menuentry "UEFI Firmware Settings" {
fwsetup
}
'';
environment.systemPackages = [pkgs.nvtopPackages.nvidia];
programs.coolercontrol.enable = true;
} }

View file

@ -1,17 +1,21 @@
# Do not modify this file! It was generated by nixos-generate-config # Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes # and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead. # to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{ {
imports = config,
[ (modulesPath + "/installer/scan/not-detected.nix") lib,
]; pkgs,
modulesPath,
...
}: {
imports = [
(modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "thunderbolt" "usb_storage" "usbhid" "sd_mod" ]; boot.initrd.availableKernelModules = ["nvme" "xhci_pci" "ahci" "thunderbolt" "usb_storage" "usbhid" "sd_mod"];
boot.initrd.kernelModules = [ ]; boot.initrd.kernelModules = [];
boot.kernelModules = [ "kvm-amd" ]; boot.kernelModules = ["kvm-amd"];
boot.extraModulePackages = [ ]; boot.extraModulePackages = [];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking # Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's # (the default) this is the recommended approach. When using systemd-networkd it's

31
hosts/tachibana/virt.nix Normal file
View file

@ -0,0 +1,31 @@
{
pkgs,
config,
...
}: {
virtualisation.libvirtd.qemu.verbatimConfig = ''
namespaces = []
user = "+1000"
cgroup_device_acl = [
"/dev/null", "/dev/full", "/dev/zero",
"/dev/random", "/dev/urandom",
"/dev/ptmx", "/dev/kvm", "/dev/kqemu",
"/dev/rtc","/dev/hpet", "/dev/vfio/vfio",
"/dev/kvmfr0",
]
'';
boot = {
initrd.kernelModules = ["vfio_pci" "vfio_iommu_type1" "vfio"];
kernelModules = ["kvmfr"];
kernelParams = ["amd_iommu=on" "amd_iommu=pt" "kvm.ignore_msrs=1"];
extraModulePackages = [config.boot.kernelPackages.kvmfr];
extraModprobeConfig = ''
options vfio-pci ids=10de:2b85,10de:22e8
options kvmfr static_size_mb=64
'';
};
services.udev.extraRules = ''
SUBSYSTEM=="kvmfr", GROUP="kvm", MODE="0660"
'';
environment.systemPackages = [pkgs.looking-glass-client];
}

View file

@ -38,7 +38,7 @@
--set LC_ALL "ja_JP.UTF-8" --set LC_ALL "ja_JP.UTF-8"
''; '';
}; };
pwndbg = inputs.pwndbg.packages.${super.system}.pwndbg; pwndbg = inputs.pwndbg.packages.${super.stdenv.hostPlatform.system}.pwndbg;
kdePackages = super.kdePackages.overrideScope ( kdePackages = super.kdePackages.overrideScope (
kself: ksuper: { kself: ksuper: {
polkit-kde-agent-1 = ksuper.polkit-kde-agent-1.overrideAttrs (old: { polkit-kde-agent-1 = ksuper.polkit-kde-agent-1.overrideAttrs (old: {

View file

@ -35,7 +35,7 @@
- int name; - int name;
+ union { + union {
+ char *name; + char *name;
+ int num; + unsigned long long num;
+ }; + };
Cursor icon; Cursor icon;
} cursors[CURSOR_COUNT] = { } cursors[CURSOR_COUNT] = {

View file

@ -41,7 +41,7 @@
environment.etc."ssh/ssh_config".text = lib.mkAfter "Include /home/*/.local/ssh/config"; environment.etc."ssh/ssh_config".text = lib.mkAfter "Include /home/*/.local/ssh/config";
programs.command-not-found.dbPath = inputs.flake-programs-sqlite.packages.${pkgs.system}.programs-sqlite; programs.command-not-found.dbPath = inputs.flake-programs-sqlite.packages.${pkgs.stdenv.hostPlatform.system}.programs-sqlite;
programs.command-not-found.enable = true; programs.command-not-found.enable = true;
programs.ssh.enableAskPassword = false; programs.ssh.enableAskPassword = false;

View file

@ -13,6 +13,16 @@ lib.mkIf (config.networking.hostName != "komikan") {
group = "root"; group = "root";
setuid = true; setuid = true;
}; };
systemd.tmpfiles.settings.mnt = {
"/mnt".d = {
user = "root";
mode = "0755";
};
"/mnt/pool".d = {
user = "1000";
mode = "0755";
};
};
fileSystems."/mnt/pool" = { fileSystems."/mnt/pool" = {
device = "//komikan/pool"; device = "//komikan/pool";
fsType = "cifs"; fsType = "cifs";

View file

@ -19,11 +19,13 @@ in {
record-audio = [pulseaudio ffmpeg jq]; record-audio = [pulseaudio ffmpeg jq];
} }
// lib.optionalAttrs config.u.has.jp { // lib.optionalAttrs config.u.has.jp {
anki-update = [libnotify inotify-tools pulseaudio ffmpeg jq pyp anki-update =
(writers.writePython3Bin "furigana" { [libnotify inotify-tools pulseaudio ffmpeg jq pyp]
libraries = [python3Packages.fugashi python3Packages.unidic-lite]; ++ [
} (builtins.readFile ./furigana)) (writers.writePython3Bin "furigana" {
]; libraries = [python3Packages.fugashi python3Packages.unidic-lite];
} (builtins.readFile ./furigana))
];
}; };
home.file = builtins.listToAttrs ( home.file = builtins.listToAttrs (
map map

View file

@ -22,6 +22,9 @@ export RUSTUP_HOME="$XDG_DATA_HOME/rustup"
export CARGO_HOME="$XDG_DATA_HOME/cargo" export CARGO_HOME="$XDG_DATA_HOME/cargo"
# .npmrc location # .npmrc location
export NPM_CONFIG_USERCONFIG="$XDG_CONFIG_HOME/npm/npmrc" export NPM_CONFIG_USERCONFIG="$XDG_CONFIG_HOME/npm/npmrc"
export NPM_CONFIG_INIT_MODULE="$XDG_CONFIG_HOME"/npm/config/npm-init.js
export NPM_CONFIG_CACHE="$XDG_CACHE_HOME"/npm
export NPM_CONFIG_TMP="$XDG_RUNTIME_DIR"/npm
# .xinitrc location # .xinitrc location
export XINITRC="$XDG_CONFIG_HOME/X11/xinitrc" export XINITRC="$XDG_CONFIG_HOME/X11/xinitrc"
# .gtkrc-2.0 location # .gtkrc-2.0 location
@ -32,11 +35,7 @@ export WINEPREFIX="$XDG_DATA_HOME/wine"
export XCURSOR_PATH=/usr/share/icons:${XDG_DATA_HOME}/icons export XCURSOR_PATH=/usr/share/icons:${XDG_DATA_HOME}/icons
# .gnupg location # .gnupg location
export GNUPGHOME="$XDG_DATA_HOME/gnupg" export GNUPGHOME="$XDG_DATA_HOME/gnupg"
# .nuget location
export NUGET_PACKAGES="$XDG_CACHE_HOME/NuGetPackages"
# java
export _JAVA_OPTIONS=-Djava.util.prefs.userRoot="$XDG_CONFIG_HOME"/java
export ANDROID_HOME="$XDG_DATA_HOME"/android
# gdb # gdb
export GDBHISTFILE="$XDG_CACHE_HOME/gdb_history" export GDBHISTFILE="$XDG_CACHE_HOME/gdb_history"
export PYENV_ROOT="$XDG_DATA_HOME/pyenv" export PYENV_ROOT="$XDG_DATA_HOME/pyenv"
export CUDA_CACHE_PATH="$XDG_CACHE_HOME/nv"

View file

@ -80,6 +80,7 @@ set -g history-limit 50000
set -g display-time 4000 set -g display-time 4000
set -g status-interval 1 set -g status-interval 1
setw -g aggressive-resize on setw -g aggressive-resize on
set -g set-clipboard on
set -g mouse on set -g mouse on
setw -g mode-keys vi setw -g mode-keys vi

View file

@ -28,6 +28,7 @@
unar unar
keepassxc keepassxc
hyx hyx
pciutils
] ]
++ lib.optionals config.u.has.graphical [ ++ lib.optionals config.u.has.graphical [
(config.u.lib.localHome pkgs.firefox "firefox" "bin/firefox") (config.u.lib.localHome pkgs.firefox "firefox" "bin/firefox")

View file

@ -13,4 +13,5 @@
text = ""; text = "";
force = true; force = true;
}; };
xdg.dataFile."kwalletd".source = ./kwalletd;
} }

Binary file not shown.

View file

@ -0,0 +1 @@
\ Èß<C388>¦Ùê¼–¶ªù†Kßqš?ço¨¿sâÁ´­³{r^DAÁÖÃH†óMDLL·X

View file

@ -2,7 +2,6 @@
config, config,
lib, lib,
pkgs, pkgs,
inputs,
... ...
}: }:
lib.mkIf config.u.has.graphical { lib.mkIf config.u.has.graphical {
@ -10,8 +9,8 @@ lib.mkIf config.u.has.graphical {
enable = true; enable = true;
platformTheme.name = "kde"; platformTheme.name = "kde";
style.package = [ style.package = [
inputs.lightly.packages.${pkgs.system}.darkly-qt5 pkgs.darkly-qt5
inputs.lightly.packages.${pkgs.system}.darkly-qt6 pkgs.darkly
]; ];
}; };
gtk = { gtk = {