diff --git a/extras/dev.nix b/extras/dev.nix index c075f0c..59169b6 100644 --- a/extras/dev.nix +++ b/extras/dev.nix @@ -3,6 +3,17 @@ pkgs, ... }: { + services.dockerRegistry = { + enable = true; + listenAddress = "0.0.0.0"; + port = 5000; + storagePath = "/var/lob/docker-registry"; + enableDelete = true; + enableGarbageCollect = true; + garbageCollectDates = "daily"; + openFirewall = false; + }; + boot.kernel.sysctl."vm.overcommit_memory" = "1"; # systemd.user.services.lspmux = { @@ -15,7 +26,8 @@ # }; programs.qgroundcontrol.enable = true; environment.systemPackages = with pkgs; [ - chromium + foxglove-studio + foxglove-cli claude-code # keep-sorted start sticky_comments=no # act @@ -67,11 +79,11 @@ wild # keep-sorted end - # alloy - bun - docker-compose - ngrok - deno + # # alloy + # bun + # docker-compose + # ngrok + # deno # # databases # sqlite diff --git a/flake.lock b/flake.lock index e8620bb..c89c9a3 100644 --- a/flake.lock +++ b/flake.lock @@ -30,12 +30,12 @@ "nixpkgs": "nixpkgs_3" }, "locked": { - "lastModified": 1778179392, - "narHash": "sha256-W6zorvjBYbzMNvqKIqCdpDF4rq3gj50Xximl56YM9/I=", - "rev": "efd54faa68be8cd777b5c28cab11e638998a0853", - "revCount": 416, + "lastModified": 1781815324, + "narHash": "sha256-5pDiPOe2tLKDOH59TkzP3MNiCCCbGxw3giDyRrSdP4E=", + "rev": "fdef7e382e042b1fe418f65770c3acda5933b155", + "revCount": 422, "type": "tarball", - "url": "https://api.flakehub.com/f/pinned/DeterminateSystems/determinate/0.1.416%2Brev-efd54faa68be8cd777b5c28cab11e638998a0853/019e03c3-8bbc-7443-bd6d-c787773c6154/source.tar.gz" + "url": "https://api.flakehub.com/f/pinned/DeterminateSystems/determinate/0.1.422%2Brev-fdef7e382e042b1fe418f65770c3acda5933b155/019edc7b-7246-7e91-b54e-dcdac2728f77/source.tar.gz" }, "original": { "type": "tarball", @@ -45,37 +45,37 @@ "determinate-nixd-aarch64-darwin": { "flake": false, "locked": { - "narHash": "sha256-z4mCqKI3Qd6weuHrlfzGccJG0giym/VJhKv20ijRSs0=", + "narHash": "sha256-pQ7YeoB96bBl3iJGRdUWjdOFwahPUMwNN1yl9fwJufY=", "type": "file", - "url": "https://install.determinate.systems/determinate-nixd/tag/v3.20.0/macOS" + "url": "https://install.determinate.systems/determinate-nixd/tag/v3.21.2/macOS" }, "original": { "type": "file", - "url": "https://install.determinate.systems/determinate-nixd/tag/v3.20.0/macOS" + "url": "https://install.determinate.systems/determinate-nixd/tag/v3.21.2/macOS" } }, "determinate-nixd-aarch64-linux": { "flake": false, "locked": { - "narHash": "sha256-yW+VNepSRytzfanSssPMJPvwioCcmlZYaBX8++UFkAk=", + "narHash": "sha256-t6Tc358tx16GFely1je18dmrfB8Wv1FkV6nRnU7ITYY=", "type": "file", - "url": "https://install.determinate.systems/determinate-nixd/tag/v3.20.0/aarch64-linux" + "url": "https://install.determinate.systems/determinate-nixd/tag/v3.21.2/aarch64-linux" }, "original": { "type": "file", - "url": "https://install.determinate.systems/determinate-nixd/tag/v3.20.0/aarch64-linux" + "url": "https://install.determinate.systems/determinate-nixd/tag/v3.21.2/aarch64-linux" } }, "determinate-nixd-x86_64-linux": { "flake": false, "locked": { - "narHash": "sha256-+L102C3Hhkd1GlXmRm2eLTLsZKBxEvooiQZFqQRlBf0=", + "narHash": "sha256-M5e/05UlhljIuqS2ZMozD3OJ2MTTYol9SxQwqrzJdkk=", "type": "file", - "url": "https://install.determinate.systems/determinate-nixd/tag/v3.20.0/x86_64-linux" + "url": "https://install.determinate.systems/determinate-nixd/tag/v3.21.2/x86_64-linux" }, "original": { "type": "file", - "url": "https://install.determinate.systems/determinate-nixd/tag/v3.20.0/x86_64-linux" + "url": "https://install.determinate.systems/determinate-nixd/tag/v3.21.2/x86_64-linux" } }, "disko": { @@ -85,11 +85,11 @@ ] }, "locked": { - "lastModified": 1779226674, - "narHash": "sha256-wuOkjI6pRiN4sEn/EPBRnNW5cmcpvd7xtIM8y5LooAs=", + "lastModified": 1781152676, + "narHash": "sha256-RxWs5ND31KzTG7wvMM+PMfUjyNpmIEr999lqNARaM5o=", "owner": "nix-community", "repo": "disko", - "rev": "65fb947964bd44fc0008faf77d1fcb7a9f40bb32", + "rev": "ff8702b4de27f72b4c78573dfb89ec74e36abdf1", "type": "github" }, "original": { @@ -190,11 +190,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1778551011, - "narHash": "sha256-woJV7tJwwzjR0xWDNuGpwMENe/OEMAdSGg+nqWs9tUE=", + "lastModified": 1781971804, + "narHash": "sha256-sZ3m0vu/qNIip9S+fm/6LwvgwJNRNFzdozg95oFKfgg=", "owner": "helix-editor", "repo": "helix", - "rev": "8c41b11607924f7584b77c8a6e6b16439a2f559f", + "rev": "d2fdf3f3c788f8fb715caf6d2f94d71b984da6cd", "type": "github" }, "original": { @@ -231,11 +231,11 @@ ] }, "locked": { - "lastModified": 1779213149, - "narHash": "sha256-Cf+p/T4Z3n9Sw0TiR3kQaIwQI+/hfvLJcoTzeq6yS3E=", + "lastModified": 1781980822, + "narHash": "sha256-UF4TqfMJCYOKVhLqgWnLZIdFm///wbUGlV0HyB2wHRg=", "owner": "nix-community", "repo": "home-manager", - "rev": "bd868f769a69d3b6091a1da68a75cb83a181033c", + "rev": "8695ecb389cb43449fba0494ffc21065c7cde39d", "type": "github" }, "original": { @@ -252,11 +252,11 @@ ] }, "locked": { - "lastModified": 1778805320, - "narHash": "sha256-nGFJ01m2CTBKD4ABtcY4vLhHrRN91LKr/pn41PcU78A=", + "lastModified": 1781497404, + "narHash": "sha256-9GAF8sSsnkyCVCWkomXR0T+zdSxyUlfPt6neQidimdg=", "owner": "nix-community", "repo": "home-manager", - "rev": "9846abe15e7d0d36b8acbd4d05f2b87461744c92", + "rev": "1285cd3d6882a9847f2d56ed5541b3350c8a6162", "type": "github" }, "original": { @@ -295,12 +295,12 @@ "nixpkgs-regression": "nixpkgs-regression" }, "locked": { - "lastModified": 1778177425, - "narHash": "sha256-oyHvP5HDRe59opmjTrq2ED9lh+R9FrHyaCGPPNfBqWM=", - "rev": "f0ccb960d3ad5bff28acd9cabf8bdef885b5d52f", - "revCount": 25858, + "lastModified": 1780939209, + "narHash": "sha256-/JuW5C6sWuC836Y9b7hga3ZvhRiY4k4Zs73RRg5KVWM=", + "rev": "952beffe9c45ed245d30209d4f17cf1d26654a2a", + "revCount": 26044, "type": "tarball", - "url": "https://api.flakehub.com/f/pinned/DeterminateSystems/nix-src/3.20.0/019e03bc-3f83-7833-aba3-b691ef4956c7/source.tar.gz" + "url": "https://api.flakehub.com/f/pinned/DeterminateSystems/nix-src/3.21.1/019ea860-2acd-7680-ae61-10f9574b2694/source.tar.gz" }, "original": { "type": "tarball", @@ -309,16 +309,16 @@ }, "nixos": { "locked": { - "lastModified": 1779102034, - "narHash": "sha256-vZJZjLo513IeI8hjzHFc6TDezUd4uCE2Eq4SNO3DNNg=", + "lastModified": 1781216227, + "narHash": "sha256-9mUW6gNwoN2SWc/l0fW4svPNOulXLl8ijqKyeSOGgJE=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "687f05a9184cad4eaf905c48b63649e3a86f5433", + "rev": "a0374025a863d007d98e3297f6aa46cc3141c2f0", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-25.11", + "ref": "nixos-26.05", "repo": "nixpkgs", "type": "github" } @@ -339,12 +339,15 @@ } }, "nixos-hardware": { + "inputs": { + "nixpkgs": "nixpkgs_4" + }, "locked": { - "lastModified": 1779258371, - "narHash": "sha256-j1iZsLy6oFApqR1oiDmHhvkwxXqcNi0aoSJj643LuwU=", + "lastModified": 1781622756, + "narHash": "sha256-JrPh4M6S7aPsEE9tOENuZrxC6o2szSLlK+t4+nLke9s=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "c97bc4d15bd3473dd095e8e8ba57330ab1943a77", + "rev": "08018c72174a4df5657f8d94178ac69fb9c243e5", "type": "github" }, "original": { @@ -434,12 +437,12 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1777826146, - "narHash": "sha256-wQ/iN5Zp5VIa3ebBibijPnLyKhor+xEbDy4d0goa9Zs=", - "rev": "73c703c22422b8951895a960959dbbaca7296492", - "revCount": 991389, + "lastModified": 1780930886, + "narHash": "sha256-rppURzHviaQN131F+nLiLdGfcb0uCd9gGP0E5+iw9MI=", + "rev": "8c3cede7ddc26bd659d2d383b5610efbd2c7a16e", + "revCount": 1012902, "type": "tarball", - "url": "https://api.flakehub.com/f/pinned/DeterminateSystems/nixpkgs-weekly/0.1.991389%2Brev-73c703c22422b8951895a960959dbbaca7296492/019df6c8-934b-7d40-b402-027bb5def30f/source.tar.gz" + "url": "https://api.flakehub.com/f/pinned/DeterminateSystems/nixpkgs-weekly/0.1.1012902%2Brev-8c3cede7ddc26bd659d2d383b5610efbd2c7a16e/019eab22-bd1e-7e40-b919-277db893c789/source.tar.gz" }, "original": { "type": "tarball", @@ -448,11 +451,24 @@ }, "nixpkgs_4": { "locked": { - "lastModified": 1778869304, - "narHash": "sha256-30sZNZoA1cqF5JNO9fVX+wgiQYjB7HJqqJ4ztCDeBZE=", + "lastModified": 1767892417, + "narHash": "sha256-8bW3q88CEg2u4hSP66Vf4lpbLonHz7hqDNBMcCY7E9U=", + "rev": "3497aa5c9457a9d88d71fa93a4a8368816fbeeba", + "type": "tarball", + "url": "https://releases.nixos.org/nixos/unstable/nixos-26.05pre924538.3497aa5c9457/nixexprs.tar.xz" + }, + "original": { + "type": "tarball", + "url": "https://channels.nixos.org/nixos-unstable/nixexprs.tar.xz" + } + }, + "nixpkgs_5": { + "locked": { + "lastModified": 1781577229, + "narHash": "sha256-lrp67w8AulE9Ks53n27I45ADSzbOCn4H+CNW1Ck8B+8=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "d233902339c02a9c334e7e593de68855ad26c4cb", + "rev": "567a49d1913ce81ac6e9582e3553dd90a955875f", "type": "github" }, "original": { @@ -470,11 +486,11 @@ ] }, "locked": { - "lastModified": 1779470870, - "narHash": "sha256-h511LYfVIXNpTd8C/p1cMW2AVrFEjMy104XxPRIzrL0=", + "lastModified": 1781979923, + "narHash": "sha256-BQHJXHeKPYBQldv06grBZFnChKf3YdR4JLPFmqCB3sI=", "owner": "nix-community", "repo": "NUR", - "rev": "5ea6f8868ce8f1ed17ce6da66abe084dfe3501e0", + "rev": "76b40a7a209c3fec96fb9d68f6a2f1f97760e3f2", "type": "github" }, "original": { @@ -494,7 +510,7 @@ "nixos": "nixos", "nixos-facter-modules": "nixos-facter-modules", "nixos-hardware": "nixos-hardware", - "nixpkgs": "nixpkgs_4", + "nixpkgs": "nixpkgs_5", "nixpkgs-last-building": "nixpkgs-last-building", "nur": "nur", "zen-browser": "zen-browser" @@ -544,11 +560,11 @@ ] }, "locked": { - "lastModified": 1779263007, - "narHash": "sha256-JkwxVCt7EHCrisHkzhMPKhfdaNAhpyyKuIdLoNYGuPI=", + "lastModified": 1781932488, + "narHash": "sha256-v7xGsRuuTPyKT1BzZYXfhciGKBRxQiBPn/wyvHDriqM=", "owner": "0xc000022070", "repo": "zen-browser-flake", - "rev": "6891eb4b5fbac054b9406da94525daeec71646e3", + "rev": "bed09c284f289ad29cd7936e6297c7c16841903a", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 7accc21..674f1d5 100644 --- a/flake.nix +++ b/flake.nix @@ -2,7 +2,7 @@ description = "we say NO to shitty OSes"; inputs = { - nixos.url = "github:NixOS/nixpkgs/nixos-25.11"; + nixos.url = "github:NixOS/nixpkgs/nixos-26.05"; nixos-facter-modules.url = "github:numtide/nixos-facter-modules"; nixos-hardware.url = "github:NixOS/nixos-hardware/master"; nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; diff --git a/systems/BASED.nix b/systems/BASED.nix index aeeb1ae..2c14d78 100644 --- a/systems/BASED.nix +++ b/systems/BASED.nix @@ -6,6 +6,8 @@ modulesPath, ... }: { + services.fwupd.enable = true; + nixpkgs.overlays = [ (final: prev: { inherit @@ -20,11 +22,7 @@ nix.package = lib.mkIf (config.networking.hostName == "NOcomputer") pkgs.lixPackageSets.stable.lix; - programs.pmount.enable = true; - services.eternal-terminal.enable = true; - programs.mosh.enable = true; environment.systemPackages = with pkgs; [ - eternal-terminal # keep-sorted start bat bottom @@ -59,6 +57,62 @@ # keep-sorted end ]; programs.partition-manager.enable = lib.mkDefault true; + programs.pmount.enable = lib.mkDefault true; + programs.mosh.enable = lib.mkDefault true; + + fonts.fontDir.enable = true; + fonts.packages = with pkgs; [ + # keep-sorted start + cooper-hewitt + ibm-plex + inconsolata + iosevka + libertine + linux-libertine-g + nerd-fonts.fira-code + nerd-fonts.iosevka-term + noto-fonts-cjk-sans + noto-fonts-cjk-serif + noto-fonts-color-emoji + # keep-sorted end + ]; + system.userActivationScripts.installFonts = '' + mkdir -p ~/.local/share/fonts + find ${pkgs.noto-fonts-cjk-sans}/share/fonts \ + -type f \( -name "*.otf" -o -name "*.ttf" -o -name "*.ttc" \) \ + -exec cp -f {} ~/.local/share/fonts/ \; + find ${pkgs.noto-fonts-cjk-serif}/share/fonts \ + -type f \( -name "*.otf" -o -name "*.ttf" -o -name "*.ttc" \) \ + -exec cp -f {} ~/.local/share/fonts/ \; + find ${pkgs.cooper-hewitt}/share/fonts \ + -type f \( -name "*.otf" -o -name "*.ttf" -o -name "*.ttc" \) \ + -exec cp -f {} ~/.local/share/fonts/ \; + find ${pkgs.ibm-plex}/share/fonts \ + -type f \( -name "*.otf" -o -name "*.ttf" -o -name "*.ttc" \) \ + -exec cp -f {} ~/.local/share/fonts/ \; + find ${pkgs.inconsolata}/share/fonts \ + -type f \( -name "*.otf" -o -name "*.ttf" -o -name "*.ttc" \) \ + -exec cp -f {} ~/.local/share/fonts/ \; + find ${pkgs.iosevka}/share/fonts \ + -type f \( -name "*.otf" -o -name "*.ttf" -o -name "*.ttc" \) \ + -exec cp -f {} ~/.local/share/fonts/ \; + find ${pkgs.libertine}/share/fonts \ + -type f \( -name "*.otf" -o -name "*.ttf" -o -name "*.ttc" \) \ + -exec cp -f {} ~/.local/share/fonts/ \; + find ${pkgs.linux-libertine-g}/share/fonts \ + -type f \( -name "*.otf" -o -name "*.ttf" -o -name "*.ttc" \) \ + -exec cp -f {} ~/.local/share/fonts/ \; + find ${pkgs.nerd-fonts.fira-code}/share/fonts \ + -type f \( -name "*.otf" -o -name "*.ttf" -o -name "*.ttc" \) \ + -exec cp -f {} ~/.local/share/fonts/ \; + find ${pkgs.nerd-fonts.iosevka-term}/share/fonts \ + -type f \( -name "*.otf" -o -name "*.ttf" -o -name "*.ttc" \) \ + -exec cp -f {} ~/.local/share/fonts/ \; + find ${pkgs.noto-fonts-color-emoji}/share/fonts \ + -type f \( -name "*.otf" -o -name "*.ttf" -o -name "*.ttc" \) \ + -exec cp -f {} ~/.local/share/fonts/ \; + fc-cache -fv + ''; hardware.graphics.enable = true; # hardware.opengl = { diff --git a/systems/NOlaptop.nix b/systems/NOlaptop.nix index 82860bb..42cd8a7 100644 --- a/systems/NOlaptop.nix +++ b/systems/NOlaptop.nix @@ -17,15 +17,16 @@ # ]; environment.systemPackages = with pkgs; [ - fw-ectool + # keep-sorted start framework-tool - nvtopPackages.amd + fw-ectool lact + nvtopPackages.amd + # keep-sorted end ]; services.lact.enable = true; - services.fwupd.enable = true; services.tailscale.useRoutingFeatures = "client"; systemd.services."backlight@backlight:amdgpu_bl2".enable = false; @@ -47,12 +48,10 @@ "amdgpu" ]; - # boot.kernelPackages = pkgs.linuxPackages_latest; - boot.kernelPackages = pkgs.nur.repos.Ev357.linux-patched; + boot.kernelPackages = pkgs.linuxPackages_latest; boot.kernelParams = [ "amdgpu.abmlevel=1" - # amd doesn't have deep - # "mem_sleep_default=deep" + "amdgpu.dcdebugmask=0x400" ]; boot.kernelModules = ["amdgpu"]; powerManagement.cpuFreqGovernor = "powersave"; diff --git a/users/tao.nix b/users/tao.nix index 456a0c7..a3cde88 100644 --- a/users/tao.nix +++ b/users/tao.nix @@ -7,16 +7,13 @@ }: let pkgs-last-building = inputs.nixpkgs-last-building.legacyPackages.${pkgs.system}; in { + programs.gphoto2.enable = true; users.users.tao.packages = (with pkgs-last-building; [ # oculante # https://nixpk.gs/pr-tracker.html?pr=502921 ]) ++ (with pkgs; [ - feedr - sniffnet - oculante # keep-sorted start sticky_comments=no - # android-tools # bottles # boxxy # carapace @@ -32,16 +29,18 @@ in { # texlab # thunderbird # wkhtmltopdf + android-tools appimage-run aspell aspellDicts.en bitwarden-cli - bitwarden-desktop + # bitwarden-desktop calibre darktable deluge discord element-desktop + feedr forgejo-cli freecad-wayland gocryptfs @@ -56,6 +55,7 @@ in { nushell nvd obs-studio + oculante onlyoffice-desktopeditors openscad pandoc @@ -70,10 +70,12 @@ in { signal-desktop slack snapper + sniffnet starship syncplay tinymist toastify + transmission_4-gtk typst typstyle usbutils @@ -94,22 +96,6 @@ in { environment.shells = with pkgs; [nushell]; - fonts.packages = with pkgs; [ - nerd-fonts.iosevka-term - iosevka - libertine - inconsolata - linux-libertine-g - # keep-sorted start - cooper-hewitt - ibm-plex - nerd-fonts.fira-code - noto-fonts-cjk-sans - noto-fonts-cjk-serif - noto-fonts-color-emoji - # keep-sorted end - ]; - documentation.enable = true; # virtualisation.libvirtd.enable = true; @@ -164,7 +150,7 @@ in { users.users.tao = { isNormalUser = true; # hashedPasswordFile = config.age.secrets.password-tao.path; - extraGroups = ["audio" "video" "wheel" "libvirtd" "dialout" "game"]; + extraGroups = ["audio" "video" "wheel" "libvirtd" "dialout" "game" "camera"]; shell = pkgs.nushell; }; age.secrets = { diff --git a/users/tao/nushell/extras/nix.nu b/users/tao/nushell/extras/nix.nu index 5a22b29..8cd02bf 100644 --- a/users/tao/nushell/extras/nix.nu +++ b/users/tao/nushell/extras/nix.nu @@ -68,8 +68,8 @@ export def bump [...rest] { } let r = jj log -r @ --no-pager --no-graph --template 'change_id' sudo nix flake update - let build_status = rebuild boot - if $build_status { + let build_success = rebuild boot + if $build_success { jj desc -r $r -m $"bump (date now | format date "%Y-%m-%d")" jj bookmark set main -r $r jj git push --allow-empty-description diff --git a/users/vy.nix b/users/vy.nix index 0658936..ccdcf81 100644 --- a/users/vy.nix +++ b/users/vy.nix @@ -28,21 +28,6 @@ in { ]); programs.kdeconnect.enable = true; - fonts.packages = with pkgs; [ - libertine - inconsolata - linux-libertine-g - adwaita-fonts - # keep-sorted start - cooper-hewitt - ibm-plex - nerd-fonts.fira-code - noto-fonts-cjk-sans - noto-fonts-cjk-serif - noto-fonts-color-emoji - # keep-sorted end - ]; - services.flatpak.enable = true; services.snapper.configs = {