Compare commits

...
90 Commits
Author SHA1 Message Date
k3t b06a8e58d7 HOW DID I FUCK THIS UP??????? 2026-09-04 16:43:09 -06:00
k3t 4772a085ae rename a few things, add minizen host, rebase with other changes 2026-09-04 15:52:13 -06:00
k3t a00258ed3d disable redundant features 2026-09-03 08:28:03 +00:00
k3t 1eb528fdc7 oops 2026-09-03 07:52:55 +00:00
k3t 900a830660 add nvidia support 2026-09-03 07:52:07 +00:00
k3t 4e32f3c193 flake update 2026-08-27 18:20:33 -06:00
k3t 8f32d561f5 flake update 2026-08-23 15:08:14 -06:00
k3t e766d73c6d e 2026-08-09 14:05:20 -06:00
k3t 550b91fd59 disable nftables again 2026-08-09 14:02:28 -06:00
k3t 9d5b87e036 e 2026-08-09 13:01:49 -06:00
k3t 7b729d68aa e 2026-08-09 12:53:34 -06:00
k3t 71b94afced e 2026-08-09 12:52:44 -06:00
k3t af7fee8ea7 e 2026-08-09 12:50:41 -06:00
k3t b8594b37b5 enable ios support on tbb 2026-08-09 12:50:13 -06:00
k3t f39b398e8a add ios support 2026-08-09 12:48:45 -06:00
k3t b00cadd7a3 update waydroid.nix & firewall.nix 2026-08-08 14:23:43 +00:00
k3t 3572ef72af update waydroid.nix 2026-08-08 14:14:57 +00:00
k3t ea41bef16c oops 2026-08-08 02:31:49 -06:00
k3t addef281d7 remove adb from waydroid 2026-08-08 02:30:45 -06:00
k3t 4f8df6192f oops 2026-08-08 02:30:13 -06:00
k3t bcddfd1443 allow timezone to be overrideable 2026-08-08 02:29:43 -06:00
k3t 2f5bcb3029 oops 2026-08-08 02:27:10 -06:00
k3t d8dffd131f add geoclue and waydroid 2026-08-08 02:26:34 -06:00
k3t d2123f4e8d modify synergy.nix 2026-08-08 01:39:01 -06:00
k3t 2ab6b4a932 add synergy 2026-08-08 01:34:14 -06:00
k3t 9753013fa9 oops 2026-08-08 01:26:49 -06:00
k3t fc5fb9af0e many performance optimizations 2026-08-08 01:25:08 -06:00
k3t 91ea0a10cf reenable lact & enable iio on thinkpad 2026-08-08 00:45:39 -06:00
k3t 7e300df6fa update hardware-configuration.nix 2026-08-06 23:56:57 -06:00
k3t 24e58fc71d flake update 2026-08-06 23:53:17 -06:00
k3t e5c52d516a rename T14 to ThinkPad 2026-08-06 23:50:08 -06:00
k3t 682f49d002 disable 32bit mesa 2026-08-02 03:37:29 -06:00
k3t 0df48f3021 enable mesa 2026-08-02 03:36:32 -06:00
k3t 6a41a274cf enable plasma6 on nixcloud 2026-08-02 03:25:39 -06:00
k3t 49d3f8bb5b add packages to tbb for certain repacks to function 2026-08-01 23:53:46 -06:00
k3t 89980b6244 re-enable vmware on theblackbox 2026-08-01 23:52:22 -06:00
k3t bf094a3e08 add gomuks 2026-07-28 16:47:24 -06:00
k3t b052afabc1 [mautrix.nix] change ig port, add mautrix-signal 2026-07-28 13:20:40 -06:00
k3t 62e3df59bf add mautrix-meta instagram container 2026-07-28 13:07:48 -06:00
k3t 8bf6c4fcc0 ENABLE the setting that was just added 😭 2026-07-28 11:39:37 -06:00
k3t 86e84cad1b reconfigure nginx for mautrix-discord 2026-07-28 11:37:07 -06:00
k3t 36952f5bae forgot to plan ahead, too latenow 2026-07-28 11:20:59 -06:00
k3t 7f59ae2652 bind continuwuity to 0.0.0.0 2026-07-28 11:15:22 -06:00
k3t a386bd81c3 modify mautrix.nix 2026-07-28 11:13:15 -06:00
k3t f0294a80ce change blocky port to fix podman, fix a few container files 2026-07-28 10:03:28 -06:00
k3t 6d6b690218 oops 2026-07-28 09:50:44 -06:00
k3t cc8b2636db modify mautrix.nix 2026-07-28 09:49:40 -06:00
k3t acc6970571 move podman config to more suitable location 2026-07-28 09:49:34 -06:00
k3t 07f1f811b9 add mautrix podman containers 2026-07-28 09:18:56 -06:00
k3t e0e00ecfeb flake update & remove lact 2026-07-28 09:18:00 -06:00
k3t fbaf4fbb37 remove mautrix.nix 2026-07-27 09:52:52 -06:00
k3t 6c9259c0bf disable mautrix bridges 2026-07-27 09:51:39 -06:00
k3t ee533092be flake inputs update 2026-07-27 09:47:30 -06:00
k3t 821596f571 comment mautrix-discord 2026-07-26 12:39:45 -06:00
k3t 2dd0f80405 fix mautrix.nix 2026-07-26 12:37:36 -06:00
k3t c4cf5c867f add mess of mautrix bridges 2026-07-26 12:33:38 -06:00
k3t 34c109906d update nginx hosts again 2026-07-26 11:45:38 -06:00
k3t 323dc489a0 formatting, once again 2026-07-26 11:22:53 -06:00
k3t d6be2b6b6e imagine reading docs who does that 2026-07-26 11:17:37 -06:00
k3t dd7b736d96 oops 2026-07-26 11:15:50 -06:00
k3t d5ee81f7ae proxy matrix, add well-known as well 2026-07-26 11:15:06 -06:00
k3t 13cd25557c matrix homeserver 2026-07-26 11:02:16 -06:00
k3t 71e7cf84b7 tbb additions 2026-07-26 11:02:08 -06:00
k3t 855c536f96 remove nonsense 2026-07-24 15:49:31 -06:00
k3t 2f007f0a69 include lutris.nix 2026-07-24 15:49:00 -06:00
k3t c9df14e255 add lutris 2026-07-24 15:48:10 -06:00
k3t 6f9a78a853 fix xdg mime 2026-07-24 15:34:52 -06:00
k3t a5776fbf36 add waypipe on wayland systems 2026-07-24 06:45:40 -06:00
k3t 7b5eea44c5 fix retarded activity 2026-07-24 06:44:58 -06:00
k3t 831d103064 remove duplicate config 2026-07-24 06:44:03 -06:00
k3t ed51eb5613 add hardware support 2026-07-24 06:42:22 -06:00
k3t 8400da57ba bump java up to 25 2026-07-14 15:16:30 -06:00
k3t 1d2915d02a flake update && minecraft.nix fix 2026-07-14 15:11:50 -06:00
k3t 1095db59e9 remove yubikey from pam (you can log in as ssh without a pw if its plugged in 😭) 2026-07-14 05:07:32 -06:00
k3t 7bc78cdf6b nix flake update 2026-07-14 01:01:58 -06:00
k3t 81450f7ebe enable x2go, did something else as well idk forgot 2026-07-14 01:00:16 -06:00
k3t 01914cbc1f steam proton additions + tbb vr fixes 2026-07-11 04:29:45 -06:00
k3t 3a73e7fa4e remove old unused file 2026-07-11 00:51:24 -06:00
k3t 6514158245 aarpc, amdgpu steamvr fix, deadbeef, 😭 2026-07-10 23:44:41 -06:00
k3t 7c0ab9e7a4 update openssh.nix 2026-07-09 07:43:02 -06:00
k3t d617fb0ac8 update openssh.nix 2026-07-09 07:42:33 -06:00
k3t f91a7f409a fix security.nix again 2026-07-09 07:24:27 -06:00
k3t bc63628e9b fix security.nix 2026-07-09 07:22:15 -06:00
k3t b1a6653f94 gnupg fix, add yubikey support 2026-07-09 07:21:44 -06:00
k3t 914055e584 slight fixes *2 2026-07-09 06:23:21 -06:00
k3t 76b154b039 slight fixes 2026-07-09 06:22:48 -06:00
k3t 40ff0eb691 add tpm2 support 2026-07-09 06:21:31 -06:00
k3t f2c516f628 bluetooth le?? maybe??? 2026-07-08 06:18:42 -06:00
k3t cf7d8eb90a oops 2026-07-07 03:40:24 -06:00
k3t 58cebc8b94 tbb nixos btrfs shenanigans 2026-07-07 03:39:42 -06:00
54 changed files with 944 additions and 325 deletions
Generated
+22 -22
View File
@@ -37,11 +37,11 @@
"nixpkgs": "nixpkgs" "nixpkgs": "nixpkgs"
}, },
"locked": { "locked": {
"lastModified": 1783388784, "lastModified": 1788229478,
"narHash": "sha256-w+YU5vatysjLZIg1wOKSzo/RL9Z66eBQuIjVnBM/1Zg=", "narHash": "sha256-G0F2rFORVcFkEvVdE/qWQTnYekIc77YP5/vRF9nZlxU=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "63d02d1c19f1c2b47a5bc7e55c620b6af7b218a6", "rev": "1dc2d1f720ab17fc7981e087346bf54b26d284b1",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -97,11 +97,11 @@
"nixpkgs": "nixpkgs_3" "nixpkgs": "nixpkgs_3"
}, },
"locked": { "locked": {
"lastModified": 1783307699, "lastModified": 1788146779,
"narHash": "sha256-/nIA82c6GX01Q7HKOCr6LHLzht4daKUK05x0azNeQt0=", "narHash": "sha256-DPpSweCi/XNpD7r2mrL83gaN0/UsQIF6ihb2HY2G2Jc=",
"owner": "cynicsketch", "owner": "cynicsketch",
"repo": "nix-mineral", "repo": "nix-mineral",
"rev": "3393a517a85993fa843d3f28eccf81faade82a96", "rev": "9e05f8a852c7ca53e797379deef275b608d47ef4",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -115,11 +115,11 @@
"nixpkgs": "nixpkgs_4" "nixpkgs": "nixpkgs_4"
}, },
"locked": { "locked": {
"lastModified": 1783370751, "lastModified": 1788044418,
"narHash": "sha256-E+3MIMvKuo9k+K+qLQ9YXzsBzkgHuyVLnsEbN2DFfuc=", "narHash": "sha256-cmOd3iGoE140M2GidgQMQbyxHZ4dT7C0QZq2+CrXQyA=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixos-hardware", "repo": "nixos-hardware",
"rev": "662bd6e312d2c8b212e32cb377abaee190749320", "rev": "dc3f0cfde2050172abf6c3cdb684f735c15a57c5",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -131,11 +131,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1782948114, "lastModified": 1787209939,
"narHash": "sha256-AXmz9ho4Lud5CsbrZsuSVwpQZ4o5FgZ1chxBn5cJ8+0=", "narHash": "sha256-WvvHR4kSQLAbtouMC/ruZ5UpLwlUcY3K4FAllMN+yGk=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "9e92285f211dad236540fd617d7e30e0b99bc0e1", "rev": "391b592eb44808b3bd0cb80bb71b63a5a118b8bb",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -207,11 +207,11 @@
}, },
"nixpkgs_5": { "nixpkgs_5": {
"locked": { "locked": {
"lastModified": 1783224372, "lastModified": 1788179007,
"narHash": "sha256-8i/87eeoqiGE4yOTjwSA3Eh/ziJRQEmd/unYU+K27sk=", "narHash": "sha256-hn1oU2rue2SYK8dAr8+WNZWtbsz1S2W5mnHlSEuh3bo=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "d407951447dcd00442e97087bf374aad70c04cea", "rev": "34ab99075ac4f7e40cf037eef32cb1c360bb85e9",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -223,11 +223,11 @@
}, },
"nixpkgs_6": { "nixpkgs_6": {
"locked": { "locked": {
"lastModified": 1783224372, "lastModified": 1787900134,
"narHash": "sha256-FGQ8TfSm9WviNE/fQAWsKs+y4GkX8fU4EScewpw54Y8=", "narHash": "sha256-5GWj0FI2uOwKNpXkmpWrSFDe1rCaNBCUQ8d+HDtFQPI=",
"rev": "d407951447dcd00442e97087bf374aad70c04cea", "rev": "83199d0d373dd3ac2b9a1996b1d0263f76ab7a4c",
"type": "tarball", "type": "tarball",
"url": "https://releases.nixos.org/nixos/unstable/nixos-26.11pre1027867.d407951447dc/nixexprs.tar.xz" "url": "https://releases.nixos.org/nixos/unstable/nixos-26.11pre1063296.83199d0d373d/nixexprs.tar.xz"
}, },
"original": { "original": {
"type": "tarball", "type": "tarball",
@@ -250,11 +250,11 @@
"systems": "systems" "systems": "systems"
}, },
"locked": { "locked": {
"lastModified": 1783303713, "lastModified": 1788083617,
"narHash": "sha256-d6Zs6wD0kvWQXn7qPU0YsuqoqBhT7zi5+1M365FINt8=", "narHash": "sha256-aXMDRUxm/9se+vgKViKdDcClk1k3qA3sUwT0kAYo3Fg=",
"owner": "Gerg-L", "owner": "Gerg-L",
"repo": "spicetify-nix", "repo": "spicetify-nix",
"rev": "d9d714243e2f8d10af28db5111f018ec2d77acc9", "rev": "bf4ed54253a61c8324a5b461638c42db77c0b980",
"type": "github" "type": "github"
}, },
"original": { "original": {
+40 -158
View File
@@ -42,19 +42,6 @@
in { in {
nixosConfigurations = { nixosConfigurations = {
# repurposed for use as nas
#"TheBlackBox" = mkHost "x86_64-linux" [
# ./modules/common.nix
# ./modules/desktop-common.nix
# ./hosts/desktop/configuration.nix
# spicetify-nix.nixosModules.spicetify
# home-manager.nixosModules.home-manager
# {
# home-manager.useGlobalPkgs = true;
# home-manager.useUserPackages = true;
# home-manager.users.k3t = ./home/desktop.nix;
# }
#];
"TheBlackBox" = mkHost "x86_64-linux" [ "TheBlackBox" = mkHost "x86_64-linux" [
./modules/audio/base.nix ./modules/audio/base.nix
./modules/audio/zeroconf.nix ./modules/audio/zeroconf.nix
@@ -70,9 +57,11 @@
./modules/gui/apps/steam.nix ./modules/gui/apps/steam.nix
./modules/gui/fonts.nix ./modules/gui/fonts.nix
./modules/gui/services/flatpak.nix ./modules/gui/services/flatpak.nix
./modules/gui/services/geoclue.nix
./modules/gui/services/kdeconnect.nix ./modules/gui/services/kdeconnect.nix
./modules/gui/services/kwallet.nix ./modules/gui/services/kwallet.nix
./modules/gui/services/xdg.nix ./modules/gui/services/xdg.nix
./modules/gui/services/waydroid.nix
./modules/net/services/avahi.nix ./modules/net/services/avahi.nix
./modules/net/services/fail2ban.nix ./modules/net/services/fail2ban.nix
@@ -85,18 +74,24 @@
./modules/sys/fs/btrfs.nix ./modules/sys/fs/btrfs.nix
./modules/sys/fs/mounts/efi.nix ./modules/sys/fs/mounts/efi.nix
./modules/sys/fs/mounts/root-btrfs.nix ./modules/sys/fs/mounts/btrfs/btrfs-with-subvols.nix
./modules/sys/fs/mounts/swap.nix ./modules/sys/fs/mounts/swap.nix
./modules/sys/hw/boot.nix ./modules/sys/hw/boot.nix
./modules/sys/hw/libinput.nix ./modules/sys/hw/libinput.nix
./modules/sys/hw/cpu/intel.nix ./modules/sys/hw/cpu/intel.nix
./modules/sys/hw/gpu/intel.nix ./modules/sys/hw/gpu/nvidia.nix
./modules/sys/hw/gpu/vmware.nix
./modules/sys/hw/input/keyboard.nix
./modules/sys/hw/input/tablet.nix
./modules/sys/hw/input/xbox.nix
./modules/sys/hw/misc/ios.nix
./modules/sys/nix.nix ./modules/sys/nix.nix
./modules/sys/perf.nix ./modules/sys/perf.nix
./modules/sys/pkgs.nix ./modules/sys/pkgs.nix
./modules/sys/rc/openssh.nix ./modules/sys/rc/openssh.nix
./modules/sys/rc/sunshine.nix
./modules/sys/rgb.nix ./modules/sys/rgb.nix
./modules/sys/security.nix ./modules/sys/security.nix
@@ -106,6 +101,8 @@
./modules/sys/time.nix ./modules/sys/time.nix
./modules/sys/users/k3t.nix ./modules/sys/users/k3t.nix
./modules/sys/vm.nix
./hosts/TheBlackBox/configuration.nix ./hosts/TheBlackBox/configuration.nix
spicetify-nix.nixosModules.spicetify spicetify-nix.nixosModules.spicetify
home-manager.nixosModules.home-manager home-manager.nixosModules.home-manager
@@ -116,117 +113,6 @@
} }
]; ];
"NixNAS" = mkHost "x86_64-linux" [
./modules/net/services/avahi.nix
./modules/net/services/fail2ban.nix
./modules/net/services/networkmanager.nix
./modules/net/services/tailscale.nix
./modules/sys/compat.nix
./modules/sys/firewall.nix
./modules/sys/fs/btrfs.nix
./modules/sys/fs/mounts/efi.nix
./modules/sys/fs/mounts/root-btrfs.nix
./modules/sys/fs/mounts/swap.nix
./modules/sys/hw/boot.nix
./modules/sys/hw/hyperv.nix
./modules/sys/nix.nix
./modules/sys/perf.nix
./modules/sys/pkgs.nix
./modules/sys/rc/openssh.nix
./modules/sys/security.nix
./modules/sys/shell.nix
./modules/sys/stateversion.nix
./modules/sys/sysctl.nix
./modules/sys/time.nix
./modules/sys/users/k3t.nix
./hosts/NixNAS/configuration.nix
home-manager.nixosModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users.k3t = ./home/server.nix;
}
];
"NixServe" = mkHost "x86_64-linux" [
./modules/net/services/avahi.nix
./modules/net/services/fail2ban.nix
./modules/net/services/networkmanager.nix
./modules/net/services/tailscale.nix
./modules/sys/compat.nix
./modules/sys/firewall.nix
./modules/sys/fs/btrfs.nix
./modules/sys/fs/mounts/efi.nix
./modules/sys/fs/mounts/root-btrfs.nix
./modules/sys/fs/mounts/swap.nix
./modules/sys/hw/boot.nix
./modules/sys/hw/hyperv.nix
./modules/sys/nix.nix
./modules/sys/perf.nix
./modules/sys/pkgs.nix
./modules/sys/rc/openssh.nix
./modules/sys/security.nix
./modules/sys/shell.nix
./modules/sys/stateversion.nix
./modules/sys/sysctl.nix
./modules/sys/time.nix
./modules/sys/users/k3t.nix
./hosts/NixServe/configuration.nix
home-manager.nixosModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users.k3t = ./home/server.nix;
}
];
"NixGame" = mkHost "x86_64-linux" [
./modules/net/services/avahi.nix
./modules/net/services/fail2ban.nix
./modules/net/services/networkmanager.nix
./modules/net/services/tailscale.nix
./modules/sys/compat.nix
./modules/sys/firewall.nix
./modules/sys/fs/btrfs.nix
./modules/sys/fs/mounts/efi.nix
./modules/sys/fs/mounts/root-btrfs.nix
./modules/sys/fs/mounts/swap.nix
./modules/sys/hw/boot.nix
./modules/sys/hw/hyperv.nix
./modules/sys/nix.nix
./modules/sys/perf.nix
./modules/sys/pkgs.nix
./modules/sys/rc/openssh.nix
./modules/sys/security.nix
./modules/sys/shell.nix
./modules/sys/stateversion.nix
./modules/sys/sysctl.nix
./modules/sys/time.nix
./modules/sys/users/k3t.nix
./hosts/NixGame/configuration.nix
home-manager.nixosModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users.k3t = ./home/server.nix;
}
];
"IdeaPad" = mkHost "x86_64-linux" [ "IdeaPad" = mkHost "x86_64-linux" [
./modules/audio/base.nix ./modules/audio/base.nix
./modules/audio/zeroconf.nix ./modules/audio/zeroconf.nix
@@ -238,6 +124,7 @@
./modules/gui/apps/firefox.nix ./modules/gui/apps/firefox.nix
./modules/gui/fonts.nix ./modules/gui/fonts.nix
./modules/gui/services/flatpak.nix ./modules/gui/services/flatpak.nix
./modules/gui/services/geoclue.nix
./modules/gui/services/kdeconnect.nix ./modules/gui/services/kdeconnect.nix
./modules/gui/services/kwallet.nix ./modules/gui/services/kwallet.nix
./modules/gui/services/xdg.nix ./modules/gui/services/xdg.nix
@@ -274,60 +161,46 @@
./hosts/IdeaPad/configuration.nix ./hosts/IdeaPad/configuration.nix
]; ];
"htpc" = mkHost "x86_64-linux" [ "minizen" = mkHost "x86_64-linux" [
./modules/audio/base.nix ./modules/audio/base.nix
./modules/audio/zeroconf.nix ./modules/audio/zeroconf.nix
./modules/bluetooth/desktop.nix
./modules/de/kde.nix
./modules/de/i3.nix
./modules/desktop-common.nix
./modules/gui/services/fcast.nix
./modules/gui/apps/firefox.nix
./modules/gui/apps/spicetify.nix
./modules/gui/apps/steam.nix
./modules/gui/fonts.nix
./modules/gui/services/flatpak.nix
./modules/gui/services/kdeconnect.nix
./modules/gui/services/kwallet.nix
./modules/gui/services/xdg.nix
./modules/net/services/avahi.nix
./modules/net/services/fail2ban.nix ./modules/net/services/fail2ban.nix
./modules/net/services/networkmanager.nix ./modules/net/services/networkmanager.nix
./modules/net/services/printing.nix
./modules/net/services/tailscale.nix ./modules/net/services/tailscale.nix
./modules/sys/compat.nix ./modules/sys/compat.nix
./modules/sys/firewall.nix ./modules/sys/firewall.nix
./modules/sys/fs/btrfs.nix ./modules/sys/fs/btrfs.nix
./modules/sys/fs/mounts/efi.nix
./modules/sys/fs/mounts/btrfs/btrfs-with-subvols.nix
./modules/sys/fs/mounts/swap.nix
./modules/sys/hw/boot.nix ./modules/sys/hw/boot.nix
./modules/sys/hw/cpu/amd64.nix ./modules/sys/hw/cpu/arm64.nix
./modules/sys/hw/gpu/amd.nix
./modules/sys/nix.nix ./modules/sys/nix.nix
./modules/sys/perf.nix ./modules/sys/perf.nix
./modules/sys/pkgs.nix ./modules/sys/pkgs.nix
./modules/sys/rc/openssh.nix ./modules/sys/rc/openssh.nix
./modules/sys/rc/sunshine.nix
./modules/sys/rgb.nix
./modules/sys/security.nix ./modules/sys/security.nix
./modules/sys/shell.nix ./modules/sys/shell.nix
./modules/sys/stateversion.nix ./modules/sys/stateversion.nix
./modules/sys/sysctl.nix ./modules/sys/sysctl.nix
./modules/sys/time.nix ./modules/sys/time.nix
./modules/sys/users/k3t.nix ./modules/sys/users/k3t.nix
./hosts/minizen/configuration.nix
./hosts/htpc/configuration.nix
spicetify-nix.nixosModules.spicetify
home-manager.nixosModules.home-manager home-manager.nixosModules.home-manager
{ {
home-manager.useGlobalPkgs = true; home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true; home-manager.useUserPackages = true;
home-manager.users.k3t = ./home/desktop.nix; home-manager.users.k3t = ./home/server.nix;
} }
]; ];
"T14" = mkHost "x86_64-linux" [ };
"ThinkPad" = mkHost "x86_64-linux" [
./modules/audio/base.nix ./modules/audio/base.nix
./modules/audio/zeroconf.nix ./modules/audio/zeroconf.nix
@@ -342,9 +215,11 @@
./modules/gui/apps/steam.nix ./modules/gui/apps/steam.nix
./modules/gui/fonts.nix ./modules/gui/fonts.nix
./modules/gui/services/flatpak.nix ./modules/gui/services/flatpak.nix
./modules/gui/services/geoclue.nix
./modules/gui/services/kdeconnect.nix ./modules/gui/services/kdeconnect.nix
./modules/gui/services/kwallet.nix ./modules/gui/services/kwallet.nix
./modules/gui/services/xdg.nix ./modules/gui/services/xdg.nix
./modules/gui/services/waydroid.nix
./modules/net/services/avahi.nix ./modules/net/services/avahi.nix
./modules/net/services/fail2ban.nix ./modules/net/services/fail2ban.nix
@@ -354,14 +229,22 @@
./modules/sys/compat.nix ./modules/sys/compat.nix
./modules/sys/firewall.nix ./modules/sys/firewall.nix
./modules/sys/fs/btrfs.nix ./modules/sys/fs/btrfs.nix
./modules/sys/fs/mounts/efi.nix
./modules/sys/fs/mounts/btrfs/btrfs-with-subvols.nix
./modules/sys/fs/mounts/swap.nix
./modules/sys/hw/boot.nix ./modules/sys/hw/boot.nix
./modules/sys/hw/cpu/amd64.nix ./modules/sys/hw/cpu/intel.nix
./modules/sys/hw/gpu/amd.nix ./modules/sys/hw/gpu/intel.nix
./modules/sys/hw/misc/ios.nix
./modules/sys/nix.nix ./modules/sys/nix.nix
./modules/sys/perf.nix ./modules/sys/perf.nix
./modules/sys/pkgs.nix ./modules/sys/pkgs.nix
./modules/sys/rc/openssh.nix ./modules/sys/rc/openssh.nix
./modules/sys/rc/synergy.nix
./modules/sys/rc/sunshine.nix ./modules/sys/rc/sunshine.nix
./modules/sys/rgb.nix ./modules/sys/rgb.nix
./modules/sys/security.nix ./modules/sys/security.nix
@@ -463,5 +346,4 @@
# } # }
# ]; # ];
#}; #};
};
} }
+5
View File
@@ -0,0 +1,5 @@
{
services.arrpc = {
enable = true;
};
}
+3
View File
@@ -7,5 +7,8 @@
email = "k3t@k3t.dev"; email = "k3t@k3t.dev";
}; };
}; };
lfs = {
enable = true;
};
}; };
} }
+1 -1
View File
@@ -1,6 +1,6 @@
{ config, pkgs, ... }: { { config, pkgs, ... }: {
gtk = { gtk = {
enable = true; enable = false;
colorScheme = "dark"; colorScheme = "dark";
cursorTheme = { cursorTheme = {
name = "WhiteSur-cursors"; name = "WhiteSur-cursors";
+17
View File
@@ -0,0 +1,17 @@
{pkgs, ...}:
{
programs.lutris = {
enable = true;
winePackages = [ pkgs.wineWow64Packages.waylandFull pkgs.wineWow64Packages.stagingFull ];
protonPackages = [ pkgs.proton-ge-bin ];
steamPackage = pkgs.steam.override {
extraProfile = ''
# Allows Monado/WiVRn to be used
export PRESSURE_VESSEL_IMPORT_OPENXR_1_RUNTIMES=1
# Fixes timezones on VRChat
unset TZ
'';
};
};
}
+19 -1
View File
@@ -1,9 +1,27 @@
{pkgs, ...}:
{ {
imports = [ imports = [
./common.nix ./common.nix
./cfg/arrpc.nix
./cfg/keepassxc.nix ./cfg/keepassxc.nix
./cfg/kitty.nix ./cfg/kitty.nix
./cfg/gtk.nix #./cfg/gtk.nix
# excluded since there are issues with kde
./cfg/qbz.nix ./cfg/qbz.nix
./cfg/lutris.nix
];
home.packages = with pkgs; [
(deadbeef-with-plugins.override {
plugins = [
deadbeefPlugins.mpris2
deadbeefPlugins.lyricbar
deadbeefPlugins.statusnotifier
deadbeefPlugins.waveform-seekbar
deadbeefPlugins.vgmstream
deadbeefPlugins.headerbar-gtk3
];
})
]; ];
} }
@@ -0,0 +1,26 @@
From fe059b4c373639fc5d69067e62de3f2a0e44a037 Mon Sep 17 00:00:00 2001
From: Sefa Eyeoglu <contact@scrumplex.net>
Date: Fri, 17 Mar 2023 16:50:57 +0100
Subject: [PATCH] amdgpu: allow any ctx priority
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
---
drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c
index d2139ac12159..c7f1d36329c8 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c
@@ -107,7 +107,7 @@ static int amdgpu_ctx_priority_permit(struct drm_file *filp,
if (drm_is_current_master(filp))
return 0;
- return -EACCES;
+ return 0;
}
static enum amdgpu_gfx_pipe_priority amdgpu_ctx_prio_to_gfx_pipe_prio(int32_t prio)
--
2.39.2
@@ -0,0 +1,38 @@
{ pkgs
, lib
, kernel ? pkgs.linuxPackages_latest.kernel
}:
pkgs.stdenv.mkDerivation {
pname = "amdgpu-kernel-module";
inherit (kernel) src version postPatch nativeBuildInputs;
kernel_dev = kernel.dev;
kernelVersion = kernel.modDirVersion;
modulePath = "drivers/gpu/drm/amd/amdgpu";
buildPhase = ''
BUILT_KERNEL=$kernel_dev/lib/modules/$kernelVersion/build
cp $BUILT_KERNEL/Module.symvers .
cp $BUILT_KERNEL/.config .
cp $kernel_dev/vmlinux .
make "-j$NIX_BUILD_CORES" modules_prepare
make "-j$NIX_BUILD_CORES" M=$modulePath modules
'';
installPhase = ''
make \
INSTALL_MOD_PATH="$out" \
XZ="xz -T$NIX_BUILD_CORES" \
M="$modulePath" \
modules_install
'';
meta = {
description = "AMD GPU kernel module";
license = lib.licenses.gpl3;
};
}
+57
View File
@@ -4,6 +4,13 @@
{ config, pkgs, ... }: { config, pkgs, ... }:
#let
# amdgpu-kernel-module = pkgs.callPackage ./amdgpu-kernel-module.nix {
# Make sure the module targets the same kernel as your system is using.
# kernel = config.boot.kernelPackages.kernel;
# };
#in
{ {
imports = imports =
[ # Include the results of the hardware scan. [ # Include the results of the hardware scan.
@@ -12,9 +19,59 @@
networking.hostName = "TheBlackBox"; networking.hostName = "TheBlackBox";
# Linux and VR... nightmare below
#boot.extraModulePackages = [
# (amdgpu-kernel-module.overrideAttrs (_: {
# patches = [ ./amdgpu-cap_sys_nice_begone.patch ];
# }))
#];
# Synergy
#services.synergy.server.enable = true;
services.wivrn = {
enable = true;
openFirewall = true;
# Run WiVRn as a systemd service on startup
autoStart = true;
steam = {
enable = true;
importOXRRuntimes = true;
package = pkgs.steam.override {
extraProfile = ''
# Allows Monado/WiVRn to be used
export PRESSURE_VESSEL_IMPORT_OPENXR_1_RUNTIMES=1
# Fixes timezones on VRChat
unset TZ
'';
};
};
};
programs.alvr = {
enable = true;
openFirewall = true;
};
services.monado = {
enable = true;
defaultRuntime = true; # Register as default OpenXR runtime
};
systemd.user.services.monado.environment = {
STEAMVR_LH_ENABLE = "1";
XRT_COMPOSITOR_COMPUTE = "1";
};
users.users.k3t = { users.users.k3t = {
packages = with pkgs; [ packages = with pkgs; [
virt-viewer virt-viewer
fuse-overlayfs
fuse3
psmisc
dwarfs
wineWow64Packages.staging
]; ];
}; };
} }
+1 -1
View File
@@ -10,7 +10,7 @@
./hardware-configuration.nix ./hardware-configuration.nix
]; ];
networking.hostName = "T14"; # Define your hostname. networking.hostName = "ThinkPad"; # Define your hostname.
users.users.k3t = { users.users.k3t = {
packages = with pkgs; [ packages = with pkgs; [
+2 -19
View File
@@ -8,28 +8,11 @@
[ (modulesPath + "/installer/scan/not-detected.nix") [ (modulesPath + "/installer/scan/not-detected.nix")
]; ];
fileSystems."/" =
{ device = "/dev/disk/by-label/NixOS";
fsType = "btrfs";
options = [ "subvol=@" ];
};
fileSystems."/home" =
{ device = "/dev/disk/by-label/NixOS";
fsType = "btrfs";
options = [ "subvol=@home" ];
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/E0C2-A3A3";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
};
#swapDevices = #swapDevices =
# [ { device = "/dev/disk/by-uuid/fe32f9af-3382-4505-90e3-aaf1c41bf5d4"; } # [ { device = "/dev/disk/by-uuid/fe32f9af-3382-4505-90e3-aaf1c41bf5d4"; }
# ]; # ];
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
hardware.sensor.iio.enable = true;
} }
+45
View File
@@ -0,0 +1,45 @@
# Edit this configuration file to define what should be installed on
# your system. Help is available in the configuration.nix(5) man page, on
# https://search.nixos.org/options and in the NixOS manual (`nixos-help`).
{ config, lib, pkgs, inputs, ... }:
{
imports =
(lib.filesystem.listFilesRecursive ./services.d)
++ [ # Include the results of the hardware scan.
./hardware-configuration.nix
];
networking.hostName = "minizen"; # Define your hostname.
# podman
virtualisation.podman = {
enable = true;
autoPrune.enable = true;
dockerCompat = true; # optional; lets you use `docker` CLI
};
virtualisation.oci-containers.backend = "podman";
# Enable container name DNS for all Podman networks.
networking.firewall.interfaces = let
matchAll = if !config.networking.nftables.enable then "podman+" else "podman*";
in {
"${matchAll}".allowedUDPPorts = [ 53 ];
};
# List packages installed in system profile.
# You can use https://search.nixos.org/ to find more packages (and options).
environment.systemPackages = with pkgs; [
waypipe
];
# Open ports in the firewall.
networking.firewall.allowedTCPPorts = [ 80 443 25565 4433 9971 853 ];
networking.firewall.allowedUDPPorts = [ 443 24454 4433 9971 ];
# Copy the NixOS configuration file and link it from the resulting system
# (/run/current-system/configuration.nix). This is useful in case you
# accidentally delete configuration.nix.
# system.copySystemConfiguration = true;
}
+26
View File
@@ -0,0 +1,26 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{
imports =
[ (modulesPath + "/profiles/qemu-guest.nix")
];
boot.initrd.availableKernelModules = [ "xhci_pci" "virtio_pci" "virtio_scsi" "usbhid" "sr_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ ];
boot.extraModulePackages = [ ];
swapDevices = [ ];
# 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
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp7s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
}
+64
View File
@@ -0,0 +1,64 @@
{ config, lib, pkgs, ... }:
{
services.blocky = {
enable = true;
settings = {
certFile = "/etc/nixos/dns.crt";
keyFile = "/etc/nixos/dns.key";
caching = {
minTime = "5m";
maxTime = "30m";
prefetching = true;
};
ports = {
dns = 5353;
tls = 853;
http = 4000;
};
upstreams.groups.default = [
"https://dns.quad9.net/dns-query"
];
# For initially solving DoH/DoT Requests when no system Resolver is available.
bootstrapDns = {
upstream = "https://dns.quad9.net/dns-query";
ips = [ "9.9.9.9" "1.1.1.1" ];
};
#Enable Blocking of certain domains.
blocking = {
loading.refreshPeriod = "1h";
denylists = {
ads = [
"https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts"
"https://v.firebog.net/hosts/AdguardDNS.txt"
"https://v.firebog.net/hosts/Admiral.txt"
"https://raw.githubusercontent.com/anudeepND/blacklist/master/adservers.txt"
"https://raw.githubusercontent.com/FadeMind/hosts.extras/master/UncheckyAds/hosts"
];
tracking = [
"https://v.firebog.net/hosts/Easyprivacy.txt"
"https://v.firebog.net/hosts/Prigent-Ads.txt"
"https://raw.githubusercontent.com/crazy-max/WindowsSpyBlocker/master/data/hosts/spy.txt"
"https://hostfiles.frogeye.fr/firstparty-trackers-hosts.txt"
"https://raw.githubusercontent.com/FadeMind/hosts.extras/master/add.2o7Net/hosts"
];
sus = [
"https://someonewhocares.org/hosts/zero/hosts"
"https://raw.githubusercontent.com/RooneyMcNibNug/pihole-stuff/master/SNAFU.txt"
"https://raw.githubusercontent.com/matomo-org/referrer-spam-blacklist/master/spammers.txt"
"https://raw.githubusercontent.com/FadeMind/hosts.extras/master/add.Spam/hosts"
"https://raw.githubusercontent.com/PolishFiltersTeam/KADhosts/master/KADhosts.txt"
"https://raw.githubusercontent.com/matomo-org/referrer-spam-blacklist/master/spammers.txt"
];
};
#Configure what block categories are used
clientGroupsBlock = {
default = [ "ads" "tracking" "sus" ];
};
};
};
};
}
+25
View File
@@ -0,0 +1,25 @@
{ config, lib, pkgs, ... }:
{
services.gonic = {
enable = true;
settings = {
music-path = [
"/home/k3t/Music"
];
playlists-path = "/home/k3t/Playlists";
podcast-path = "/home/k3t/Podcasts";
};
};
services.nginx.virtualHosts."fckurspotify.lostin06.duckdns.org" = {
enableACME = true;
forceSSL = true;
locations."/" = {
proxyPass = "http://127.0.0.1:4747";
proxyWebsockets = true;
recommendedProxySettings = true;
};
};
}
+20
View File
@@ -0,0 +1,20 @@
{ config, pkgs, lib, ... }:
{
virtualisation.oci-containers.containers."minecraft-server" = {
image = "ghcr.io/graalvm/graalvm-community:25";
volumes = [
"/var/lib/minecraft:/data:rw"
];
ports = [
"25565:25565/tcp"
"24454:24454/udp"
];
extraOptions = [
"--tty"
"--interactive"
];
entrypoint = "/data/run.sh";
log-driver = "journald";
};
}
+17
View File
@@ -0,0 +1,17 @@
{ config, lib, pkgs, ... }:
{
services.nginx = {
enable = true;
recommendedGzipSettings = true;
recommendedOptimisation = true;
recommendedProxySettings = true;
recommendedTlsSettings = true;
};
security.acme = {
acceptTerms = true;
defaults.email = "k3t@k3t.dev";
};
}
+24 -3
View File
@@ -7,12 +7,27 @@
{ {
imports = imports =
(lib.filesystem.listFilesRecursive ./services.d) (lib.filesystem.listFilesRecursive ./services.d)
++ (lib.filesystem.listFilesRecursive ./services.d/matrix.d)
++ [ # Include the results of the hardware scan. ++ [ # Include the results of the hardware scan.
./hardware-configuration.nix ./hardware-configuration.nix
]; ];
networking.hostName = "nixcloud"; # Define your hostname. networking.hostName = "nixcloud"; # Define your hostname.
# podman
virtualisation.podman = {
enable = true;
autoPrune.enable = true;
dockerCompat = true; # optional; lets you use `docker` CLI
};
virtualisation.oci-containers.backend = "podman";
# Enable container name DNS for all Podman networks.
networking.firewall.interfaces = let
matchAll = if !config.networking.nftables.enable then "podman+" else "podman*";
in {
"${matchAll}".allowedUDPPorts = [ 53 ];
};
# Define a user account. Don't forget to set a password with passwd. # Define a user account. Don't forget to set a password with passwd.
users.users = { users.users = {
@@ -36,9 +51,15 @@
# List packages installed in system profile. # List packages installed in system profile.
# You can use https://search.nixos.org/ to find more packages (and options). # You can use https://search.nixos.org/ to find more packages (and options).
#environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
# wget waypipe
#]; ];
# enable mesa
hardware.graphics.enable = true;
# desktop in the sky
services.desktopManager.plasma6.enable = true;
# Open ports in the firewall. # Open ports in the firewall.
+1 -1
View File
@@ -12,7 +12,7 @@
prefetching = true; prefetching = true;
}; };
ports = { ports = {
dns = 53; dns = 5353;
tls = 853; tls = 853;
http = 4000; http = 4000;
}; };
@@ -0,0 +1,22 @@
{
virtualisation.oci-containers.containers = {
"matrix-gomuks" = {
image = "dock.mau.dev/gomuks/gomuks";
volumes = [
"/var/lib/gomuks:/data:rw"
];
ports = [
"127.0.0.1:29325:29325/tcp"
];
log-driver = "journald";
};
};
services.nginx.virtualHosts."gomuks.k3t.dev" = {
enableACME = true;
forceSSL = true;
locations."/" = {
proxyPass = "http://127.0.0.1:29325";
proxyWebsockets = true;
};
};
}
@@ -0,0 +1,46 @@
{
services.matrix-continuwuity = {
enable = true;
settings = {
admin = {
enable = true;
};
global = {
address = [ "0.0.0.0" ];
server_name = "k3t.dev";
trusted_servers = [
"matrix.org"
"constellatory.net"
"unredacted.org"
"tchncs.de"
];
};
};
};
services.nginx.virtualHosts = {
"k3t.dev".locations."/.well-known/matrix/client" = {
return = ''
200 '{"m.homeserver":{"base_url":"https://k3t.dev"},"m.identity_server":{"base_url":"https://vector.im"}}'
'';
extraConfig = ''
default_type application/json;
'';
};
"k3t.dev".locations."/.well-known/matrix/server" = {
return = ''
200 '{"m.server": "k3t.dev:443"}'
'';
extraConfig = ''
default_type application/json;
'';
};
"k3t.dev".locations."/_matrix/" = {
proxyPass = "http://127.0.0.1:6167";
proxyWebsockets = true;
};
"k3t.dev".locations."/_continuwuity/" = {
proxyPass = "http://127.0.0.1:6167";
proxyWebsockets = true;
};
};
}
@@ -0,0 +1,104 @@
# Auto-generated by compose2nix.
{ pkgs, lib, config, ... }:
{
# Containers
virtualisation.oci-containers.containers = {
"matrix-mautrix-bluesky" = {
image = "dock.mau.dev/mautrix/bluesky:latest";
volumes = [
"/var/lib/mautrix/bluesky:/data:rw"
];
ports = [
"127.0.0.1:29340:29340/tcp"
];
log-driver = "journald";
};
"matrix-mautrix-discord" = {
image = "dock.mau.dev/mautrix/discord:latest";
volumes = [
"/var/lib/mautrix/discord:/data:rw"
];
ports = [
"127.0.0.1:29334:29334/tcp"
];
log-driver = "journald";
};
"matrix-mautrix-linkedin" = {
image = "dock.mau.dev/mautrix/linkedin:latest";
volumes = [
"/var/lib/mautrix/linkedin:/data:rw"
];
ports = [
"127.0.0.1:29341:29341/tcp"
];
log-driver = "journald";
};
"matrix-mautrix-meta" = {
image = "dock.mau.dev/mautrix/meta:latest";
volumes = [
"/var/lib/mautrix/meta:/data:rw"
];
ports = [
"127.0.0.1:29319:29319/tcp"
];
log-driver = "journald";
};
"matrix-mautrix-instagram" = {
image = "dock.mau.dev/mautrix/meta:ig-latest";
volumes = [
"/var/lib/mautrix/instagram:/data:rw"
];
ports = [
"127.0.0.1:29330:29330/tcp"
];
log-driver = "journald";
};
"matrix-mautrix-signal" = {
image = "dock.mau.dev/mautrix/signal:latest";
volumes = [
"/var/lib/mautrix/signal:/data:rw"
];
ports = [
"127.0.0.1:29328:29328/tcp"
];
log-driver = "journald";
};
"matrix-mautrix-twitter" = {
image = "dock.mau.dev/mautrix/twitter:latest";
volumes = [
"/var/lib/mautrix/twitter:/data:rw"
];
ports = [
"127.0.0.1:29327:29327/tcp"
];
log-driver = "journald";
};
"matrix-mautrix-whatsapp" = {
image = "dock.mau.dev/mautrix/whatsapp:latest";
volumes = [
"/var/lib/mautrix/whatsapp:/data:rw"
];
ports = [
"127.0.0.1:29318:29318/tcp"
];
log-driver = "journald";
};
};
services.nginx.virtualHosts."discord-media-mxc.k3t.dev" = {
enableACME = true;
forceSSL = true;
locations."/" = {
proxyPass = "http://127.0.0.1:29334";
proxyWebsockets = true;
};
};
# Allow podman containers to access continuwuity
networking.firewall.interfaces = let
matchAll = if !config.networking.nftables.enable then "podman+" else "podman*";
in {
"${matchAll}".allowedTCPPorts = [ 6167 ];
};
}
+16 -37
View File
@@ -1,41 +1,20 @@
{ config, pkgs, ... }: { config, pkgs, lib, ... }:
{ {
virtualisation.podman = { virtualisation.oci-containers.containers."minecraft-server" = {
enable = true; image = "ghcr.io/graalvm/graalvm-community:25";
autoPrune.enable = true; volumes = [
dockerCompat = true; # optional; lets you use `docker` CLI "/var/lib/minecraft:/data:rw"
};
systemd.services.minecraft-container = {
description = "Minecraft Server Container (GraalVM JVM 21)";
after = [ "network-online.target" ];
wants = [ "network-online.target" ];
serviceConfig = {
ExecStart = ''
${pkgs.podman}/bin/podman run \
--rm \
--name minecraft-server \
-v /var/lib/minecraft:/data \
-p 25565:25565 \
-p 24454:24454/udp \
ghcr.io/graalvm/graalvm-community:8 \
/data/run.sh
'';
ExecStop = "${pkgs.podman}/bin/podman stop minecraft-server";
Restart = "always";
RestartSec = "10s";
};
# Ensure the directory exists
preStart = ''
mkdir -p /var/lib/minecraft
'';
wantedBy = [ "multi-user.target" ];
};
# Give Podman permission to access persistent storage
systemd.tmpfiles.rules = [
"d /var/lib/minecraft 0755 root root"
]; ];
ports = [
"25565:25565/tcp"
"24454:24454/udp"
];
extraOptions = [
"--tty"
"--interactive"
];
entrypoint = "/data/run.sh";
log-driver = "journald";
};
} }
+1 -1
View File
@@ -11,7 +11,7 @@
# Shows battery charge of connected devices on supported # Shows battery charge of connected devices on supported
# Bluetooth adapters. Defaults to 'false'. # Bluetooth adapters. Defaults to 'false'.
Experimental = true; Experimental = true;
KernelExperimental = true; KernelExperimental = "6fbaf188-05e0-496a-9885-d6ddfdb4e03e,a6695ace-ee7f-4fb9-881a-5fac66c629af";
# When enabled other devices can connect faster to us, however # When enabled other devices can connect faster to us, however
# the tradeoff is increased power consumption. Defaults to # the tradeoff is increased power consumption. Defaults to
# 'false'. # 'false'.
-2
View File
@@ -1,8 +1,6 @@
{ pkgs, lib, ... }: { pkgs, lib, ... }:
{ {
# gnupg to fix conflict between kde
programs.gnupg.agent.pinentryPackage = pkgs.pinentry-gtk2;
# X11 # X11
services.xserver = { services.xserver = {
enable = true; enable = true;
+7
View File
@@ -5,4 +5,11 @@
desktopManager.plasma6.enable = true; desktopManager.plasma6.enable = true;
displayManager.plasma-login-manager.enable = true; displayManager.plasma-login-manager.enable = true;
}; };
environment.systemPackages = with pkgs; [
kdePackages.qtwebsockets
qt5.qtwebsockets
qt6.qtwebsockets
qt6Packages.qtwebsockets
waypipe
];
} }
-1
View File
@@ -17,7 +17,6 @@
joplin-desktop joplin-desktop
qbittorrent qbittorrent
kdePackages.kate kdePackages.kate
jellyfin-desktop
flatpak flatpak
grayjay grayjay
vscode.fhs vscode.fhs
+13
View File
@@ -1,13 +1,26 @@
{ pkgs, ... }: { pkgs, ... }:
{ {
hardware.steam-hardware.enable = true;
programs.steam = { programs.steam = {
enable = true; enable = true;
gamescopeSession.enable = true; gamescopeSession.enable = true;
extest.enable = true;
extraCompatPackages = with pkgs; [ extraCompatPackages = with pkgs; [
proton-ge-bin proton-ge-bin
dwproton-bin
steam-play-none
]; ];
dedicatedServer.openFirewall = true;
localNetworkGameTransfers.openFirewall = true; localNetworkGameTransfers.openFirewall = true;
package = pkgs.steam.override {
extraProfile = ''
# Allows Monado/WiVRn to be used
export PRESSURE_VESSEL_IMPORT_OPENXR_1_RUNTIMES=1
# Fixes timezones on VRChat
unset TZ
'';
};
}; };
programs.gamemode.enable = true; programs.gamemode.enable = true;
programs.gamescope = { programs.gamescope = {
+6
View File
@@ -0,0 +1,6 @@
{
services = {
localtimed.enable = true;
geoclue2.enable = true;
};
}
+9
View File
@@ -0,0 +1,9 @@
{pkgs, ...}:
{
virtualisation.waydroid = {
enable = true;
package = pkgs.waydroid-nftables;
};
environment.systemPackages = [ pkgs.wl-clipboard ];
}
+6 -1
View File
@@ -1,8 +1,13 @@
{ pkgs, ... }: { pkgs, ... }:
{ {
xdg.portal = { xdg = {
mime = {
enable = true;
};
portal = {
enable = true; enable = true;
extraPortals = [ pkgs.xdg-desktop-portal-gtk ]; extraPortals = [ pkgs.xdg-desktop-portal-gtk ];
}; };
};
} }
+6 -1
View File
@@ -1,5 +1,9 @@
{ {
networking.firewall = { networking = {
nftables = {
enable = false;
};
firewall = {
enable = true; enable = true;
allowedTCPPorts = [ 4713 ]; allowedTCPPorts = [ 4713 ];
#allowedUDPPorts = [ 80 443 ]; #allowedUDPPorts = [ 80 443 ];
@@ -10,4 +14,5 @@
{ from = 8000; to = 9000; } { from = 8000; to = 9000; }
]; ];
}; };
};
} }
@@ -0,0 +1,12 @@
{
fileSystems."/" =
{ device = "/dev/disk/by-label/NixOS";
fsType = "btrfs";
options = [ "discard" "compress" "subvol=@" ];
};
fileSystems."/home" =
{ device = "/dev/disk/by-label/NixOS";
fsType = "btrfs";
options = [ "discard" "compress" "subvol=@home" ];
};
}
+1 -1
View File
@@ -2,6 +2,6 @@
fileSystems."/" = fileSystems."/" =
{ device = "/dev/disk/by-label/NixOS"; { device = "/dev/disk/by-label/NixOS";
fsType = "btrfs"; fsType = "btrfs";
options = [ "discard" ]; options = [ "discard" "compress" ];
}; };
} }
+16 -5
View File
@@ -1,9 +1,20 @@
{ pkgs, ... }: { pkgs, ... }:
{ {
hardware.cpu.amd.updateMicrocode = true; hardware.cpu.amd = {
boot.kernelPackages = pkgs.linuxPackages_xanmod_latest; ryzen-smu.enable = true;
boot.binfmt.preferStaticEmulators = true; updateMicrocode = true;
boot.binfmt.emulatedSystems = [ "aarch64-linux" "x86_64-windows" ]; };
boot.kernelModules = [ "kvm-amd" ]; boot = {
binfmt = {
preferStaticEmulators = true;
emulatedSystems = [ "aarch64-linux" "x86_64-windows" ];
};
kernelModules = [ "kvm-amd" ];
kernelPackages = pkgs.linuxPackages_xanmod_latest;
};
programs = {
ryzen-monitor-ng.enable = true;
corectrl.enable = true;
};
} }
+12 -4
View File
@@ -2,8 +2,16 @@
{ {
hardware.cpu.intel.updateMicrocode = true; hardware.cpu.intel.updateMicrocode = true;
boot.kernelPackages = pkgs.linuxPackages_xanmod_latest; boot = {
boot.binfmt.preferStaticEmulators = true; binfmt = {
boot.binfmt.emulatedSystems = [ "aarch64-linux" "x86_64-windows" ]; preferStaticEmulators = true;
boot.kernelModules = [ "kvm-intel" ]; emulatedSystems = [ "aarch64-linux" "x86_64-windows" ];
};
kernelModules = [ "kvm-intel" ];
kernelPackages = pkgs.linuxPackages_xanmod_latest;
};
services = {
thermald.enable = true;
throttled.enable = true;
};
} }
+14 -3
View File
@@ -1,12 +1,23 @@
{ pkgs, ... }: { pkgs, ... }:
{ {
# Graphics
hardware.enableRedistributableFirmware = true; services.lact.enable = true;
hardware.graphics = {
nixpkgs.config.rocmSupport = true;
hardware = {
amdgpu = {
overdrive.enable = true;
opencl.enable = true;
initrd.enable = true;
zluda.enable = true;
};
enableRedistributableFirmware = true;
graphics = {
enable = true; enable = true;
enable32Bit = true; enable32Bit = true;
extraPackages = with pkgs; [ extraPackages = with pkgs; [
vkbasalt vkbasalt
]; ];
}; };
};
} }
+6 -2
View File
@@ -2,8 +2,10 @@
{ {
boot.kernelParams = [ "i915.enable_guc=3" ]; boot.kernelParams = [ "i915.enable_guc=3" ];
# Graphics # Graphics
hardware.enableRedistributableFirmware = true; hardware = {
hardware.graphics = { enableRedistributableFirmware = true;
intel-gpu-tools.enable = true;
graphics = {
enable = true; enable = true;
enable32Bit = true; enable32Bit = true;
extraPackages = with pkgs; [ extraPackages = with pkgs; [
@@ -18,4 +20,6 @@
vkbasalt vkbasalt
]; ];
}; };
};
virtualisation.kvmgt.enable = true;
} }
+22
View File
@@ -0,0 +1,22 @@
{ pkgs, ... }:
{
nixpkgs.config.rocmSupport = true;
hardware = {
enableRedistributableFirmware = true;
graphics = {
enable = true;
enable32Bit = true;
extraPackages = with pkgs; [
vkbasalt
mangohud
lsfg-vk
];
};
nvidia = {
open = true;
modesetting.enable = true;
};
};
services.xserver.videoDrivers = [ "nvidia" ];
}
+6
View File
@@ -0,0 +1,6 @@
{
hardware.keyboard.qmk = {
enable = true;
keychronSupport = true;
};
}
+6
View File
@@ -0,0 +1,6 @@
{
hardware.opentabletdriver = {
enable = true;
daemon.enable = true;
};
}
+12
View File
@@ -0,0 +1,12 @@
{
hardware = {
xone.enable = true;
xpad-noone.enable = true;
xpadneo = {
enable = true;
settings = {
disable_deadzones = 1;
};
};
};
}
+12
View File
@@ -0,0 +1,12 @@
{pkgs, ...}:
{
services.usbmuxd = {
enable = true;
package = pkgs.usbmuxd2;
};
environment.systemPackages = with pkgs; [
libimobiledevice
ifuse # optional, to mount using 'ifuse'
];
}
+36 -7
View File
@@ -8,17 +8,46 @@
}; };
}; };
services.fstrim.enable = true; services.fstrim.enable = true;
services.system76-scheduler.enable = true; services.system76-scheduler = {
#services.thermald.enable = true; enable = true;
settings = {
processScheduler = {
foregroundBoost = {
#background = {
# ioClass = "idle";
#};
foreground = {
ioClass = "realtime";
class = "fifo";
};
};
pipewireBoost.profile = {
ioClass = "realtime";
class = "fifo";
};
};
};
};
services.power-profiles-daemon.enable = true; services.power-profiles-daemon.enable = true;
systemd.coredump.enable = false; systemd.coredump = { # https://discourse.nixos.org/t/how-to-completely-disable-coredump/77335/11
enable = true;
settings.Coredump = {
Storage = "none";
ProcessSizeMax = "0";
};
};
zramSwap = { zramSwap = {
enable = true; enable = true;
algorithm = "zstd"; algorithm = "zstd";
memoryPercent = 90; memoryPercent = 90;
}; };
services.udev.extraRules = '' hardware.block.scheduler = {
ACTION=="add|change", KERNEL=="nvme[0-9]*", ATTR{queue/scheduler}="kyber" "mmcblk[0-9]*" = "bfq";
ACTION=="add|change", KERNEL=="sd[a-z]", ATTR{queue/rotational}=="0", ATTR{queue/scheduler}="kyber" "nvme[0-9]*" = "kyber";
''; "sd[a-z]" = "kyber";
};
services.scx = {
enable = true;
scheduler = "scx_cake";
};
} }
-1
View File
@@ -7,7 +7,6 @@
openssl openssl
topgrade topgrade
htop htop
mosh
btop btop
python314 python314
wget2 wget2
+14 -1
View File
@@ -1,6 +1,19 @@
#{config, ...}:
{ {
#programs.ssh = {
# startAgent = true;
# agentPKCS11Whitelist = "${config.security.tpm2.pkcs11.package}/lib/*,/run/current-system/sw/lib/*";
#};
programs.mosh = {
enable = true;
openFirewall = true;
withUtempter = true;
};
services.openssh = { services.openssh = {
enable = true; enable = true;
settings.PasswordAuthentication = true; settings = {
GatewayPorts = "yes";
};
}; };
} }
+9
View File
@@ -0,0 +1,9 @@
{
services.synergy = {
client = {
#enable = true;
serverAddress = "theblackbox";
};
#server.enable = true;
};
}
+6
View File
@@ -0,0 +1,6 @@
{
services.x2goserver = {
enable = true;
superenicer.enable = true;
};
}
+20
View File
@@ -1,8 +1,28 @@
{pkgs, ...}:
{ {
programs.gnupg.agent = {
enable = true;
enableSSHSupport = true;
pinentryPackage = pkgs.pinentry-qt;
};
services.pcscd.enable = true;
services.udev.packages = [ pkgs.yubikey-personalization ];
security = { security = {
sudo.execWheelOnly = true; sudo.execWheelOnly = true;
polkit.enable = true; polkit.enable = true;
protectKernelImage = true; protectKernelImage = true;
#pam.yubico = {
# enable = true;
# debug = true;
# mode = "challenge-response";
# id = [ "19694730" ];
#};
tpm2 = {
enable = true;
pkcs11.enable = true;
tctiEnvironment.enable = true;
};
}; };
system.autoUpgrade = { system.autoUpgrade = {
enable = true; enable = true;
+2 -1
View File
@@ -1,3 +1,4 @@
{lib, ...}:
{ {
# NTP configuration - NIST atomic clocks # NTP configuration - NIST atomic clocks
services.timesyncd = { services.timesyncd = {
@@ -14,7 +15,7 @@
"0.pool.ntp.org" "0.pool.ntp.org"
]; ];
}; };
time.timeZone = "America/Denver"; time.timeZone = lib.mkDefault "America/Denver";
i18n.defaultLocale = "en_US.UTF-8"; i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = { i18n.extraLocaleSettings = {
LC_ADDRESS = "en_US.UTF-8"; LC_ADDRESS = "en_US.UTF-8";
-3
View File
@@ -1,3 +0,0 @@
{
}
+1 -1
View File
@@ -2,7 +2,7 @@
users.users.juliet = { users.users.juliet = {
description = "Juliet"; description = "Juliet";
isNormalUser = true; isNormalUser = true;
extraGroups = [ "audio" "video" "bluetooth" "wheel" "input" "networkmanager" "scanner" "lp" ]; extraGroups = [ "audio" "video" "bluetooth" "wheel" "input" "networkmanager" "scanner" "lp" "tss" ];
initialPassword = "password"; initialPassword = "password";
linger = true; linger = true;
}; };
+3 -2
View File
@@ -2,11 +2,12 @@
users.users.k3t = { users.users.k3t = {
description = "Kai Moore"; description = "Kai Moore";
isNormalUser = true; isNormalUser = true;
extraGroups = [ "audio" "video" "bluetooth" "wheel" "input" "networkmanager" "scanner" "lp" ]; extraGroups = [ "audio" "video" "bluetooth" "wheel" "input" "networkmanager" "scanner" "lp" "tss" ];
initialPassword = "password"; initialPassword = "password";
linger = true; linger = true;
openssh.authorizedKeys.keys = [ openssh.authorizedKeys.keys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIG6evv6KcTvFDp4EeO9mMAa2Pb7yYZ/uTNM6TrVt5nKc k3t@DESKTOP-GTFSBKP" # TBB Win10 "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIG6evv6KcTvFDp4EeO9mMAa2Pb7yYZ/uTNM6TrVt5nKc k3t@TheBlackBox" # TBB
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIO1DAk3isgJPJbo19Kto6EnZdDMIe6F6D/BLyhhQPmBd k3t@T14" # T14
]; ];
}; };
} }