wip(stylix): move stylix to nixos config

This commit is contained in:
Khaïs COLIN 2024-08-13 17:20:02 +02:00
parent df92bdfe64
commit 48ad6caec9
6 changed files with 258 additions and 3 deletions

26
nixos/breezex-cursor/flake.lock generated Normal file
View file

@ -0,0 +1,26 @@
{
"nodes": {
"nixpkgs": {
"locked": {
"lastModified": 1722087241,
"narHash": "sha256-2ShmEaFi0kJVOEEu5gmlykN5dwjWYWYUJmlRTvZQRpU=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "8c50662509100d53229d4be607f1a3a31157fa12",
"type": "github"
},
"original": {
"id": "nixpkgs",
"ref": "nixos-24.05",
"type": "indirect"
}
},
"root": {
"inputs": {
"nixpkgs": "nixpkgs"
}
}
},
"root": "root",
"version": 7
}

View file

@ -0,0 +1,32 @@
{
description = "Extended KDE cursor, Highly inspired on KDE Breeze for Windows and Linux with HiDPi Support.";
inputs = {
nixpkgs.url = "nixpkgs/nixos-24.05";
};
outputs = { nixpkgs, ... }:
let
system = "x86_64-linux";
pkgs = import nixpkgs { inherit system; };
in
{
packages.${system}.default = pkgs.stdenv.mkDerivation {
pname = "breezex-curosr";
version = "2.0.1";
src = pkgs.fetchurl {
url = "https://github.com/ful1e5/BreezeX_Cursor/releases/download/v2.0.1/BreezeX.tar.xz";
hash = "sha256:1I6WQT/GH/AE2wDN1NdZ6XivRNhCsrWP/pG6UIZT7R8=";
};
# fix 'unpacker produced multiple directories'
sourceRoot = ".";
buildPhase = ''
mkdir -p $out/share/icons
cp -r BreezeX-Black $out/share/icons
cp -r BreezeX-Dark $out/share/icons
cp -r BreezeX-Light $out/share/icons
'';
};
};
}

235
nixos/flake.lock generated
View file

@ -1,5 +1,136 @@
{
"nodes": {
"base16": {
"inputs": {
"fromYaml": "fromYaml"
},
"locked": {
"lastModified": 1708890466,
"narHash": "sha256-LlrC09LoPi8OPYOGPXegD72v+//VapgAqhbOFS3i8sc=",
"owner": "SenchoPens",
"repo": "base16.nix",
"rev": "665b3c6748534eb766c777298721cece9453fdae",
"type": "github"
},
"original": {
"owner": "SenchoPens",
"repo": "base16.nix",
"type": "github"
}
},
"base16-fish": {
"flake": false,
"locked": {
"lastModified": 1622559957,
"narHash": "sha256-PebymhVYbL8trDVVXxCvZgc0S5VxI7I1Hv4RMSquTpA=",
"owner": "tomyun",
"repo": "base16-fish",
"rev": "2f6dd973a9075dabccd26f1cded09508180bf5fe",
"type": "github"
},
"original": {
"owner": "tomyun",
"repo": "base16-fish",
"type": "github"
}
},
"base16-foot": {
"flake": false,
"locked": {
"lastModified": 1696725948,
"narHash": "sha256-65bz2bUL/yzZ1c8/GQASnoiGwaF8DczlxJtzik1c0AU=",
"owner": "tinted-theming",
"repo": "base16-foot",
"rev": "eedbcfa30de0a4baa03e99f5e3ceb5535c2755ce",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-foot",
"type": "github"
}
},
"base16-helix": {
"flake": false,
"locked": {
"lastModified": 1720809814,
"narHash": "sha256-numb3xigRGnr/deF7wdjBwVg7fpbTH7reFDkJ75AJkY=",
"owner": "tinted-theming",
"repo": "base16-helix",
"rev": "34f41987bec14c0f3f6b2155c19787b1f6489625",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-helix",
"type": "github"
}
},
"base16-kitty": {
"flake": false,
"locked": {
"lastModified": 1665001328,
"narHash": "sha256-aRaizTYPpuWEcvoYE9U+YRX+Wsc8+iG0guQJbvxEdJY=",
"owner": "kdrag0n",
"repo": "base16-kitty",
"rev": "06bb401fa9a0ffb84365905ffbb959ae5bf40805",
"type": "github"
},
"original": {
"owner": "kdrag0n",
"repo": "base16-kitty",
"type": "github"
}
},
"base16-tmux": {
"flake": false,
"locked": {
"lastModified": 1696725902,
"narHash": "sha256-wDPg5elZPcQpu7Df0lI5O8Jv4A3T6jUQIVg63KDU+3Q=",
"owner": "tinted-theming",
"repo": "base16-tmux",
"rev": "c02050bebb60dbb20cb433cd4d8ce668ecc11ba7",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-tmux",
"type": "github"
}
},
"base16-vim": {
"flake": false,
"locked": {
"lastModified": 1716150083,
"narHash": "sha256-ZMhnNmw34ogE5rJZrjRv5MtG3WaqKd60ds2VXvT6hEc=",
"owner": "tinted-theming",
"repo": "base16-vim",
"rev": "6e955d704d046b0dc3e5c2d68a2a6eeffd2b5d3d",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-vim",
"type": "github"
}
},
"breezex-cursor": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1,
"narHash": "sha256-R5QjjQf2bcDOy/pJfBP4EZTkXUucBOWNCZ6N0UQbISo=",
"path": "./breezex-cursor",
"type": "path"
},
"original": {
"path": "./breezex-cursor",
"type": "path"
}
},
"devshell": {
"inputs": {
"nixpkgs": [
@ -36,6 +167,22 @@
"url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz"
}
},
"flake-compat_2": {
"flake": false,
"locked": {
"lastModified": 1673956053,
"narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
"type": "github"
},
"original": {
"owner": "edolstra",
"repo": "flake-compat",
"type": "github"
}
},
"flake-parts": {
"inputs": {
"nixpkgs-lib": "nixpkgs-lib"
@ -94,6 +241,22 @@
"type": "github"
}
},
"fromYaml": {
"flake": false,
"locked": {
"lastModified": 1689549921,
"narHash": "sha256-iX0pk/uB019TdBGlaJEWvBCfydT6sRq+eDcGPifVsCM=",
"owner": "SenchoPens",
"repo": "fromYaml",
"rev": "11fbbbfb32e3289d3c631e0134a23854e7865c84",
"type": "github"
},
"original": {
"owner": "SenchoPens",
"repo": "fromYaml",
"type": "github"
}
},
"git-hooks": {
"inputs": {
"flake-compat": [
@ -150,6 +313,23 @@
"type": "github"
}
},
"gnome-shell": {
"flake": false,
"locked": {
"lastModified": 1713702291,
"narHash": "sha256-zYP1ehjtcV8fo+c+JFfkAqktZ384Y+y779fzmR9lQAU=",
"owner": "GNOME",
"repo": "gnome-shell",
"rev": "0d0aadf013f78a7f7f1dc984d0d812971864b934",
"type": "github"
},
"original": {
"owner": "GNOME",
"ref": "46.1",
"repo": "gnome-shell",
"type": "github"
}
},
"home-manager": {
"inputs": {
"nixpkgs": [
@ -193,6 +373,27 @@
"type": "github"
}
},
"home-manager_3": {
"inputs": {
"nixpkgs": [
"stylix",
"nixpkgs"
]
},
"locked": {
"lastModified": 1715930644,
"narHash": "sha256-W9pyM3/vePxrffHtzlJI6lDS3seANQ+Nqp+i58O46LI=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "e3ad5108f54177e6520535768ddbf1e6af54b59d",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "home-manager",
"type": "github"
}
},
"nix-darwin": {
"inputs": {
"nixpkgs": [
@ -368,12 +569,44 @@
},
"root": {
"inputs": {
"breezex-cursor": "breezex-cursor",
"home-manager": "home-manager",
"nixos-06cb-009a-fingerprint-sensor": "nixos-06cb-009a-fingerprint-sensor",
"nixpkgs": "nixpkgs",
"nixpkgs-unstable": "nixpkgs-unstable",
"nixvim": "nixvim",
"river-shifttags": "river-shifttags"
"river-shifttags": "river-shifttags",
"stylix": "stylix"
}
},
"stylix": {
"inputs": {
"base16": "base16",
"base16-fish": "base16-fish",
"base16-foot": "base16-foot",
"base16-helix": "base16-helix",
"base16-kitty": "base16-kitty",
"base16-tmux": "base16-tmux",
"base16-vim": "base16-vim",
"flake-compat": "flake-compat_2",
"gnome-shell": "gnome-shell",
"home-manager": "home-manager_3",
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1722946882,
"narHash": "sha256-mxtnMye8gs82tdQbVC+g6v3aPOZlH150f9WyntHIkTg=",
"owner": "danth",
"repo": "stylix",
"rev": "5853f1a8bd072f2ebabfc3de3973084353cf6f1e",
"type": "github"
},
"original": {
"owner": "danth",
"repo": "stylix",
"type": "github"
}
},
"systems": {

View file

@ -8,6 +8,11 @@
inputs.nixpkgs.follows = "nixpkgs";
};
stylix = {
url = "github:danth/stylix";
inputs.nixpkgs.follows = "nixpkgs";
};
nixvim = {
url = "path:./nixvim";
inputs.nixpkgs.follows = "nixpkgs-unstable";
@ -18,6 +23,11 @@
inputs.nixpkgs.follows = "nixpkgs";
};
breezex-cursor = {
url = "path:./breezex-cursor";
inputs.nixpkgs.follows = "nixpkgs";
};
nixos-06cb-009a-fingerprint-sensor = {
url = "github:ahbnr/nixos-06cb-009a-fingerprint-sensor";
inputs.nixpkgs.follows = "nixpkgs";
@ -25,10 +35,13 @@
};
outputs = {
nixpkgs,
home-manager,
stylix,
nixvim,
river-shifttags,
breezex-cursor,
nixos-06cb-009a-fingerprint-sensor,
... }:
@ -40,6 +53,7 @@
inherit system;
modules = [
./configuration.nix
home-manager.nixosModules.home-manager {
home-manager = {
useGlobalPkgs = true;
@ -48,9 +62,14 @@
extraSpecialArgs = {
nixvim = nixvim.packages.${system}.default;
river-shifttags = river-shifttags.packages.${system}.default;
breezex-cursor = breezex-cursor.packages.${system}.default;
};
};
}
stylix.nixosModules.stylix
./stylix.nix
nixos-06cb-009a-fingerprint-sensor.nixosModules.open-fprintd
nixos-06cb-009a-fingerprint-sensor.nixosModules.python-validity
];

View file

@ -1,6 +1,9 @@
{ pkgs, nixvim, river-shifttags, ... }: let
username = "khais";
in {
imports = [
./stylix.nix
];
home = {
packages = with pkgs; [
# system tools & bragging

47
nixos/stylix.nix Normal file
View file

@ -0,0 +1,47 @@
{ breezex-cursor, pkgs, ... }:
{
stylix = {
enable = true;
image = ./wallpapers/nixos_inspector_tan.png;
polarity = "dark";
base16Scheme = ./neovim_default_scheme.yaml;
# fix wallpaper set error when not running under kde plasma
# see https://github.com/danth/stylix/issues/340
targets.kde.enable = false;
cursor = {
package = breezex-cursor;
name = "BreezeX-Light";
size = 24;
};
fonts = {
monospace = {
name = "VictorMono Nerd Font";
package = pkgs.nerdfonts;
};
sansSerif = {
name = "IBM Plex Sans";
package = pkgs.ibm-plex;
};
serif = {
name = "CMU Serif";
package = pkgs.cm_unicode;
};
sizes = {
desktop = 10;
popups = 10;
terminal = 10;
};
};
};
# fix cursor size for some apps
home.sessionVariables = {
XCURSOR_SIZE = 24;
};
}