diff --git a/flake.lock b/flake.lock index 1bd519b..11bc930 100644 --- a/flake.lock +++ b/flake.lock @@ -925,11 +925,11 @@ "xwayland-satellite-unstable": "xwayland-satellite-unstable" }, "locked": { - "lastModified": 1761623016, - "narHash": "sha256-C2+TErNmeHMCtodwVrMeA/uJg1GRdQbOntRI7DFullA=", + "lastModified": 1760950171, + "narHash": "sha256-E2ySTu/oK7cYBdAI3tlGP9zVjF4mZgWJ1OZInBCMb00=", "owner": "sodiboo", "repo": "niri-flake", - "rev": "f0bfe0aaaa51378ace7492850290f8d2db6cc7f3", + "rev": "f851a923137c0a54719412146fd63d24b3214e60", "type": "github" }, "original": { @@ -958,11 +958,11 @@ "niri-unstable": { "flake": false, "locked": { - "lastModified": 1761460429, - "narHash": "sha256-pJeM23DGMD5AK4gdNaDM1qsIv87NYQJgEh2E8tRd7es=", + "lastModified": 1760940149, + "narHash": "sha256-KbM47vD6E0cx+v4jYQZ8mD5N186AKm2CQlyh34TW58U=", "owner": "YaLTeR", "repo": "niri", - "rev": "e6f3c538da0c646bda43fcde7ef7dc3b771e0c8b", + "rev": "b3245b81a6ed8edfaf5388a74d2e0a23c24941e5", "type": "github" }, "original": { @@ -1156,11 +1156,11 @@ }, "nixpkgs-stable_3": { "locked": { - "lastModified": 1761468971, - "narHash": "sha256-vY2OLVg5ZTobdroQKQQSipSIkHlxOTrIF1fsMzPh8w8=", + "lastModified": 1760862643, + "narHash": "sha256-PXwG0TM7Ek87DNx4LbGWuD93PbFeKAJs4FfALtp7Wo0=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "78e34d1667d32d8a0ffc3eba4591ff256e80576e", + "rev": "33c6dca0c0cb31d6addcd34e90a63ad61826b28c", "type": "github" }, "original": { @@ -1390,7 +1390,7 @@ "flake": false, "locked": { "lastModified": 1, - "narHash": "sha256-5i6dXIjMmBZZ4WusMd/kCPijOVQR9AkosndKF07QVIo=", + "narHash": "sha256-F3ysDLjeyNGHcZYOQHbw8kjBqf3L+ESrZs9XMRefOJQ=", "path": "./nvchad", "type": "path" }, @@ -1836,11 +1836,11 @@ "xwayland-satellite-unstable": { "flake": false, "locked": { - "lastModified": 1761622056, - "narHash": "sha256-fBrUszJXmB4MY+wf3QsCnqWHcz7u7fLq0QMAWCltIQg=", + "lastModified": 1759707084, + "narHash": "sha256-0pkftKs6/LReNvxw7DVTN2AJEheZVgyeK0Aarbagi70=", "owner": "Supreeeme", "repo": "xwayland-satellite", - "rev": "0728d59ff6463a502e001fb090f6eb92dbc04756", + "rev": "a9188e70bd748118b4d56a529871b9de5adb9988", "type": "github" }, "original": { diff --git a/flake/perSystem.nix b/flake/perSystem.nix index 9d74047..ec63063 100644 --- a/flake/perSystem.nix +++ b/flake/perSystem.nix @@ -37,8 +37,6 @@ just nvfetcher nixfmt-rfc-style - - lua-language-server ]; }; legacyPackages = diff --git a/home/david/modules/programs/firefox.nix b/home/david/modules/programs/firefox.nix index 4c98ff7..f5b3b59 100644 --- a/home/david/modules/programs/firefox.nix +++ b/home/david/modules/programs/firefox.nix @@ -77,20 +77,6 @@ in force = true; default = "ddg"; engines = { - "Guix Packages" = { - urls = [ - { - template = "https://packages.guix.gnu.org/search/"; - params = [ - { - name = "query"; - value = "{searchTerms}"; - } - ]; - } - ]; - definedAliases = [ "@gp" ]; - }; "Nix Packages" = { urls = [ { @@ -144,7 +130,15 @@ in ]; } ]; - definedAliases = [ "@hm" ]; + definedAliases = [ "hm" ]; + }; + "NUR Packages" = { + urls = [ + { + template = "https://nur.nix-community.org/"; + } + ]; + definedAliases = [ "nu" ]; }; "Nix Flakes" = { urls = [ @@ -162,7 +156,7 @@ in ]; } ]; - definedAliases = [ "@nf" ]; + definedAliases = [ "nf" ]; }; "NixOS Wiki" = { urls = [ @@ -176,7 +170,7 @@ in ]; } ]; - definedAliases = [ "@nw" ]; + definedAliases = [ "nw" ]; }; "Rust Stdandard Lib" = { urls = [ @@ -190,7 +184,7 @@ in ]; } ]; - definedAliases = [ "@rs" ]; + definedAliases = [ "rs" ]; }; "GitHub" = { urls = [ @@ -208,7 +202,7 @@ in ]; } ]; - definedAliases = [ "@gh" ]; + definedAliases = [ "gh" ]; }; "Rust Reference" = { urls = [ @@ -222,39 +216,7 @@ in ]; } ]; - definedAliases = [ "@rr" ]; - }; - "Rust Crates" = { - urls = [ - { - temaplte = "https://crates.io/search"; - params = [ - { - name = "q"; - value = "{searchTerms}"; - } - ]; - } - ]; - definedAliases = [ "@rc" ]; - }; - "C++ Reference" = { - urls = [ - { - template = "https://duckduckgo.com/"; - params = [ - { - name = "q"; - value = "{searchTerms}"; - } - { - name = "sites"; - value = "cppreference.com"; - } - ]; - } - ]; - definedAliases = [ "@cr" ]; + definedAliases = [ "rr" ]; }; "bing".metaData.hidden = true; "google".metaData.alias = "@g"; # builtin engines only support specifying one additional alias diff --git a/home/david/modules/programs/nvchad.nix b/home/david/modules/programs/nvchad.nix index c219d3c..3328c65 100644 --- a/home/david/modules/programs/nvchad.nix +++ b/home/david/modules/programs/nvchad.nix @@ -18,8 +18,6 @@ in enable = true; extraPackages = with pkgs; [ editor-runtime - - pkg-config ]; neovim = pkgs.neovim-nightly; backup = true; diff --git a/home/modules/programs/git.nix b/home/modules/programs/git.nix index d76600c..f8a3a1c 100644 --- a/home/modules/programs/git.nix +++ b/home/modules/programs/git.nix @@ -47,19 +47,18 @@ }; git = { enable = true; - settings.user = { - inherit (cfg) email name; + userEmail = cfg.email; + userName = cfg.name; + delta = { + enable = true; + options = { + line-number = true; + hyperlinks = true; + side-by-side = true; + }; }; lfs.enable = true; }; - delta = { - enable = true; - options = { - line-number = true; - hyperlinks = true; - side-by-side = true; - }; - }; }; } (lib.mkIf (cfg.signKey != null) { @@ -70,7 +69,7 @@ }; }) (lib.mkIf cfg.encrypt-credential { - programs.git.settings = { + programs.git.extraConfig = { credential = { helper = "store --file=${config.sops.secrets."git-credential".path}"; }; diff --git a/home/modules/programs/jujutsu.nix b/home/modules/programs/jujutsu.nix index 48c8942..34fef21 100644 --- a/home/modules/programs/jujutsu.nix +++ b/home/modules/programs/jujutsu.nix @@ -38,6 +38,7 @@ in config = lib.mkMerge [ (lib.mkIf cfg.enable { home.packages = with pkgs; [ + delta watchman ]; programs.jujutsu = { diff --git a/nvchad/lua/options.lua b/nvchad/lua/options.lua index 200ea2f..e99d7d3 100644 --- a/nvchad/lua/options.lua +++ b/nvchad/lua/options.lua @@ -1,99 +1,102 @@ +require "nvchad.options" + +local o = vim.o local opt = vim.opt -local options = { - autoindent = true, - autoread = true, - backspace = { - "indent", - "eol", - "start", - }, - backup = false, - breakindent = true, - breakindentopt = { "sbr" }, - showbreak = "↪", - cdhome = true, - cmdheight = 1, - completeopt = { - "fuzzy", - "menuone", - "noselect", - "popup", - }, - concealcursor = { ["v"] = true }, - confirm = true, - cursorline = true, - cursorlineopt = { "number", "screenline" }, - diffopt = { - "algorithm:minimal", - "closeoff", - "context:20", - "followwrap", - "internal", - "linematch:40", - }, - errorbells = true, - expandtab = true, - exrc = true, - foldcolumn = "auto", - fsync = true, - gdefault = false, - helplang = { - "zh", - "en", - }, - history = 10000, - hlsearch = true, - ignorecase = true, - smartcase = true, - inccommand = "split", - list = true, - listchars = { - tab = "--→", - trail = "·", - multispace = " ", - nbsp = "⍽", - space = "·", - }, - magic = true, - more = true, - mouse = "a", - number = true, - numberwidth = 4, - relativenumber = true, - scrollback = 100000, - scrolloff = 5, - shiftround = true, - shiftwidth = 2, - showmode = false, - signcolumn = "yes", - smoothscroll = true, - splitbelow = true, - splitright = true, - startofline = true, - swapfile = false, - tabclose = { - "uselast", - }, - tabstop = 2, - termguicolors = true, - undofile = true, - undolevels = 100000, - virtualedit = { - "block", - "onemore", - }, - whichwrap = { b = true, s = true, ["<"] = true, [">"] = true }, - wildmenu = true, - wildmode = { "full" }, - wildoptions = { - "fuzzy", - "pum", - }, - winborder = "solid", - wrap = true +o.autoindent = true +o.autoread = true +opt.backspace = { + "indent", + "eol", + "start", } +o.backup = false -for key, value in pairs(options) do - opt[key] = value -end +opt.breakindent = true +opt.breakindentopt = { "sbr" } +o.showbreak = "↪" + +o.cdhome = true +o.cmdheight = 1 +opt.completeopt = { + "fuzzy", + "menuone", + "noselect", + "popup", +} +opt.concealcursor = { ["v"] = true } +o.confirm = true +o.cursorline = true +opt.cursorlineopt = { "number", "screenline" } +opt.diffopt = { + "algorithm:minimal", + "closeoff", + "context:20", + "followwrap", + "internal", + "linematch:40", +} +o.errorbells = true +o.expandtab = true +o.exrc = true +o.foldcolumn = "auto" +o.fsync = true +o.gdefault = false +opt.helplang = { + "zh", + "en", +} +o.history = 10000 +o.hlsearch = true + +o.ignorecase = true +o.smartcase = true + +o.inccommand = "split" +o.list = true +opt.listchars = { + tab = "--→", + trail = "·", + multispace = " ", + nbsp = "⍽", + space = "·", +} +o.magic = true +o.more = true +o.mouse = "a" + +o.number = true +o.numberwidth = 4 +o.relativenumber = true + +o.scrollback = 100000 +o.scrolloff = 5 +o.shiftround = true +o.shiftwidth = 2 +o.showmode = false +o.signcolumn = "yes" +o.smoothscroll = true +o.splitbelow = true +o.splitright = true +o.startofline = true +o.swapfile = false +opt.tabclose = { + "uselast", +} +o.tabstop = 2 +o.termguicolors = true +o.undofile = true +o.undolevels = 100000 +opt.virtualedit = { + "block", + "onemore", +} +opt.whichwrap = { b = true, s = true, ["<"] = true, [">"] = true } +o.wildmenu = true +opt.wildmode = { "full" } +opt.wildoptions = { + "fuzzy", + "pum", +} +o.winborder = "solid" +o.wrap = true diff --git a/overlays/modifications/default.nix b/overlays/modifications/default.nix index 7b6c28a..30190d7 100644 --- a/overlays/modifications/default.nix +++ b/overlays/modifications/default.nix @@ -5,6 +5,7 @@ let in [ ./niri.nix + ./juicity.nix ./dae.nix ./spotifyx.nix ./radicle-explorer.nix diff --git a/overlays/modifications/juicity.nix b/overlays/modifications/juicity.nix new file mode 100644 index 0000000..37e9203 --- /dev/null +++ b/overlays/modifications/juicity.nix @@ -0,0 +1,8 @@ +{ outputs, ... }: +_final: prev: +let + inherit (prev.stdenv.hostPlatform) system; +in +{ + juicity = outputs.packages."${system}".juicity; +} diff --git a/pkgs/juicity.nix b/pkgs/juicity.nix new file mode 100644 index 0000000..310ff67 --- /dev/null +++ b/pkgs/juicity.nix @@ -0,0 +1,32 @@ +{ + buildGoModule, + srcs, +}: +buildGoModule rec { + name = "juicity"; + version = "unstable-${srcs.juicity.date}.${srcs.juicity.version}"; + + src = srcs.juicity.src; + env.CGO_ENABLED = 0; + + subPackages = [ + "cmd/server" + "cmd/client" + ]; + vendorHash = "sha256-PdX9GENqdTPpNWVRG3cTgZfAlEU85MVgDOJdcVT4gnw="; + fixupPhase = '' + runHook preFixup + + mv $out/bin/server $out/bin/juicity-server + mv $out/bin/client $out/bin/juicity-client + + runHook postFixup + ''; + + ldflags = [ + "-s" + "-w" + "-X" + "github.com/juicity/juicity/config.Version=${version}" + ]; +} diff --git a/secrets/general.yaml b/secrets/general.yaml index a205490..bfa89a5 100644 --- a/secrets/general.yaml +++ b/secrets/general.yaml @@ -6,7 +6,7 @@ rustypaste: delete: ENC[AES256_GCM,data:fbhJiJhh4YSMZQ6/dfquesJE0sNSn2PUkbjtJmisj5qHtsM=,iv:M1R7giNyLhbj98iiCPENQy44Ixqnie1PHlNcsVs5TLs=,tag:zdBbZ4NR7D4HxsxCizTliw==,type:str] miniflux: ENC[AES256_GCM,data:8u9ElF2LAsIZmq7U8oZJM367y6EAy0si4ZXhpdisYa/PjV70SybUWhrahBft86QB71l8KtLUVuF3Ins=,iv:q7vJzxZICGNv/IaHKDpV50Pc9P4rIwcvfz2+uS1AnyI=,tag:ycwVU3RqfBoXRZQMv653xQ==,type:str] atuin-key: ENC[AES256_GCM,data:e3K7/7BaeXuR+vHJdtO79UQp3XRvROcD8ISkuCp3KGCSlBKUM3GuCwhIeFoIl0fOUqVYOzcCAcjsH2nBRqcXhtS8jhM=,iv:Mh3jsu6mdj0VOLSIoNz/0awyydVf7q3/E7iB7CJi+UA=,tag:xuHhUmK/J2stdjRrtbhQSw==,type:str] -access-tokens: ENC[AES256_GCM,data:owwTYEpLiY9QvlLKQEfVxc7TYAO2QHUkEEJdrGXDRgpjb4FBliK9qx4STaYMCofdHOWpjLcAX2SiccsukIZIBCt0RXU3b3/72oo3k6Cee5RnAQlvfAYgn/s5KJXZRi4xJapsOwb8j+BX/+Wv51xwPnZ7oZFjOr+j,iv:hJVeQH1qv4bF4CjK5C/H6rGOBIqqZqQ8dVkZdsIBl4A=,tag:9O0WqK5Y3D7kvi5sTWdzLw==,type:str] +access-tokens: ENC[AES256_GCM,data:i/A9OjAnFEP26f4XYuV1G2wVo0dp+Nnte1EECjiLgc9ErDrIcmFfbmv6LgpEpjK06wUC1taPb6IuwM3qP+ucZRK5Eek94vTMpIQueOq8rGB5MYJADUtzX9TBGplVHDsx2lTXGYLxZEwetfnPr1Z6vuVpm13iK/1d,iv:cFKi0hDXAbfK7eLH1GA6aQCWjat0nHfYl/A0QO3tCMA=,tag:Hb1lDzJ/nkQXismo7/5DvQ==,type:str] matrix-telegram-bot: ENC[AES256_GCM,data:rMv6XlsAskhqlUq05Jp1JO08Pf4HFYqmU9umlnrjKSRYFP/xo0ch3GVOg9TEVHfxGitRXrf9KCoNw2xI2VsMF8ay493N07vlq0y3QHkgcDGKTtwn1DunTG+gURSPFDcn47JmD20opQ4/PPeB6QFRbSCredeSDRxCH1jVC4VqncMrwoN6rFFmi610tvBn43YE9AKtWfEzk9fJG5arwBvFH28ntgiHnKjzjIAK1guIc3j++0ZdoSQzjgUVKuIsKlfaCBYmF6qo5g0LrVhqr+amiot7b/kEkOewOhgRHr23zmfbzxnAVuXMPDPgEmywuHkZqdhpKZW3oRB+gOXV9aZvs+kgw/xVbDpHXkYfnr0WahZIZG5b+Tk42DPmRFw6Z4VsANqxQ2iJSnQZo9vD850oO1pFqSxfh3OQGzUki60FFv979/v79gy7wpvpiis0S78f7DZ8J9lpJqfkOTlUSpNDh5YzfRDgdBKaM77W42Q7Oq6N45KPe/wgJD9LTysf4ZNGaBeH4GsAHOdBfDW9,iv:U7fGGcWBdbsdZH5RC9E/WUzs1mjMxVlOFYIjax8egaY=,tag:TasFP91a7s6klS5VFDNZUw==,type:str] matrix-reg-token: ENC[AES256_GCM,data:Hs2RebmhU8KnQYZXkrn3RCrLVTyMhAfYUxt380QJs+OKlAeEpFy3+sP3cQyhDQfLbAm7hM3UX2csLSbVfwtMyGVuVRUVAfTQMm7tfCkiNsU9mhb7INH9SeuYzg/gVQ==,iv:cBVItzWbgL79yxtRIlXno9hakjQU9ZcgK7kYqUbV1h0=,tag:FsvATCrMJ+FkvuboVKtWkg==,type:str] ssh-private-key: @@ -56,7 +56,7 @@ sops: a1Y1NU9CK2h1SS83VW42bzBMa01yMXMKI1DBtgNlkNCrxUQvnD6a45mQKNfg5gM4 Zb5buo9Jofj4dn/HFwng3T3gxKTrP2Dh74CAH4L0M5yrF9fzk5TCcQ== -----END AGE ENCRYPTED FILE----- - lastmodified: "2025-10-26T10:48:06Z" - mac: ENC[AES256_GCM,data:tdD/wHe3bY+YakN4hRgCf+TLWVSiKM06jkAZnu0XBMrECwXa6Zsr9aGr2uYTFMpzcKgWarFkCFL+Ok6tDtkN2bcq3h+uV3Jxyb7oMr0sn5eb3bCu3UJ5cZ7sIaqnzHPL1j3bLBvb6WxSAm+OKJ2yIrJ8eCGAikaoExi2iNWSz9E=,iv:L2cFb0LE3erGRl61evj7Y4FgMHCQnGHygdzBCMZVOzs=,tag:OHgf5MWkQkQKJWuEGaZaAg==,type:str] + lastmodified: "2025-10-01T18:30:31Z" + mac: ENC[AES256_GCM,data:Ka+uZq4Uz9N9JTPOFuIsM12AjR1D1yMy9ZPu9xhqUH4JR2icHel6lma7Src2nAAVjJdOqapqsfLx4j1tjRuMbWKq9BSbU5vnBv27ihwpXiT0SaJTj1m8V4p3VBNCG6701jjptjzfHXckUT+RjYopPAnThcqyeLKsfyAGarMc/ao=,iv:iEw7jqxiicRS5DtQLdkIbyqjqJ9NczRZIRn/mzHpjIc=,tag:sP66xrIHuX+WyFaA1JIdhQ==,type:str] unencrypted_suffix: _unencrypted - version: 3.11.0 + version: 3.10.2