feat: stylix
This commit is contained in:
parent
a743f4f177
commit
a05748ee28
109
flake.lock
109
flake.lock
|
@ -44,6 +44,24 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"base16": {
|
||||
"inputs": {
|
||||
"fromYaml": "fromYaml"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1689633990,
|
||||
"narHash": "sha256-iwvQg2Vx0IIDWZaKo8Xmzxlv1YPHg+Kp/QSv8dRv0RY=",
|
||||
"owner": "SenchoPens",
|
||||
"repo": "base16.nix",
|
||||
"rev": "dddf2e1c04845d43c89a8e9e37d574519649a404",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "SenchoPens",
|
||||
"repo": "base16.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"colmena": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat",
|
||||
|
@ -230,6 +248,22 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-compat_5": {
|
||||
"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": [
|
||||
|
@ -347,6 +381,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"
|
||||
}
|
||||
},
|
||||
"gitignore": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
|
@ -410,6 +460,27 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"home-manager_2": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"stylix",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1691882297,
|
||||
"narHash": "sha256-e1/LAQSGLnBywfA1TfMl0Vj3tvYka73XOZ/D2/CJowE=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "c3ab5ea047e6dc73df530948f7367455749d8906",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"impermanence": {
|
||||
"locked": {
|
||||
"lastModified": 1694622745,
|
||||
|
@ -680,6 +751,22 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_4": {
|
||||
"locked": {
|
||||
"lastModified": 1691853136,
|
||||
"narHash": "sha256-wTzDsRV4HN8A2Sl0SVQY0q8ILs90CD43Ha//7gNZE+E=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "f0451844bbdf545f696f029d1448de4906c7f753",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixpkgs-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixseparatedebuginfod": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils_4",
|
||||
|
@ -774,6 +861,7 @@
|
|||
"nixpkgs-wayland": "nixpkgs-wayland",
|
||||
"nixseparatedebuginfod": "nixseparatedebuginfod",
|
||||
"pre-commit-hooks": "pre-commit-hooks",
|
||||
"stylix": "stylix",
|
||||
"systems": "systems_4",
|
||||
"templates": "templates"
|
||||
}
|
||||
|
@ -819,6 +907,27 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"stylix": {
|
||||
"inputs": {
|
||||
"base16": "base16",
|
||||
"flake-compat": "flake-compat_5",
|
||||
"home-manager": "home-manager_2",
|
||||
"nixpkgs": "nixpkgs_4"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1694375893,
|
||||
"narHash": "sha256-oJGESNjJ/6o6tfuUavBZ7go4Oun7g9YKv7OqaQaY/80=",
|
||||
"owner": "danth",
|
||||
"repo": "stylix",
|
||||
"rev": "c3c9f4784b4f08f6676340126858d936edbce1fa",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "danth",
|
||||
"repo": "stylix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
|
|
|
@ -71,12 +71,16 @@
|
|||
url = "github:nix-community/nix-index-database";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
nixseparatedebuginfod.url = "github:symphorien/nixseparatedebuginfod";
|
||||
|
||||
lanzaboote = {
|
||||
url = "github:nix-community/lanzaboote/v0.3.0";
|
||||
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
stylix.url = "github:danth/stylix";
|
||||
};
|
||||
|
||||
outputs = {
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
|
||||
../../modules/config
|
||||
../../modules/dev
|
||||
../../modules/graphical
|
||||
|
||||
../../modules/hardware/bluetooth.nix
|
||||
../../modules/hardware/intel.nix
|
||||
|
@ -24,4 +25,7 @@
|
|||
|
||||
../../users/patrick
|
||||
];
|
||||
stylix.fonts.sizes = {
|
||||
terminal = 10;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
imports = [
|
||||
./boot.nix
|
||||
./efi.nix
|
||||
./fonts.nix
|
||||
./home-manager.nix
|
||||
./inputrc.nix
|
||||
./issue.nix
|
||||
|
|
|
@ -1,52 +0,0 @@
|
|||
{pkgs, ...}: {
|
||||
fonts = {
|
||||
enableGhostscriptFonts = false;
|
||||
fontDir.enable = false;
|
||||
fontconfig = {
|
||||
defaultFonts = {
|
||||
sansSerif = ["IBM Plex Sans"];
|
||||
serif = ["IBM Plex Sans"];
|
||||
monospace = ["FiraCode Nerd Font"];
|
||||
emoji = ["Noto Color Emoji"];
|
||||
};
|
||||
localConf = ''
|
||||
<?xml version="1.0"?>
|
||||
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
|
||||
<fontconfig>
|
||||
<alias binding="weak">
|
||||
<family>monospace</family>
|
||||
<prefer>
|
||||
<family>emoji</family>
|
||||
</prefer>
|
||||
</alias>
|
||||
<alias binding="weak">
|
||||
<family>sans-serif</family>
|
||||
<prefer>
|
||||
<family>emoji</family>
|
||||
</prefer>
|
||||
</alias>
|
||||
<alias binding="weak">
|
||||
<family>serif</family>
|
||||
<prefer>
|
||||
<family>emoji</family>
|
||||
</prefer>
|
||||
</alias>
|
||||
</fontconfig>
|
||||
'';
|
||||
};
|
||||
packages = with pkgs; [
|
||||
(nerdfonts.override {fonts = ["FiraCode"];})
|
||||
ibm-plex
|
||||
dejavu_fonts
|
||||
unifont
|
||||
freefont_ttf
|
||||
gyre-fonts # TrueType substitutes for standard PostScript fonts
|
||||
liberation_ttf
|
||||
noto-fonts
|
||||
noto-fonts-cjk-sans
|
||||
noto-fonts-cjk-serif
|
||||
noto-fonts-emoji
|
||||
noto-fonts-extra
|
||||
];
|
||||
};
|
||||
}
|
18
modules/graphical/default.nix
Normal file
18
modules/graphical/default.nix
Normal file
|
@ -0,0 +1,18 @@
|
|||
{
|
||||
inputs,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
inputs.stylix.nixosModules.stylix
|
||||
./fonts.nix
|
||||
];
|
||||
|
||||
stylix = {
|
||||
autoEnable = false;
|
||||
polarity = "dark";
|
||||
image = config.lib.stylix.pixel "base00";
|
||||
base16Scheme = "${pkgs.base16-schemes}/share/themes/da-one-black.yaml";
|
||||
};
|
||||
}
|
|
@ -3,12 +3,6 @@
|
|||
enableGhostscriptFonts = false;
|
||||
fontDir.enable = false;
|
||||
fontconfig = {
|
||||
defaultFonts = {
|
||||
sansSerif = ["IBM Plex Sans"];
|
||||
serif = ["IBM Plex Sans"];
|
||||
monospace = ["FiraCode Nerd Font"];
|
||||
emoji = ["Noto Color Emoji"];
|
||||
};
|
||||
localConf = ''
|
||||
<?xml version="1.0"?>
|
||||
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
|
||||
|
@ -49,4 +43,27 @@
|
|||
noto-fonts-extra
|
||||
];
|
||||
};
|
||||
stylix.fonts = {
|
||||
serif = {
|
||||
package = pkgs.dejavu_fonts;
|
||||
name = "IBM Plex Serif";
|
||||
};
|
||||
|
||||
sansSerif = {
|
||||
package = pkgs.dejavu_fonts;
|
||||
name = "IBM Plex Sans";
|
||||
};
|
||||
|
||||
monospace = {
|
||||
# No need for patched nerd fonts, kitty can pick up on them automatically,
|
||||
# and ideally every program should do that: https://sw.kovidgoyal.net/kitty/faq/#kitty-is-not-able-to-use-my-favorite-font
|
||||
package = pkgs.jetbrains-mono;
|
||||
name = "JetBrains Mono";
|
||||
};
|
||||
|
||||
emoji = {
|
||||
package = pkgs.noto-fonts-emoji;
|
||||
name = "Noto Color Emoji";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
@ -18,11 +18,6 @@ in {
|
|||
options.programs.streamdeck-ui = {
|
||||
enable = mkEnableOption "streamdeck-ui";
|
||||
package = mkPackageOption pkgs "streamdeck-ui" {};
|
||||
autoStart = mkOption {
|
||||
default = true;
|
||||
type = types.bool;
|
||||
description = "Whether streamdeck-ui should be started automatically";
|
||||
};
|
||||
settings = mkOption {
|
||||
default = {};
|
||||
type = types.submodule {freeformType = settingsFormat.type;};
|
||||
|
@ -31,6 +26,7 @@ in {
|
|||
};
|
||||
config = mkIf config.programs.streamdeck-ui.enable {
|
||||
home.packages = [pkgs.streamdeck-ui];
|
||||
home.sessionVariables.STREAMDECK_UI_CONFIG = "${config.xdg.configHome}/streamdeck-ui/config.json";
|
||||
xdg.configFile.streamdeck-ui = {
|
||||
target = "streamdeck-ui/config.json";
|
||||
source = settingsFormat.generate "config.json" {
|
||||
|
@ -38,20 +34,6 @@ in {
|
|||
state = config.programs.streamdeck-ui.settings;
|
||||
};
|
||||
};
|
||||
systemd.user.services = mkIf config.programs.streamdeck-ui.autoStart {
|
||||
streamdeck-ui = {
|
||||
Unit = {
|
||||
Description = "Start streamdeck-ui";
|
||||
};
|
||||
Service = {
|
||||
Environment = "STREAMDECK_UI_CONFIG=${config.xdg.configHome}/streamdeck-ui/config.json";
|
||||
ExecStart = "${config.programs.streamdeck-ui.package}/bin/streamdeck --no-ui";
|
||||
};
|
||||
Install = {
|
||||
WantedBy = ["default.target"];
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
})
|
||||
];
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
lib,
|
||||
...
|
||||
}: {
|
||||
stylix.targets.i3.enable = true;
|
||||
xsession.windowManager.i3 = {
|
||||
enable = true;
|
||||
config =
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
stylix.targets.rofi.enable = true;
|
||||
programs.rofi = {
|
||||
enable = true;
|
||||
theme = "DarkBlue";
|
||||
extraConfig = {
|
||||
matching = "fuzzy";
|
||||
dpi = 1;
|
||||
|
|
|
@ -21,5 +21,6 @@ if command -v dbus-update-activation-environment >/dev/null 2>&1; then
|
|||
fi
|
||||
|
||||
autorandr -c
|
||||
streamdeck --no-ui
|
||||
systemctl --user start set-wallpaper.service
|
||||
exec i3
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
{
|
||||
pkgs,
|
||||
config,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
home.pointerCursor = {
|
||||
|
@ -11,6 +12,16 @@
|
|||
size = 18;
|
||||
};
|
||||
|
||||
stylix = {
|
||||
targets = {
|
||||
gtk.enable = true;
|
||||
bat.enable = true;
|
||||
dunst.enable = true;
|
||||
zathura.enable = true;
|
||||
xresources.enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
xresources.properties = {
|
||||
"Xft.hinting" = true;
|
||||
"Xft.antialias" = true;
|
||||
|
@ -38,7 +49,7 @@
|
|||
package = pkgs.vimix-icon-theme;
|
||||
};
|
||||
|
||||
theme = {
|
||||
theme = lib.mkForce {
|
||||
name = "Orchis-purple-solid-black";
|
||||
package = pkgs.orchis-theme;
|
||||
};
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
{pkgs, ...}: {
|
||||
stylix.targets.fuzzel.enable = true;
|
||||
home.packages = with pkgs; [
|
||||
(writeShellScriptBin "fuzzel" ''
|
||||
${fuzzel}/bin/fuzzel --background-color=000000ff
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
home.packages = [
|
||||
pkgs.wdisplays
|
||||
];
|
||||
stylix.targets.sway.enable = true;
|
||||
wayland.windowManager.sway = {
|
||||
enable = true;
|
||||
config =
|
||||
|
|
|
@ -1,14 +1,14 @@
|
|||
{pkgs, ...}: {
|
||||
{
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
stylix.targets.kitty.enable = true;
|
||||
programs.kitty = {
|
||||
enable = true;
|
||||
package = pkgs.kitty.overrideAttrs (_finalAttrs: _prevAttrs: {
|
||||
doCheck = false;
|
||||
});
|
||||
font = {
|
||||
package = pkgs.nerdfonts;
|
||||
name = "FiraCode Nerd Font";
|
||||
size = 10;
|
||||
};
|
||||
settings = {
|
||||
# Use xterm-256color because copying terminfo-kitty is painful.
|
||||
term = "xterm-256color";
|
||||
|
|
|
@ -5,8 +5,8 @@
|
|||
}: {
|
||||
# enable nixos wide graphical config
|
||||
imports = [
|
||||
../../modules/graphical/xserver.nix
|
||||
../../modules/graphical/steam.nix
|
||||
../../modules/optional/xserver.nix
|
||||
../../modules/optional/steam.nix
|
||||
./impermanence.nix
|
||||
];
|
||||
|
||||
|
|
Loading…
Reference in a new issue