From 09543fbe13c05c28839967700e1abc168880beeb Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Fri, 13 Jun 2025 00:17:09 -0500 Subject: [PATCH 01/16] Fix discovering home-manager paths --- pkgs/gen-build/gen-build.go | 32 ++++++++++++++++++++++++++------ 1 file changed, 26 insertions(+), 6 deletions(-) diff --git a/pkgs/gen-build/gen-build.go b/pkgs/gen-build/gen-build.go index e09a818..7db1aeb 100644 --- a/pkgs/gen-build/gen-build.go +++ b/pkgs/gen-build/gen-build.go @@ -41,6 +41,22 @@ func GetNixFlakeOutput() (*NixFlakeOutput, error) { return &flakeOutput, nil } +func GetNixHomeManagerOutput() ([]string, error) { + cmd := exec.Command("nix", "eval", ".#homeConfigurations", "--apply", "hconf: builtins.filter (name: hconf.${name}.pkgs.hostPlatform.isLinux) (builtins.attrNames hconf)", "--json") + output, err := cmd.Output() + if err != nil { + return nil, err + } + + var result []string + err = json.Unmarshal(output, &result) + if err != nil { + return nil, err + } + + return result, nil +} + type GitlabCIJob struct { Stage string `json:"stage"` Tags []string `json:"tags"` @@ -73,12 +89,16 @@ func main() { "nix flake check --no-build", }, } - // Since this is kinda a one-off thing, I can use this directly - // homeConfigurations are treated like they are not known as a - // flake output type. Therefore, it just informs you that it is - // part of the output, but does not evaluate deeper to tell you - // what the name of it is. I will just do this manually for now. - pipeline["Build Home config "] = NewGitlabCIJob("homeConfigurations.\"greg\".activationPackage") + + if flakeOutput.HomeConfigurations != nil { + homeNames, err := GetNixHomeManagerOutput() + if err != nil { + panic(err) + } + for i := range homeNames { + pipeline["Build Home Configuration "+homeNames[i]] = NewGitlabCIJob("homeConfigurations.\"" + homeNames[i] +"\".activationPackage") + } + } if flakeOutput.Apps != nil { for appName := range flakeOutput.Apps { From 61c921cd9102ed3ac567419da5d6107753718404 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Fri, 13 Jun 2025 00:37:32 -0500 Subject: [PATCH 02/16] Fix the name of the repo --- .gitlab-ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 5c9d14f..0f0c82f 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -49,5 +49,5 @@ default: script: - podman login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" "$CI_REGISTRY" - podman load -i "${IMG}.tar.gz" - - podman tag "localhost/${IMG}:latest" "$CI_REGISTRY/greg/ci-images/${IMG}:latest" - - podman push "$CI_REGISTRY/greg/ci-images/${IMG}:latest" + - podman tag "localhost/${IMG}:latest" "$CI_REGISTRY/greg/nixos-config/${IMG}:latest" + - podman push "$CI_REGISTRY/greg/nixos-config/${IMG}:latest" From aa3953a8b08ad00143ad9904d6a0f359d4f01369 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Fri, 13 Jun 2025 02:37:42 -0500 Subject: [PATCH 03/16] Fix pushing to GitLab registry --- hosts/vm-gitlab/default.nix | 64 ++++++++++++++++++++++++------------- 1 file changed, 41 insertions(+), 23 deletions(-) diff --git a/hosts/vm-gitlab/default.nix b/hosts/vm-gitlab/default.nix index c39c78b..e76faa3 100644 --- a/hosts/vm-gitlab/default.nix +++ b/hosts/vm-gitlab/default.nix @@ -169,30 +169,48 @@ in nginx = { enable = true; - clientMaxBodySize = "25000m"; - virtualHosts."vm-gitlab.shire-zebra.ts.net" = { - listen = [ - { - addr = "0.0.0.0"; - port = registryPort; - ssl = true; - } - { - addr = "0.0.0.0"; - port = 443; - ssl = true; - } - ]; - locations."/" = { - proxyPass = "http://unix:/run/gitlab/gitlab-workhorse.socket"; - #proxyPass = "http://127.0.0.1:4567/"; - recommendedProxySettings = true; + clientMaxBodySize = "10000m"; # 10 GB is fine, right? + virtualHosts = { + "vm-gitlab.shire-zebra.ts.net" = { + listen = [ + { + addr = "0.0.0.0"; + port = 443; + ssl = true; + } + ]; + locations."/" = { + proxyPass = "http://unix:/run/gitlab/gitlab-workhorse.socket"; + recommendedProxySettings = true; + }; + locations."/v2" = { + proxyPass = "http://127.0.0.1:4567/"; + recommendedProxySettings = true; + }; + extraConfig = '' + ssl_certificate /etc/certs/vm-gitlab.shire-zebra.ts.net.crt ; + ssl_certificate_key /etc/certs/vm-gitlab.shire-zebra.ts.net.key ; + client_max_body_size 10000m ; + ''; + }; + "registry" = { + listen = [ + { + addr = "0.0.0.0"; + port = registryPort; + ssl = true; + } + ]; + locations."/" = { + proxyPass = "http://127.0.0.1:4567/"; + recommendedProxySettings = true; + }; + extraConfig = '' + ssl_certificate /etc/certs/vm-gitlab.shire-zebra.ts.net.crt ; + ssl_certificate_key /etc/certs/vm-gitlab.shire-zebra.ts.net.key ; + client_max_body_size 10000m ; + ''; }; - extraConfig = '' - ssl_certificate /etc/certs/vm-gitlab.shire-zebra.ts.net.crt ; - ssl_certificate_key /etc/certs/vm-gitlab.shire-zebra.ts.net.key ; - client_max_body_size 10000m ; - ''; }; }; From 238ddade0360c50f37318555c305b3745a7aea08 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Tue, 17 Jun 2025 15:04:19 -0500 Subject: [PATCH 04/16] Make things stable again Jude is now k3s control plane only Linode connections to vm-gitlab Gitlab settings working properly --- hosts/jude/default.nix | 19 +++++++++++-------- hosts/linode/git.nix | 8 ++++++-- hosts/vm-gitlab/default.nix | 11 +++++------ manifests/databases/ingress.yaml | 2 +- 4 files changed, 23 insertions(+), 17 deletions(-) diff --git a/hosts/jude/default.nix b/hosts/jude/default.nix index 855ad9f..2abbbae 100644 --- a/hosts/jude/default.nix +++ b/hosts/jude/default.nix @@ -160,14 +160,17 @@ # Let's do a sound thing services = { - k3s.extraFlags = - let - ip = (builtins.head config.networking.interfaces.enp14s0u1u2.ipv4.addresses).address; - in - [ - "--tls-san ${ip}" - #"--bind-address ${ip}" - ]; + k3s = { + disableAgent = true; + extraFlags = + let + ip = (builtins.head config.networking.interfaces.enp14s0u1u2.ipv4.addresses).address; + in + [ + "--tls-san ${ip}" + #"--bind-address ${ip}" + ]; + }; pipewire = { enable = true; alsa.enable = true; diff --git a/hosts/linode/git.nix b/hosts/linode/git.nix index a9ceeaa..dec0ef9 100644 --- a/hosts/linode/git.nix +++ b/hosts/linode/git.nix @@ -16,10 +16,14 @@ in ''; }; greg.proxies."registry.thehellings.com" = { - target = "https://vm-gitlab.shire-zebra.ts.net:5000"; + target = "http://vm-gitlab.shire-zebra.ts.net:5000"; ssl = true; genAliases = false; - extraConfig = "client_max_body_size 25000m;"; + extraConfig = '' + proxy_set_header X-Forwarded-Proto https; + proxy_set_header X-Forwarded-Ssl on; + client_max_body_size 25000m; + ''; }; networking.firewall.allowedTCPPorts = [ sshPort ]; diff --git a/hosts/vm-gitlab/default.nix b/hosts/vm-gitlab/default.nix index e76faa3..8679bec 100644 --- a/hosts/vm-gitlab/default.nix +++ b/hosts/vm-gitlab/default.nix @@ -169,7 +169,7 @@ in nginx = { enable = true; - clientMaxBodySize = "10000m"; # 10 GB is fine, right? + clientMaxBodySize = "25000m"; virtualHosts = { "vm-gitlab.shire-zebra.ts.net" = { listen = [ @@ -183,10 +183,6 @@ in proxyPass = "http://unix:/run/gitlab/gitlab-workhorse.socket"; recommendedProxySettings = true; }; - locations."/v2" = { - proxyPass = "http://127.0.0.1:4567/"; - recommendedProxySettings = true; - }; extraConfig = '' ssl_certificate /etc/certs/vm-gitlab.shire-zebra.ts.net.crt ; ssl_certificate_key /etc/certs/vm-gitlab.shire-zebra.ts.net.key ; @@ -208,8 +204,11 @@ in extraConfig = '' ssl_certificate /etc/certs/vm-gitlab.shire-zebra.ts.net.crt ; ssl_certificate_key /etc/certs/vm-gitlab.shire-zebra.ts.net.key ; - client_max_body_size 10000m ; + client_max_body_size 25000m ; ''; + serverAliases = [ + "vm-gitlab.shire-zebra.ts.net" + ]; }; }; }; diff --git a/manifests/databases/ingress.yaml b/manifests/databases/ingress.yaml index f75c920..21d8ecc 100644 --- a/manifests/databases/ingress.yaml +++ b/manifests/databases/ingress.yaml @@ -14,7 +14,7 @@ spec: - 100.88.91.27 # dns? - 100.80.99.48 # exodus - 100.88.91.27 # genesis - - 100.91.131.66 # gitlab + - 100.117.28.111 # gitlab - 100.68.203.1 # hosea - 100.84.183.79 # isaiah - 100.102.186.39 # jeremiah From 6f3c9c68d5765cb860f6a6b573473f4f0b394302 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Tue, 17 Jun 2025 15:26:19 -0500 Subject: [PATCH 05/16] Update zim - both formatting and wikibooks fr hash --- pkgs/zim/blobs.json | 77 ++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 76 insertions(+), 1 deletion(-) diff --git a/pkgs/zim/blobs.json b/pkgs/zim/blobs.json index 10072fd..2a9f5ba 100644 --- a/pkgs/zim/blobs.json +++ b/pkgs/zim/blobs.json @@ -1 +1,76 @@ -{"en":{"gutenberg":{"name":"gutenberg_en_all_2023-08.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="},"phet":{"name":"phet_en_all_2023-04.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="},"wikibooks":{"name":"wikibooks_en_all_maxi_2021-03.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="},"wikipedia":{"name":"wikipedia_en_all_maxi_2024-01.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="},"wikisource":{"name":"wikisource_en_all_maxi_2022-09.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="},"wikiversity":{"name":"wikiversity_en_all_maxi_2021-03.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="},"wiktionary":{"name":"wiktionary_en_all_nopic_2024-05.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="}},"fr":{"gutenberg":{"name":"gutenberg_fr_all_2023-08.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="},"phet":{"name":"phet_fr_all_2023-04.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="},"wikibooks":{"name":"wikibooks_fr_all_maxi_2024-06.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="},"wikipedia":{"name":"wikipedia_fr_all_maxi_2024-05.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="},"wikisource":{"name":"wikisource_fr_all_maxi_2022-04.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="},"wikiversity":{"name":"wikiversity_fr_all_maxi_2021-02.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="},"wiktionary":{"name":"wiktionary_fr_all_nopic_2024-06.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="}},"ht":{"phet":{"name":"phet_ht_all_2023-04.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="},"wikipedia":{"name":"wikipedia_ht_all_maxi_2024-06.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="},"wikisource":{"name":"wikisource_ht_all_maxi_2019-03.zim","hash":"sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo="}}} +{ + "en": { + "gutenberg": { + "name": "gutenberg_en_all_2023-08.zim", + "hash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=" + }, + "phet": { + "name": "phet_en_all_2023-04.zim", + "hash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=" + }, + "wikibooks": { + "name": "wikibooks_en_all_maxi_2021-03.zim", + "hash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=" + }, + "wikipedia": { + "name": "wikipedia_en_all_maxi_2024-01.zim", + "hash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=" + }, + "wikisource": { + "name": "wikisource_en_all_maxi_2022-09.zim", + "hash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=" + }, + "wikiversity": { + "name": "wikiversity_en_all_maxi_2021-03.zim", + "hash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=" + }, + "wiktionary": { + "name": "wiktionary_en_all_nopic_2024-05.zim", + "hash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=" + } + }, + "fr": { + "gutenberg": { + "name": "gutenberg_fr_all_2023-08.zim", + "hash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=" + }, + "phet": { + "name": "phet_fr_all_2023-04.zim", + "hash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=" + }, + "wikibooks": { + "name": "wikibooks_fr_all_maxi_2024-06.zim", + "hash": "sha256-w/3J2neHPWbz1kK2qR0OB64mkwuDI7RJMuoAWz9yyZs=" + }, + "wikipedia": { + "name": "wikipedia_fr_all_maxi_2024-05.zim", + "hash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=" + }, + "wikisource": { + "name": "wikisource_fr_all_maxi_2022-04.zim", + "hash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=" + }, + "wikiversity": { + "name": "wikiversity_fr_all_maxi_2021-02.zim", + "hash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=" + }, + "wiktionary": { + "name": "wiktionary_fr_all_nopic_2024-06.zim", + "hash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=" + } + }, + "ht": { + "phet": { + "name": "phet_ht_all_2023-04.zim", + "hash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=" + }, + "wikipedia": { + "name": "wikipedia_ht_all_maxi_2024-06.zim", + "hash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=" + }, + "wikisource": { + "name": "wikisource_ht_all_maxi_2019-03.zim", + "hash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=" + } + } +} From 76e3714bc226c42a332c8c6fe73eabbc0acb7ccd Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Tue, 17 Jun 2025 19:54:53 -0500 Subject: [PATCH 06/16] Use HTTPS for registry --- hosts/linode/git.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hosts/linode/git.nix b/hosts/linode/git.nix index dec0ef9..7891a13 100644 --- a/hosts/linode/git.nix +++ b/hosts/linode/git.nix @@ -16,7 +16,7 @@ in ''; }; greg.proxies."registry.thehellings.com" = { - target = "http://vm-gitlab.shire-zebra.ts.net:5000"; + target = "https://vm-gitlab.shire-zebra.ts.net:5000"; ssl = true; genAliases = false; extraConfig = '' From 06ef8be354f82a058e5ea24851ac87da5ac31950 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Tue, 17 Jun 2025 19:55:08 -0500 Subject: [PATCH 07/16] Install element on Jude --- home/hosts/jude/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/home/hosts/jude/default.nix b/home/hosts/jude/default.nix index 3b6e8c8..6b68cbd 100644 --- a/home/hosts/jude/default.nix +++ b/home/hosts/jude/default.nix @@ -21,8 +21,8 @@ packages = with pkgs; [ audacity bitwarden-cli + element (mumble.override { pulseSupport = true; }) - #logseq super-productivity webcamoid ]; From cc0eb9df6a67c12566ed88bae48fda39130e5503 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Tue, 17 Jun 2025 19:55:27 -0500 Subject: [PATCH 08/16] Update hash for wikiversity_en_all --- pkgs/zim/blobs.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/zim/blobs.json b/pkgs/zim/blobs.json index 2a9f5ba..0ddc9d2 100644 --- a/pkgs/zim/blobs.json +++ b/pkgs/zim/blobs.json @@ -22,7 +22,7 @@ }, "wikiversity": { "name": "wikiversity_en_all_maxi_2021-03.zim", - "hash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=" + "hash": "sha256-w/3J2neHPWbz1kK2qR0OB64mkwuDI7RJMuoAWz9yyZs=" }, "wiktionary": { "name": "wiktionary_en_all_nopic_2024-05.zim", From 81093c16e60afd22fef18fd67557f8d42fa7a66e Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Thu, 19 Jun 2025 13:16:42 -0500 Subject: [PATCH 09/16] Add slint plugins --- modules/hm/vscodium.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/modules/hm/vscodium.nix b/modules/hm/vscodium.nix index e0392ce..38e4d0a 100644 --- a/modules/hm/vscodium.nix +++ b/modules/hm/vscodium.nix @@ -38,7 +38,9 @@ in ms-vscode-remote.remote-ssh njpwerner.autodocstring rust-lang.rust-analyzer + slint.slint tamasfe.even-better-toml + vadimcn.vscode-lldb vscjava.vscode-java-test vscjava.vscode-java-dependency vscjava.vscode-java-debug From d7ed0def2e53bf0868df076a30361654d689c9ef Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Thu, 19 Jun 2025 22:46:07 -0500 Subject: [PATCH 10/16] Add element and vagrant to jude --- home/hosts/jude/default.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/home/hosts/jude/default.nix b/home/hosts/jude/default.nix index 6b68cbd..e856d14 100644 --- a/home/hosts/jude/default.nix +++ b/home/hosts/jude/default.nix @@ -21,9 +21,10 @@ packages = with pkgs; [ audacity bitwarden-cli - element + element-desktop (mumble.override { pulseSupport = true; }) super-productivity + vagrant webcamoid ]; }; From 1375bb26fc40e6fb8d3477b65e99acb30e784c09 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Thu, 19 Jun 2025 23:53:49 -0500 Subject: [PATCH 11/16] Allow doubles on linode --- hosts/linode/nginx.nix | 15 +++++++++++---- hosts/linode/podman.nix | 6 +++++- 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/hosts/linode/nginx.nix b/hosts/linode/nginx.nix index b64db56..e0a933c 100644 --- a/hosts/linode/nginx.nix +++ b/hosts/linode/nginx.nix @@ -29,9 +29,16 @@ in ports = [ "${homepage}:80" ]; }; }; - greg.proxies."thehellings.com" = { - target = "http://${homepage}/"; - ssl = true; - genAliases = false; + greg.proxies = { + "thehellings.com" = { + target = "http://${homepage}/"; + ssl = true; + genAliases = false; + }; + "doubles.thehellings.com" = { + target = "http://localhost:8081"; + ssl = true; + genAliases = false; + }; }; } diff --git a/hosts/linode/podman.nix b/hosts/linode/podman.nix index 99b3b29..ef0b20f 100644 --- a/hosts/linode/podman.nix +++ b/hosts/linode/podman.nix @@ -1,6 +1,10 @@ -{ ... }: +{ pkgs, ... }: { + environment.systemPackages = with pkgs; [ + podman-compose + ]; + virtualisation.podman = { enable = true; dockerCompat = true; From d8f0d90e6574cefbc4deede9f4cd8cba853dc088 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Thu, 19 Jun 2025 23:54:13 -0500 Subject: [PATCH 12/16] Update deps in home manager --- modules/hm/development.nix | 1 + modules/hm/vscodium.nix | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/modules/hm/development.nix b/modules/hm/development.nix index 2294062..2462847 100644 --- a/modules/hm/development.nix +++ b/modules/hm/development.nix @@ -19,6 +19,7 @@ let nixpkgs-review nodejs process-compose + subversion ]; in with lib; diff --git a/modules/hm/vscodium.nix b/modules/hm/vscodium.nix index 38e4d0a..c909360 100644 --- a/modules/hm/vscodium.nix +++ b/modules/hm/vscodium.nix @@ -40,7 +40,7 @@ in rust-lang.rust-analyzer slint.slint tamasfe.even-better-toml - vadimcn.vscode-lldb + #vadimcn.vscode-lldb vscjava.vscode-java-test vscjava.vscode-java-dependency vscjava.vscode-java-debug From da6f7d5d6ba698e35bed585d935fadacd9b9d13a Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Thu, 19 Jun 2025 23:54:37 -0500 Subject: [PATCH 13/16] Sign before pushing to repo --- modules/nixos/remote-builder.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/modules/nixos/remote-builder.nix b/modules/nixos/remote-builder.nix index d32b0f2..e11ffbd 100644 --- a/modules/nixos/remote-builder.nix +++ b/modules/nixos/remote-builder.nix @@ -48,6 +48,7 @@ with lib; set -f export AWS_SHARED_CREDENTIALS_FILE=${config.age.secrets.cache-credentials.path} export IFS=' ' + ${getExe config.nix.package} store sign --recursive --key-file "${config.age.secrets.private-cache.path}" "$@" ${getExe config.nix.package} copy --to "s3://binary-cache/?scheme=http&endpoint=nas.home%3A9000&profile=default" "$@" '' ); From 27f1e34d49c0a833f8e39d74dbd5a28caaf19c3e Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Sun, 22 Jun 2025 00:26:25 -0500 Subject: [PATCH 14/16] Update VSCode plugins --- modules/hm/vscodium.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/hm/vscodium.nix b/modules/hm/vscodium.nix index c909360..4e3f3de 100644 --- a/modules/hm/vscodium.nix +++ b/modules/hm/vscodium.nix @@ -34,13 +34,13 @@ in jnoortheen.nix-ide mkhl.direnv ms-python.python + ms-vscode.cpptools-extension-pack ms-vscode.makefile-tools ms-vscode-remote.remote-ssh njpwerner.autodocstring rust-lang.rust-analyzer slint.slint tamasfe.even-better-toml - #vadimcn.vscode-lldb vscjava.vscode-java-test vscjava.vscode-java-dependency vscjava.vscode-java-debug From e62c88b9769fb808aa71cd032a52e3fc15ceff9a Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Sun, 22 Jun 2025 00:26:31 -0500 Subject: [PATCH 15/16] Update pins --- flake.lock | 84 +++++++++++++++++++++++++++--------------------------- 1 file changed, 42 insertions(+), 42 deletions(-) diff --git a/flake.lock b/flake.lock index 4ff927e..9b76edc 100644 --- a/flake.lock +++ b/flake.lock @@ -10,11 +10,11 @@ "systems": "systems" }, "locked": { - "lastModified": 1747575206, - "narHash": "sha256-NwmAFuDUO/PFcgaGGr4j3ozG9Pe5hZ/ogitWhY+D81k=", + "lastModified": 1750173260, + "narHash": "sha256-9P1FziAwl5+3edkfFcr5HeGtQUtrSdk/MksX39GieoA=", "owner": "ryantm", "repo": "agenix", - "rev": "4835b1dc898959d8547a871ef484930675cb47f1", + "rev": "531beac616433bac6f9e2a19feb8e99a22a66baf", "type": "github" }, "original": { @@ -74,11 +74,11 @@ ] }, "locked": { - "lastModified": 1749194393, - "narHash": "sha256-vt6hM9DNywnXXuW1qPDLzECmbDcmxhh58wpb0EEQjAo=", + "lastModified": 1750325256, + "narHash": "sha256-vvlxGz/waqJ3TGqM/iqXbnEc7/R1qnEXmaBiPaQ1RE0=", "owner": "lnl7", "repo": "nix-darwin", - "rev": "19346808c445f23b08652971be198b9df6c33edc", + "rev": "0d71cbf88d63e938b37b85b3bf8b238bcf7b39b9", "type": "github" }, "original": { @@ -226,11 +226,11 @@ "nixpkgs-lib": "nixpkgs-lib_2" }, "locked": { - "lastModified": 1748821116, - "narHash": "sha256-F82+gS044J1APL0n4hH50GYdPRv/5JWm34oCJYmVKdE=", + "lastModified": 1749398372, + "narHash": "sha256-tYBdgS56eXYaWVW3fsnPQ/nFlgWi/Z2Ymhyu21zVM98=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "49f0870db23e8c1ca0b5259734a02cd9e1e371a1", + "rev": "9305fe4e5c2a6fcf5ba6a3ff155720fbe4076569", "type": "github" }, "original": { @@ -321,11 +321,11 @@ ] }, "locked": { - "lastModified": 1749657191, - "narHash": "sha256-QLilaHuhGxiwhgceDWESj9gFcKIdEp7+9lRqNGpN8S4=", + "lastModified": 1750304462, + "narHash": "sha256-Mj5t4yX05/rXnRqJkpoLZTWqgStB88Mr/fegTRqyiWc=", "owner": "nix-community", "repo": "home-manager", - "rev": "faeab32528a9360e9577ff4082de2d35c6bbe1ce", + "rev": "863842639722dd12ae9e37ca83bcb61a63b36f6c", "type": "github" }, "original": { @@ -406,11 +406,11 @@ }, "nix-hardware": { "locked": { - "lastModified": 1749195551, - "narHash": "sha256-W5GKQHgunda/OP9sbKENBZhMBDNu2QahoIPwnsF6CeM=", + "lastModified": 1750431636, + "narHash": "sha256-vnzzBDbCGvInmfn2ijC4HsIY/3W1CWbwS/YQoFgdgPg=", "owner": "nixos", "repo": "nixos-hardware", - "rev": "4602f7e1d3f197b3cb540d5accf5669121629628", + "rev": "1552a9f4513f3f0ceedcf90320e48d3d47165712", "type": "github" }, "original": { @@ -565,11 +565,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1749285348, - "narHash": "sha256-frdhQvPbmDYaScPFiCnfdh3B/Vh81Uuoo0w5TkWmmjU=", + "lastModified": 1750365781, + "narHash": "sha256-XE/lFNhz5lsriMm/yjXkvSZz5DfvKJLUjsS6pP8EC50=", "owner": "nixos", "repo": "nixpkgs", - "rev": "3e3afe5174c561dee0df6f2c2b2236990146329f", + "rev": "08f22084e6085d19bcfb4be30d1ca76ecb96fe54", "type": "github" }, "original": { @@ -597,11 +597,11 @@ }, "nixunstable": { "locked": { - "lastModified": 1749285348, - "narHash": "sha256-frdhQvPbmDYaScPFiCnfdh3B/Vh81Uuoo0w5TkWmmjU=", + "lastModified": 1750365781, + "narHash": "sha256-XE/lFNhz5lsriMm/yjXkvSZz5DfvKJLUjsS6pP8EC50=", "owner": "nixos", "repo": "nixpkgs", - "rev": "3e3afe5174c561dee0df6f2c2b2236990146329f", + "rev": "08f22084e6085d19bcfb4be30d1ca76ecb96fe54", "type": "github" }, "original": { @@ -621,11 +621,11 @@ "systems": "systems_4" }, "locked": { - "lastModified": 1749644591, - "narHash": "sha256-v72hZJvAA78+LWohTzTwk/OnzsNxbkoTM+G7+iXwdl0=", + "lastModified": 1750345447, + "narHash": "sha256-yOuSSfI4xovXQpSkZUK02CBcY1f0Nvm0RhnUN8xn2rY=", "owner": "nix-community", "repo": "nixvim", - "rev": "64f0d3c86a7894cad9b09bb1015375ffb9949d70", + "rev": "6a1a348ab1f00bd32d2392b5c2fc72489c699af3", "type": "github" }, "original": { @@ -642,11 +642,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1749670360, - "narHash": "sha256-YmJ5Zffr6tJID0nA3XkQaoeDLFhOZKBtvZl31jXsqQg=", + "lastModified": 1750538863, + "narHash": "sha256-zabhNRMe/a16+QvrwtTqsfs915O3EYfxqOyHJyUSpRs=", "owner": "nix-community", "repo": "NUR", - "rev": "74f88e0178318b15c3c6d8832c681cc4e72c3d92", + "rev": "6bd3d204ea7b9ceba96011d2bcbfa2e07e2c93d5", "type": "github" }, "original": { @@ -665,11 +665,11 @@ ] }, "locked": { - "lastModified": 1749531675, - "narHash": "sha256-UB8Mc88rW9frjpJ1Fj2ro7f07Gg8dX3uVXvMXnFR4CE=", + "lastModified": 1749730855, + "narHash": "sha256-L3x2nSlFkXkM6tQPLJP3oCBMIsRifhIDPMQQdHO5xWo=", "owner": "NuschtOS", "repo": "search", - "rev": "4029d450d0266909ee52775849b7da54e79b328e", + "rev": "8dfe5879dd009ff4742b668d9c699bc4b9761742", "type": "github" }, "original": { @@ -680,11 +680,11 @@ }, "patched-nixpkgs": { "locked": { - "lastModified": 1748133736, - "narHash": "sha256-8DCZF+SHXa7P9O9op2ET7qJtPomzQ49jy2vjzrHocg4=", + "lastModified": 1750323031, + "narHash": "sha256-UBervAoXyQgWMLqN684fD5FMW4NsYdy5rqlJwMC1hd4=", "owner": "TomaSajt", "repo": "nixpkgs", - "rev": "76121e3e5db9bfcc4b604b4093abea7b1aa3109e", + "rev": "76ef3a6c51ed221a7ac29b50c94bb48589979be5", "type": "github" }, "original": { @@ -702,11 +702,11 @@ "utils": "utils" }, "locked": { - "lastModified": 1749385025, - "narHash": "sha256-2w6+xAMdT9LgMxDHaIyddMTacBbF7RjaZFyGjjTDBhg=", + "lastModified": 1750064469, + "narHash": "sha256-yaEzei8/2LBZL+h0iKO28eeP1Cvl5v0piAyakZfZL0s=", "owner": "SaumonNet", "repo": "proxmox-nixos", - "rev": "48f39fbe2e8f90f9ac160dd4b6929f3ac06d8223", + "rev": "8df841766fab6c15341577b6982ddd368be72113", "type": "github" }, "original": { @@ -869,11 +869,11 @@ "nixpkgs": "nixpkgs_4" }, "locked": { - "lastModified": 1749607503, - "narHash": "sha256-ou8BXMfitXrT5dAuxcx3g2kIg3akNe8TdPmxaPlf5UU=", + "lastModified": 1750471394, + "narHash": "sha256-IdOUn2DcabUAa42nthbyIY+frX42tTkU9KGddbpq5H4=", "owner": "nix-community", "repo": "nix-vscode-extensions", - "rev": "06a79e7e0edfcbe28b3e60c78d91c9f75998a8f3", + "rev": "8368fd526c329cb83a00f9e3cbc35a89599d5ced", "type": "github" }, "original": { @@ -912,11 +912,11 @@ "patched-nixpkgs": "patched-nixpkgs" }, "locked": { - "lastModified": 1749228292, - "narHash": "sha256-cavxEaS1a1jQqkQsGVUiu3Hlex3wqUfFB1LE2TXT0vA=", + "lastModified": 1750341075, + "narHash": "sha256-/7jUMPTFaGLNAQETRhDCM8L7cjI1Q39ismxLcEG+sK0=", "owner": "HPsaucii", "repo": "zed-editor-flake", - "rev": "db6c84831c7bedcf63dcecf1e0b59cddea302c62", + "rev": "dbcdd13e513562d7cf4a0b2459fea16129f688e4", "type": "github" }, "original": { From 87e615135ceb5510598194be88ca916e71dc6dc3 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Tue, 24 Jun 2025 01:39:59 -0500 Subject: [PATCH 16/16] Update pins and make Zed configuration --- flake.lock | 60 +++++++++++++++++++++++----------------------- modules/hm/zed.nix | 59 +++++++++++++++++++++++++++++++++++++++++---- 2 files changed, 85 insertions(+), 34 deletions(-) diff --git a/flake.lock b/flake.lock index 9b76edc..ce7323a 100644 --- a/flake.lock +++ b/flake.lock @@ -74,11 +74,11 @@ ] }, "locked": { - "lastModified": 1750325256, - "narHash": "sha256-vvlxGz/waqJ3TGqM/iqXbnEc7/R1qnEXmaBiPaQ1RE0=", + "lastModified": 1750618568, + "narHash": "sha256-w9EG5FOXrjXGfbqCcQg9x1lMnTwzNDW5BMXp8ddy15E=", "owner": "lnl7", "repo": "nix-darwin", - "rev": "0d71cbf88d63e938b37b85b3bf8b238bcf7b39b9", + "rev": "1dd19f19e4b53a1fd2e8e738a08dd5fe635ec7e5", "type": "github" }, "original": { @@ -321,11 +321,11 @@ ] }, "locked": { - "lastModified": 1750304462, - "narHash": "sha256-Mj5t4yX05/rXnRqJkpoLZTWqgStB88Mr/fegTRqyiWc=", + "lastModified": 1750730235, + "narHash": "sha256-rZErlxiV7ssvI8t7sPrKU+fRigNc2KvoKZG3gtUtK50=", "owner": "nix-community", "repo": "home-manager", - "rev": "863842639722dd12ae9e37ca83bcb61a63b36f6c", + "rev": "d07e9cceb4994ed64a22b9b36f8b76923e87ac38", "type": "github" }, "original": { @@ -363,11 +363,11 @@ "nixpkgs": "nixpkgs_2" }, "locked": { - "lastModified": 1749636823, - "narHash": "sha256-WUaIlOlPLyPgz9be7fqWJA5iG6rHcGRtLERSCfUDne4=", + "lastModified": 1750684550, + "narHash": "sha256-uLtw0iF9mQ94L831NOlQLPX9wm0qzd5yim3rcwACEoM=", "owner": "cachix", "repo": "git-hooks.nix", - "rev": "623c56286de5a3193aa38891a6991b28f9bab056", + "rev": "fae816c55a75675f30d18c9cbdecc13b970d95d4", "type": "github" }, "original": { @@ -565,11 +565,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1750365781, - "narHash": "sha256-XE/lFNhz5lsriMm/yjXkvSZz5DfvKJLUjsS6pP8EC50=", + "lastModified": 1750506804, + "narHash": "sha256-VLFNc4egNjovYVxDGyBYTrvVCgDYgENp5bVi9fPTDYc=", "owner": "nixos", "repo": "nixpkgs", - "rev": "08f22084e6085d19bcfb4be30d1ca76ecb96fe54", + "rev": "4206c4cb56751df534751b058295ea61357bbbaa", "type": "github" }, "original": { @@ -597,11 +597,11 @@ }, "nixunstable": { "locked": { - "lastModified": 1750365781, - "narHash": "sha256-XE/lFNhz5lsriMm/yjXkvSZz5DfvKJLUjsS6pP8EC50=", + "lastModified": 1750506804, + "narHash": "sha256-VLFNc4egNjovYVxDGyBYTrvVCgDYgENp5bVi9fPTDYc=", "owner": "nixos", "repo": "nixpkgs", - "rev": "08f22084e6085d19bcfb4be30d1ca76ecb96fe54", + "rev": "4206c4cb56751df534751b058295ea61357bbbaa", "type": "github" }, "original": { @@ -621,11 +621,11 @@ "systems": "systems_4" }, "locked": { - "lastModified": 1750345447, - "narHash": "sha256-yOuSSfI4xovXQpSkZUK02CBcY1f0Nvm0RhnUN8xn2rY=", + "lastModified": 1750691276, + "narHash": "sha256-F507hXG4ORVpvuFeuoyDo/bmO/rR2PJRB7XhtDuBnBE=", "owner": "nix-community", "repo": "nixvim", - "rev": "6a1a348ab1f00bd32d2392b5c2fc72489c699af3", + "rev": "1f3e5741a927b5b0a983f08ab9d3bcf313bc141e", "type": "github" }, "original": { @@ -642,11 +642,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1750538863, - "narHash": "sha256-zabhNRMe/a16+QvrwtTqsfs915O3EYfxqOyHJyUSpRs=", + "lastModified": 1750731829, + "narHash": "sha256-1UT2YgiY9MD0kuWkdnjR4UAKCeaIEME5dd8xMrvuSg8=", "owner": "nix-community", "repo": "NUR", - "rev": "6bd3d204ea7b9ceba96011d2bcbfa2e07e2c93d5", + "rev": "cad648060595395298331aa99efe2f4acecfd6a0", "type": "github" }, "original": { @@ -680,11 +680,11 @@ }, "patched-nixpkgs": { "locked": { - "lastModified": 1750323031, - "narHash": "sha256-UBervAoXyQgWMLqN684fD5FMW4NsYdy5rqlJwMC1hd4=", + "lastModified": 1750677113, + "narHash": "sha256-hOLEPjPscArQiPm4+EPuVuvcXX7uhIx18gLvXrDS/5k=", "owner": "TomaSajt", "repo": "nixpkgs", - "rev": "76ef3a6c51ed221a7ac29b50c94bb48589979be5", + "rev": "27a4b311a7ea290aa2504019c8693b7dace8dab5", "type": "github" }, "original": { @@ -869,11 +869,11 @@ "nixpkgs": "nixpkgs_4" }, "locked": { - "lastModified": 1750471394, - "narHash": "sha256-IdOUn2DcabUAa42nthbyIY+frX42tTkU9KGddbpq5H4=", + "lastModified": 1750730765, + "narHash": "sha256-MIcOcvxqAXUv2TJjf19aVXdtVrD8Gkcfi4W4pKkT0Lw=", "owner": "nix-community", "repo": "nix-vscode-extensions", - "rev": "8368fd526c329cb83a00f9e3cbc35a89599d5ced", + "rev": "1a1442e13dc1730de0443f80dcf02658365e999a", "type": "github" }, "original": { @@ -912,11 +912,11 @@ "patched-nixpkgs": "patched-nixpkgs" }, "locked": { - "lastModified": 1750341075, - "narHash": "sha256-/7jUMPTFaGLNAQETRhDCM8L7cjI1Q39ismxLcEG+sK0=", + "lastModified": 1750686425, + "narHash": "sha256-8GK4ofgwZFfHxMv/2nDcnIbkDd+3O5qI96kgGx8iczA=", "owner": "HPsaucii", "repo": "zed-editor-flake", - "rev": "dbcdd13e513562d7cf4a0b2459fea16129f688e4", + "rev": "4e8e32b58f3095116dd9404f0ea030173626eb15", "type": "github" }, "original": { diff --git a/modules/hm/zed.nix b/modules/hm/zed.nix index 442bca2..718ab42 100644 --- a/modules/hm/zed.nix +++ b/modules/hm/zed.nix @@ -12,9 +12,60 @@ in options.greg.zed = lib.mkEnableOption "Whether to install the Zed editor"; config = lib.mkIf cfg { - home.packages = with pkgs; [ - nil - zed-editor - ]; + programs.zed-editor = { + enable = true; + extensions = [ + "ansible" + "cargo-tom" + "dockerfile" + "mcp-server-gitlab" + "helm" + "html" + "ini" + "jsonnet" + "latex" + "make" + "markdown-oxide" + "material-icon-theme" + "nix" + "nu" + "postgres-context-server" + "python-refactoring" + "slint" + "snippets" + "toml" + ]; + extraPackages = with pkgs; [ + cargo + direnv + nil + nix + python3 + rustc + ]; + installRemoteServer = true; + userKeymaps = [ + { + } + ]; + userSettings = { + baseKeymap = "VSCode"; + buffer_font_size = 16; + features = { + copilot = true; + }; + relative_line_numbers = true; + telemetry = { + metrics = true; + }; + theme = { + mode = "system"; + light = "Gruvbox Dark"; + dark = "One Dark"; + }; + vim_mode = true; + ui_font_size = 20; + }; + }; }; }