add new wallpapers, back to fish and syntax changes

This commit is contained in:
Jo 2025-02-22 17:46:38 +01:00
parent 5266d697de
commit 8e37d6e64f
14 changed files with 102 additions and 89 deletions
flake.lock
homes/x86_64-linux/jo@puzzlevision
modules
home
apps/codium
desktop/gnome
palette
themes/catppuccin
nixos
archetypes/workstation
common/shell
desktop/plasma
systems/x86_64-linux/puzzlevision

107
flake.lock generated
View file

@ -7,11 +7,11 @@
]
},
"locked": {
"lastModified": 1737579274,
"narHash": "sha256-8kBIYfn8TI9jbffhDNS12SdbQHb9ITXflwcgIJBeGqw=",
"lastModified": 1739934729,
"narHash": "sha256-PcrLk10meIJICzUJqtCMOJxoITzbH52fZg2XAB7SSsM=",
"owner": "catppuccin",
"repo": "nix",
"rev": "06f0ea19334bcc8112e6d671fd53e61f9e3ad63a",
"rev": "b1ff2a638afa827f1473498190a2c1cae1cf41cf",
"type": "github"
},
"original": {
@ -23,11 +23,11 @@
"flake-compat": {
"flake": false,
"locked": {
"lastModified": 1696426674,
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
"lastModified": 1733328505,
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
"rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
"type": "github"
},
"original": {
@ -57,11 +57,11 @@
"systems": "systems"
},
"locked": {
"lastModified": 1705309234,
"narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=",
"lastModified": 1731533236,
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26",
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
"type": "github"
},
"original": {
@ -110,16 +110,18 @@
"ghostty": {
"inputs": {
"flake-compat": "flake-compat",
"flake-utils": "flake-utils",
"nixpkgs-stable": "nixpkgs-stable",
"nixpkgs-unstable": "nixpkgs-unstable",
"zig": "zig"
"zig": "zig",
"zig2nix": "zig2nix"
},
"locked": {
"lastModified": 1738619868,
"narHash": "sha256-q4h4SY1kVkZG4t/59CmJvaKjlx+xjojhdU1HqxiQhrQ=",
"lastModified": 1740237918,
"narHash": "sha256-ToNmiScM8hGVbsATVGA+5P1775V1XkzR6r9oSBVGB0s=",
"owner": "ghostty-org",
"repo": "ghostty",
"rev": "f0d276062b78658fc1f3857e9ea104788f1f4e58",
"rev": "726ac36612a575ea71350d1eda020a733e2359f6",
"type": "github"
},
"original": {
@ -130,11 +132,11 @@
},
"hardware": {
"locked": {
"lastModified": 1738638143,
"narHash": "sha256-ZYMe4c4OCtIUBn5hx15PEGr0+B1cNEpl2dsaLxwY2W0=",
"lastModified": 1740089251,
"narHash": "sha256-Y78mDBWoO8CLLTjQfPfII+KXFb6lAmF9GrLbyVBsIMM=",
"owner": "NixOS",
"repo": "nixos-hardware",
"rev": "9bdd53f5908453e4d03f395eb1615c3e9a351f70",
"rev": "18e9f9753e9ae261bcc7d3abe15745686991fd30",
"type": "github"
},
"original": {
@ -151,11 +153,11 @@
]
},
"locked": {
"lastModified": 1738667255,
"narHash": "sha256-sMMQb9NydZqQ/MvvtPp+Ny0W9P0Jk0moU7SrTBlO5Vo=",
"lastModified": 1740234812,
"narHash": "sha256-TMPM8TBbS0d4e5+3TofgoF+pwbXwMfKzWxwksoIEX1E=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "7abcf59a365430b36f84eaa452a466b11e469e33",
"rev": "34d524f3edcf3a04c00ad2c09c24ec9d35d937f9",
"type": "github"
},
"original": {
@ -166,11 +168,11 @@
},
"nix-flatpak": {
"locked": {
"lastModified": 1734128415,
"narHash": "sha256-HLwdVNxpuTsLlM3tCkpbQU6yCehdgf3kOS1G2SDlkzY=",
"lastModified": 1739444422,
"narHash": "sha256-iAVVHi7X3kWORftY+LVbRiStRnQEob2TULWyjMS6dWg=",
"owner": "gmodena",
"repo": "nix-flatpak",
"rev": "8bdc2540da516006d07b04019eb57ae0781a04b3",
"rev": "5e54c3ca05a7c7d968ae1ddeabe01d2a9bc1e177",
"type": "github"
},
"original": {
@ -182,11 +184,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1738644632,
"narHash": "sha256-DyvJjOOGmTSkkEfHq0oWkwtZOgejYIB5S865wmf/qos=",
"lastModified": 1740019556,
"narHash": "sha256-vn285HxnnlHLWnv59Og7muqECNMS33mWLM14soFIv2g=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "95ea544c84ebed84a31896b0ecea2570e5e0e236",
"rev": "dad564433178067be1fbdfcce23b546254b6d641",
"type": "github"
},
"original": {
@ -198,11 +200,11 @@
},
"nixpkgs-stable": {
"locked": {
"lastModified": 1733423277,
"narHash": "sha256-TxabjxEgkNbCGFRHgM/b9yZWlBj60gUOUnRT/wbVQR8=",
"lastModified": 1738255539,
"narHash": "sha256-hP2eOqhIO/OILW+3moNWO4GtdJFYCqAe9yJZgvlCoDQ=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "e36963a147267afc055f7cf65225958633e536bf",
"rev": "c3511a3b53b482aa7547c9d1626fd7310c1de1c5",
"type": "github"
},
"original": {
@ -214,11 +216,11 @@
},
"nixpkgs-unstable": {
"locked": {
"lastModified": 1733229606,
"narHash": "sha256-FLYY5M0rpa5C2QAE3CKLYAM6TwbKicdRK6qNrSHlNrE=",
"lastModified": 1738136902,
"narHash": "sha256-pUvLijVGARw4u793APze3j6mU1Zwdtz7hGkGGkD87qw=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "566e53c2ad750c84f6d31f9ccb9d00f823165550",
"rev": "9a5db3142ce450045840cc8d832b13b8a2018e0c",
"type": "github"
},
"original": {
@ -269,11 +271,11 @@
]
},
"locked": {
"lastModified": 1738291974,
"narHash": "sha256-wkwYJc8cKmmQWUloyS9KwttBnja2ONRuJQDEsmef320=",
"lastModified": 1739262228,
"narHash": "sha256-7JAGezJ0Dn5qIyA2+T4Dt/xQgAbhCglh6lzCekTVMeU=",
"owner": "Mic92",
"repo": "sops-nix",
"rev": "4c1251904d8a08c86ac6bc0d72cc09975e89aef7",
"rev": "07af005bb7d60c7f118d9d9f5530485da5d1e975",
"type": "github"
},
"original": {
@ -317,18 +319,21 @@
"flake-compat": [
"ghostty"
],
"flake-utils": "flake-utils",
"flake-utils": [
"ghostty",
"flake-utils"
],
"nixpkgs": [
"ghostty",
"nixpkgs-stable"
]
},
"locked": {
"lastModified": 1717848532,
"narHash": "sha256-d+xIUvSTreHl8pAmU1fnmkfDTGQYCn2Rb/zOwByxS2M=",
"lastModified": 1738239110,
"narHash": "sha256-Y5i9mQ++dyIQr+zEPNy+KIbc5wjPmfllBrag3cHZgcE=",
"owner": "mitchellh",
"repo": "zig-overlay",
"rev": "02fc5cc555fc14fda40c42d7c3250efa43812b43",
"rev": "1a8fb6f3a04724519436355564b95fce5e272504",
"type": "github"
},
"original": {
@ -336,6 +341,32 @@
"repo": "zig-overlay",
"type": "github"
}
},
"zig2nix": {
"inputs": {
"flake-utils": [
"ghostty",
"flake-utils"
],
"nixpkgs": [
"ghostty",
"nixpkgs-stable"
]
},
"locked": {
"lastModified": 1738263917,
"narHash": "sha256-j/3fwe2pEOquHabP/puljOKwAZFjIE9gXZqA91sC48M=",
"owner": "jcollie",
"repo": "zig2nix",
"rev": "c311d8e77a6ee0d995f40a6e10a89a3a4ab04f9a",
"type": "github"
},
"original": {
"owner": "jcollie",
"repo": "zig2nix",
"rev": "c311d8e77a6ee0d995f40a6e10a89a3a4ab04f9a",
"type": "github"
}
}
},
"root": "root",

View file

@ -1,14 +1,10 @@
{
pkgs,
...
}:
{
{pkgs, ...}: {
puzzlevision = {
themes.catppuccin = {
gtk.enable = true;
};
apps.nushell.enable = true;
apps.nushell.enable = false;
apps.vscodium.enable = true;
};

View file

@ -55,6 +55,7 @@ in {
userSettings = {
"files.autoSave" = "on";
"workbench.colorTheme" = "Catppuccin Macchiato";
"window.titleBarStyle" = "custom";
"[nix]" = {
"editor.tabSize" = 2;

View file

@ -5,18 +5,16 @@
osConfig,
namespace,
...
}:
let
}: let
inherit (lib) mkIf mkOption;
inherit (lib.${namespace}) mkOpt;
cfg = config.${namespace}.desktop.gnome;
in
{
in {
options.${namespace}.desktop.gnome = with lib.types; {
enabled-extensions = mkOption {
type = listOf package;
default = with pkgs.gnomeExtensions; [ dash-to-dock user-themes blur-my-shell appindicator unite color-picker clipboard-history ];
example = [ dash-to-dock blur-my-shell ];
default = with pkgs.gnomeExtensions; [dash-to-dock user-themes blur-my-shell appindicator unite color-picker clipboard-history];
example = [dash-to-dock blur-my-shell];
description = "Specify gnome extensions to install.";
};
favorite-apps = mkOption {
@ -44,7 +42,7 @@ in
enable-blur = mkOpt bool false "Whether to enable blur-my-shell application blur.";
};
};
wallpaper = mkOpt str (builtins.toString ./wallpapers/arcane/jinx_flare.jpg) "Specify the path of your prefered Gnome wallpaper.";
wallpaper = mkOpt str (builtins.toString ./wallpapers/retro/snowy-map.png) "Specify the path of your prefered Gnome wallpaper.";
};
config = mkIf osConfig.${namespace}.desktop.gnome.enable {

Binary file not shown.

After

(image error) Size: 1.6 MiB

Binary file not shown.

After

(image error) Size: 1.3 MiB

View file

@ -3,13 +3,11 @@
config,
pkgs,
...
}:
let
}: let
inherit (lib) mkOption;
palette = (pkgs.lib.importJSON (config.catppuccin.sources.palette + "/palette.json")).${config.catppuccin.flavor}.colors;
in
{
options.palette = mkOption { type = lib.types.attrsOf lib.types.raw; };
in {
options.palette = mkOption {type = lib.types.attrsOf lib.types.raw;};
config = {
inherit palette;

View file

@ -3,12 +3,10 @@
config,
namespace,
...
}:
let
}: let
inherit (lib) mkEnableOption mkIf;
cfg = config.${namespace}.themes.catppuccin.black-box;
in
{
in {
options.${namespace}.themes.catppuccin.black-box = {
enable = mkEnableOption "Whether to enable the catppuccin theme for black-box.";
};

View file

@ -1,6 +1,3 @@
{
lib,
...
}: {
{lib, ...}: {
home.file.".config/fish/themes/Catppuccin\ Macchiato.theme".source = lib.snowfall.fs.get-file "resources/apps/fish/Catppuccin\ Macchiato.theme";
}

View file

@ -4,16 +4,15 @@
config,
pkgs,
...
}:
let
}: let
inherit (lib) mkEnableOption mkIf;
# Stolen from Oli @ git.gay, basically just themes default libadwaita components.
css = pkgs.writeTextFile {
name = "gtk-css";
text = ''
@define-color accent_color ${config.palette.maroon.hex};
@define-color accent_bg_color ${config.palette.maroon.hex};
@define-color accent_color ${config.palette.blue.hex};
@define-color accent_bg_color ${config.palette.blue.hex};
@define-color accent_fg_color ${config.palette.base.hex};
@define-color destructive_color ${config.palette.red.hex};
@define-color destructive_bg_color ${config.palette.red.hex};
@ -104,9 +103,8 @@ let
};
cfg = config.${namespace}.themes.catppuccin.gtk;
in
{
options.${namespace}.themes.catppuccin.gtk = { enable = mkEnableOption "Enable the Catppuccin theme for GTK"; };
in {
options.${namespace}.themes.catppuccin.gtk = {enable = mkEnableOption "Enable the Catppuccin theme for GTK";};
config = mkIf cfg.enable {
home.packages = with pkgs; [
@ -148,8 +146,8 @@ in
gtk = {
icon = {
enable = true;
accent = "maroon";
flavor = "mocha";
accent = "blue";
flavor = "macchiato";
};
};
};

View file

@ -3,12 +3,11 @@
namespace,
config,
...
}:
let
}: let
inherit (lib) mkEnableOption mkIf;
cfg = config.${namespace}.archetypes.workstation;
in {
options.${namespace}.archetypes.workstation = { enable = mkEnableOption "Enable the workstation archetype for your current system"; };
options.${namespace}.archetypes.workstation = {enable = mkEnableOption "Enable the workstation archetype for your current system";};
config = mkIf cfg.enable {
environment.sessionVariables = {

View file

@ -4,8 +4,7 @@
config,
pkgs,
...
}:
let
}: let
inherit (lib) mkEnableOption mkIf;
cfg = config.${namespace}.common.shell;
in {
@ -14,8 +13,8 @@ in {
};
config = mkIf cfg.enable {
environment.shells = with pkgs; [ nushell fish ];
users.defaultUserShell = pkgs.nushell;
environment.shells = with pkgs; [fish];
users.defaultUserShell = pkgs.fish;
programs.fish.enable = true;
};
}

View file

@ -3,12 +3,11 @@
namespace,
config,
...
}:
let
}: let
inherit (lib) mkEnableOption mkIf;
cfg = config.${namespace}.desktop.plasma;
in {
options.${namespace}.desktop.plasma = { enable = mkEnableOption "Whether to enable the KDE Plasma desktop environment"; };
options.${namespace}.desktop.plasma = {enable = mkEnableOption "Whether to enable the KDE Plasma desktop environment";};
config = mkIf cfg.enable {
services.xserver.enable = true;

View file

@ -4,8 +4,7 @@
inputs,
config,
...
}:
{
}: {
imports = [
./hardware-configuration.nix
inputs.hardware.nixosModules.common-pc-laptop
@ -27,7 +26,7 @@
boot = {
# Configure additional kernel modules.
extraModulePackages = [
pkgs.linuxKernel.packages.linux_6_12.rtl8821ce # Use custom network-card driver.
pkgs.linuxPackages_latest.rtl8821ce # Use custom network-card driver.
];
blacklistedKernelModules = [
@ -50,7 +49,7 @@
# Set system configuration
puzzlevision = {
archetypes.workstation.enable = true;
common.kernel.version = "linuxPackages_6_12";
common.kernel.version = "linuxPackages_latest";
security.yubikey = {
enable = true;
@ -62,7 +61,7 @@
services.flatpak.enable = true;
# Set trusted users (Primarily used for cachix)
nix.settings.trusted-users = [ "root" "jo" ];
nix.settings.trusted-users = ["root" "jo"];
# Configure additional groups
users.groups.www-data = {
@ -72,7 +71,7 @@
# Configure users.
snowfallorg.users.jo.admin = true;
users.users.jo.isNormalUser = true;
users.users.jo.extraGroups = [ "dialout" "docker" "www-data" ];
users.users.jo.extraGroups = ["dialout" "docker" "www-data"];
users.users.jo.hashedPasswordFile = config.sops.secrets."user/jo/password_hash".path;
# Configure home-manager