diff --git a/README.md b/README.md index 39d0cc8..e0ba9ac 100644 --- a/README.md +++ b/README.md @@ -56,6 +56,7 @@ The whole setup follows the [Tokyo Night](https://github.com/folke/tokyonight.nv | Function | Command | | :---------------------- | :------ | +| AI Tool | `a` | | Open Text Editor | `e` | | Open File Manager | `f` | | Open Git Browser | `g` | diff --git a/flake.lock b/flake.lock index 8b99931..444573d 100644 --- a/flake.lock +++ b/flake.lock @@ -1,18 +1,12 @@ { "nodes": { "crane": { - "inputs": { - "nixpkgs": [ - "lanzaboote", - "nixpkgs" - ] - }, "locked": { - "lastModified": 1717535930, - "narHash": "sha256-1hZ/txnbd/RmiBPNUs7i8UQw2N89uAK3UzrGAWdnFfU=", + "lastModified": 1731098351, + "narHash": "sha256-HQkYvKvaLQqNa10KEFGgWHfMAbWBfFp+4cAgkut+NNE=", "owner": "ipetkov", "repo": "crane", - "rev": "55e7754ec31dac78980c8be45f8a28e80e370946", + "rev": "ef80ead953c1b28316cc3f8613904edc2eb90c28", "type": "github" }, "original": { @@ -45,11 +39,11 @@ ] }, "locked": { - "lastModified": 1717285511, - "narHash": "sha256-iKzJcpdXih14qYVcZ9QC9XuZYnPc6T8YImb6dX166kw=", + "lastModified": 1730504689, + "narHash": "sha256-hgmguH29K2fvs9szpq2r3pz2/8cJd2LPS+b4tfNFCwE=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "2a55567fcf15b1b1c7ed712a2c6fadaec7412ea8", + "rev": "506278e768c2a08bec68eb62932193e341f55c90", "type": "github" }, "original": { @@ -58,24 +52,6 @@ "type": "github" } }, - "flake-utils": { - "inputs": { - "systems": "systems" - }, - "locked": { - "lastModified": 1710146030, - "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, "gitignore": { "inputs": { "nixpkgs": [ @@ -105,11 +81,11 @@ ] }, "locked": { - "lastModified": 1737299337, - "narHash": "sha256-0NBrY2A7buujKmeCbieopOMSbLxTu8TFcTLqAbTnQDw=", + "lastModified": 1740347597, + "narHash": "sha256-st5q9egkPGz8TUcVVlIQX7y6G3AzHob+6M963bwVq74=", "owner": "nix-community", "repo": "home-manager", - "rev": "f8ef4541bb8a54a8b52f19b52912119e689529b3", + "rev": "12e26a74e5eb1a31e13daaa08858689e25ebd449", "type": "github" }, "original": { @@ -123,7 +99,6 @@ "crane": "crane", "flake-compat": "flake-compat", "flake-parts": "flake-parts", - "flake-utils": "flake-utils", "nixpkgs": [ "nixpkgs" ], @@ -131,27 +106,27 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1718178907, - "narHash": "sha256-eSZyrQ9uoPB9iPQ8Y5H7gAmAgAvCw3InStmU3oEjqsE=", + "lastModified": 1737639419, + "narHash": "sha256-AEEDktApTEZ5PZXNDkry2YV2k6t0dTgLPEmAZbnigXU=", "owner": "nix-community", "repo": "lanzaboote", - "rev": "b627ccd97d0159214cee5c7db1412b75e4be6086", + "rev": "a65905a09e2c43ff63be8c0e86a93712361f871e", "type": "github" }, "original": { "owner": "nix-community", - "ref": "v0.4.1", + "ref": "v0.4.2", "repo": "lanzaboote", "type": "github" } }, "nixos-hardware": { "locked": { - "lastModified": 1736978406, - "narHash": "sha256-oMr3PVIQ8XPDI8/x6BHxsWEPBRU98Pam6KGVwUh8MPk=", + "lastModified": 1740385359, + "narHash": "sha256-ubSJWWwwyCFBHqfnm5Zuatn/vBgFHswNVh6jRrMhpI8=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "b678606690027913f3434dea3864e712b862dde5", + "rev": "bbf25ca940de16f74bf2264935bd748d6793228d", "type": "github" }, "original": { @@ -162,11 +137,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1737062831, - "narHash": "sha256-Tbk1MZbtV2s5aG+iM99U8FqwxU/YNArMcWAv6clcsBc=", + "lastModified": 1740126099, + "narHash": "sha256-ozoOtE2hGsqh4XkTJFsrTkNxkRgShxpQxDynaPZUGxk=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "5df43628fdf08d642be8ba5b3625a6c70731c19c", + "rev": "32fb99ba93fea2798be0e997ea331dd78167f814", "type": "github" }, "original": { @@ -178,16 +153,16 @@ }, "nixpkgs-stable": { "locked": { - "lastModified": 1710695816, - "narHash": "sha256-3Eh7fhEID17pv9ZxrPwCLfqXnYP006RKzSs0JptsN84=", + "lastModified": 1730741070, + "narHash": "sha256-edm8WG19kWozJ/GqyYx2VjW99EdhjKwbY3ZwdlPAAlo=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "614b4613980a522ba49f0d194531beddbb7220d3", + "rev": "d063c1dd113c91ab27959ba540c0d9753409edf3", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-23.11", + "ref": "nixos-24.05", "repo": "nixpkgs", "type": "github" } @@ -206,11 +181,11 @@ "nixpkgs-stable": "nixpkgs-stable" }, "locked": { - "lastModified": 1717664902, - "narHash": "sha256-7XfBuLULizXjXfBYy/VV+SpYMHreNRHk9nKMsm1bgb4=", + "lastModified": 1731363552, + "narHash": "sha256-vFta1uHnD29VUY4HJOO/D6p6rxyObnf+InnSMT4jlMU=", "owner": "cachix", "repo": "pre-commit-hooks.nix", - "rev": "cc4d466cb1254af050ff7bdf47f6d404a7c646d1", + "rev": "cd1af27aa85026ac759d5d3fccf650abe7e1bbf0", "type": "github" }, "original": { @@ -229,21 +204,17 @@ }, "rust-overlay": { "inputs": { - "flake-utils": [ - "lanzaboote", - "flake-utils" - ], "nixpkgs": [ "lanzaboote", "nixpkgs" ] }, "locked": { - "lastModified": 1717813066, - "narHash": "sha256-wqbRwq3i7g5EHIui0bIi84mdqZ/It1AXBSLJ5tafD28=", + "lastModified": 1731897198, + "narHash": "sha256-Ou7vLETSKwmE/HRQz4cImXXJBr/k9gp4J4z/PF8LzTE=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "6dc3e45fe4aee36efeed24d64fc68b1f989d5465", + "rev": "0be641045af6d8666c11c2c40e45ffc9667839b5", "type": "github" }, "original": { @@ -251,21 +222,6 @@ "repo": "rust-overlay", "type": "github" } - }, - "systems": { - "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", diff --git a/flake.nix b/flake.nix index 63eb57b..d1abf05 100644 --- a/flake.nix +++ b/flake.nix @@ -5,7 +5,7 @@ nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; nixos-hardware.url = "github:NixOS/nixos-hardware"; lanzaboote = { - url = "github:nix-community/lanzaboote/v0.4.1"; + url = "github:nix-community/lanzaboote/v0.4.2"; inputs.nixpkgs.follows = "nixpkgs"; }; home-manager = { diff --git a/home/editor.nix b/home/editor.nix index ff50904..c57b684 100644 --- a/home/editor.nix +++ b/home/editor.nix @@ -8,7 +8,6 @@ theme = "tokyonight"; editor = { line-number = "relative"; - soft-wrap.enable = true; cursor-shape.insert = "bar"; file-picker.hidden = false; }; @@ -18,6 +17,10 @@ gopls = { config."formatting.gofumpt" = true; }; + harper-ls = { + command = "harper-ls"; + args = [ "--stdio" ]; + }; }; language = [ { @@ -70,6 +73,10 @@ } { name = "markdown"; + language-servers = [ + "marksman" + "harper-ls" + ]; auto-format = true; formatter = { command = "${pkgs.nodePackages.prettier}/bin/prettier"; @@ -88,6 +95,10 @@ } { name = "python"; + language-servers = [ + "ruff" + "pyright" + ]; auto-format = true; formatter = { command = "${pkgs.ruff}/bin/ruff"; @@ -130,26 +141,40 @@ ]; }; } + { + name = "toml"; + auto-format = true; + formatter = { + command = "${pkgs.taplo}/bin/taplo"; + args = [ + "fmt" + "-" + ]; + }; + } ]; }; }; home.packages = with pkgs; [ # Language servers + bash-language-server docker-compose-language-service + dockerfile-language-server-nodejs golangci-lint-langserver gopls + harper marksman - nil - nodePackages.bash-language-server - nodePackages.dockerfile-language-server-nodejs - nodePackages.svelte-language-server - nodePackages.typescript-language-server - nodePackages.yaml-language-server - python311Packages.python-lsp-server + nixd + pyright + ruff rust-analyzer + svelte-language-server + taplo terraform-ls + typescript-language-server vscode-langservers-extracted + yaml-language-server # Debuggers delve diff --git a/home/shell.nix b/home/shell.nix index 96c25f7..1cb03d2 100644 --- a/home/shell.nix +++ b/home/shell.nix @@ -4,6 +4,7 @@ home.shellAliases = { ".." = "cd .."; "..." = "cd ../.."; + a = "${pkgs.fabric-ai}/bin/fabric"; e = "${pkgs.helix}/bin/hx"; f = "${pkgs.yazi}/bin/yazi"; g = "${pkgs.gitui}/bin/gitui"; @@ -154,10 +155,9 @@ fi # Python - if [ -e poetry.lock ]; then + if [ -e uv.lock ]; then printf "Updating Python dependencies for %s...\n\n" "''${PWD##*/}" - poetry update - poetry show --outdated + uv sync --upgrade fi # OpenTofu diff --git a/home/tools.nix b/home/tools.nix index 3f700ad..a685501 100644 --- a/home/tools.nix +++ b/home/tools.nix @@ -89,23 +89,22 @@ # AWS CLI awscli.enable = true; - - # Python dependency management - poetry.enable = true; }; home.packages = with pkgs; [ + air altair brave cargo clippy - curl delta dig dust + fabric-ai fx gcc gimp + glow gnumake golangci-lint gopass @@ -135,12 +134,13 @@ tree unzip upterm + uv wf-recorder - wget2 whois wireguard-tools wl-clipboard xdg-utils + xh yq zip ]; diff --git a/home/window-manager.nix b/home/window-manager.nix index 4f34bae..aa385e5 100644 --- a/home/window-manager.nix +++ b/home/window-manager.nix @@ -113,6 +113,10 @@ "$mod, mouse:272, movewindow" "$mod, mouse:273, resizewindow" ]; + ecosystem = { + "no_update_news" = true; + "no_donation_nag" = true; + }; }; };