From 1070f65c6e204306b81c237a4742375d3a14195b Mon Sep 17 00:00:00 2001 From: "Wyatt J. Miller" Date: Sun, 12 Jul 2026 15:27:37 -0400 Subject: [PATCH 01/12] mod: start neovim refactoring --- flake.lock | 67 ++++++++++++++++++++++++++- flake.nix | 6 ++- home/neovim.nix | 118 ++++++++++++++++++++++++++++++++++++++++++------ 3 files changed, 174 insertions(+), 17 deletions(-) diff --git a/flake.lock b/flake.lock index e3ad0a1..0837409 100644 --- a/flake.lock +++ b/flake.lock @@ -96,6 +96,22 @@ "type": "github" } }, + "flake-compat_3": { + "flake": false, + "locked": { + "lastModified": 1777699697, + "narHash": "sha256-Eg9b/rq/ECYwNwEXs5i9wHyhxNI0JrYx2srdI2uZMaQ=", + "ref": "refs/heads/main", + "rev": "382052b74656a369c5408822af3f2501e9b1af81", + "revCount": 94, + "type": "git", + "url": "https://git.lix.systems/lix-project/flake-compat.git" + }, + "original": { + "type": "git", + "url": "https://git.lix.systems/lix-project/flake-compat.git" + } + }, "flake-utils": { "inputs": { "systems": "systems" @@ -236,6 +252,21 @@ "type": "github" } }, + "mnw": { + "locked": { + "lastModified": 1780772958, + "narHash": "sha256-VKKe8r4pwCGWZ3Yr9CPN129R4S3CKLSrlYqdYz3vKpM=", + "owner": "Gerg-L", + "repo": "mnw", + "rev": "0871dbf63a53610c95db04439ed8ea4d6ec9c160", + "type": "github" + }, + "original": { + "owner": "Gerg-L", + "repo": "mnw", + "type": "github" + } + }, "nix-flatpak": { "locked": { "lastModified": 1739444422, @@ -317,6 +348,19 @@ } }, "nixpkgs_5": { + "locked": { + "lastModified": 1783148766, + "narHash": "sha256-H9+N+GFtsbVC8ZniHliChM7ndizxtqVZs6bnGOLM3WQ=", + "rev": "a50de1b7d8a586adc18d2395c19de7d6058e6030", + "type": "tarball", + "url": "https://releases.nixos.org/nixos/26.05/nixos-26.05.4193.a50de1b7d8a5/nixexprs.tar.xz?lastModified=1783148766&rev=a50de1b7d8a586adc18d2395c19de7d6058e6030" + }, + "original": { + "type": "tarball", + "url": "https://channels.nixos.org/nixos-26.05/nixexprs.tar.xz" + } + }, + "nixpkgs_6": { "locked": { "lastModified": 1744536153, "narHash": "sha256-awS2zRgF4uTwrOKwwiJcByDzDOdo3Q1rPZbiHQg/N38=", @@ -353,6 +397,26 @@ "url": "https://scm.wyattjmiller.com/wymiller/nur.git" } }, + "nvf": { + "inputs": { + "flake-compat": "flake-compat_3", + "mnw": "mnw", + "nixpkgs": "nixpkgs_5" + }, + "locked": { + "lastModified": 1783767627, + "narHash": "sha256-UgQuKee2d5VhXaqectc23i2rarIufUpAVSTA6R8XloY=", + "owner": "notashelf", + "repo": "nvf", + "rev": "c55a3a783e6e1ecbbaad607b15a9b7b23d42236f", + "type": "github" + }, + "original": { + "owner": "notashelf", + "repo": "nvf", + "type": "github" + } + }, "root": { "inputs": { "aagl": "aagl", @@ -362,6 +426,7 @@ "nix-flatpak": "nix-flatpak", "nixpkgs": "nixpkgs_2", "nur": "nur", + "nvf": "nvf", "rust-overlay": "rust-overlay_2" } }, @@ -388,7 +453,7 @@ }, "rust-overlay_2": { "inputs": { - "nixpkgs": "nixpkgs_5" + "nixpkgs": "nixpkgs_6" }, "locked": { "lastModified": 1781234414, diff --git a/flake.nix b/flake.nix index c41215c..7028d1b 100644 --- a/flake.nix +++ b/flake.nix @@ -17,6 +17,7 @@ url = "github:ezKEa/aagl-gtk-on-nix"; inputs.nixpkgs.follows = "nixpkgs"; }; + nvf.url = "github:notashelf/nvf"; nur.url = "git+https://scm.wyattjmiller.com/wymiller/nur.git"; }; @@ -30,12 +31,13 @@ go-overlay, aagl, nur, + nvf, ... }: let userName = "wyatt"; userEmail = "wyatt@wyattjmiller.com"; extraSpecialArgs = { - inherit userName userEmail nur; + inherit userName userEmail nur nvf; }; myOverlays = { ... }: { @@ -221,7 +223,7 @@ pkgs = nixpkgs.legacyPackages.${system}; extraSpecialArgs = { - inherit userName userEmail hostname; + inherit userName userEmail hostname nvf; isNixOS = false; role = "workstation"; }; diff --git a/home/neovim.nix b/home/neovim.nix index eebfd50..7a1a6ac 100644 --- a/home/neovim.nix +++ b/home/neovim.nix @@ -1,18 +1,108 @@ -{...}: let - dirs = { - defaults = ../defaults; - }; -in { - programs.neovim = { - enable = true; - defaultEditor = true; - vimAlias = true; - }; +{ nvf, ... }: { + imports = [ + nvf.homeManagerModules.default + ]; - xdg.configFile = { - nvim = { - onChange = "nvim --headless -c 'if exists(\":LuaCacheClear\") | :LuaCacheClear' +quitall"; - source = dirs.defaults + /nvim; + programs.nvf = { + enable = true; + settings = { + vim = { + viAlias = true; + vimAlias = true; + lsp.enable = true; + treesitter.enable = true; + autocomplete.nvim-cmp.enable = true; + + languages = { + rust.enable = true; + go.enable = true; + python.enable = true; + markdown.enable = true; + css.enable = true; + scss.enable = true; + tsx.enable = true; + typescript = { + enable = true; + lsp.servers = [ "typescript-language-server" "deno" ]; + }; + }; + + utility.surround.enable = true; + telescope.enable = true; + mini.icons.enable = true; + notes.obsidian = { + enable = true; + setupOpts.workspaces = [ + { + name = "personal"; + path = "~/Documents/Obsidian/notes"; + } + ]; + }; + + terminal.toggleterm = { + enable = true; + lazygit = { + enable = true; + mappings.open = "gg"; + }; + }; + filetree.neo-tree.enable = true; + binds.whichKey.enable = true; + + clipboard = { + enable = true; + registers = "unnamedplus"; + providers = { + wl-copy.enable = true; + xclip.enable = true; + }; + }; + + lsp.null-ls = { + enable = true; + setupOpts = {}; + }; + lsp.trouble.enable = true; + + theme = { + enable = true; + name = "catppuccin"; + style = "mocha"; + transparent = false; + }; + + dashboard.alpha.enable = true; + + statusline.lualine.enable = true; + + keymaps = [ + { + key = ""; + mode = "n"; + action = "w"; + silent = true; + noremap = true; + } + { key = "o"; mode = "n"; action = "Neotree toggle"; silent = true; noremap = true; } + { key = "tf"; mode = "n"; action = "ToggleTerm direction=float"; silent = true; noremap = true; } + { key = "th"; mode = "n"; action = "ToggleTerm direction=horizontal"; silent = true; noremap = true; } + { key = "tv"; mode = "n"; action = "ToggleTerm direction=vertical"; silent = true; noremap = true; } + { key = "n"; mode = "n"; action = ""; desc = "Notes"; silent = true; noremap = true; } + { key = "nd"; mode = "n"; action = "Obsidian today"; desc = "Obsidian daily note"; silent = true; noremap = true; } + { key = "nf"; mode = "n"; action = "Obsidian quick_switch"; desc = "Obsidian find note"; silent = true; noremap = true; } + { key = "ns"; mode = "n"; action = "Obsidian search"; desc = "Obsidian search notes"; silent = true; noremap = true; } + { key = "nn"; mode = "n"; action = "Obsidian new"; desc = "Obsidian new note"; silent = true; noremap = true; } + { key = "ff"; mode = "n"; action = "Telescope find_files"; silent = true; noremap = true; } + { key = "fD"; mode = "n"; action = "lua require('telescope.builtin').find_files({ cwd = vim.fn.input('Dir: ', vim.loop.cwd() .. '/', 'dir') })"; silent = true; noremap = true; } + { key = "fg"; mode = "n"; action = "Telescope live_grep"; silent = true; noremap = true; } + { key = "/"; mode = "n"; action = "Telescope current_buffer_fuzzy_find"; silent = true; noremap = true; } + { key = "gb"; mode = "n"; action = "Telescope git_branches"; silent = true; noremap = true; } + { key = "gc"; mode = "n"; action = "Telescope git_commits"; silent = true; noremap = true; } + { key = "gl"; mode = "n"; action = "Telescope git_bcommits"; silent = true; noremap = true; } + { key = "gr"; mode = "n"; action = "Telescope git_status"; silent = true; noremap = true; } + ]; + }; }; }; } From 3fa654f7743a16d8e7fd27668a97af08e1201e7c Mon Sep 17 00:00:00 2001 From: "Wyatt J. Miller" Date: Fri, 7 Aug 2026 21:35:02 -0400 Subject: [PATCH 02/12] mod: added nix support --- defaults/nvim/lua/plugins/user.lua | 89 +++--------------------------- home/neovim.nix | 1 + 2 files changed, 8 insertions(+), 82 deletions(-) diff --git a/defaults/nvim/lua/plugins/user.lua b/defaults/nvim/lua/plugins/user.lua index 121089e..65ea261 100644 --- a/defaults/nvim/lua/plugins/user.lua +++ b/defaults/nvim/lua/plugins/user.lua @@ -1,85 +1,10 @@ -if true then return {} end -- WARN: REMOVE THIS LINE TO ACTIVATE THIS FILE - --- You can also add or configure plugins by creating files in this `plugins/` folder --- Here are some examples: - ---@type LazySpec return { - - -- == Examples of Adding Plugins == - - "andweeb/presence.nvim", - { - "ray-x/lsp_signature.nvim", - event = "BufRead", - config = function() require("lsp_signature").setup() end, - }, - - -- == Examples of Overriding Plugins == - - -- customize alpha options - { - "goolord/alpha-nvim", - opts = function(_, opts) - -- customize the dashboard header - opts.section.header.val = { - " █████ ███████ ████████ ██████ ██████", - "██ ██ ██ ██ ██ ██ ██ ██", - "███████ ███████ ██ ██████ ██ ██", - "██ ██ ██ ██ ██ ██ ██ ██", - "██ ██ ███████ ██ ██ ██ ██████", - " ", - " ███  ██ ██  ██ ██ ███  ███", - " ████  ██ ██  ██ ██ ████  ████", - " ██ ██  ██ ██  ██ ██ ██ ████ ██", - " ██  ██ ██  ██  ██  ██ ██  ██  ██", - " ██   ████   ████   ██ ██      ██", - } - return opts - end, - }, - - -- You can disable default plugins as follows: - { "max397574/better-escape.nvim", enabled = false }, - - -- You can also easily customize additional setup of plugins that is outside of the plugin's setup call - { - "L3MON4D3/LuaSnip", - config = function(plugin, opts) - require "astronvim.plugins.configs.luasnip"(plugin, opts) -- include the default astronvim config that calls the setup call - -- add more custom luasnip configuration such as filetype extend or custom snippets - local luasnip = require "luasnip" - luasnip.filetype_extend("javascript", { "javascriptreact" }) - end, - }, - - { - "windwp/nvim-autopairs", - config = function(plugin, opts) - require "astronvim.plugins.configs.nvim-autopairs"(plugin, opts) -- include the default astronvim config that calls the setup call - -- add more custom autopairs configuration such as custom rules - local npairs = require "nvim-autopairs" - local Rule = require "nvim-autopairs.rule" - local cond = require "nvim-autopairs.conds" - npairs.add_rules( - { - Rule("$", "$", { "tex", "latex" }) - -- don't add a pair if the next character is % - :with_pair(cond.not_after_regex "%%") - -- don't add a pair if the previous character is xxx - :with_pair( - cond.not_before_regex("xxx", 3) - ) - -- don't move right when repeat character - :with_move(cond.none()) - -- don't delete if the next character is xx - :with_del(cond.not_after_regex "xx") - -- disable adding a newline when you press - :with_cr(cond.none()), - }, - -- disable for .vim files, but it work for another filetypes - Rule("a", "a", "-vim") - ) - end, - }, + { "nvim-treesitter/nvim-treesitter" }, + { "neovim/nvim-lspconfig" }, + { "kylechui/nvim-surround" }, + { "nvim-neo-tree/neo-tree.nvim" }, + { "akinsho/toggleterm.nvim" }, + { "nvimtools/none-ls.nvim" }, + { "rebelot/heirline.nvim" }, } diff --git a/home/neovim.nix b/home/neovim.nix index 7a1a6ac..9b27664 100644 --- a/home/neovim.nix +++ b/home/neovim.nix @@ -14,6 +14,7 @@ autocomplete.nvim-cmp.enable = true; languages = { + nix.enable = true; rust.enable = true; go.enable = true; python.enable = true; From 28a8ccc5321e0e5d978b3d9200174c7f30103b83 Mon Sep 17 00:00:00 2001 From: "Wyatt J. Miller" Date: Sun, 9 Aug 2026 17:26:26 -0400 Subject: [PATCH 03/12] flake update needed changes cause of input --- flake.lock | 147 ++++++++++++++++++------ modules/apps/gaming.nix | 5 +- modules/machine/cloud/configuration.nix | 4 - 3 files changed, 113 insertions(+), 43 deletions(-) diff --git a/flake.lock b/flake.lock index 3d7f061..71ed9bd 100644 --- a/flake.lock +++ b/flake.lock @@ -9,11 +9,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1783689476, - "narHash": "sha256-Ac4EGPZr9e+mPUdmavJFSTft4vgoXml40+YOFYKTXPg=", + "lastModified": 1785936455, + "narHash": "sha256-pXD5pfIwI6j17cpvHh9vjzY+635cCiAldN9bDjXKJ8Y=", "owner": "ezKEa", "repo": "aagl-gtk-on-nix", - "rev": "af94408291ad477cae8eed964981ab41f90eb184", + "rev": "ce55463be1feee6a9a6a6d35d313b8b728c1d8c9", "type": "github" }, "original": { @@ -112,6 +112,20 @@ "url": "https://git.lix.systems/lix-project/flake-compat.git" } }, + "flake-schemas": { + "locked": { + "lastModified": 1780327564, + "narHash": "sha256-HiRPtA0spK+Dkgbhz/1zW9glXxNVB+L4Rj2VYmdawb8=", + "rev": "6cc9bd98891b1fc6bb2b8cb3277df8bc72799ca6", + "revCount": 149, + "type": "tarball", + "url": "https://api.flakehub.com/f/pinned/DeterminateSystems/flake-schemas/0.5.0/019e83cf-9af3-78b1-ac5b-70e68ad1efe1/source.tar.gz" + }, + "original": { + "type": "tarball", + "url": "https://flakehub.com/f/DeterminateSystems/flake-schemas/%2A" + } + }, "flake-utils": { "inputs": { "systems": "systems" @@ -200,11 +214,11 @@ "nixpkgs": "nixpkgs" }, "locked": { - "lastModified": 1783668331, - "narHash": "sha256-mMfzU9jvq9XQyyssR9w0Rki8/Ec4Ez+bLkFWc7BaGGg=", + "lastModified": 1786187685, + "narHash": "sha256-yM+cGzDhRpvbYI0zpCG/wVha6Jbcs6Jlb647wzYbQEk=", "owner": "purpleclay", "repo": "go-overlay", - "rev": "423eed783363fa154fc7f0c049f7effa910d2440", + "rev": "1f5ea3876f1d63709538c395b451f79dc6853229", "type": "github" }, "original": { @@ -213,6 +227,26 @@ "type": "github" } }, + "hildibrand": { + "inputs": { + "flake-schemas": "flake-schemas", + "nixpkgs": "nixpkgs_3", + "rust-overlay": "rust-overlay_2" + }, + "locked": { + "lastModified": 1785717646, + "narHash": "sha256-j6MlkwaYOLa3bogK4SbOnVI5eMZ9j2GdExSiKMaELPo=", + "ref": "refs/heads/master", + "rev": "9588520925513ed0e47711a5798c6e9958143a0a", + "revCount": 5, + "type": "git", + "url": "https://scm.wyattjmiller.com/wymiller/hildibrand.git" + }, + "original": { + "type": "git", + "url": "https://scm.wyattjmiller.com/wymiller/hildibrand.git" + } + }, "home-manager": { "inputs": { "nixpkgs": [ @@ -220,11 +254,11 @@ ] }, "locked": { - "lastModified": 1783740085, - "narHash": "sha256-qajyHfZY29G2oEQk+uHxmsJcRoBUBXP9maTpFlwP/dI=", + "lastModified": 1785119570, + "narHash": "sha256-Rgs2xKnGLFWQscxUaXX07oyZeuMDOHEbqDOsgliLFGM=", "owner": "nix-community", "repo": "home-manager", - "rev": "3cd22efe6471dc7365c822bd9ad73a21e55f38fb", + "rev": "d4fd24667c8cbef124bb70a20380cab75ec8474d", "type": "github" }, "original": { @@ -236,7 +270,7 @@ }, "home-manager_2": { "inputs": { - "nixpkgs": "nixpkgs_3" + "nixpkgs": "nixpkgs_4" }, "locked": { "lastModified": 1779507042, @@ -301,11 +335,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1783703440, - "narHash": "sha256-O3/YajjWo001VUIgD8BwaRdSNLUFe7nZ1qV5TwhRBcw=", + "lastModified": 1786201459, + "narHash": "sha256-CiOTEjmwAmG2AWnaIno9YaCJJmpca2FXPhMAsnrolCg=", "owner": "nixos", "repo": "nixpkgs", - "rev": "8f0500b9660505dc3cb647775fe9a978a74b5283", + "rev": "8b8c811c7c2541c30382c5de7ed26be055569c60", "type": "github" }, "original": { @@ -316,6 +350,20 @@ } }, "nixpkgs_3": { + "locked": { + "lastModified": 1784280462, + "narHash": "sha256-DtoqIqM7VkR6NxAkcLpMwmi02USwWb3JdmNGLyhthc0=", + "rev": "293d6abedf0478e681a4dfcfcb35b30fc796a32f", + "revCount": 1009740, + "type": "tarball", + "url": "https://api.flakehub.com/f/pinned/NixOS/nixpkgs/0.2605.1009740%2Brev-293d6abedf0478e681a4dfcfcb35b30fc796a32f/019f73de-20f7-7ec2-98c8-65726640dbf9/source.tar.gz" + }, + "original": { + "type": "tarball", + "url": "https://flakehub.com/f/NixOS/nixpkgs/%2A" + } + }, + "nixpkgs_4": { "locked": { "lastModified": 1778443072, "narHash": "sha256-zi7/fsqM/kFdNuED//4WOCUtezGtKKqRNORjMvfwjnA=", @@ -331,7 +379,7 @@ "type": "github" } }, - "nixpkgs_4": { + "nixpkgs_5": { "locked": { "lastModified": 1780902259, "narHash": "sha256-q8yYEC5f1mFlQO9RGna4LTc9QrcvWunX6FYp83munkQ=", @@ -347,20 +395,20 @@ "type": "github" } }, - "nixpkgs_5": { + "nixpkgs_6": { "locked": { - "lastModified": 1783148766, - "narHash": "sha256-H9+N+GFtsbVC8ZniHliChM7ndizxtqVZs6bnGOLM3WQ=", - "rev": "a50de1b7d8a586adc18d2395c19de7d6058e6030", + "lastModified": 1784796856, + "narHash": "sha256-vwxWgF+Gj276WznzGb1LxGsK/39HaQwgQXiU3EkC844=", + "rev": "e2587caef70cea85dd97d7daab492899902dbf5d", "type": "tarball", - "url": "https://releases.nixos.org/nixos/26.05/nixos-26.05.4193.a50de1b7d8a5/nixexprs.tar.xz?lastModified=1783148766&rev=a50de1b7d8a586adc18d2395c19de7d6058e6030" + "url": "https://releases.nixos.org/nixos/unstable/nixos-26.11pre1040357.e2587caef70c/nixexprs.tar.xz" }, "original": { "type": "tarball", - "url": "https://channels.nixos.org/nixos-26.05/nixexprs.tar.xz" + "url": "https://channels.nixos.org/nixos-unstable/nixexprs.tar.xz" } }, - "nixpkgs_6": { + "nixpkgs_7": { "locked": { "lastModified": 1744536153, "narHash": "sha256-awS2zRgF4uTwrOKwwiJcByDzDOdo3Q1rPZbiHQg/N38=", @@ -380,15 +428,16 @@ "inputs": { "darwin": "darwin_2", "flake-utils": "flake-utils_2", + "hildibrand": "hildibrand", "home-manager": "home-manager_2", - "nixpkgs": "nixpkgs_4" + "nixpkgs": "nixpkgs_5" }, "locked": { - "lastModified": 1783886399, - "narHash": "sha256-pcHOwEcr5xFGFRUriCdWFcBFBU5oouFW3iO65HCZ3cI=", + "lastModified": 1786304454, + "narHash": "sha256-2ovOgwFWnKqUMoQfxbobtIWQ+TSN62llX9eJVb9hFoY=", "ref": "refs/heads/master", - "rev": "b43f2ace4941315daabccc716e151a0ca47276db", - "revCount": 32, + "rev": "ea7094e4e33fbb030edf28383de37073fc8b84e0", + "revCount": 43, "type": "git", "url": "https://scm.wyattjmiller.com/wymiller/nur.git" }, @@ -401,14 +450,14 @@ "inputs": { "flake-compat": "flake-compat_3", "mnw": "mnw", - "nixpkgs": "nixpkgs_5" + "nixpkgs": "nixpkgs_6" }, "locked": { - "lastModified": 1783767627, - "narHash": "sha256-UgQuKee2d5VhXaqectc23i2rarIufUpAVSTA6R8XloY=", + "lastModified": 1786307523, + "narHash": "sha256-RKnrspb7azG0ERNZgdumX3EEivFCD3Vtglwbf90T1K0=", "owner": "notashelf", "repo": "nvf", - "rev": "c55a3a783e6e1ecbbaad607b15a9b7b23d42236f", + "rev": "23f994fcd754e9de067fa00cca891a774498825b", "type": "github" }, "original": { @@ -427,7 +476,7 @@ "nixpkgs": "nixpkgs_2", "nur": "nur", "nvf": "nvf", - "rust-overlay": "rust-overlay_2" + "rust-overlay": "rust-overlay_3" } }, "rust-overlay": { @@ -438,11 +487,11 @@ ] }, "locked": { - "lastModified": 1782875958, - "narHash": "sha256-5eqDcnBjb1424HRQdnhuhNOBZguq1Z2tqSa2OMF/m2c=", + "lastModified": 1785476452, + "narHash": "sha256-/CXwCFPS41rb/JI2VitKCgVK6V5E6/sfw5ke3B9zyVQ=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "13139aefa973f3d96c60c0fbab801de058ae25ca", + "rev": "6ef009bf4c4873cdc1a621826722bdea7c03e62c", "type": "github" }, "original": { @@ -453,14 +502,36 @@ }, "rust-overlay_2": { "inputs": { - "nixpkgs": "nixpkgs_6" + "nixpkgs": [ + "nur", + "hildibrand", + "nixpkgs" + ] }, "locked": { - "lastModified": 1783834461, - "narHash": "sha256-FCmrs1StAghJDKfqy56KM96KZtxpYzgeq6zM3QO8wjA=", + "lastModified": 1784438913, + "narHash": "sha256-NYF7ZM5ip0u+w1pBFDpIGEbrbgN/wpnLFAmBkWkYMXw=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "a286e5b998e852297a403786f063fb2c9fe7f57a", + "rev": "afacd6819d3765a05814ee8e3de74c77d42ac799", + "type": "github" + }, + "original": { + "owner": "oxalica", + "repo": "rust-overlay", + "type": "github" + } + }, + "rust-overlay_3": { + "inputs": { + "nixpkgs": "nixpkgs_7" + }, + "locked": { + "lastModified": 1786247265, + "narHash": "sha256-cVTcTqAhzSNMOVddtBhFpuv+Vx6/SgrhgZWJiI61H24=", + "owner": "oxalica", + "repo": "rust-overlay", + "rev": "6df7076ea0f5697e3242719a4c71211f00411cf5", "type": "github" }, "original": { diff --git a/modules/apps/gaming.nix b/modules/apps/gaming.nix index e871dce..3619c39 100644 --- a/modules/apps/gaming.nix +++ b/modules/apps/gaming.nix @@ -157,7 +157,10 @@ in { config = let agl = cfg.aagl; - nurPkgs = import "${nur.outPath}/pkgs" { inherit pkgs; }; + nurPkgs = import "${nur.outPath}/pkgs" { + inherit pkgs; + hildibrand = nur.inputs.hildibrand.packages.${pkgs.stdenv.hostPlatform.system}.default; + }; in { programs.steam = lib.mkIf cfg.steam.enable { enable = true; diff --git a/modules/machine/cloud/configuration.nix b/modules/machine/cloud/configuration.nix index 85cd474..65896c4 100644 --- a/modules/machine/cloud/configuration.nix +++ b/modules/machine/cloud/configuration.nix @@ -85,9 +85,6 @@ in { ollama-rocm newelle vlc - mediainfo - makemkv - ffmpeg ]; # Enable Polkit @@ -128,7 +125,6 @@ in { ffxiv.enable = true; archon.enable = true; minecraft.enable = true; - aagl.wavey-launcher.enable = true; vintage-story.enable = true; }; From ce3a1bc06d7f064bb69be7cf4bd0a3e70efe54cf Mon Sep 17 00:00:00 2001 From: "Wyatt J. Miller" Date: Thu, 27 Aug 2026 13:07:46 -0400 Subject: [PATCH 04/12] chore: add flake lock update workflow --- .gitea/workflows/update-flake-lock.yml | 40 ++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 .gitea/workflows/update-flake-lock.yml diff --git a/.gitea/workflows/update-flake-lock.yml b/.gitea/workflows/update-flake-lock.yml new file mode 100644 index 0000000..5509aba --- /dev/null +++ b/.gitea/workflows/update-flake-lock.yml @@ -0,0 +1,40 @@ +name: Update flake lock + +on: + schedule: + # Gitea cron schedules use UTC. 07:00 UTC is 03:00 EDT. + - cron: "0 7 * * 0" + workflow_dispatch: + +permissions: + contents: write + +jobs: + update-flake-lock: + runs-on: ubuntu-latest + + steps: + - name: Check out repository + uses: actions/checkout@v4 + + - name: Install upstream Nix + uses: cachix/install-nix-action@v31 + + - name: Update flake lock + run: nix flake update + + - name: Commit and push changes + shell: bash + run: | + set -euo pipefail + + if git diff --quiet -- flake.lock; then + echo "flake.lock is already up to date" + exit 0 + fi + + git config user.name "gitea-actions[bot]" + git config user.email "gitea-actions[bot]@noreply.localhost" + git add flake.lock + git commit -m "chore: update flake lock" + git push From 7853a1b457443b45929833b34f4a9c38251d9a63 Mon Sep 17 00:00:00 2001 From: "gitea-actions[bot]" Date: Sun, 30 Aug 2026 07:05:21 +0000 Subject: [PATCH 05/12] chore: update flake lock --- flake.lock | 232 +++++++++++++++++++++++++++++------------------------ 1 file changed, 128 insertions(+), 104 deletions(-) diff --git a/flake.lock b/flake.lock index 37e2f6e..7445de6 100644 --- a/flake.lock +++ b/flake.lock @@ -9,11 +9,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1783689476, - "narHash": "sha256-Ac4EGPZr9e+mPUdmavJFSTft4vgoXml40+YOFYKTXPg=", + "lastModified": 1787517695, + "narHash": "sha256-Z119G3qLJx22frNHO3/seMs7fCCvxe9NJJRfN4Jadew=", "owner": "ezKEa", "repo": "aagl-gtk-on-nix", - "rev": "af94408291ad477cae8eed964981ab41f90eb184", + "rev": "4bb57072d963aa47f14894383a5560cf290e296a", "type": "github" }, "original": { @@ -22,6 +22,29 @@ "type": "github" } }, + "caitsith": { + "inputs": { + "flake-schemas": "flake-schemas", + "nixpkgs": [ + "nur", + "nixpkgs" + ], + "rust-overlay": "rust-overlay_2" + }, + "locked": { + "lastModified": 1787710235, + "narHash": "sha256-uWDHHB5Z9m3cXQNjfdWWqp2S/SwosukkJv57ORljCvQ=", + "ref": "refs/heads/master", + "rev": "4afabd4956611ec9213dd8392755dece81688b67", + "revCount": 20, + "type": "git", + "url": "https://scm.wyattjmiller.com/wymiller/caitsith.git" + }, + "original": { + "type": "git", + "url": "https://scm.wyattjmiller.com/wymiller/caitsith.git" + } + }, "darwin": { "inputs": { "nixpkgs": [ @@ -51,11 +74,11 @@ ] }, "locked": { - "lastModified": 1779036909, - "narHash": "sha256-zXcwYQGCT6pzinK+1dBB2ekTVtfxGZAapb3Evdcu4fY=", + "lastModified": 1786845137, + "narHash": "sha256-oQFip+v0luP8NIxJzmiW4Wu8bILsbFWom5l0zonl8hQ=", "owner": "LnL7", "repo": "nix-darwin", - "rev": "56c666e108467d87d13508936aade6d567f2a501", + "rev": "4cff07de74b50e64bdd68cd4e722ab5b6b35ee48", "type": "github" }, "original": { @@ -97,6 +120,20 @@ } }, "flake-schemas": { + "locked": { + "lastModified": 1761577921, + "narHash": "sha256-eK3/xbUOrxp9fFlei09XNjqcdiHXxndzrTXp7jFpOk8=", + "rev": "47849c7625e223d36766968cc6dc23ba0e135922", + "revCount": 107, + "type": "tarball", + "url": "https://api.flakehub.com/f/pinned/DeterminateSystems/flake-schemas/0.2.0/019a4a84-544d-7c59-b26d-e334e320c932/source.tar.gz" + }, + "original": { + "type": "tarball", + "url": "https://flakehub.com/f/DeterminateSystems/flake-schemas/%2A" + } + }, + "flake-schemas_2": { "locked": { "lastModified": 1780327564, "narHash": "sha256-HiRPtA0spK+Dkgbhz/1zW9glXxNVB+L4Rj2VYmdawb8=", @@ -128,24 +165,6 @@ "type": "github" } }, - "flake-utils_2": { - "inputs": { - "systems": "systems_2" - }, - "locked": { - "lastModified": 1731533236, - "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, "git-hooks": { "inputs": { "flake-compat": "flake-compat_2", @@ -198,11 +217,11 @@ "nixpkgs": "nixpkgs" }, "locked": { - "lastModified": 1783668331, - "narHash": "sha256-mMfzU9jvq9XQyyssR9w0Rki8/Ec4Ez+bLkFWc7BaGGg=", + "lastModified": 1787906838, + "narHash": "sha256-BVoCD5auserFdtRIvXkALWYtrFMrXJS/8JDsEEiH44Y=", "owner": "purpleclay", "repo": "go-overlay", - "rev": "423eed783363fa154fc7f0c049f7effa910d2440", + "rev": "34bdca05fbef02ce7dd69873fbe45197d6fdd2c4", "type": "github" }, "original": { @@ -213,9 +232,12 @@ }, "hildibrand": { "inputs": { - "flake-schemas": "flake-schemas", - "nixpkgs": "nixpkgs_3", - "rust-overlay": "rust-overlay_2" + "flake-schemas": "flake-schemas_2", + "nixpkgs": [ + "nur", + "nixpkgs" + ], + "rust-overlay": "rust-overlay_3" }, "locked": { "lastModified": 1785717646, @@ -238,11 +260,11 @@ ] }, "locked": { - "lastModified": 1783740085, - "narHash": "sha256-qajyHfZY29G2oEQk+uHxmsJcRoBUBXP9maTpFlwP/dI=", + "lastModified": 1787377438, + "narHash": "sha256-Sxu1NLTD/Ern6hFGLlZmtKCSct3YQXZI/lls8RE1XeM=", "owner": "nix-community", "repo": "home-manager", - "rev": "3cd22efe6471dc7365c822bd9ad73a21e55f38fb", + "rev": "65258d5c65a250189fde2e35f490d15e064c4c62", "type": "github" }, "original": { @@ -254,14 +276,17 @@ }, "home-manager_2": { "inputs": { - "nixpkgs": "nixpkgs_4" + "nixpkgs": [ + "nur", + "nixpkgs" + ] }, "locked": { - "lastModified": 1779507042, - "narHash": "sha256-7wOwi8B6D0BYsieZCnHZZj2sNUzgJhLoIVSfkwB7lxQ=", + "lastModified": 1787778830, + "narHash": "sha256-GnLPpDT727E6VpDlALP8JeP1BbSQ17H0HiEEYq6Ql4w=", "owner": "nix-community", "repo": "home-manager", - "rev": "509ed3c603349a9d43de9e2ae6613baea6bd5b34", + "rev": "6b449e35980e1b75dd17da2d6d9b66e757194f1c", "type": "github" }, "original": { @@ -304,11 +329,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1783703440, - "narHash": "sha256-O3/YajjWo001VUIgD8BwaRdSNLUFe7nZ1qV5TwhRBcw=", + "lastModified": 1787848966, + "narHash": "sha256-7gDpu5hpq0rOYnYMcOWqSzquK4HA/xU8Xf3CjUBOOJA=", "owner": "nixos", "repo": "nixpkgs", - "rev": "8f0500b9660505dc3cb647775fe9a978a74b5283", + "rev": "d57af924f160a5084293c71c2043f058bd1cdb60", "type": "github" }, "original": { @@ -320,41 +345,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1784280462, - "narHash": "sha256-DtoqIqM7VkR6NxAkcLpMwmi02USwWb3JdmNGLyhthc0=", - "rev": "293d6abedf0478e681a4dfcfcb35b30fc796a32f", - "revCount": 1009740, - "type": "tarball", - "url": "https://api.flakehub.com/f/pinned/NixOS/nixpkgs/0.2605.1009740%2Brev-293d6abedf0478e681a4dfcfcb35b30fc796a32f/019f73de-20f7-7ec2-98c8-65726640dbf9/source.tar.gz" - }, - "original": { - "type": "tarball", - "url": "https://flakehub.com/f/NixOS/nixpkgs/%2A" - } - }, - "nixpkgs_4": { - "locked": { - "lastModified": 1778443072, - "narHash": "sha256-zi7/fsqM/kFdNuED//4WOCUtezGtKKqRNORjMvfwjnA=", + "lastModified": 1787753485, + "narHash": "sha256-BZWCi9ZRJiARTuKTbbtvFTj7t1TK4G3UEckT3HyNfRg=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "da5ad661ba4e5ef59ba743f0d112cbc30e474f32", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_5": { - "locked": { - "lastModified": 1780902259, - "narHash": "sha256-q8yYEC5f1mFlQO9RGna4LTc9QrcvWunX6FYp83munkQ=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "bd0ff2d3eac24699c3664d5966b9ef36f388e2ca", + "rev": "062346a6d85bc4b49dfaa61c986e9c5be21217d1", "type": "github" }, "original": { @@ -364,7 +359,7 @@ "type": "github" } }, - "nixpkgs_6": { + "nixpkgs_4": { "locked": { "lastModified": 1744536153, "narHash": "sha256-awS2zRgF4uTwrOKwwiJcByDzDOdo3Q1rPZbiHQg/N38=", @@ -382,18 +377,19 @@ }, "nur": { "inputs": { + "caitsith": "caitsith", "darwin": "darwin_2", - "flake-utils": "flake-utils_2", "hildibrand": "hildibrand", "home-manager": "home-manager_2", - "nixpkgs": "nixpkgs_5" + "nixpkgs": "nixpkgs_3", + "rust-overlay": "rust-overlay_4" }, "locked": { - "lastModified": 1786304454, - "narHash": "sha256-2ovOgwFWnKqUMoQfxbobtIWQ+TSN62llX9eJVb9hFoY=", + "lastModified": 1787797185, + "narHash": "sha256-jCNkS3HfdZfdxeRwzuHhK2p3h0kjO+sikWG6r/eO4m0=", "ref": "refs/heads/master", - "rev": "ea7094e4e33fbb030edf28383de37073fc8b84e0", - "revCount": 43, + "rev": "af5b631490a4a8d01bba6b4ee39d6e59bd78950d", + "revCount": 58, "type": "git", "url": "https://scm.wyattjmiller.com/wymiller/nur.git" }, @@ -411,7 +407,7 @@ "nix-flatpak": "nix-flatpak", "nixpkgs": "nixpkgs_2", "nur": "nur", - "rust-overlay": "rust-overlay_3" + "rust-overlay": "rust-overlay_5" } }, "rust-overlay": { @@ -422,11 +418,11 @@ ] }, "locked": { - "lastModified": 1782875958, - "narHash": "sha256-5eqDcnBjb1424HRQdnhuhNOBZguq1Z2tqSa2OMF/m2c=", + "lastModified": 1785476452, + "narHash": "sha256-/CXwCFPS41rb/JI2VitKCgVK6V5E6/sfw5ke3B9zyVQ=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "13139aefa973f3d96c60c0fbab801de058ae25ca", + "rev": "6ef009bf4c4873cdc1a621826722bdea7c03e62c", "type": "github" }, "original": { @@ -436,6 +432,28 @@ } }, "rust-overlay_2": { + "inputs": { + "nixpkgs": [ + "nur", + "caitsith", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1771729765, + "narHash": "sha256-HNsDSR5bhLSrIpi9bTb2uTK1qnPo1xFSBxs6YmFyprk=", + "owner": "oxalica", + "repo": "rust-overlay", + "rev": "be926cb1a76e8450ab2b92121b2e88d09fa4d41c", + "type": "github" + }, + "original": { + "owner": "oxalica", + "repo": "rust-overlay", + "type": "github" + } + }, + "rust-overlay_3": { "inputs": { "nixpkgs": [ "nur", @@ -457,16 +475,37 @@ "type": "github" } }, - "rust-overlay_3": { + "rust-overlay_4": { "inputs": { - "nixpkgs": "nixpkgs_6" + "nixpkgs": [ + "nur", + "nixpkgs" + ] }, "locked": { - "lastModified": 1783834461, - "narHash": "sha256-FCmrs1StAghJDKfqy56KM96KZtxpYzgeq6zM3QO8wjA=", + "lastModified": 1787713867, + "narHash": "sha256-ZRYTEvDb8QZLCHRoMyIZle9V3Bvw905m0teeo1RvI7M=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "a286e5b998e852297a403786f063fb2c9fe7f57a", + "rev": "494680f9ffa2b4bf9f2df0f442c7096e44adfa00", + "type": "github" + }, + "original": { + "owner": "oxalica", + "repo": "rust-overlay", + "type": "github" + } + }, + "rust-overlay_5": { + "inputs": { + "nixpkgs": "nixpkgs_4" + }, + "locked": { + "lastModified": 1787993548, + "narHash": "sha256-+IAEnmmx5YIhUWo0lp15jLLHchnXo5yKgWsi6C6Cf+0=", + "owner": "oxalica", + "repo": "rust-overlay", + "rev": "996e9b0b019a4a9eb9e9a5641aefa06d801b5895", "type": "github" }, "original": { @@ -489,21 +528,6 @@ "repo": "default", "type": "github" } - }, - "systems_2": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } } }, "root": "root", From 6cf609acc184927e753839a63dacb3c569d8b07c Mon Sep 17 00:00:00 2001 From: "gitea-actions[bot]" Date: Sun, 6 Sep 2026 07:08:23 +0000 Subject: [PATCH 06/12] chore: update flake lock --- flake.lock | 66 +++++++++++++++++++++++++++--------------------------- 1 file changed, 33 insertions(+), 33 deletions(-) diff --git a/flake.lock b/flake.lock index 7445de6..e788a5a 100644 --- a/flake.lock +++ b/flake.lock @@ -32,11 +32,11 @@ "rust-overlay": "rust-overlay_2" }, "locked": { - "lastModified": 1787710235, - "narHash": "sha256-uWDHHB5Z9m3cXQNjfdWWqp2S/SwosukkJv57ORljCvQ=", + "lastModified": 1788133146, + "narHash": "sha256-rjxs1D9duSUWf/lnJV6JZXqdpTEbJ1ntX1hZyYHOuK4=", "ref": "refs/heads/master", - "rev": "4afabd4956611ec9213dd8392755dece81688b67", - "revCount": 20, + "rev": "427757654f013e316b3e267dd345c3ab780da7b6", + "revCount": 22, "type": "git", "url": "https://scm.wyattjmiller.com/wymiller/caitsith.git" }, @@ -217,11 +217,11 @@ "nixpkgs": "nixpkgs" }, "locked": { - "lastModified": 1787906838, - "narHash": "sha256-BVoCD5auserFdtRIvXkALWYtrFMrXJS/8JDsEEiH44Y=", + "lastModified": 1788301927, + "narHash": "sha256-Zmcvt5yW//YLT3HYe3bWN1Sf2txYrnBpa5jLULVokc0=", "owner": "purpleclay", "repo": "go-overlay", - "rev": "34bdca05fbef02ce7dd69873fbe45197d6fdd2c4", + "rev": "fe48ae4f56981f9f7c2bf03d4951fb0aa6e2095b", "type": "github" }, "original": { @@ -240,11 +240,11 @@ "rust-overlay": "rust-overlay_3" }, "locked": { - "lastModified": 1785717646, - "narHash": "sha256-j6MlkwaYOLa3bogK4SbOnVI5eMZ9j2GdExSiKMaELPo=", + "lastModified": 1788130254, + "narHash": "sha256-LR+73+2a51LOUKVTkEsP/XMVSZXm2P4hlgb7/KxdQ30=", "ref": "refs/heads/master", - "rev": "9588520925513ed0e47711a5798c6e9958143a0a", - "revCount": 5, + "rev": "f2049db9c29bf3ab0beff7cf0a990735d5571446", + "revCount": 6, "type": "git", "url": "https://scm.wyattjmiller.com/wymiller/hildibrand.git" }, @@ -260,11 +260,11 @@ ] }, "locked": { - "lastModified": 1787377438, - "narHash": "sha256-Sxu1NLTD/Ern6hFGLlZmtKCSct3YQXZI/lls8RE1XeM=", + "lastModified": 1788642154, + "narHash": "sha256-sPpQFVaFTDqO/4vvCAhuAhqTgqN/ygu+9eJcs5eB0js=", "owner": "nix-community", "repo": "home-manager", - "rev": "65258d5c65a250189fde2e35f490d15e064c4c62", + "rev": "fd0956c99c41ae3c13a73a638f1f7e963aebc4ab", "type": "github" }, "original": { @@ -282,11 +282,11 @@ ] }, "locked": { - "lastModified": 1787778830, - "narHash": "sha256-GnLPpDT727E6VpDlALP8JeP1BbSQ17H0HiEEYq6Ql4w=", + "lastModified": 1788651960, + "narHash": "sha256-v9wJd32eZ2bvhBzVOd7TIjLQd011P7nwOhjKtWlci5I=", "owner": "nix-community", "repo": "home-manager", - "rev": "6b449e35980e1b75dd17da2d6d9b66e757194f1c", + "rev": "2c0350c759688177331b8f5242311fae8877bdb3", "type": "github" }, "original": { @@ -329,11 +329,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1787848966, - "narHash": "sha256-7gDpu5hpq0rOYnYMcOWqSzquK4HA/xU8Xf3CjUBOOJA=", + "lastModified": 1788584326, + "narHash": "sha256-Fd3OB8J9JhgliQwOKcqx4M672CInxi1I5VnwsaXeSQo=", "owner": "nixos", "repo": "nixpkgs", - "rev": "d57af924f160a5084293c71c2043f058bd1cdb60", + "rev": "6713828a351efa628b025a1adf7f43cbf8597513", "type": "github" }, "original": { @@ -345,11 +345,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1787753485, - "narHash": "sha256-BZWCi9ZRJiARTuKTbbtvFTj7t1TK4G3UEckT3HyNfRg=", + "lastModified": 1788584326, + "narHash": "sha256-Fd3OB8J9JhgliQwOKcqx4M672CInxi1I5VnwsaXeSQo=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "062346a6d85bc4b49dfaa61c986e9c5be21217d1", + "rev": "6713828a351efa628b025a1adf7f43cbf8597513", "type": "github" }, "original": { @@ -385,11 +385,11 @@ "rust-overlay": "rust-overlay_4" }, "locked": { - "lastModified": 1787797185, - "narHash": "sha256-jCNkS3HfdZfdxeRwzuHhK2p3h0kjO+sikWG6r/eO4m0=", + "lastModified": 1788678317, + "narHash": "sha256-y5ZQjk4j0yiRiNxcYPlf3YCGybsUa7SC2UJC6xhiC5A=", "ref": "refs/heads/master", - "rev": "af5b631490a4a8d01bba6b4ee39d6e59bd78950d", - "revCount": 58, + "rev": "21037dae06b477f41583995a29fb6a3cc136e906", + "revCount": 77, "type": "git", "url": "https://scm.wyattjmiller.com/wymiller/nur.git" }, @@ -483,11 +483,11 @@ ] }, "locked": { - "lastModified": 1787713867, - "narHash": "sha256-ZRYTEvDb8QZLCHRoMyIZle9V3Bvw905m0teeo1RvI7M=", + "lastModified": 1788678114, + "narHash": "sha256-pcqbpV4ZI79al6KAlr+WJjaEo/PYfgctRlG43D5BSJM=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "494680f9ffa2b4bf9f2df0f442c7096e44adfa00", + "rev": "4748ec2f5ed4a881474ed4c98aa71a5308cdac8d", "type": "github" }, "original": { @@ -501,11 +501,11 @@ "nixpkgs": "nixpkgs_4" }, "locked": { - "lastModified": 1787993548, - "narHash": "sha256-+IAEnmmx5YIhUWo0lp15jLLHchnXo5yKgWsi6C6Cf+0=", + "lastModified": 1788678114, + "narHash": "sha256-pcqbpV4ZI79al6KAlr+WJjaEo/PYfgctRlG43D5BSJM=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "996e9b0b019a4a9eb9e9a5641aefa06d801b5895", + "rev": "4748ec2f5ed4a881474ed4c98aa71a5308cdac8d", "type": "github" }, "original": { From ee60d5de02a4d4b754a355536f75feb06fad08c7 Mon Sep 17 00:00:00 2001 From: "gitea-actions[bot]" Date: Sun, 13 Sep 2026 07:06:14 +0000 Subject: [PATCH 07/12] chore: update flake lock --- flake.lock | 199 ++++++++++++++++++++++++++++++++++++----------------- 1 file changed, 136 insertions(+), 63 deletions(-) diff --git a/flake.lock b/flake.lock index e788a5a..a374dbd 100644 --- a/flake.lock +++ b/flake.lock @@ -9,11 +9,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1787517695, - "narHash": "sha256-Z119G3qLJx22frNHO3/seMs7fCCvxe9NJJRfN4Jadew=", + "lastModified": 1789138122, + "narHash": "sha256-mh+ZiGCtHAo0xIi1yaNjHsftfnlWz9JiYwHCyT16yIE=", "owner": "ezKEa", "repo": "aagl-gtk-on-nix", - "rev": "4bb57072d963aa47f14894383a5560cf290e296a", + "rev": "d82d6d6f66caf4b63fb154e62fad83c627874127", "type": "github" }, "original": { @@ -32,11 +32,11 @@ "rust-overlay": "rust-overlay_2" }, "locked": { - "lastModified": 1788133146, - "narHash": "sha256-rjxs1D9duSUWf/lnJV6JZXqdpTEbJ1ntX1hZyYHOuK4=", + "lastModified": 1788678360, + "narHash": "sha256-wY0SpYoSCFUEDViELieo2hh39JRNRwQcPonrtrmAc40=", "ref": "refs/heads/master", - "rev": "427757654f013e316b3e267dd345c3ab780da7b6", - "revCount": 22, + "rev": "e6a3ec44bc55dcd9531e69b7a5ba05e49561d7c7", + "revCount": 23, "type": "git", "url": "https://scm.wyattjmiller.com/wymiller/caitsith.git" }, @@ -119,14 +119,30 @@ "type": "github" } }, + "flake-compat_3": { + "flake": false, + "locked": { + "lastModified": 1767039857, + "narHash": "sha256-vNpUSpF5Nuw8xvDLj2KCwwksIbjua2LZCqhV1LNRDns=", + "owner": "NixOS", + "repo": "flake-compat", + "rev": "5edf11c44bc78a0d334f6334cdaf7d60d732daab", + "type": "github" + }, + "original": { + "owner": "NixOS", + "repo": "flake-compat", + "type": "github" + } + }, "flake-schemas": { "locked": { - "lastModified": 1761577921, - "narHash": "sha256-eK3/xbUOrxp9fFlei09XNjqcdiHXxndzrTXp7jFpOk8=", - "rev": "47849c7625e223d36766968cc6dc23ba0e135922", - "revCount": 107, + "lastModified": 1780327564, + "narHash": "sha256-HiRPtA0spK+Dkgbhz/1zW9glXxNVB+L4Rj2VYmdawb8=", + "rev": "6cc9bd98891b1fc6bb2b8cb3277df8bc72799ca6", + "revCount": 149, "type": "tarball", - "url": "https://api.flakehub.com/f/pinned/DeterminateSystems/flake-schemas/0.2.0/019a4a84-544d-7c59-b26d-e334e320c932/source.tar.gz" + "url": "https://api.flakehub.com/f/pinned/DeterminateSystems/flake-schemas/0.5.0/019e83cf-9af3-78b1-ac5b-70e68ad1efe1/source.tar.gz" }, "original": { "type": "tarball", @@ -165,21 +181,38 @@ "type": "github" } }, + "flake-utils_2": { + "inputs": { + "systems": "systems_2" + }, + "locked": { + "lastModified": 1731533236, + "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, "git-hooks": { "inputs": { "flake-compat": "flake-compat_2", - "gitignore": "gitignore", "nixpkgs": [ "go-overlay", "nixpkgs" ] }, "locked": { - "lastModified": 1778507602, - "narHash": "sha256-kTwur1wV+01SdqskVMSo6JMEpg71ps3HpbFY2GsflKs=", + "lastModified": 1788267358, + "narHash": "sha256-nt+lUqYVpc9Y6JeMd2WmXzCDojasdadKo0mWcluvY2Y=", "owner": "cachix", "repo": "git-hooks.nix", - "rev": "61ab0e80d9c7ab14c256b5b453d8b3fb0189ba0a", + "rev": "27555e2624241fb116b49095df4caaee85a25691", "type": "github" }, "original": { @@ -188,25 +221,26 @@ "type": "github" } }, - "gitignore": { + "git-hooks_2": { "inputs": { + "flake-compat": "flake-compat_3", "nixpkgs": [ + "nur", "go-overlay", - "git-hooks", "nixpkgs" ] }, "locked": { - "lastModified": 1709087332, - "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", - "owner": "hercules-ci", - "repo": "gitignore.nix", - "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", + "lastModified": 1788267358, + "narHash": "sha256-nt+lUqYVpc9Y6JeMd2WmXzCDojasdadKo0mWcluvY2Y=", + "owner": "cachix", + "repo": "git-hooks.nix", + "rev": "27555e2624241fb116b49095df4caaee85a25691", "type": "github" }, "original": { - "owner": "hercules-ci", - "repo": "gitignore.nix", + "owner": "cachix", + "repo": "git-hooks.nix", "type": "github" } }, @@ -217,11 +251,34 @@ "nixpkgs": "nixpkgs" }, "locked": { - "lastModified": 1788301927, - "narHash": "sha256-Zmcvt5yW//YLT3HYe3bWN1Sf2txYrnBpa5jLULVokc0=", + "lastModified": 1789140629, + "narHash": "sha256-1TN95Z5nh1z6pyuou2QguhkWJKAl+hIpcfVV/RayGQQ=", "owner": "purpleclay", "repo": "go-overlay", - "rev": "fe48ae4f56981f9f7c2bf03d4951fb0aa6e2095b", + "rev": "7069b95f142184721d3aeac373d687912e7ada0e", + "type": "github" + }, + "original": { + "owner": "purpleclay", + "repo": "go-overlay", + "type": "github" + } + }, + "go-overlay_2": { + "inputs": { + "flake-utils": "flake-utils_2", + "git-hooks": "git-hooks_2", + "nixpkgs": [ + "nur", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1789140629, + "narHash": "sha256-1TN95Z5nh1z6pyuou2QguhkWJKAl+hIpcfVV/RayGQQ=", + "owner": "purpleclay", + "repo": "go-overlay", + "rev": "7069b95f142184721d3aeac373d687912e7ada0e", "type": "github" }, "original": { @@ -240,11 +297,11 @@ "rust-overlay": "rust-overlay_3" }, "locked": { - "lastModified": 1788130254, - "narHash": "sha256-LR+73+2a51LOUKVTkEsP/XMVSZXm2P4hlgb7/KxdQ30=", + "lastModified": 1788678407, + "narHash": "sha256-Yh0HFdJyYJ9s/9R74ybEAWs8bT8aeIiebFHCJE3534E=", "ref": "refs/heads/master", - "rev": "f2049db9c29bf3ab0beff7cf0a990735d5571446", - "revCount": 6, + "rev": "9b9eec68fe154e8ea0bc560677006d7aa69bf855", + "revCount": 7, "type": "git", "url": "https://scm.wyattjmiller.com/wymiller/hildibrand.git" }, @@ -260,11 +317,11 @@ ] }, "locked": { - "lastModified": 1788642154, - "narHash": "sha256-sPpQFVaFTDqO/4vvCAhuAhqTgqN/ygu+9eJcs5eB0js=", + "lastModified": 1789267039, + "narHash": "sha256-LWiBv9yAYFi2LPbUhDGHPGKYskJQjj2fw12OlyO1uQo=", "owner": "nix-community", "repo": "home-manager", - "rev": "fd0956c99c41ae3c13a73a638f1f7e963aebc4ab", + "rev": "ec172013fa62135f58fb58dd17ae9651e8f39727", "type": "github" }, "original": { @@ -282,11 +339,11 @@ ] }, "locked": { - "lastModified": 1788651960, - "narHash": "sha256-v9wJd32eZ2bvhBzVOd7TIjLQd011P7nwOhjKtWlci5I=", + "lastModified": 1789273010, + "narHash": "sha256-E7dWx+utzZPpqQsBUd5sMimKTWMEEbTKFD+ya99Shps=", "owner": "nix-community", "repo": "home-manager", - "rev": "2c0350c759688177331b8f5242311fae8877bdb3", + "rev": "fdc36b12804b0179b24a5ffd282e4c95c37072e2", "type": "github" }, "original": { @@ -313,11 +370,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1778869304, - "narHash": "sha256-30sZNZoA1cqF5JNO9fVX+wgiQYjB7HJqqJ4ztCDeBZE=", + "lastModified": 1789006805, + "narHash": "sha256-xB8mKMOx1IA9vTDNLmJZ6n4wCMq/cuWBBOzGCRnqxrU=", "owner": "nixos", "repo": "nixpkgs", - "rev": "d233902339c02a9c334e7e593de68855ad26c4cb", + "rev": "8ce4ef6cb6f871616146b9fe26d2a5ae594e94fe", "type": "github" }, "original": { @@ -329,11 +386,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1788584326, - "narHash": "sha256-Fd3OB8J9JhgliQwOKcqx4M672CInxi1I5VnwsaXeSQo=", + "lastModified": 1789114715, + "narHash": "sha256-ugpsyk3NM2s87vXfUiIIiibbJ4Pp0JPS5p/3mfs+q+c=", "owner": "nixos", "repo": "nixpkgs", - "rev": "6713828a351efa628b025a1adf7f43cbf8597513", + "rev": "21a67dc470149f337cecafbe965d8d252a390518", "type": "github" }, "original": { @@ -345,11 +402,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1788584326, - "narHash": "sha256-Fd3OB8J9JhgliQwOKcqx4M672CInxi1I5VnwsaXeSQo=", + "lastModified": 1789114715, + "narHash": "sha256-ugpsyk3NM2s87vXfUiIIiibbJ4Pp0JPS5p/3mfs+q+c=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "6713828a351efa628b025a1adf7f43cbf8597513", + "rev": "21a67dc470149f337cecafbe965d8d252a390518", "type": "github" }, "original": { @@ -379,17 +436,18 @@ "inputs": { "caitsith": "caitsith", "darwin": "darwin_2", + "go-overlay": "go-overlay_2", "hildibrand": "hildibrand", "home-manager": "home-manager_2", "nixpkgs": "nixpkgs_3", "rust-overlay": "rust-overlay_4" }, "locked": { - "lastModified": 1788678317, - "narHash": "sha256-y5ZQjk4j0yiRiNxcYPlf3YCGybsUa7SC2UJC6xhiC5A=", + "lastModified": 1789283127, + "narHash": "sha256-lax4hk2gJykg1bPLkSUTMRokudDWvvia3M4/72sTBt8=", "ref": "refs/heads/master", - "rev": "21037dae06b477f41583995a29fb6a3cc136e906", - "revCount": 77, + "rev": "024df8e385052c32a2b5d98bb33aa261710fb987", + "revCount": 96, "type": "git", "url": "https://scm.wyattjmiller.com/wymiller/nur.git" }, @@ -440,11 +498,11 @@ ] }, "locked": { - "lastModified": 1771729765, - "narHash": "sha256-HNsDSR5bhLSrIpi9bTb2uTK1qnPo1xFSBxs6YmFyprk=", + "lastModified": 1788678114, + "narHash": "sha256-pcqbpV4ZI79al6KAlr+WJjaEo/PYfgctRlG43D5BSJM=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "be926cb1a76e8450ab2b92121b2e88d09fa4d41c", + "rev": "4748ec2f5ed4a881474ed4c98aa71a5308cdac8d", "type": "github" }, "original": { @@ -462,11 +520,11 @@ ] }, "locked": { - "lastModified": 1784438913, - "narHash": "sha256-NYF7ZM5ip0u+w1pBFDpIGEbrbgN/wpnLFAmBkWkYMXw=", + "lastModified": 1788678114, + "narHash": "sha256-pcqbpV4ZI79al6KAlr+WJjaEo/PYfgctRlG43D5BSJM=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "afacd6819d3765a05814ee8e3de74c77d42ac799", + "rev": "4748ec2f5ed4a881474ed4c98aa71a5308cdac8d", "type": "github" }, "original": { @@ -483,11 +541,11 @@ ] }, "locked": { - "lastModified": 1788678114, - "narHash": "sha256-pcqbpV4ZI79al6KAlr+WJjaEo/PYfgctRlG43D5BSJM=", + "lastModified": 1789196581, + "narHash": "sha256-yJr1Bt4fKkKIpPYbsKGqJ0VFdoDnURgRwuffmBQ2WzY=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "4748ec2f5ed4a881474ed4c98aa71a5308cdac8d", + "rev": "228ecefb6329d5a531b77b46b581a2f0c26ee056", "type": "github" }, "original": { @@ -501,11 +559,11 @@ "nixpkgs": "nixpkgs_4" }, "locked": { - "lastModified": 1788678114, - "narHash": "sha256-pcqbpV4ZI79al6KAlr+WJjaEo/PYfgctRlG43D5BSJM=", + "lastModified": 1789196581, + "narHash": "sha256-yJr1Bt4fKkKIpPYbsKGqJ0VFdoDnURgRwuffmBQ2WzY=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "4748ec2f5ed4a881474ed4c98aa71a5308cdac8d", + "rev": "228ecefb6329d5a531b77b46b581a2f0c26ee056", "type": "github" }, "original": { @@ -528,6 +586,21 @@ "repo": "default", "type": "github" } + }, + "systems_2": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } } }, "root": "root", From 0b4027f0c01509597aca5ff7541494fb9fd2632e Mon Sep 17 00:00:00 2001 From: "Wyatt J. Miller" Date: Mon, 14 Sep 2026 19:14:30 -0400 Subject: [PATCH 08/12] mod: added proton manager to gaming module, added alsa to sound, added 32-bit libs to graphics --- modules/apps/gaming.nix | 35 +++++++++++++++++-------- modules/graphics/default.nix | 9 ++++--- modules/machine/cloud/configuration.nix | 8 +++--- modules/sound/pipewire.nix | 5 ++++ 4 files changed, 38 insertions(+), 19 deletions(-) diff --git a/modules/apps/gaming.nix b/modules/apps/gaming.nix index e871dce..30435bf 100644 --- a/modules/apps/gaming.nix +++ b/modules/apps/gaming.nix @@ -76,6 +76,16 @@ in { enable = lib.mkEnableOption "OpenGL/Vulkan overlay tool shown in games presenting FPS, CPU/GPU/memory utilization, load, etc."; }; + proton = { + enable = lib.mkEnableOption "Proton compatibility tool management"; + + manager = lib.mkOption { + type = lib.types.enum ["protonplus" "protonup-qt"]; + default = "protonup-qt"; + description = "Graphical Proton compatibility tool manager to install"; + }; + }; + lutris = { enable = lib.mkEnableOption "Lutris game manager and launcher"; package = lib.mkOption { @@ -93,14 +103,7 @@ in { }; }; - # Compatibility layers for Lutris compatibility = { - protonSupport = lib.mkOption { - type = lib.types.bool; - default = true; - description = "Enable Proton-like compatibility layers for Lutris"; - }; - extraTools = lib.mkOption { type = lib.types.listOf lib.types.package; default = []; @@ -153,14 +156,27 @@ in { archon = { enable = lib.mkEnableOption "Archon from NUR"; }; + + opengoal = { + enable = lib.mkEnableOption "OpenGOAL, a game engine used in a certain PlayStation 2 franchise"; + }; }; config = let agl = cfg.aagl; nurPkgs = import "${nur.outPath}/pkgs" { inherit pkgs; }; + protonManager = { + protonplus = pkgs.protonplus; + protonup-qt = pkgs.protonup-qt; + }.${cfg.proton.manager}; in { programs.steam = lib.mkIf cfg.steam.enable { enable = true; + extraPackages = with pkgs; [ + gamescope + gamemode + ]; + remotePlay.openFirewall = cfg.steam.firewall.remotePlay; localNetworkGameTransfers.openFirewall = cfg.steam.firewall.localNetworkGameTransfers; }; @@ -214,13 +230,10 @@ in { cfg.lutris.wine.package pkgs.winetricks ]) ++ - (lib.optionals cfg.lutris.compatibility.protonSupport [ - pkgs.protonup-ng - pkgs.protonup-qt - ]) ++ cfg.lutris.compatibility.extraTools ++ cfg.lutris.extraPackages )) ++ + (lib.optionals cfg.proton.enable [protonManager]) ++ (lib.optionals cfg.minecraft.enable [pkgs.prismlauncher]) ++ (lib.optionals cfg.ffxiv.enable [pkgs.xivlauncher pkgs.fflogs]) ++ (lib.optionals cfg.vintage-story.enable [nurPkgs.vintage-story]) ++ diff --git a/modules/graphics/default.nix b/modules/graphics/default.nix index 47fc13f..16acfe4 100644 --- a/modules/graphics/default.nix +++ b/modules/graphics/default.nix @@ -43,6 +43,11 @@ in { vulkan-tools mesa-demos ]; + + hardware.graphics = { + enable = true; + enable32Bit = true; + }; } (mkIf (cfg.gpuVendor == "nvidia") { @@ -61,9 +66,6 @@ in { (mkIf (cfg.gpuVendor == "amd") { services.xserver.videoDrivers = ["amdgpu"]; - # hardware.graphics.extraPackages = with pkgs; [ - # amdvlk - # ]; environment.systemPackages = with pkgs; [ radeontop ]; @@ -82,7 +84,6 @@ in { environment.sessionVariables = { MOZ_ENABLE_WAYLAND = "1"; QT_QPA_PLATFORM = "wayland"; - SDL_VIDEODRIVER = "wayland"; }; }) diff --git a/modules/machine/cloud/configuration.nix b/modules/machine/cloud/configuration.nix index 85cd474..592e8c4 100644 --- a/modules/machine/cloud/configuration.nix +++ b/modules/machine/cloud/configuration.nix @@ -3,7 +3,6 @@ pkgs, userName, aagl, - nur, ... }: let flatpakPackages = [ @@ -114,15 +113,16 @@ in { gamemode.enable = true; gamescope.enable = true; mangohud.enable = true; + proton = { + enable = true; + manager = "protonplus"; + }; lutris = { enable = true; wine = { enable = true; package = pkgs.wine-staging; }; - compatibility = { - protonSupport = true; - }; }; ffxiv.enable = true; diff --git a/modules/sound/pipewire.nix b/modules/sound/pipewire.nix index fc7513e..292ab62 100644 --- a/modules/sound/pipewire.nix +++ b/modules/sound/pipewire.nix @@ -3,6 +3,11 @@ services.pipewire = { enable = true; pulse.enable = true; + + alsa = { + enable = true; + support32Bit = true; + }; }; environment.systemPackages = with pkgs; [ From c78fb3019ce0bb14cf143c206f39e364a0b67c1a Mon Sep 17 00:00:00 2001 From: "Wyatt J. Miller" Date: Mon, 14 Sep 2026 19:31:56 -0400 Subject: [PATCH 09/12] mod: added autopair, bufferline plugins --- flake.lock | 60 ++++++++++++++++++++++++++++++++++++------------- home/neovim.nix | 2 ++ 2 files changed, 47 insertions(+), 15 deletions(-) diff --git a/flake.lock b/flake.lock index 51ad7d4..fc10529 100644 --- a/flake.lock +++ b/flake.lock @@ -135,6 +135,22 @@ "type": "github" } }, + "flake-compat_4": { + "flake": false, + "locked": { + "lastModified": 1777699697, + "narHash": "sha256-Eg9b/rq/ECYwNwEXs5i9wHyhxNI0JrYx2srdI2uZMaQ=", + "ref": "refs/heads/main", + "rev": "382052b74656a369c5408822af3f2501e9b1af81", + "revCount": 94, + "type": "git", + "url": "https://git.lix.systems/lix-project/flake-compat.git" + }, + "original": { + "type": "git", + "url": "https://git.lix.systems/lix-project/flake-compat.git" + } + }, "flake-schemas": { "locked": { "lastModified": 1780327564, @@ -251,11 +267,11 @@ "nixpkgs": "nixpkgs" }, "locked": { - "lastModified": 1789140629, - "narHash": "sha256-1TN95Z5nh1z6pyuou2QguhkWJKAl+hIpcfVV/RayGQQ=", + "lastModified": 1789395265, + "narHash": "sha256-EvwCTZsXjw2AkEYP3dJd/ZQDxfMhK73p1t17Dl+kx3g=", "owner": "purpleclay", "repo": "go-overlay", - "rev": "7069b95f142184721d3aeac373d687912e7ada0e", + "rev": "615091b8fb4b01d37b01f81bd68fe57e500066c4", "type": "github" }, "original": { @@ -401,11 +417,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1789114715, - "narHash": "sha256-ugpsyk3NM2s87vXfUiIIiibbJ4Pp0JPS5p/3mfs+q+c=", + "lastModified": 1789344334, + "narHash": "sha256-vdhpDJ3Lr24lkZ+fDCjmBRRtw9/vcSzkqGJOJyF5h2U=", "owner": "nixos", "repo": "nixpkgs", - "rev": "21a67dc470149f337cecafbe965d8d252a390518", + "rev": "c3eea5b2156db11c7eeeada3dc737711255b253e", "type": "github" }, "original": { @@ -432,6 +448,19 @@ } }, "nixpkgs_4": { + "locked": { + "lastModified": 1787498568, + "narHash": "sha256-FoOSoBG7tEvOlGRTpWnVdY506Ner4y7r7UYO3OGgmE8=", + "rev": "56c02bc00adcf003215cc4bd996d6efaf4cff188", + "type": "tarball", + "url": "https://releases.nixos.org/nixos/unstable/nixos-26.11pre1060451.56c02bc00adc/nixexprs.tar.xz" + }, + "original": { + "type": "tarball", + "url": "https://channels.nixos.org/nixos-unstable/nixexprs.tar.xz" + } + }, + "nixpkgs_5": { "locked": { "lastModified": 1744536153, "narHash": "sha256-awS2zRgF4uTwrOKwwiJcByDzDOdo3Q1rPZbiHQg/N38=", @@ -473,16 +502,16 @@ }, "nvf": { "inputs": { - "flake-compat": "flake-compat_3", + "flake-compat": "flake-compat_4", "mnw": "mnw", - "nixpkgs": "nixpkgs_6" + "nixpkgs": "nixpkgs_4" }, "locked": { - "lastModified": 1786307523, - "narHash": "sha256-RKnrspb7azG0ERNZgdumX3EEivFCD3Vtglwbf90T1K0=", + "lastModified": 1789333536, + "narHash": "sha256-C9GsjXostGh50d62SYEXVJOSDTwk7RjAumJmwzkJKEY=", "owner": "notashelf", "repo": "nvf", - "rev": "23f994fcd754e9de067fa00cca891a774498825b", + "rev": "2d6b480abfa9fcf84841e62c27922bfa3f3d0d2b", "type": "github" }, "original": { @@ -500,6 +529,7 @@ "nix-flatpak": "nix-flatpak", "nixpkgs": "nixpkgs_2", "nur": "nur", + "nvf": "nvf", "rust-overlay": "rust-overlay_5" } }, @@ -591,14 +621,14 @@ }, "rust-overlay_5": { "inputs": { - "nixpkgs": "nixpkgs_4" + "nixpkgs": "nixpkgs_5" }, "locked": { - "lastModified": 1789196581, - "narHash": "sha256-yJr1Bt4fKkKIpPYbsKGqJ0VFdoDnURgRwuffmBQ2WzY=", + "lastModified": 1789372034, + "narHash": "sha256-mu6atvdBHYpDsFhJkPtSsS6auSWAnWONVJMCvpL0900=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "228ecefb6329d5a531b77b46b581a2f0c26ee056", + "rev": "a5f41d15ba0e9442542c5324fbccd7a87105a90d", "type": "github" }, "original": { diff --git a/home/neovim.nix b/home/neovim.nix index 9b27664..b212f57 100644 --- a/home/neovim.nix +++ b/home/neovim.nix @@ -12,6 +12,7 @@ lsp.enable = true; treesitter.enable = true; autocomplete.nvim-cmp.enable = true; + autopairs.nvim-autopairs.enable = true; languages = { nix.enable = true; @@ -76,6 +77,7 @@ dashboard.alpha.enable = true; statusline.lualine.enable = true; + tabline.nvimBufferline.enable = true; keymaps = [ { From c6b1eb533791f6c38252f85bd1628d5d80bc06d1 Mon Sep 17 00:00:00 2001 From: "gitea-actions[bot]" Date: Sun, 20 Sep 2026 07:07:12 +0000 Subject: [PATCH 10/12] chore: update flake lock --- flake.lock | 90 +++++++++++++++++++++++++++--------------------------- 1 file changed, 45 insertions(+), 45 deletions(-) diff --git a/flake.lock b/flake.lock index fc10529..76007ec 100644 --- a/flake.lock +++ b/flake.lock @@ -32,11 +32,11 @@ "rust-overlay": "rust-overlay_2" }, "locked": { - "lastModified": 1788678360, - "narHash": "sha256-wY0SpYoSCFUEDViELieo2hh39JRNRwQcPonrtrmAc40=", + "lastModified": 1789283312, + "narHash": "sha256-Sv/2AyUTydH5d4eNk/ej1lHD1rpDvNjiB5Y3hmg/EGk=", "ref": "refs/heads/master", - "rev": "e6a3ec44bc55dcd9531e69b7a5ba05e49561d7c7", - "revCount": 23, + "rev": "31673a5c64497a0f40487d51820d3738dec13d60", + "revCount": 24, "type": "git", "url": "https://scm.wyattjmiller.com/wymiller/caitsith.git" }, @@ -267,11 +267,11 @@ "nixpkgs": "nixpkgs" }, "locked": { - "lastModified": 1789395265, - "narHash": "sha256-EvwCTZsXjw2AkEYP3dJd/ZQDxfMhK73p1t17Dl+kx3g=", + "lastModified": 1789623807, + "narHash": "sha256-pqmP+T+fR2+MDen+ro2iF7mdH7S83AUuvNZwVDl3jUk=", "owner": "purpleclay", "repo": "go-overlay", - "rev": "615091b8fb4b01d37b01f81bd68fe57e500066c4", + "rev": "b19679b19d64dc29b96caf07e3282c250611ac57", "type": "github" }, "original": { @@ -290,11 +290,11 @@ ] }, "locked": { - "lastModified": 1789140629, - "narHash": "sha256-1TN95Z5nh1z6pyuou2QguhkWJKAl+hIpcfVV/RayGQQ=", + "lastModified": 1789623807, + "narHash": "sha256-pqmP+T+fR2+MDen+ro2iF7mdH7S83AUuvNZwVDl3jUk=", "owner": "purpleclay", "repo": "go-overlay", - "rev": "7069b95f142184721d3aeac373d687912e7ada0e", + "rev": "b19679b19d64dc29b96caf07e3282c250611ac57", "type": "github" }, "original": { @@ -313,11 +313,11 @@ "rust-overlay": "rust-overlay_3" }, "locked": { - "lastModified": 1788678407, - "narHash": "sha256-Yh0HFdJyYJ9s/9R74ybEAWs8bT8aeIiebFHCJE3534E=", + "lastModified": 1789887932, + "narHash": "sha256-ryX9MgESeWwjpFMgxlaF97FgtaRyfIELgFLEeUR8xLQ=", "ref": "refs/heads/master", - "rev": "9b9eec68fe154e8ea0bc560677006d7aa69bf855", - "revCount": 7, + "rev": "70288a728cc39eb5f390f71ae24d4a58763216b1", + "revCount": 14, "type": "git", "url": "https://scm.wyattjmiller.com/wymiller/hildibrand.git" }, @@ -355,11 +355,11 @@ ] }, "locked": { - "lastModified": 1789273010, - "narHash": "sha256-E7dWx+utzZPpqQsBUd5sMimKTWMEEbTKFD+ya99Shps=", + "lastModified": 1789867870, + "narHash": "sha256-sOag/7DTqw4tXLI7UxjrZxPGV+dlTe6zFtJn0VSkgFM=", "owner": "nix-community", "repo": "home-manager", - "rev": "fdc36b12804b0179b24a5ffd282e4c95c37072e2", + "rev": "d2a22a3659a6ae99847ea9176114f6957b8ac62e", "type": "github" }, "original": { @@ -401,11 +401,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1789006805, - "narHash": "sha256-xB8mKMOx1IA9vTDNLmJZ6n4wCMq/cuWBBOzGCRnqxrU=", + "lastModified": 1789286504, + "narHash": "sha256-eiEK7cKZORNEvX0GeF3RtNEF/JXhgf2RqSp3230q13E=", "owner": "nixos", "repo": "nixpkgs", - "rev": "8ce4ef6cb6f871616146b9fe26d2a5ae594e94fe", + "rev": "ef34387ddd751e1ab8857adf4676492d32eb24ec", "type": "github" }, "original": { @@ -417,11 +417,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1789344334, - "narHash": "sha256-vdhpDJ3Lr24lkZ+fDCjmBRRtw9/vcSzkqGJOJyF5h2U=", + "lastModified": 1789749394, + "narHash": "sha256-cFTsMQz8Hzn8MT49oaeLSHg62tE86NykugCWkeM2ypk=", "owner": "nixos", "repo": "nixpkgs", - "rev": "c3eea5b2156db11c7eeeada3dc737711255b253e", + "rev": "cf9d2fb3e50fa1cd5114c47505ea9177f7ff5f49", "type": "github" }, "original": { @@ -433,11 +433,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1789114715, - "narHash": "sha256-ugpsyk3NM2s87vXfUiIIiibbJ4Pp0JPS5p/3mfs+q+c=", + "lastModified": 1789749394, + "narHash": "sha256-cFTsMQz8Hzn8MT49oaeLSHg62tE86NykugCWkeM2ypk=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "21a67dc470149f337cecafbe965d8d252a390518", + "rev": "cf9d2fb3e50fa1cd5114c47505ea9177f7ff5f49", "type": "github" }, "original": { @@ -487,11 +487,11 @@ "rust-overlay": "rust-overlay_4" }, "locked": { - "lastModified": 1789283127, - "narHash": "sha256-lax4hk2gJykg1bPLkSUTMRokudDWvvia3M4/72sTBt8=", + "lastModified": 1789887979, + "narHash": "sha256-ln0cOIfvEFNd4IdVbiYfdtxS01E5npnstm0YCTOxpJY=", "ref": "refs/heads/master", - "rev": "024df8e385052c32a2b5d98bb33aa261710fb987", - "revCount": 96, + "rev": "39c33599b191ae2d595b3cc38e8ad4bf2766cd89", + "revCount": 99, "type": "git", "url": "https://scm.wyattjmiller.com/wymiller/nur.git" }, @@ -507,11 +507,11 @@ "nixpkgs": "nixpkgs_4" }, "locked": { - "lastModified": 1789333536, - "narHash": "sha256-C9GsjXostGh50d62SYEXVJOSDTwk7RjAumJmwzkJKEY=", + "lastModified": 1789854559, + "narHash": "sha256-6GDssza3F+ukpUujSuTL50vW5AHaoG+4vjsDgWqRyeQ=", "owner": "notashelf", "repo": "nvf", - "rev": "2d6b480abfa9fcf84841e62c27922bfa3f3d0d2b", + "rev": "85bf39cd0409ad8a7fa5b3ad0d29e89e9da97a0e", "type": "github" }, "original": { @@ -563,11 +563,11 @@ ] }, "locked": { - "lastModified": 1788678114, - "narHash": "sha256-pcqbpV4ZI79al6KAlr+WJjaEo/PYfgctRlG43D5BSJM=", + "lastModified": 1789196581, + "narHash": "sha256-yJr1Bt4fKkKIpPYbsKGqJ0VFdoDnURgRwuffmBQ2WzY=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "4748ec2f5ed4a881474ed4c98aa71a5308cdac8d", + "rev": "228ecefb6329d5a531b77b46b581a2f0c26ee056", "type": "github" }, "original": { @@ -585,11 +585,11 @@ ] }, "locked": { - "lastModified": 1788678114, - "narHash": "sha256-pcqbpV4ZI79al6KAlr+WJjaEo/PYfgctRlG43D5BSJM=", + "lastModified": 1789802016, + "narHash": "sha256-QVFfArbYaQMGK4dFV+5RUL72Ci+hNHVhaF/R9qJfDhs=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "4748ec2f5ed4a881474ed4c98aa71a5308cdac8d", + "rev": "26a71e661c47bd21a05d06fec749f3f7c75e9d12", "type": "github" }, "original": { @@ -606,11 +606,11 @@ ] }, "locked": { - "lastModified": 1789196581, - "narHash": "sha256-yJr1Bt4fKkKIpPYbsKGqJ0VFdoDnURgRwuffmBQ2WzY=", + "lastModified": 1789802016, + "narHash": "sha256-QVFfArbYaQMGK4dFV+5RUL72Ci+hNHVhaF/R9qJfDhs=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "228ecefb6329d5a531b77b46b581a2f0c26ee056", + "rev": "26a71e661c47bd21a05d06fec749f3f7c75e9d12", "type": "github" }, "original": { @@ -624,11 +624,11 @@ "nixpkgs": "nixpkgs_5" }, "locked": { - "lastModified": 1789372034, - "narHash": "sha256-mu6atvdBHYpDsFhJkPtSsS6auSWAnWONVJMCvpL0900=", + "lastModified": 1789802016, + "narHash": "sha256-QVFfArbYaQMGK4dFV+5RUL72Ci+hNHVhaF/R9qJfDhs=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "a5f41d15ba0e9442542c5324fbccd7a87105a90d", + "rev": "26a71e661c47bd21a05d06fec749f3f7c75e9d12", "type": "github" }, "original": { From 9f14456ecc64033c1cc8714219f7d806c822a919 Mon Sep 17 00:00:00 2001 From: "Wyatt J. Miller" Date: Sun, 20 Sep 2026 20:02:44 -0400 Subject: [PATCH 11/12] mod: added sable web to yshtola config added formatter --- flake.nix | 4 + modules/machine/yshtola/configuration.nix | 116 ++++++++++++++++++---- 2 files changed, 102 insertions(+), 18 deletions(-) diff --git a/flake.nix b/flake.nix index 576d786..fd32c2a 100644 --- a/flake.nix +++ b/flake.nix @@ -50,6 +50,10 @@ }; in { meta = import ./meta; + formatter = nixpkgs.lib.genAttrs [ + "x86_64-linux" + "aarch64-darwin" + ] (system: nixpkgs.legacyPackages.${system}.nixfmt); common = { overlays = import ./modules/common/overlays.nix; diff --git a/modules/machine/yshtola/configuration.nix b/modules/machine/yshtola/configuration.nix index 187f301..e8b97a9 100644 --- a/modules/machine/yshtola/configuration.nix +++ b/modules/machine/yshtola/configuration.nix @@ -1,8 +1,10 @@ { + nur, pkgs, userName, ... -}: let +}: +let # INFO: set these to your liking matrixFqdn = "chat.wyattjmiller.com"; rtcFqdn = "rtc.wyattjmiller.com"; @@ -10,16 +12,50 @@ supportEmail = "wyatt@wyattjmiller.com"; livekitKeyFile = "/var/lib/livekit/livekit.key"; matrixRegistrationTokenFile = "/var/lib/matrix.key"; -in { + + sableWeb = nur.packages.${pkgs.stdenv.hostPlatform.system}.sable-web; + + sableConfig = pkgs.writeTextDir "config.json" ( + builtins.toJSON { + defaultHomeserver = 0; + homeserverList = [ matrixFqdn ]; + allowCustomHomeservers = false; + + disableAccountSwitcher = false; + hideUsernamePasswordFields = false; + + hashRouter = { + enabled = false; + basename = "/"; + }; + + featuredCommunities = { + spaces = [ + "#seventhdawn:chat.wyattjmiller.com" + ]; + rooms = [ + "#general:chat.wyattjmiller.com" + "#gposeglams:chat.wyattjmiller.com" + "#lobby-vc:chat.wyattjmiller.com" + "#annoucements:chat.wyattjmiller.com" + ]; + }; + } + ); +in +{ imports = [ ../../pwrMgmt ]; # Enable flakes for NixOS - nix.settings.experimental-features = ["nix-command" "flakes"]; + nix.settings.experimental-features = [ + "nix-command" + "flakes" + ]; nix.settings = { - download-buffer-size = 134217728; # 128 MiB in bytes + download-buffer-size = 134217728; # 128 MiB in bytes }; # Custom kernel/boot stuff @@ -79,13 +115,13 @@ in { 8448 ]; - allowedUDPPortRanges =[ + allowedUDPPortRanges = [ # TURN UDP relays - { + { from = 49000; to = 50000; } - # + # { from = 50100; to = 50200; @@ -99,7 +135,11 @@ in { "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFV9eSc9L+aJLoKoexq2f/jb5rpyZnhuGiyhS8YQAbaS wyatt@wyattjmiller.com" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIO4WKvKnnYpTbzZHFEslOKyfiiMqWxhW3AfX6E7ACmYU wyatt@wyattjmiller.com" ]; - extraGroups = ["wheel" "video" "network"]; + extraGroups = [ + "wheel" + "video" + "network" + ]; }; # fail2ban @@ -144,11 +184,13 @@ in { server = "${matrixFqdn}:443"; support_email = supportEmail; support_mxid = "@wymiller:${matrixFqdn}"; - - rtc_transports = [{ - type = "livekit"; - livekit_service_url = "https://${rtcFqdn}"; - }]; + + rtc_transports = [ + { + type = "livekit"; + livekit_service_url = "https://${rtcFqdn}"; + } + ]; }; }; }; @@ -176,8 +218,37 @@ in { virtualHosts = { "${matrixFqdn}" = { extraConfig = '' - encode zstd gzip - reverse_proxy localhost:8008 + @matrixEndpoints path \ + /_matrix/* \ + /_tuwunel/* \ + /.well-known/matrix/* + + handle @matrixEndpoints { + reverse_proxy 127.0.0.1:8008 + } + + @sableConfig path /config.json + handle @sableConfig { + root * ${sableConfig} + header Cache-Control "no-store" + file_server + } + + handle { + root * ${sableWeb} + + encode zstd gzip + try_files {path} /index.html + + file_server { + precompressed br + } + + header /assets/* Cache-Control "public, max-age=31536000, immutable" + header /sw.js Cache-Control "no-cache" + header /index.html Cache-Control "no-cache" + header Document-Policy "js-profiling" + } ''; }; "${matrixFqdn}:8448" = { @@ -220,7 +291,10 @@ in { matrix-registration-token-gen = { before = [ "tuwunel.service" ]; wantedBy = [ "multi-user.target" ]; - path = with pkgs; [ coreutils openssl ]; + path = with pkgs; [ + coreutils + openssl + ]; script = '' set -eu @@ -242,9 +316,15 @@ in { }; livekit-key-gen = { - before = [ "lk-jwt-service.service" "livekit.service" ]; + before = [ + "lk-jwt-service.service" + "livekit.service" + ]; wantedBy = [ "multi-user.target" ]; - path = with pkgs; [ coreutils openssl ]; + path = with pkgs; [ + coreutils + openssl + ]; script = '' set -eu From 6405a3f0aa4d3c801c99cb18d05bc0cb07a1ef86 Mon Sep 17 00:00:00 2001 From: "Wyatt J. Miller" Date: Sun, 20 Sep 2026 20:22:21 -0400 Subject: [PATCH 12/12] mod: forgot nur inherit --- flake.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flake.nix b/flake.nix index fd32c2a..501fd6d 100644 --- a/flake.nix +++ b/flake.nix @@ -223,7 +223,7 @@ nixosConfigurations."yshtola" = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; specialArgs = { - inherit userName userEmail; + inherit userName userEmail nur; hostname = "yshtola"; role = "server"; };