From c649f0f3c26c86a43153c688cd958724a77ffde9 Mon Sep 17 00:00:00 2001 From: dadada Date: Fri, 12 May 2023 18:35:28 +0200 Subject: [PATCH] Install helix from master branch --- flake.lock | 278 ++++++++++++++++++++++- flake.nix | 1 + home/modules/helix/config/config.toml | 4 + home/modules/helix/config/languages.toml | 7 + nixos/configurations.nix | 3 +- nixos/modules/profiles/base.nix | 2 + outputs.nix | 1 + 7 files changed, 289 insertions(+), 7 deletions(-) diff --git a/flake.lock b/flake.lock index 11501b0..6beef74 100644 --- a/flake.lock +++ b/flake.lock @@ -21,6 +21,22 @@ "type": "github" } }, + "crane": { + "flake": false, + "locked": { + "lastModified": 1670900067, + "narHash": "sha256-VXVa+KBfukhmWizaiGiHRVX/fuk66P8dgSFfkVN4/MY=", + "owner": "ipetkov", + "repo": "crane", + "rev": "59b31b41a589c0a65e4a1f86b0e5eac68081468b", + "type": "github" + }, + "original": { + "owner": "ipetkov", + "repo": "crane", + "type": "github" + } + }, "devshell": { "inputs": { "flake-utils": "flake-utils", @@ -42,6 +58,78 @@ "type": "github" } }, + "dream2nix": { + "inputs": { + "alejandra": [ + "helix", + "nci" + ], + "all-cabal-json": [ + "helix", + "nci" + ], + "crane": "crane", + "devshell": [ + "helix", + "nci" + ], + "flake-parts": [ + "helix", + "nci", + "parts" + ], + "flake-utils-pre-commit": [ + "helix", + "nci" + ], + "ghc-utils": [ + "helix", + "nci" + ], + "gomod2nix": [ + "helix", + "nci" + ], + "mach-nix": [ + "helix", + "nci" + ], + "nix-pypi-fetcher": [ + "helix", + "nci" + ], + "nixpkgs": [ + "helix", + "nci", + "nixpkgs" + ], + "poetry2nix": [ + "helix", + "nci" + ], + "pre-commit-hooks": [ + "helix", + "nci" + ], + "pruned-racket-catalog": [ + "helix", + "nci" + ] + }, + "locked": { + "lastModified": 1677289985, + "narHash": "sha256-lUp06cTTlWubeBGMZqPl9jODM99LpWMcwxRiscFAUJg=", + "owner": "nix-community", + "repo": "dream2nix", + "rev": "28b973a8d4c30cc1cbb3377ea2023a76bc3fb889", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "dream2nix", + "type": "github" + } + }, "flake-registry": { "flake": false, "locked": { @@ -92,6 +180,21 @@ } }, "flake-utils_3": { + "locked": { + "lastModified": 1659877975, + "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_4": { "locked": { "lastModified": 1623875721, "narHash": "sha256-A8BU7bjS5GirpAUv4QA+QnJ4CceLHkcXdRp4xITDB0s=", @@ -106,6 +209,28 @@ "type": "github" } }, + "helix": { + "inputs": { + "nci": "nci", + "nixpkgs": "nixpkgs", + "parts": "parts_2", + "rust-overlay": "rust-overlay" + }, + "locked": { + "lastModified": 1680250441, + "narHash": "sha256-Qrn3mB6bb1DSvKxOJ9oAlxuMk64Fzg2W4BVmk6y3deA=", + "owner": "helix-editor", + "repo": "helix", + "rev": "3cf037237f1d080fdcb7990250955701389ae072", + "type": "github" + }, + "original": { + "owner": "helix-editor", + "ref": "23.03", + "repo": "helix", + "type": "github" + } + }, "home-manager": { "inputs": { "nixpkgs": [ @@ -131,7 +256,7 @@ "homePage": { "inputs": { "hugo-theme-anubis": "hugo-theme-anubis", - "nixpkgs": "nixpkgs" + "nixpkgs": "nixpkgs_2" }, "locked": { "lastModified": 1655227494, @@ -163,6 +288,50 @@ "type": "github" } }, + "mk-naked-shell": { + "flake": false, + "locked": { + "lastModified": 1676572903, + "narHash": "sha256-oQoDHHUTxNVSURfkFcYLuAK+btjs30T4rbEUtCUyKy8=", + "owner": "yusdacra", + "repo": "mk-naked-shell", + "rev": "aeca9f8aa592f5e8f71f407d081cb26fd30c5a57", + "type": "github" + }, + "original": { + "owner": "yusdacra", + "repo": "mk-naked-shell", + "type": "github" + } + }, + "nci": { + "inputs": { + "dream2nix": "dream2nix", + "mk-naked-shell": "mk-naked-shell", + "nixpkgs": [ + "helix", + "nixpkgs" + ], + "parts": "parts", + "rust-overlay": [ + "helix", + "rust-overlay" + ] + }, + "locked": { + "lastModified": 1677297103, + "narHash": "sha256-ArlJIbp9NGV9yvhZdV0SOUFfRlI/kHeKoCk30NbSiLc=", + "owner": "yusdacra", + "repo": "nix-cargo-integration", + "rev": "a79272a2cb0942392bb3a5bf9a3ec6bc568795b2", + "type": "github" + }, + "original": { + "owner": "yusdacra", + "repo": "nix-cargo-integration", + "type": "github" + } + }, "nixlib": { "locked": { "lastModified": 1681001314, @@ -216,6 +385,40 @@ } }, "nixpkgs": { + "locked": { + "lastModified": 1677063315, + "narHash": "sha256-qiB4ajTeAOVnVSAwCNEEkoybrAlA+cpeiBxLobHndE8=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "988cc958c57ce4350ec248d2d53087777f9e1949", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-lib": { + "locked": { + "dir": "lib", + "lastModified": 1675183161, + "narHash": "sha256-Zq8sNgAxDckpn7tJo7V1afRSk2eoVbu3OjI1QklGLNg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e1e1b192c1a5aab2960bf0a0bd53a2e8124fa18e", + "type": "github" + }, + "original": { + "dir": "lib", + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_2": { "locked": { "lastModified": 1629226339, "narHash": "sha256-szvgmQcUJM3Kv/wNyIn+wtMrrvsks0bk9JOqI2Ij8Ao=", @@ -228,7 +431,7 @@ "type": "indirect" } }, - "nixpkgs_2": { + "nixpkgs_3": { "locked": { "lastModified": 1683028696, "narHash": "sha256-saPKTDj+HB9aPvB59wGcJ64CifRuiIt2CHvSbh7UHz8=", @@ -244,7 +447,7 @@ "type": "github" } }, - "nixpkgs_3": { + "nixpkgs_4": { "locked": { "narHash": "sha256-Ccpot1h/rV8MgcngDp5OrdmLTMaUTbStZTR5/sI7zW0=", "path": "/nix/store/n04lw5nrskzmz7rv17p09qrnjanfkg5d-source", @@ -255,10 +458,50 @@ "type": "indirect" } }, + "parts": { + "inputs": { + "nixpkgs-lib": [ + "helix", + "nci", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1675933616, + "narHash": "sha256-/rczJkJHtx16IFxMmAWu5nNYcSXNg1YYXTHoGjLrLUA=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "47478a4a003e745402acf63be7f9a092d51b83d7", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, + "parts_2": { + "inputs": { + "nixpkgs-lib": "nixpkgs-lib" + }, + "locked": { + "lastModified": 1675933616, + "narHash": "sha256-/rczJkJHtx16IFxMmAWu5nNYcSXNg1YYXTHoGjLrLUA=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "47478a4a003e745402acf63be7f9a092d51b83d7", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, "recipemd": { "inputs": { - "flake-utils": "flake-utils_3", - "nixpkgs": "nixpkgs_3" + "flake-utils": "flake-utils_4", + "nixpkgs": "nixpkgs_4" }, "locked": { "lastModified": 1647022391, @@ -281,14 +524,37 @@ "devshell": "devshell", "flake-registry": "flake-registry", "flake-utils": "flake-utils_2", + "helix": "helix", "home-manager": "home-manager", "homePage": "homePage", "nixos-generators": "nixos-generators", "nixos-hardware": "nixos-hardware", - "nixpkgs": "nixpkgs_2", + "nixpkgs": "nixpkgs_3", "recipemd": "recipemd" } }, + "rust-overlay": { + "inputs": { + "flake-utils": "flake-utils_3", + "nixpkgs": [ + "helix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1677292251, + "narHash": "sha256-D+6q5Z2MQn3UFJtqsM5/AvVHi3NXKZTIMZt1JGq/spA=", + "owner": "oxalica", + "repo": "rust-overlay", + "rev": "34cdbf6ad480ce13a6a526f57d8b9e609f3d65dc", + "type": "github" + }, + "original": { + "owner": "oxalica", + "repo": "rust-overlay", + "type": "github" + } + }, "systems": { "locked": { "lastModified": 1681028828, diff --git a/flake.nix b/flake.nix index 53fcacc..068d8bf 100644 --- a/flake.nix +++ b/flake.nix @@ -31,6 +31,7 @@ url = "github:NixOS/flake-registry"; flake = false; }; + helix.url = "github:helix-editor/helix/23.03"; }; outputs = { ... } @ args: import ./outputs.nix args; diff --git a/home/modules/helix/config/config.toml b/home/modules/helix/config/config.toml index fa585ce..722b1b2 100644 --- a/home/modules/helix/config/config.toml +++ b/home/modules/helix/config/config.toml @@ -3,5 +3,9 @@ line-number = "relative" mouse = true auto-completion = true +[editor.soft-wrap] +enable = true + [keys.normal] C-q = [ "goto_prev_paragraph", "goto_next_paragraph", ":reflow 80" ] + diff --git a/home/modules/helix/config/languages.toml b/home/modules/helix/config/languages.toml index 7b576c0..52e15bc 100644 --- a/home/modules/helix/config/languages.toml +++ b/home/modules/helix/config/languages.toml @@ -1,3 +1,10 @@ [[language]] name = "rust" config = { rust-analyzer = { checkOnSave = { command = "clippy" } } } + +[[language]] +name = "latex" +language-server = { command = "ltex-ls" } +file-types = ["tex"] +scope = "source.latex" +roots = [] diff --git a/nixos/configurations.nix b/nixos/configurations.nix index 8af4202..bb6c4bf 100644 --- a/nixos/configurations.nix +++ b/nixos/configurations.nix @@ -7,6 +7,7 @@ , recipemd , nixos-generators , flake-registry +, helix , ... }@inputs: let @@ -41,7 +42,7 @@ in home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; home-manager.sharedModules = (nixpkgs.lib.attrValues self.hmModules) ++ [ - { dadada.home.helix.package = pkgs.helix; } + { dadada.home.helix.package = helix.packages.${system}.helix; } { manual.manpages.enable = false; } ]; home-manager.users.dadada = import ../home/home; diff --git a/nixos/modules/profiles/base.nix b/nixos/modules/profiles/base.nix index 52b43ad..060b2c6 100644 --- a/nixos/modules/profiles/base.nix +++ b/nixos/modules/profiles/base.nix @@ -17,11 +17,13 @@ in nix.settings.flake-registry = "${config.dadada.inputs.flake-registry}/flake-registry.json"; nix.settings.substituters = [ + https://helix.cachix.org/ https://cache.nixos.org/ https://nix-community.cachix.org/ ]; nix.settings.trusted-public-keys = [ + "helix.cachix.org-1:ejp9KQpR1FBI2onstMQ34yogDm4OgU2ru6lIwPvuCVs=" "cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=" "gorgon:eEE/PToceRh34UnnoFENERhk89dGw5yXOpJ2CUbfL/Q=" "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=" diff --git a/outputs.nix b/outputs.nix index 568cd3d..3393da0 100644 --- a/outputs.nix +++ b/outputs.nix @@ -9,6 +9,7 @@ , recipemd , agenix , devshell +, helix , ... } @ inputs: (flake-utils.lib.eachDefaultSystem (system: