diff --git a/Justfile b/Justfile index 973f9e4..ada2879 100644 --- a/Justfile +++ b/Justfile @@ -3,3 +3,5 @@ system: sudo ./result/sw/bin/darwin-rebuild switch --flake . build: nix build .#darwinConfigurations.Ethans-MacBook-Air.system +build-trace: + nix build .#darwinConfigurations.Ethans-MacBook-Air.system --show-trace diff --git a/flake.lock b/flake.lock index 19c53f4..860b583 100644 --- a/flake.lock +++ b/flake.lock @@ -1,5 +1,38 @@ { "nodes": { + "flake-utils": { + "inputs": { + "systems": "systems" + }, + "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" + } + }, + "flakey-profile": { + "locked": { + "lastModified": 1712898590, + "narHash": "sha256-FhGIEU93VHAChKEXx905TSiPZKga69bWl1VB37FK//I=", + "owner": "lf-", + "repo": "flakey-profile", + "rev": "243c903fd8eadc0f63d205665a92d4df91d42d9d", + "type": "github" + }, + "original": { + "owner": "lf-", + "repo": "flakey-profile", + "type": "github" + } + }, "home-manager": { "inputs": { "nixpkgs": [ @@ -20,6 +53,41 @@ "type": "github" } }, + "lix": { + "flake": false, + "locked": { + "lastModified": 1750762203, + "narHash": "sha256-LmQhjQ7c+AOkwhvR9GFgJOy8oHW35MoQRELtrwyVnPw=", + "rev": "38b358ce27203f972faa2973cf44ba80c758f46e", + "type": "tarball", + "url": "https://git.lix.systems/api/v1/repos/lix-project/lix/archive/38b358ce27203f972faa2973cf44ba80c758f46e.tar.gz?rev=38b358ce27203f972faa2973cf44ba80c758f46e" + }, + "original": { + "type": "tarball", + "url": "https://git.lix.systems/lix-project/lix/archive/release-2.93.tar.gz" + } + }, + "lix-module": { + "inputs": { + "flake-utils": "flake-utils", + "flakey-profile": "flakey-profile", + "lix": "lix", + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1750776670, + "narHash": "sha256-EfA5K5EZAnspmraJrXQlziffVpaT+QDBiE6yKmuaNNQ=", + "rev": "c3c78a32273e89d28367d8605a4c880f0b6607e3", + "type": "tarball", + "url": "https://git.lix.systems/api/v1/repos/lix-project/nixos-module/archive/c3c78a32273e89d28367d8605a4c880f0b6607e3.tar.gz" + }, + "original": { + "type": "tarball", + "url": "https://git.lix.systems/lix-project/nixos-module/archive/2.93.1.tar.gz" + } + }, "nix-darwin": { "inputs": { "nixpkgs": [ @@ -56,11 +124,78 @@ "type": "github" } }, + "nixpkgs_2": { + "locked": { + "lastModified": 1750365781, + "narHash": "sha256-XE/lFNhz5lsriMm/yjXkvSZz5DfvKJLUjsS6pP8EC50=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "08f22084e6085d19bcfb4be30d1ca76ecb96fe54", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, "root": { "inputs": { "home-manager": "home-manager", + "lix-module": "lix-module", "nix-darwin": "nix-darwin", - "nixpkgs": "nixpkgs" + "nixpkgs": "nixpkgs", + "spicetify-nix": "spicetify-nix" + } + }, + "spicetify-nix": { + "inputs": { + "nixpkgs": "nixpkgs_2", + "systems": "systems_2" + }, + "locked": { + "lastModified": 1750567035, + "narHash": "sha256-GVNXxMZynKZt+83QQQEVXscqtkJbScvaBrwianovUW4=", + "owner": "Gerg-L", + "repo": "spicetify-nix", + "rev": "e32285f5d1dfc184b039a813644e226c3914e7d7", + "type": "github" + }, + "original": { + "owner": "Gerg-L", + "repo": "spicetify-nix", + "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" + } + }, + "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" } } }, diff --git a/flake.nix b/flake.nix index 43ac7c0..0a680bd 100644 --- a/flake.nix +++ b/flake.nix @@ -9,9 +9,16 @@ home-manager.url = "github:nix-community/home-manager"; home-manager.inputs.nixpkgs.follows = "nixpkgs"; + + lix-module = { + url = "https://git.lix.systems/lix-project/nixos-module/archive/2.93.1.tar.gz"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + + spicetify-nix.url = "github:Gerg-L/spicetify-nix"; }; - outputs = inputs @ { self, ... }: let + outputs = inputs @ { self, spicetify-nix, ... }: let nixpkgsConfig = { config.allowUnfree = true; }; @@ -27,12 +34,21 @@ modules = [ ./hosts/Ethans-MacBook-Air/configuration.nix inputs.home-manager.darwinModules.home-manager + inputs.lix-module.nixosModules.default { nixpkgs = nixpkgsConfig; - home-manager.useGlobalPkgs = true; - home-manager.useUserPackages = true; - home-manager.users.ethanreece = import ./home/home.nix; + home-manager = { + useGlobalPkgs = true; + useUserPackages = true; + extraSpecialArgs = { inherit spicetify-nix; }; + users.ethanreece = { + imports = [ + (import ./home/home.nix) + spicetify-nix.homeManagerModules.spicetify + ]; + }; + }; } ]; }; diff --git a/home/home.nix b/home/home.nix index 97b89cf..220ee98 100644 --- a/home/home.nix +++ b/home/home.nix @@ -1,4 +1,4 @@ -{ pkgs, ... }: +{ pkgs, spicetify-nix, ... }: { home = { @@ -12,6 +12,7 @@ grandperspective iterm2 nerd-fonts.jetbrains-mono + signal-desktop-bin ]; shell = { enableNushellIntegration = true; @@ -53,7 +54,21 @@ enableFishIntegration = true; enableNushellIntegration = true; }; - }; + spicetify = + let + spicePkgs = spicetify-nix.legacyPackages.${pkgs.system}; + in + { + enable = true; + enabledExtensions = with spicePkgs.extensions; [ + adblock + hidePodcasts + shuffle + ]; + theme = spicePkgs.themes.catppuccin; + colorScheme = "mocha"; + }; + }; services = { gpg-agent = {