diff --git a/Justfile b/Justfile index 9f4a9e5..5298baf 100644 --- a/Justfile +++ b/Justfile @@ -45,6 +45,17 @@ upp input: gc: sudo nix-collect-garbage --delete-old +# Rekey all secrets where needed +[group('secrets')] +rekey: + agenix rekey -a + +# Edit a single secret file +[group('secrets')] +[positional-arguments] +edit-secret file: + agenix edit {{file}} + # Exits the current user session [group('desktop')] [confirm] diff --git a/README.md b/README.md index 915283e..015feed 100644 --- a/README.md +++ b/README.md @@ -3,6 +3,9 @@ This repository contains all my NixOS (and nix-darwin) system and home manager c It's not meant to be deployable by anyone other than me, but just as a reference for others. ## General principles +I'm using [Snowfall][snowfall] in order to organize my flake in an easy way that doesn't +require too much boilerplate code. + Every wheels user will have a command available called `elements` with which they are able to interface with this main Nix flake. Internally this command is an alias for the [just command runner][just] which automatically links to the flake's Justfile. @@ -23,3 +26,4 @@ There's a couple of ideas I have for this: - [ ] Make everything more composable. Can make use of the `elements` config some more, like how it's done for `quirks` [just]: https://github.com/casey/just +[snowfall]: https://snowfall.org/guides/lib/quickstart diff --git a/flake.lock b/flake.lock index 8776985..ff075e0 100644 --- a/flake.lock +++ b/flake.lock @@ -192,22 +192,6 @@ } }, "flake-compat_3": { - "flake": false, - "locked": { - "lastModified": 1696426674, - "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_4": { "flake": false, "locked": { "lastModified": 1650374568, @@ -246,7 +230,7 @@ }, "flake-utils": { "inputs": { - "systems": "systems_4" + "systems": "systems_5" }, "locked": { "lastModified": 1694529238, @@ -264,7 +248,7 @@ }, "flake-utils-plus": { "inputs": { - "flake-utils": "flake-utils_2" + "flake-utils": "flake-utils" }, "locked": { "lastModified": 1715533576, @@ -281,42 +265,6 @@ "type": "github" } }, - "flake-utils_2": { - "inputs": { - "systems": "systems_6" - }, - "locked": { - "lastModified": 1694529238, - "narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "ff7b65b44d01cf9ba6a71320833626af21126384", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "flake-utils_3": { - "inputs": { - "systems": "systems_7" - }, - "locked": { - "lastModified": 1681202837, - "narHash": "sha256-H+Rh19JDwRtpVPAWp64F+rlEtxUWBAQW28eAi3SRSzg=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "cfacdce06f30d2b68473a46042957675eebb3401", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, "gitignore": { "inputs": { "nixpkgs": [ @@ -841,26 +789,6 @@ "type": "github" } }, - "nixpkgs-ruby": { - "inputs": { - "flake-compat": "flake-compat_3", - "flake-utils": "flake-utils", - "nixpkgs": "nixpkgs_3" - }, - "locked": { - "lastModified": 1747288354, - "narHash": "sha256-OcnnbsQ0cKLhXA6T1ytaLUVZViBn5cZoXFsdlvRruSI=", - "owner": "bobvanderlinden", - "repo": "nixpkgs-ruby", - "rev": "5d7598f3059fff0cbd0dc4756f9d87f8cb7f3f7c", - "type": "github" - }, - "original": { - "owner": "bobvanderlinden", - "repo": "nixpkgs-ruby", - "type": "github" - } - }, "nixpkgs_2": { "locked": { "lastModified": 1751792365, @@ -877,36 +805,6 @@ "type": "github" } }, - "nixpkgs_3": { - "locked": { - "lastModified": 1731755305, - "narHash": "sha256-v5P3dk5JdiT+4x69ZaB18B8+Rcu3TIOrcdG4uEX7WZ8=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "057f63b6dc1a2c67301286152eb5af20747a9cb4", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-24.11", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_4": { - "locked": { - "lastModified": 1682134069, - "narHash": "sha256-TnI/ZXSmRxQDt2sjRYK/8j8iha4B4zP2cnQCZZ3vp7k=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "fd901ef4bf93499374c5af385b2943f5801c0833", - "type": "github" - }, - "original": { - "id": "nixpkgs", - "type": "indirect" - } - }, "pre-commit-hooks": { "inputs": { "flake-compat": "flake-compat", @@ -964,11 +862,9 @@ "hypridle": "hypridle", "hyprland": "hyprland", "nixpkgs": "nixpkgs_2", - "nixpkgs-ruby": "nixpkgs-ruby", "rose-pine-hyprcursor": "rose-pine-hyprcursor", "snowfall": "snowfall", - "split-monitor-workspaces": "split-monitor-workspaces", - "vscode-server": "vscode-server" + "split-monitor-workspaces": "split-monitor-workspaces" } }, "rose-pine-hyprcursor": { @@ -998,7 +894,7 @@ }, "snowfall": { "inputs": { - "flake-compat": "flake-compat_4", + "flake-compat": "flake-compat_3", "flake-utils-plus": "flake-utils-plus", "nixpkgs": [ "nixpkgs" @@ -1114,36 +1010,6 @@ "type": "github" } }, - "systems_6": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, - "systems_7": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, "treefmt-nix": { "inputs": { "nixpkgs": [ @@ -1167,7 +1033,7 @@ }, "utils": { "inputs": { - "systems": "systems_5" + "systems": "systems_4" }, "locked": { "lastModified": 1710146030, @@ -1183,25 +1049,6 @@ "type": "github" } }, - "vscode-server": { - "inputs": { - "flake-utils": "flake-utils_3", - "nixpkgs": "nixpkgs_4" - }, - "locked": { - "lastModified": 1750353031, - "narHash": "sha256-Bx7DOPLhkr8Z60U9Qw4l0OidzHoqLDKQH5rDV5ef59A=", - "owner": "nix-community", - "repo": "nixos-vscode-server", - "rev": "4ec4859b12129c0436b0a471ed1ea6dd8a317993", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "nixos-vscode-server", - "type": "github" - } - }, "xdph": { "inputs": { "hyprland-protocols": [ diff --git a/flake.nix b/flake.nix index c58427c..6fc5c56 100644 --- a/flake.nix +++ b/flake.nix @@ -25,9 +25,6 @@ cobalt.modules = [ grub2-themes.nixosModules.default ]; - mercury.modules = [ - vscode-server.nixosModules.default - ]; }; # Configure nixpkgs when instantiating the package set @@ -52,7 +49,7 @@ inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; - # Opinionated flake library, just the way I want it + # Opinionated flake library for better organization without much boilerplate snowfall = { url = "github:snowfallorg/lib"; inputs.nixpkgs.follows = "nixpkgs"; @@ -62,14 +59,11 @@ darwin.url = "github:lnl7/nix-darwin"; darwin.inputs.nixpkgs.follows = "nixpkgs"; - nixpkgs-ruby.url = "github:bobvanderlinden/nixpkgs-ruby"; - home-manager = { url = "github:nix-community/home-manager"; inputs.nixpkgs.follows = "nixpkgs"; }; - # Encrypting secrets with automatic rekeying for different hosts agenix.url = "github:ryantm/agenix"; agenix.inputs.nixpkgs.follows = "nixpkgs"; agenix-rekey.url = "github:oddlama/agenix-rekey"; @@ -93,7 +87,6 @@ inputs.hyprland.follows = "hyprland"; }; - vscode-server.url = "github:nix-community/nixos-vscode-server"; docker-compose-1.url = github:nixos/nixpkgs/b0f0b5c6c021ebafbd322899aa9a54b87d75a313; grub2-themes.url = github:vinceliuice/grub2-themes; diff --git a/homes/x86_64-linux/christopher@cobalt/config/editors.nix b/homes/x86_64-linux/christopher@cobalt/config/editors.nix index be3164a..0048d98 100644 --- a/homes/x86_64-linux/christopher@cobalt/config/editors.nix +++ b/homes/x86_64-linux/christopher@cobalt/config/editors.nix @@ -1,7 +1,6 @@ {pkgs, ...}: { # Install common editors home.packages = with pkgs; [ - vscode zed-editor # Language Servers diff --git a/homes/x86_64-linux/christopher@cobalt/global/terminal/shell/zsh/antigen.nix b/homes/x86_64-linux/christopher@cobalt/global/terminal/shell/zsh/antigen.nix index 719a39a..2c34ea5 100644 --- a/homes/x86_64-linux/christopher@cobalt/global/terminal/shell/zsh/antigen.nix +++ b/homes/x86_64-linux/christopher@cobalt/global/terminal/shell/zsh/antigen.nix @@ -14,7 +14,6 @@ antigen bundle git antigen bundle docker antigen bundle command-not-found - antigen bundle vscode # antigen bundle vi-mode # antigen bundle gh # gh autocompletion # antigen bundle 1password @@ -30,11 +29,6 @@ # Configure a default theme THEME="https://github.com/caiogondim/bullet-train-oh-my-zsh-theme bullet-train" - # Change the theme configuration if the terminal was started via VS Code - if [[ "$TERM_PROGRAM" == "vscode" ]]; then - THEME="robbyrussel" - fi - # Enable the configured theme # eval "antigen theme $THEME" # eval "$(starship init zsh)" diff --git a/systems/x86_64-linux/mercury/default.nix b/systems/x86_64-linux/mercury/default.nix index a597cee..478ae30 100644 --- a/systems/x86_64-linux/mercury/default.nix +++ b/systems/x86_64-linux/mercury/default.nix @@ -78,7 +78,4 @@ with lib._elements; { # Forward external traffic internally boot.kernel.sysctl."net.ipv4.ip_forward" = 1; - - # Enable the VSCode Remote server - services.vscode-server.enable = true; }