From 2d26165acc323387c0a0203ef3d5d5136fd42f4f Mon Sep 17 00:00:00 2001 From: kity Date: Fri, 11 Apr 2025 16:37:21 +0200 Subject: [PATCH] =?UTF-8?q?feat:=20mise=20=C3=A0=20jour=20des=20d=C3=A9pen?= =?UTF-8?q?dances=20et=20ajout=20de=20nouvelles=20fonctionnalit=C3=A9s=20d?= =?UTF-8?q?ans=20la=20configuration=20Nix?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- flake.lock | 261 ++++++++++++++++-- flake.nix | 44 +-- home-manager/home.nix | 109 ++++---- hosts/dadarwin/configuration.nix | 62 +++-- hosts/diva/features/bsky-pds.nix | 12 + .../goober/features/software/workstation.nix | 1 + shared/default.nix | 3 + 7 files changed, 367 insertions(+), 125 deletions(-) create mode 100644 hosts/diva/features/bsky-pds.nix diff --git a/flake.lock b/flake.lock index 7239b2c..db46eb1 100644 --- a/flake.lock +++ b/flake.lock @@ -78,6 +78,46 @@ } }, "flake-parts": { + "inputs": { + "nixpkgs-lib": "nixpkgs-lib" + }, + "locked": { + "lastModified": 1741352980, + "narHash": "sha256-+u2UunDA4Cl5Fci3m7S643HzKmIDAe+fiXrLqYsR2fs=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "f4330d22f1c5d2ba72d3d22df5597d123fdb60a9", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, + "flake-parts_2": { + "inputs": { + "nixpkgs-lib": [ + "miovim", + "nixvim", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1738453229, + "narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, + "flake-parts_3": { "inputs": { "nixpkgs-lib": [ "neovim-nightly-overlay", @@ -98,7 +138,7 @@ "type": "github" } }, - "flake-parts_2": { + "flake-parts_4": { "inputs": { "nixpkgs-lib": [ "neovim-nightly-overlay", @@ -119,7 +159,7 @@ "type": "indirect" } }, - "flake-parts_3": { + "flake-parts_5": { "inputs": { "nixpkgs-lib": [ "nixvim", @@ -158,6 +198,24 @@ "type": "github" } }, + "flake-utils_2": { + "inputs": { + "systems": "systems_2" + }, + "locked": { + "lastModified": 1731533236, + "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, "flakeCompat": { "flake": false, "locked": { @@ -221,7 +279,7 @@ }, "hercules-ci-effects": { "inputs": { - "flake-parts": "flake-parts_2", + "flake-parts": "flake-parts_4", "nixpkgs": [ "neovim-nightly-overlay", "nixpkgs" @@ -244,7 +302,7 @@ "home-manager": { "inputs": { "nixpkgs": [ - "nixpkgs" + "nixpkgsUnstable" ] }, "locked": { @@ -262,6 +320,36 @@ } }, "ixx": { + "inputs": { + "flake-utils": [ + "miovim", + "nixvim", + "nuschtosSearch", + "flake-utils" + ], + "nixpkgs": [ + "miovim", + "nixvim", + "nuschtosSearch", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1729958008, + "narHash": "sha256-EiOq8jF4Z/zQe0QYVc3+qSKxRK//CFHMB84aYrYGwEs=", + "owner": "NuschtOS", + "repo": "ixx", + "rev": "9fd01aad037f345350eab2cd45e1946cc66da4eb", + "type": "github" + }, + "original": { + "owner": "NuschtOS", + "ref": "v0.0.6", + "repo": "ixx", + "type": "github" + } + }, + "ixx_2": { "inputs": { "flake-utils": [ "nixvim", @@ -289,14 +377,34 @@ "type": "github" } }, + "miovim": { + "inputs": { + "flake-parts": "flake-parts", + "nixpkgs": "nixpkgs", + "nixvim": "nixvim" + }, + "locked": { + "lastModified": 1741816984, + "narHash": "sha256-veUgTCQ3bCb1/w+4rRdzGxXwUEZKyys/gunMWvWYT4k=", + "ref": "refs/heads/main", + "rev": "bb97adbf0e81cc591c0f67c0b88a476f25a2fe17", + "revCount": 5, + "type": "git", + "url": "https://git.hypervirtual.world/harry123/miovim" + }, + "original": { + "type": "git", + "url": "https://git.hypervirtual.world/harry123/miovim" + } + }, "neovim-nightly-overlay": { "inputs": { "flake-compat": "flake-compat", - "flake-parts": "flake-parts", + "flake-parts": "flake-parts_3", "git-hooks": "git-hooks", "hercules-ci-effects": "hercules-ci-effects", "neovim-src": "neovim-src", - "nixpkgs": "nixpkgs", + "nixpkgs": "nixpkgs_3", "treefmt-nix": "treefmt-nix" }, "locked": { @@ -332,7 +440,7 @@ "nix-darwin": { "inputs": { "nixpkgs": [ - "nixpkgs" + "nixpkgsUnstable" ] }, "locked": { @@ -419,20 +527,35 @@ }, "nixpkgs": { "locked": { - "lastModified": 1742206328, - "narHash": "sha256-q+AQ///oMnyyFzzF4H9ShSRENt3Zsx37jTiRkLkXXE0=", - "owner": "NixOS", + "lastModified": 1741310760, + "narHash": "sha256-aizILFrPgq/W53Jw8i0a1h1GZAAKtlYOrG/A5r46gVM=", + "owner": "nixos", "repo": "nixpkgs", - "rev": "096478927c360bc18ea80c8274f013709cf7bdcd", + "rev": "de0fe301211c267807afd11b12613f5511ff7433", "type": "github" }, "original": { - "owner": "NixOS", + "owner": "nixos", "ref": "nixpkgs-unstable", "repo": "nixpkgs", "type": "github" } }, + "nixpkgs-lib": { + "locked": { + "lastModified": 1740877520, + "narHash": "sha256-oiwv/ZK/2FhGxrCkQkB83i7GnWXPPLzoqFHpDD3uYpk=", + "owner": "nix-community", + "repo": "nixpkgs.lib", + "rev": "147dee35aab2193b174e4c0868bd80ead5ce755c", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "nixpkgs.lib", + "type": "github" + } + }, "nixpkgsSmall": { "locked": { "lastModified": 1742268799, @@ -466,6 +589,38 @@ } }, "nixpkgs_2": { + "locked": { + "lastModified": 1738797219, + "narHash": "sha256-KRwX9Z1XavpgeSDVM/THdFd6uH8rNm/6R+7kIbGa+2s=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "1da52dd49a127ad74486b135898da2cef8c62665", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_3": { + "locked": { + "lastModified": 1742206328, + "narHash": "sha256-q+AQ///oMnyyFzzF4H9ShSRENt3Zsx37jTiRkLkXXE0=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "096478927c360bc18ea80c8274f013709cf7bdcd", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_4": { "locked": { "lastModified": 1742268799, "narHash": "sha256-IhnK4LhkBlf14/F8THvUy3xi/TxSQkp9hikfDZRD4Ic=", @@ -481,7 +636,7 @@ "type": "github" } }, - "nixpkgs_3": { + "nixpkgs_5": { "locked": { "lastModified": 1741865919, "narHash": "sha256-4thdbnP6dlbdq+qZWTsm4ffAwoS8Tiq1YResB+RP6WE=", @@ -497,7 +652,7 @@ "type": "github" } }, - "nixpkgs_4": { + "nixpkgs_6": { "locked": { "lastModified": 1738142207, "narHash": "sha256-NGqpVVxNAHwIicXpgaVqJEJWeyqzoQJ9oc8lnK9+WC4=", @@ -515,12 +670,32 @@ }, "nixvim": { "inputs": { - "flake-parts": "flake-parts_3", - "nixpkgs": [ - "nixpkgs" - ], + "flake-parts": "flake-parts_2", + "nixpkgs": "nixpkgs_2", "nuschtosSearch": "nuschtosSearch" }, + "locked": { + "lastModified": 1741098523, + "narHash": "sha256-gXDSXDr6tAb+JgxGMvcEjKC9YO8tVOd8hMMZHJLyQ6Q=", + "owner": "nix-community", + "repo": "nixvim", + "rev": "03065fd4708bfdf47dd541d655392a60daa25ded", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "nixvim", + "type": "github" + } + }, + "nixvim_2": { + "inputs": { + "flake-parts": "flake-parts_5", + "nixpkgs": [ + "nixpkgsUnstable" + ], + "nuschtosSearch": "nuschtosSearch_2" + }, "locked": { "lastModified": 1742255305, "narHash": "sha256-XxygfriVXQt+5Iqh6AOjZL5Aes5dH2xzVKpHpL8pDQg=", @@ -539,6 +714,30 @@ "inputs": { "flake-utils": "flake-utils", "ixx": "ixx", + "nixpkgs": [ + "miovim", + "nixvim", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1738508923, + "narHash": "sha256-4DaDrQDAIxlWhTjH6h/+xfG05jt3qDZrZE/7zDLQaS4=", + "owner": "NuschtOS", + "repo": "search", + "rev": "86e2038290859006e05ca7201425ea5b5de4aecb", + "type": "github" + }, + "original": { + "owner": "NuschtOS", + "repo": "search", + "type": "github" + } + }, + "nuschtosSearch_2": { + "inputs": { + "flake-utils": "flake-utils_2", + "ixx": "ixx_2", "nixpkgs": [ "nixvim", "nixpkgs" @@ -562,15 +761,16 @@ "inputs": { "alejandra": "alejandra", "home-manager": "home-manager", + "miovim": "miovim", "neovim-nightly-overlay": "neovim-nightly-overlay", "nix-darwin": "nix-darwin", "nix-flatpak": "nix-flatpak", "nix-secrets": "nix-secrets", "nixos-generators": "nixos-generators", - "nixpkgs": "nixpkgs_2", + "nixpkgs": "nixpkgs_4", "nixpkgsSmall": "nixpkgsSmall", "nixpkgsUnstable": "nixpkgsUnstable", - "nixvim": "nixvim", + "nixvim": "nixvim_2", "sops-nix": "sops-nix", "walker": "walker" } @@ -594,7 +794,7 @@ }, "sops-nix": { "inputs": { - "nixpkgs": "nixpkgs_3" + "nixpkgs": "nixpkgs_5" }, "locked": { "lastModified": 1742239755, @@ -626,6 +826,21 @@ } }, "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" + } + }, + "systems_3": { "locked": { "lastModified": 1689347949, "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", @@ -663,8 +878,8 @@ }, "walker": { "inputs": { - "nixpkgs": "nixpkgs_4", - "systems": "systems_2" + "nixpkgs": "nixpkgs_6", + "systems": "systems_3" }, "locked": { "lastModified": 1740745001, diff --git a/flake.nix b/flake.nix index b8e9691..4b2e89b 100644 --- a/flake.nix +++ b/flake.nix @@ -8,7 +8,7 @@ sops-nix.url = "github:Mic92/sops-nix"; home-manager.url = "github:nix-community/home-manager/"; - home-manager.inputs.nixpkgs.follows = "nixpkgs"; + home-manager.inputs.nixpkgs.follows = "nixpkgsUnstable"; alejandra.url = "github:kamadorueda/alejandra/3.0.0"; alejandra.inputs.nixpkgs.follows = "nixpkgs"; @@ -18,8 +18,13 @@ flake = false; }; + nix-secrets-next = { + url = "git+https://git.hypervirtual.world/harry123/nix-secrets-next.git"; + flake = false; + }; + miovim = { - url = "https://git.hypervirtual.world/harry123/miovim"; + url = "git+https://git.hypervirtual.world/harry123/miovim"; }; nixos-generators = { @@ -28,10 +33,18 @@ }; nix-darwin.url = "github:LnL7/nix-darwin"; - nix-darwin.inputs.nixpkgs.follows = "nixpkgs"; + nix-darwin.inputs.nixpkgs.follows = "nixpkgsUnstable"; nix-flatpak.url = "github:gmodena/nix-flatpak/?ref=v0.4.1"; neovim-nightly-overlay.url = "github:nix-community/neovim-nightly-overlay"; + nixvim = { + url = "github:nix-community/nixvim"; + # If you are not running an unstable channel of nixpkgs, select the corresponding branch of nixvim. + # url = "github:nix-community/nixvim/nixos-24.11"; + + inputs.nixpkgs.follows = "nixpkgsUnstable"; + }; + walker.url = "github:abenz1267/walker"; }; @@ -136,24 +149,7 @@ format = "proxmox"; }; - dionysos = nixos-generators.nixosGenerate { - system = "x86_64-linux"; - specialArgs = { - diskSize = 20 * 1024; - inherit specialArgs; - }; - modules = [ - ( - { ... }: - { - nix.registry.nixpkgs.flake = nixpkgs; - } - ) - ./hosts/dionysos/configuration.nix - ]; - format = "proxmox"; - }; - + # vps for tracking errors diva = nixos-generators.nixosGenerate { system = "x86_64-linux"; specialArgs = { @@ -170,6 +166,12 @@ darwinConfigurations."iMac-de-Eddie" = nix-darwin.lib.darwinSystem { modules = [ ./hosts/dadarwin/configuration.nix + home-manager.darwinModules.home-manager + { + home-manager.useGlobalPkgs = true; + home-manager.useUserPackages = true; + home-manager.users.harry123 = ./home-manager/home.nix; + } { system.configurationRevision = self.rev or self.dirtyRev or null; } ]; diff --git a/home-manager/home.nix b/home-manager/home.nix index f58a630..922a184 100644 --- a/home-manager/home.nix +++ b/home-manager/home.nix @@ -32,74 +32,69 @@ # The home.packages option allows you to install Nix packages into your # environment. - home.packages = with pkgs; [ - # # Adds the 'hello' command to your environment. It prints a friendly - # # "Hello, world!" when run. - # pkgs.hello + home.packages = + with pkgs; + [ + # # Adds the 'hello' command to your environment. It prints a friendly + # # "Hello, world!" when run. + # pkgs.hello - nerd-fonts.code-new-roman - ffmpegthumbnailer - xfce.tumbler - dm-sans - zoxide - btop - bitwarden-cli - weechat - cava - hyfetch - kittysay - nextcloud-client - thunderbird-bin - feh - waybar - p7zip + nerd-fonts.code-new-roman + ffmpegthumbnailer + dm-sans + zoxide + btop + bitwarden-cli + weechat + cava + hyfetch + kittysay + nextcloud-client + thunderbird-bin + feh + waybar + p7zip - libreoffice-qt + libreoffice-qt - playerctl - wf-recorder + playerctl + wf-recorder - file - osu-lazer-bin + file + osu-lazer-bin - qbittorrent + qbittorrent - i2pd - ripgrep - vscode + i2pd + ripgrep + vscode - zathura - tor-browser + zathura + tor-browser - gammastep - lazygit - xfce.thunar - gimp-with-plugins - fzf - lf - why3 - alt-ergo - cvc4 - z3 - prismlauncher + gammastep + lazygit + gimp-with-plugins + fzf + lf + why3 + alt-ergo + cvc4 + z3 + prismlauncher - audacious - audacious-plugins + audacious + audacious-plugins - udiskie + libsixel + unzip + p7zip - libsixel - unzip - p7zip - - nixfmt-rfc-style - # # You can also create simple shell scripts directly inside your - # # configuration. For example, this adds a command 'my-hello' to your - # # environment: - # (pkgs.writeShellScriptBin "my-hello" '' - # echo "Hello, ${config.home.username}!" - # '') - ]; + nixfmt-rfc-style + ] + ++ lib.optionals pkgs.stdenv.isLinux [ + kdePackages.dolphin + ]; # Home Manager is pretty good at managing dotfiles. The primary way to manage # plain files is through 'home.file'. diff --git a/hosts/dadarwin/configuration.nix b/hosts/dadarwin/configuration.nix index 5900950..f283856 100644 --- a/hosts/dadarwin/configuration.nix +++ b/hosts/dadarwin/configuration.nix @@ -1,31 +1,45 @@ -{ pkgs, ... }: +{ pkgs, lib, ... }: { - # List packages installed in system profile. To search by name, run: - # $ nix-env -qaP | grep wget - environment.systemPackages = with pkgs; - [ - neovim - kitty - kittysay - terraform - ]; + nixpkgs.config.allowUnfreePredicate = + pkg: + builtins.elem (lib.getName pkg) [ + "terraform" + "beeper" + ]; + # List packages installed in system profile. To search by name, run: + # $ nix-env -qaP | grep wget + environment.systemPackages = with pkgs; [ + neovim + kitty + kittysay + terraform + nixfmt-rfc-style + beeper + direnv + zoxide + git-crypt + ]; - programs.direnv.enable = true; - # Auto upgrade nix package and the daemon service. - services.nix-daemon.enable = true; - # nix.package = pkgs.nix; + programs.direnv = { + enable = true; + nix-direnv.enable = true; + }; - # Necessary for using flakes on this system. - nix.settings.experimental-features = "nix-command flakes"; + # nix.package = pkgs.nix; - # Create /etc/zshrc that loads the nix-darwin environment. - programs.zsh.enable = true; # default shell on catalina - # programs.fish.enable = true; + # Necessary for using flakes on this system. + nix.settings.experimental-features = "nix-command flakes"; - # Used for backwards compatibility, please read the changelog before changing. - # $ darwin-rebuild changelog - system.stateVersion = 5; + # Create /etc/zshrc that loads the nix-darwin environment. + programs.zsh = { + enable = true; # default shell on catalina + }; + # programs.fish.enable = true; - # The platform the configuration will be used on. - nixpkgs.hostPlatform = "x86_64-darwin"; + # Used for backwards compatibility, please read the changelog before changing. + # $ darwin-rebuild changelog + system.stateVersion = 5; + + # The platform the configuration will be used on. + nixpkgs.hostPlatform = "x86_64-darwin"; } diff --git a/hosts/diva/features/bsky-pds.nix b/hosts/diva/features/bsky-pds.nix new file mode 100644 index 0000000..45564b3 --- /dev/null +++ b/hosts/diva/features/bsky-pds.nix @@ -0,0 +1,12 @@ +{config, ...}: +{ + services.pds = { + enable = true; + pdsadmin.enable = true; + environmentFiles = []; + settings = { + "PDS_HOSTNAME" = "pds.rougebordeaux.xyz"; + + }; + }; +} \ No newline at end of file diff --git a/hosts/goober/features/software/workstation.nix b/hosts/goober/features/software/workstation.nix index c7948f0..c0f1f2e 100644 --- a/hosts/goober/features/software/workstation.nix +++ b/hosts/goober/features/software/workstation.nix @@ -10,6 +10,7 @@ "davinci-resolve" ]; environment.systemPackages = with pkgs; [ + zathura # music editing software reaper diff --git a/shared/default.nix b/shared/default.nix index f335412..6c1642d 100644 --- a/shared/default.nix +++ b/shared/default.nix @@ -14,6 +14,9 @@ inputs.miovim.packages.${system}.default pkgs.curl pkgs.unzip + pkgs.kitty.terminfo + pkgs.foot.terminfo + pkgs.kittysay ]; environment.variables.EDITOR = "nvim";