Compare commits

..

2 Commits

Author SHA1 Message Date
Martin Pander
3edee1b0f6 Add hunk 2026-06-20 12:45:06 +02:00
Martin Pander
3c42fdedf8 Update to nixos 26.05 2026-06-19 13:15:00 +02:00
8 changed files with 186 additions and 39 deletions

176
flake.lock generated
View File

@@ -1,5 +1,30 @@
{ {
"nodes": { "nodes": {
"bun2nix": {
"inputs": {
"flake-parts": "flake-parts",
"import-tree": "import-tree",
"nixpkgs": [
"hunk",
"nixpkgs"
],
"systems": "systems",
"treefmt-nix": "treefmt-nix"
},
"locked": {
"lastModified": 1770895533,
"narHash": "sha256-v3QaK9ugy9bN9RXDnjw0i2OifKmz2NnKM82agtqm/UY=",
"owner": "nix-community",
"repo": "bun2nix",
"rev": "c843f477b15f51151f8c6bcc886954699440a6e1",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "bun2nix",
"type": "github"
}
},
"flake-compat": { "flake-compat": {
"flake": false, "flake": false,
"locked": { "locked": {
@@ -34,9 +59,27 @@
"type": "github" "type": "github"
} }
}, },
"flake-parts_2": {
"inputs": {
"nixpkgs-lib": "nixpkgs-lib_2"
},
"locked": {
"lastModified": 1769996383,
"narHash": "sha256-AnYjnFWgS49RlqX7LrC4uA+sCCDBj0Ry/WOJ5XWAsa0=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "57928607ea566b5db3ad13af0e57e921e6b12381",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"flake-utils": { "flake-utils": {
"inputs": { "inputs": {
"systems": "systems" "systems": "systems_2"
}, },
"locked": { "locked": {
"lastModified": 1681202837, "lastModified": 1681202837,
@@ -59,16 +102,16 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1779506708, "lastModified": 1781319724,
"narHash": "sha256-QOD/CNm196nCJRheux/URi4/HE66fthdOMqCJoPP1Y0=", "narHash": "sha256-ZGuxexEMo4Xv28KJ0dX/m/PHN4oZIOnxHZpNTyrvx4M=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "3ee51fbdac8c8bdfe1e7e1fcaba6520a563f394f", "rev": "8355f0a16b2dbb06a97959a918af5b239bbe05ae",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nix-community", "owner": "nix-community",
"ref": "release-25.11", "ref": "release-26.05",
"repo": "home-manager", "repo": "home-manager",
"type": "github" "type": "github"
} }
@@ -80,20 +123,56 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1779506708, "lastModified": 1781319724,
"narHash": "sha256-QOD/CNm196nCJRheux/URi4/HE66fthdOMqCJoPP1Y0=", "narHash": "sha256-ZGuxexEMo4Xv28KJ0dX/m/PHN4oZIOnxHZpNTyrvx4M=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "3ee51fbdac8c8bdfe1e7e1fcaba6520a563f394f", "rev": "8355f0a16b2dbb06a97959a918af5b239bbe05ae",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nix-community", "owner": "nix-community",
"ref": "release-25.11", "ref": "release-26.05",
"repo": "home-manager", "repo": "home-manager",
"type": "github" "type": "github"
} }
}, },
"hunk": {
"inputs": {
"bun2nix": "bun2nix",
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1781895871,
"narHash": "sha256-UCuRKnUuDWJ7kcEHCYRV+p/LT7lYkCRzYrz9udm1vC0=",
"owner": "modem-dev",
"repo": "hunk",
"rev": "c05558cd8dbdf61a8e11bfc8378d9d619e4c0d8d",
"type": "github"
},
"original": {
"owner": "modem-dev",
"repo": "hunk",
"type": "github"
}
},
"import-tree": {
"locked": {
"lastModified": 1763762820,
"narHash": "sha256-ZvYKbFib3AEwiNMLsejb/CWs/OL/srFQ8AogkebEPF0=",
"owner": "vic",
"repo": "import-tree",
"rev": "3c23749d8013ec6daa1d7255057590e9ca726646",
"type": "github"
},
"original": {
"owner": "vic",
"repo": "import-tree",
"type": "github"
}
},
"nix-darwin": { "nix-darwin": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@@ -143,16 +222,16 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1780448639, "lastModified": 1780705040,
"narHash": "sha256-1s29/xP6iXwaEkTBxwbIQDnQzrLShlBcbnbTu0qJA0c=", "narHash": "sha256-pVadZqLm8RJcwLuDzJm7d2KO6e+RHPpIa/2qdqtn+B4=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nixos-wsl", "repo": "nixos-wsl",
"rev": "364422fc0bad4fd3be804c00cadcbd6fa3f305d8", "rev": "add6b01c7ca72240046b5d541a74845423f1ee35",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nix-community", "owner": "nix-community",
"ref": "release-25.11", "ref": "release-26.05",
"repo": "nixos-wsl", "repo": "nixos-wsl",
"type": "github" "type": "github"
} }
@@ -188,6 +267,21 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs-lib_2": {
"locked": {
"lastModified": 1769909678,
"narHash": "sha256-cBEymOf4/o3FD5AZnzC3J9hLbiZ+QDT/KDuyHXVJOpM=",
"owner": "nix-community",
"repo": "nixpkgs.lib",
"rev": "72716169fe93074c333e8d0173151350670b824c",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "nixpkgs.lib",
"type": "github"
}
},
"nixpkgs-opencode": { "nixpkgs-opencode": {
"locked": { "locked": {
"lastModified": 1777270315, "lastModified": 1777270315,
@@ -206,32 +300,32 @@
}, },
"nixpkgs-stable": { "nixpkgs-stable": {
"locked": { "locked": {
"lastModified": 1781509190, "lastModified": 1781216227,
"narHash": "sha256-uJZs9Di8I6ciTp6jiojj0HzlNpBkud8ax5aT/O5aJkw=", "narHash": "sha256-9mUW6gNwoN2SWc/l0fW4svPNOulXLl8ijqKyeSOGgJE=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "d6df3513510aa548c83868fd22bfddd0a8c0a0d4", "rev": "a0374025a863d007d98e3297f6aa46cc3141c2f0",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nixos", "owner": "nixos",
"ref": "nixos-25.11", "ref": "nixos-26.05",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
}, },
"nixpkgs-wsl-stable": { "nixpkgs-wsl-stable": {
"locked": { "locked": {
"lastModified": 1781509190, "lastModified": 1781216227,
"narHash": "sha256-uJZs9Di8I6ciTp6jiojj0HzlNpBkud8ax5aT/O5aJkw=", "narHash": "sha256-9mUW6gNwoN2SWc/l0fW4svPNOulXLl8ijqKyeSOGgJE=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "d6df3513510aa548c83868fd22bfddd0a8c0a0d4", "rev": "a0374025a863d007d98e3297f6aa46cc3141c2f0",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nixos", "owner": "nixos",
"ref": "nixos-25.11", "ref": "nixos-26.05",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
@@ -256,6 +350,7 @@
"inputs": { "inputs": {
"home-manager": "home-manager", "home-manager": "home-manager",
"home-manager-wsl": "home-manager-wsl", "home-manager-wsl": "home-manager-wsl",
"hunk": "hunk",
"nix-darwin": "nix-darwin", "nix-darwin": "nix-darwin",
"nixos-vscode-server": "nixos-vscode-server", "nixos-vscode-server": "nixos-vscode-server",
"nixos-wsl": "nixos-wsl", "nixos-wsl": "nixos-wsl",
@@ -302,9 +397,24 @@
"type": "github" "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"
}
},
"tasksquire": { "tasksquire": {
"inputs": { "inputs": {
"flake-parts": "flake-parts", "flake-parts": "flake-parts_2",
"nixpkgs": "nixpkgs_2" "nixpkgs": "nixpkgs_2"
}, },
"locked": { "locked": {
@@ -321,6 +431,28 @@
"type": "git", "type": "git",
"url": "ssh://git@git.pander.me/martin/tasksquire.git" "url": "ssh://git@git.pander.me/martin/tasksquire.git"
} }
},
"treefmt-nix": {
"inputs": {
"nixpkgs": [
"hunk",
"bun2nix",
"nixpkgs"
]
},
"locked": {
"lastModified": 1770228511,
"narHash": "sha256-wQ6NJSuFqAEmIg2VMnLdCnUc0b7vslUohqqGGD+Fyxk=",
"owner": "numtide",
"repo": "treefmt-nix",
"rev": "337a4fe074be1042a35086f15481d763b8ddc0e7",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "treefmt-nix",
"type": "github"
}
} }
}, },
"root": "root", "root": "root",

View File

@@ -5,25 +5,25 @@
# Unstable for standalone configurations and overlays # Unstable for standalone configurations and overlays
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
nixpkgs-stable.url = "github:nixos/nixpkgs/nixos-25.11"; nixpkgs-stable.url = "github:nixos/nixpkgs/nixos-26.05";
nixpkgs-wsl-stable.url = "github:nixos/nixpkgs/nixos-25.11"; nixpkgs-wsl-stable.url = "github:nixos/nixpkgs/nixos-26.05";
# Pinned nixpkgs for opencode 1.14.25 (latest unstable segfaults) # Pinned nixpkgs for opencode 1.14.25 (latest unstable segfaults)
nixpkgs-opencode.url = "github:nixos/nixpkgs/6368eda62c9775c38ef7f714b2555a741c20c72d"; nixpkgs-opencode.url = "github:nixos/nixpkgs/6368eda62c9775c38ef7f714b2555a741c20c72d";
nixos-wsl = { nixos-wsl = {
url = "github:nix-community/nixos-wsl/release-25.11"; url = "github:nix-community/nixos-wsl/release-26.05";
inputs.nixpkgs.follows = "nixpkgs-wsl-stable"; inputs.nixpkgs.follows = "nixpkgs-wsl-stable";
}; };
home-manager = { home-manager = {
url = "github:nix-community/home-manager/release-25.11"; url = "github:nix-community/home-manager/release-26.05";
inputs.nixpkgs.follows = "nixpkgs-stable"; inputs.nixpkgs.follows = "nixpkgs-stable";
}; };
home-manager-wsl = { home-manager-wsl = {
url = "github:nix-community/home-manager/release-25.11"; url = "github:nix-community/home-manager/release-26.05";
inputs.nixpkgs.follows = "nixpkgs-wsl-stable"; inputs.nixpkgs.follows = "nixpkgs-wsl-stable";
}; };
@@ -46,6 +46,11 @@
tasksquire = { tasksquire = {
url = "git+ssh://git@git.pander.me/martin/tasksquire.git?ref=dev"; url = "git+ssh://git@git.pander.me/martin/tasksquire.git?ref=dev";
}; };
hunk = {
url = "github:modem-dev/hunk";
inputs.nixpkgs.follows = "nixpkgs";
};
}; };
outputs = { self, nixpkgs, nixpkgs-stable, nixpkgs-wsl-stable, nixpkgs-opencode, nixos-wsl, home-manager, home-manager-wsl, nix-darwin, ... }@inputs: outputs = { self, nixpkgs, nixpkgs-stable, nixpkgs-wsl-stable, nixpkgs-opencode, nixos-wsl, home-manager, home-manager-wsl, nix-darwin, ... }@inputs:

View File

@@ -39,7 +39,7 @@
enable = true; enable = true;
enableDefaultConfig = false; enableDefaultConfig = false;
includes = [ "config.local" ]; includes = [ "config.local" ];
matchBlocks = { settings = {
"*" = { "*" = {
addKeysToAgent = "yes"; addKeysToAgent = "yes";
}; };

View File

@@ -1,4 +1,4 @@
{ config, pkgs, lib, ... }: { config, pkgs, lib, inputs, ... }:
let let
cfg = config.dot.llm; cfg = config.dot.llm;
@@ -40,6 +40,7 @@ in
visidata visidata
codespelunker codespelunker
jq jq
inputs.hunk.packages.${pkgs.stdenv.hostPlatform.system}.hunk
]; ];
} }

View File

@@ -78,7 +78,7 @@ in
(nvim-treesitter.withPlugins (p: [ p.awk p.bash p.c p.c_sharp p.cpp p.css p.diff p.dockerfile p.doxygen p.git_config p.gitcommit p.go p.gomod p.gosum p.gotmpl p.helm p.haskell p.html p.http p.java p.javascript p.json p.latex p.lua p.markdown p.markdown_inline p.matlab p.nix p.printf p.python p.regex p.rust p.sql p.strace p.supercollider p.svelte p.swift p.terraform p.tmux p.toml p.typescript p.vim p.xml p.yaml p.zig ])) (nvim-treesitter.withPlugins (p: [ p.awk p.bash p.c p.c_sharp p.cpp p.css p.diff p.dockerfile p.doxygen p.git_config p.gitcommit p.go p.gomod p.gosum p.gotmpl p.helm p.haskell p.html p.http p.java p.javascript p.json p.latex p.lua p.markdown p.markdown_inline p.matlab p.nix p.printf p.python p.regex p.rust p.sql p.strace p.supercollider p.svelte p.swift p.terraform p.tmux p.toml p.typescript p.vim p.xml p.yaml p.zig ]))
]; ];
extraLuaConfig = '' initLua = ''
_G.is_work = ${if cfg.workMode then "true" else "false"} _G.is_work = ${if cfg.workMode then "true" else "false"}
_G.is_mac = ${if pkgs.stdenv.isDarwin then "true" else "false"} _G.is_mac = ${if pkgs.stdenv.isDarwin then "true" else "false"}
_G.is_private_nixos = ${if !cfg.workMode && pkgs.stdenv.isLinux then "true" else "false"} _G.is_private_nixos = ${if !cfg.workMode && pkgs.stdenv.isLinux then "true" else "false"}
@@ -88,6 +88,9 @@ in
require('plugins') require('plugins')
require('filetype') require('filetype')
''; '';
withRuby = false;
withPython3 = false;
}; };
# Allow for editing the lua modules without a nix rebuild # Allow for editing the lua modules without a nix rebuild

View File

@@ -41,6 +41,7 @@ in
apiKey = config.sops.placeholder.langdock_api_key; apiKey = config.sops.placeholder.langdock_api_key;
}; };
models = { models = {
"gpt-5.5" = { name = "GPT-5.5"; };
"gpt-5.4" = { name = "GPT-5.4"; }; "gpt-5.4" = { name = "GPT-5.4"; };
"gpt-5.4-mini" = { name = "GPT-5.4 mini"; }; "gpt-5.4-mini" = { name = "GPT-5.4 mini"; };
}; };
@@ -51,6 +52,7 @@ in
apiKey = config.sops.placeholder.langdock_api_key; apiKey = config.sops.placeholder.langdock_api_key;
}; };
models = { models = {
"claude-opus-4-8-default" = { name = "Opus 4.8"; };
"claude-opus-4-7-default" = { name = "Opus 4.7"; }; "claude-opus-4-7-default" = { name = "Opus 4.7"; };
"claude-opus-4-6-default" = { name = "Opus 4.6"; }; "claude-opus-4-6-default" = { name = "Opus 4.6"; };
"claude-sonnet-4-6-default" = { name = "Sonnet 4.6"; }; "claude-sonnet-4-6-default" = { name = "Sonnet 4.6"; };

View File

@@ -24,26 +24,26 @@
urgency.user.tag.cust.coefficient = 5.0; urgency.user.tag.cust.coefficient = 5.0;
urgency.user.tag.fixed.coefficient = -100.0; urgency.user.tag.fixed.coefficient = -100.0;
report.next.columns="id,start.age,entry.age,depends,priority,energy,project,tags,recur,scheduled.countdown,due.relative,until.remaining,description,urgency"; report.next.columns="id,start.age,entry.age,depends,priority,energy,urgency,project,tags,recur,scheduled.countdown,due.relative,until.remaining,description";
report.next.labels="ID,Active,Age,Deps,P,E,Project,Tag,Recur,S,Due,Until,Description,Urg"; report.next.labels="ID,Active,Age,Deps,P,E,Urg,Project,Tag,Recur,S,Due,Until,Description";
report.next.filter="status:pending -WAITING -deferred -track"; report.next.filter="status:pending -WAITING -deferred -track";
report.time.columns="id,start.age,entry.age,depends,priority,energy,project,tags,recur,scheduled.countdown,due.relative,until.remaining,description,urgency"; report.time.columns="id,start.age,entry.age,depends,priority,energy,urgency,project,tags,recur,scheduled.countdown,due.relative,until.remaining,description";
report.time.labels="ID,Active,Age,Deps,P,E,Project,Tag,Recur,S,Due,Until,Description,Urg"; report.time.labels="ID,Active,Age,Deps,P,E,Urg,Project,Tag,Recur,S,Due,Until,Description";
report.time.filter="status:pending -WAITING -deferred +fixed"; report.time.filter="status:pending -WAITING -deferred +fixed";
report.deferred.columns="id,start.age,entry.age,depends,priority,energy,project,tags,recur,scheduled.countdown,due.relative,until.remaining,description,urgency"; report.deferred.columns="id,start.age,entry.age,depends,priority,energy,urgency,project,tags,recur,scheduled.countdown,due.relative,until.remaining,description";
report.deferred.context="1"; report.deferred.context="1";
report.deferred.description="Deferred and waiting tasks"; report.deferred.description="Deferred and waiting tasks";
report.deferred.labels="ID,Active,Age,Deps,P,E,Project,Tag,Recur,S,Due,Until,Description,Urg"; report.deferred.labels="ID,Active,Age,Deps,P,E,Urg,Project,Tag,Recur,S,Due,Until,Description";
report.deferred.filter="status:pending +deferred"; report.deferred.filter="status:pending +deferred";
report.deferred.sort="urgency-"; report.deferred.sort="urgency-";
report.low.columns="id,start.age,entry.age,depends,priority,energy,project,tags,recur,scheduled.countdown,due.relative,until.remaining,description,urgency"; report.low.columns="id,start.age,entry.age,depends,priority,energy,urgency,project,tags,recur,scheduled.countdown,due.relative,until.remaining,description";
report.low.context="1"; report.low.context="1";
report.low.description="Low energy tasks"; report.low.description="Low energy tasks";
report.low.filter="status:pending -WAITING -deferred"; report.low.filter="status:pending -WAITING -deferred";
report.low.labels="ID,Active,Age,Deps,P,E,Project,Tag,Recur,S,Due,Until,Description,Urg"; report.low.labels="ID,Active,Age,Deps,P,E,Urg,Project,Tag,Recur,S,Due,Until,Description";
report.low.sort="energy+,urgency-"; report.low.sort="energy+,urgency-";
context.today.read = "(prio:H or +next)"; context.today.read = "(prio:H or +next)";
@@ -63,7 +63,7 @@
home.packages = with pkgs; [ home.packages = with pkgs; [
taskwarrior-tui taskwarrior-tui
unstable.timewarrior unstable.timewarrior
inputs.tasksquire.packages.${pkgs.system}.default inputs.tasksquire.packages.${pkgs.stdenv.hostPlatform.system}.default
]; ];
home.shellAliases = lib.mkMerge [ { home.shellAliases = lib.mkMerge [ {

View File

@@ -10,6 +10,10 @@ vim.lsp.config('gopls', {
hints = { hints = {
assignVariableTypes = true, assignVariableTypes = true,
compositeLiteralFields = true, compositeLiteralFields = true,
compositeLiteralTypes = true,
constantValues = true,
functionTypeParameters = true,
rangeVariableTypes = true,
parameterNames = true, parameterNames = true,
}, },
analyses = { analyses = {