stylix, formatting

This commit is contained in:
tristan 2023-12-11 09:26:41 +00:00
parent d3649cf6e2
commit 3409811d55
13 changed files with 376 additions and 166 deletions

256
flake.lock generated
View file

@ -1,5 +1,167 @@
{ {
"nodes": { "nodes": {
"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"
}
},
"base16-alacritty": {
"flake": false,
"locked": {
"lastModified": 1674275109,
"narHash": "sha256-Adwx9yP70I6mJrjjODOgZJjt4OPPe8gJu7UuBboXO4M=",
"owner": "aarowill",
"repo": "base16-alacritty",
"rev": "63d8ae5dfefe5db825dd4c699d0cdc2fc2c3eaf7",
"type": "github"
},
"original": {
"owner": "aarowill",
"repo": "base16-alacritty",
"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": 1696727917,
"narHash": "sha256-FVrbPk+NtMra0jtlC5oxyNchbm8FosmvXIatkRbYy1g=",
"owner": "tinted-theming",
"repo": "base16-helix",
"rev": "dbe1480d99fe80f08df7970e471fac24c05f2ddb",
"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": 1663659192,
"narHash": "sha256-uJvaYYDMXvoo0fhBZUhN8WBXeJ87SRgof6GEK2efFT0=",
"owner": "chriskempson",
"repo": "base16-vim",
"rev": "3be3cd82cd31acfcab9a41bad853d9c68d30478d",
"type": "github"
},
"original": {
"owner": "chriskempson",
"repo": "base16-vim",
"type": "github"
}
},
"flake-compat": {
"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"
}
},
"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"
}
},
"home-manager": { "home-manager": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@ -21,6 +183,27 @@
"type": "github" "type": "github"
} }
}, },
"home-manager_2": {
"inputs": {
"nixpkgs": [
"stylix",
"nixpkgs"
]
},
"locked": {
"lastModified": 1700847865,
"narHash": "sha256-uWaOIemGl9LF813MW0AEgCBpKwFo2t1Wv3BZc6e5Frw=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "8cedd63eede4c22deb192f1721dd67e7460e1ebe",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "home-manager",
"type": "github"
}
},
"hyprland": { "hyprland": {
"inputs": { "inputs": {
"hyprland-protocols": "hyprland-protocols", "hyprland-protocols": "hyprland-protocols",
@ -30,11 +213,11 @@
"xdph": "xdph" "xdph": "xdph"
}, },
"locked": { "locked": {
"lastModified": 1700051522, "lastModified": 1702236723,
"narHash": "sha256-u9k9O8oN5udH3ReAjJKribuJD8jHGHu5MDkJAXpqplo=", "narHash": "sha256-zIEnimM1vhsFkz+Kubb8kJ6YgHuLe56pALOSJc6CMVY=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "Hyprland", "repo": "Hyprland",
"rev": "9e3dccca76ca3af4e96ac80c2ddef4774dc1354b", "rev": "167f2ed3b2bb18ceeabb831ac80b655ef8e16867",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -70,11 +253,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1698134075, "lastModified": 1700612854,
"narHash": "sha256-foCD+nuKzfh49bIoiCBur4+Fx1nozo+4C/6k8BYk4sg=", "narHash": "sha256-yrQ8osMD+vDLGFX7pcwsY/Qr5PUd6OmDMYJZzZi0+zc=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "8efd5d1e283604f75a808a20e6cde0ef313d07d4", "rev": "19cbff58383a4ae384dea4d1d0c823d72b49d614",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -99,11 +282,56 @@
"type": "indirect" "type": "indirect"
} }
}, },
"nixpkgs_3": {
"locked": {
"lastModified": 1700856099,
"narHash": "sha256-RnEA7iJ36Ay9jI0WwP+/y4zjEhmeN6Cjs9VOFBH7eVQ=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "0bd59c54ef06bc34eca01e37d689f5e46b3fe2f1",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"root": { "root": {
"inputs": { "inputs": {
"home-manager": "home-manager", "home-manager": "home-manager",
"hyprland": "hyprland", "hyprland": "hyprland",
"nixpkgs": "nixpkgs_2" "nixpkgs": "nixpkgs_2",
"stylix": "stylix"
}
},
"stylix": {
"inputs": {
"base16": "base16",
"base16-alacritty": "base16-alacritty",
"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",
"home-manager": "home-manager_2",
"nixpkgs": "nixpkgs_3"
},
"locked": {
"lastModified": 1702242258,
"narHash": "sha256-DSiwYD1DZY+YJALahnCVKacWk2AGy+s1pd3Z07tEF/U=",
"owner": "danth",
"repo": "stylix",
"rev": "b5ad31b710294038f9ed70efdf787db6a82d7327",
"type": "github"
},
"original": {
"owner": "danth",
"repo": "stylix",
"type": "github"
} }
}, },
"systems": { "systems": {
@ -125,18 +353,18 @@
"flake": false, "flake": false,
"locked": { "locked": {
"host": "gitlab.freedesktop.org", "host": "gitlab.freedesktop.org",
"lastModified": 1699292815, "lastModified": 1701368958,
"narHash": "sha256-HXu98PyBMKEWLqiTb8viuLDznud/SdkdJsx5A5CWx7I=", "narHash": "sha256-7kvyoA91etzVEl9mkA/EJfB6z/PltxX7Xc4gcr7/xlo=",
"owner": "wlroots", "owner": "wlroots",
"repo": "wlroots", "repo": "wlroots",
"rev": "5de9e1a99d6642c2d09d589aa37ff0a8945dcee1", "rev": "5d639394f3e83b01596dcd166a44a9a1a2583350",
"type": "gitlab" "type": "gitlab"
}, },
"original": { "original": {
"host": "gitlab.freedesktop.org", "host": "gitlab.freedesktop.org",
"owner": "wlroots", "owner": "wlroots",
"repo": "wlroots", "repo": "wlroots",
"rev": "5de9e1a99d6642c2d09d589aa37ff0a8945dcee1", "rev": "5d639394f3e83b01596dcd166a44a9a1a2583350",
"type": "gitlab" "type": "gitlab"
} }
}, },
@ -156,11 +384,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1697981233, "lastModified": 1700508250,
"narHash": "sha256-y8q4XUwx+gVK7i2eLjfR32lVo7TYvEslyzrmzYEaPZU=", "narHash": "sha256-X4o/mifI7Nhu0UKYlxx53wIC+gYDo3pVM9L2u3PE2bE=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "xdg-desktop-portal-hyprland", "repo": "xdg-desktop-portal-hyprland",
"rev": "22e7a65ff9633e1dedfa5317fdffc49f68de2ff2", "rev": "eb120ff25265ecacd0fc13d7dab12131b60d0f47",
"type": "github" "type": "github"
}, },
"original": { "original": {

View file

@ -10,9 +10,10 @@
hyprland = { hyprland = {
url = "github:hyprwm/Hyprland"; url = "github:hyprwm/Hyprland";
}; };
stylix.url = "github:danth/stylix";
}; };
outputs = { nixpkgs, home-manager, hyprland, ... } @inputs : outputs = { nixpkgs, home-manager, hyprland, stylix, ... } @inputs :
let let
system = "x86_64-linux"; system = "x86_64-linux";
lib = nixpkgs.lib; lib = nixpkgs.lib;
@ -24,10 +25,10 @@
{ {
nixosConfigurations = { nixosConfigurations = {
zenix = mkConf "zenix" { zenix = mkConf "zenix" {
inherit inputs nixpkgs system user userName home-manager hyprland; inherit inputs nixpkgs system user userName home-manager;
}; };
FCS-Tristan-Nixbook = mkConf "work" { FCS-Tristan-Nixbook = mkConf "work" {
inherit inputs nixpkgs system user userName home-manager hyprland; inherit inputs nixpkgs system user userName home-manager;
work = true; work = true;
}; };
}; };

View file

@ -18,6 +18,8 @@ let
menu = "${config.programs.menu.package}${config.programs.menu.dmenuCommand}"; menu = "${config.programs.menu.package}${config.programs.menu.dmenuCommand}";
fileman = "${pkgs.pcmanfm}/bin/pcmanfm"; fileman = "${pkgs.pcmanfm}/bin/pcmanfm";
gawk = "${pkgs.gawk}/bin/awk"; gawk = "${pkgs.gawk}/bin/awk";
glow = "${pkgs.glow}/bin/glow";
ffmpegthumbnailer = "${pkgs.ffmpegthumbnailer}/bin/ffmpegthumbnailer";
}; };
lf-sixel = pkgs.callPackage ../custom/lf-sixel/. { }; lf-sixel = pkgs.callPackage ../custom/lf-sixel/. { };
in in
@ -76,10 +78,6 @@ in
gtk = { gtk = {
enable = true; enable = true;
theme = {
name = "Materia-dark";
package = pkgs.materia-theme;
};
iconTheme = { iconTheme = {
name = "Vimix-Doder"; name = "Vimix-Doder";
package = pkgs.vimix-icon-theme; package = pkgs.vimix-icon-theme;
@ -117,34 +115,6 @@ in
pkgs.mpvScripts.mpris pkgs.mpvScripts.mpris
]; ];
programs.foot.settings = {
main = {
term = "xterm-256color";
font = "mono:size=12";
};
colors = {
foreground = "abb2bf";
background = "000000";
regular0 = "222222";
regular1 = "eb3a26";
regular2 = "7fbc59";
regular3 = "e9db65";
regular4 = "4781d1";
regular5 = "7d74bb";
regular6 = "50a2bd";
regular7 = "dcdccc";
bright0 = "666666";
bright1 = "e15d4e";
bright2 = "8fbd73";
bright3 = "e3d97e";
bright4 = "6791ce";
bright5 = "8f88be";
bright6 = "6caabf";
bright7 = "ffffff";
alpha = 0.8;
};
};
programs.rbw = { programs.rbw = {
enable = true; enable = true;
settings = { settings = {
@ -209,75 +179,77 @@ in
}}''; }}'';
}; };
programs.lf.previewer.source = pkgs.writeShellScript "preview" '' programs.lf.previewer.source = pkgs.writeShellScript "preview" ''
image () { image () {
${my-deps.chafa} "$1" -f sixel -s "$(($2/2))x$3" | sed 's/#/\n#/g' echo "$1"
${ my-deps.exiftool } "$1" ${my-deps.chafa} "$1" -f sixel -s "$(($2/2))x$3" | sed 's/#/\n#/g'
} ${ my-deps.exiftool } "$1"
}
batted () { batted () {
cat "$@" cat "$@"
} }
CACHE="$HOME/.cache/lf/thumbnail.$(stat --printf '%n\0%i\0%F\0%s\0%W\0%Y' -- "$(readlink -f "$1")" | sha256sum | awk '{print $1}'))" mkdir -p "$HOME/.cache/lf"
CACHE="$HOME/.cache/lf/thumbnail.$(stat --printf '%n\0%i\0%F\0%s\0%W\0%Y' -- "$(readlink -f "$1")" | sha256sum | awk '{print $1}'))"
case "$(printf "%s\n" "$(readlink -f "$1")" | awk '{print tolower($0)}')" in case "$(printf "%s\n" "$(readlink -f "$1")" | awk '{print tolower($0)}')" in
*.tgz|*.tar.gz) tar tzf "$1" ;; *.tgz|*.tar.gz) tar tzf "$1" ;;
*.tar.bz2|*.tbz2) tar tjf "$1" ;; *.tar.bz2|*.tbz2) tar tjf "$1" ;;
*.tar.txz|*.txz) xz --list "$1" ;; *.tar.txz|*.txz) xz --list "$1" ;;
*.tar) tar tf "$1" ;; *.tar) tar tf "$1" ;;
*.zip|*.jar|*.war|*.ear|*.oxt) unzip -l "$1" ;; *.zip|*.jar|*.war|*.ear|*.oxt) unzip -l "$1" ;;
*.rar) unrar l "$1" ;; *.rar) unrar l "$1" ;;
*.md) glow -s dark "$1" ;; *.md) ${my-deps.glow} -s dark "$1" ;;
*.7z) 7z l "$1" ;; *.7z) 7z l "$1" ;;
*.[1-8]) man "$1" | col -b ;; *.[1-8]) man "$1" | col -b ;;
*.o) nm "$1";; *.o) nm "$1";;
*.torrent) transmission-show "$1" ;; *.torrent) transmission-show "$1" ;;
*.iso) iso-info --no-header -l "$1" ;; *.iso) iso-info --no-header -l "$1" ;;
*.odt|*.ods|*.odp|*.sxw) odt2txt "$1" ;; *.odt|*.ods|*.odp|*.sxw) odt2txt "$1" ;;
*.doc) catdoc "$1" ;; *.doc) catdoc "$1" ;;
*.docx) docx2txt "$1" - ;; *.docx) docx2txt "$1" - ;;
*.xml|*.html) w3m -dump "$1";; *.xml|*.html) w3m -dump "$1";;
*.xls|*.xlsx) *.xls|*.xlsx)
ssconvert --export-type=Gnumeric_stf:stf_csv "$1" "fd://1" | batted --language=csv ssconvert --export-type=Gnumeric_stf:stf_csv "$1" "fd://1" | batted --language=csv
;; ;;
*.wav|*.mp3|*.flac|*.m4a|*.wma|*.ape|*.ac3|*.og[agx]|*.spx|*.opus|*.as[fx]|*.mka) *.wav|*.mp3|*.flac|*.m4a|*.wma|*.ape|*.ac3|*.og[agx]|*.spx|*.opus|*.as[fx]|*.mka)
${ my-deps.exiftool } "$1" ${ my-deps.exiftool } "$1"
;; ;;
*.pdf) *.pdf)
[ ! -f "$CACHE.jpg" ] && \ [ ! -f "$CACHE.jpg" ] && \
pdftoppm -jpeg -f 1 -singlefile "$1" "$CACHE" pdftoppm -jpeg -f 1 -singlefile "$1" "$CACHE"
image "$CACHE.jpg" "$2" "$3" "$4" "$5" image "$CACHE.jpg" "$2" "$3" "$4" "$5"
;; ;;
*.epub) *.epub)
[ ! -f "$CACHE" ] && \ [ ! -f "$CACHE" ] && \
epub-thumbnailer "$1" "$CACHE" 1024 epub-thumbnailer "$1" "$CACHE" 1024
image "$CACHE" "$2" "$3" "$4" "$5" image "$CACHE" "$2" "$3" "$4" "$5"
;; ;;
*.cbz|*.cbr|*.cbt) *.cbz|*.cbr|*.cbt)
[ ! -f "$CACHE" ] && \ [ ! -f "$CACHE" ] && \
comicthumb "$1" "$CACHE" 1024 comicthumb "$1" "$CACHE" 1024
image "$CACHE" "$2" "$3" "$4" "$5" image "$CACHE" "$2" "$3" "$4" "$5"
;; ;;
*.avi|*.mp4|*.wmv|*.dat|*.3gp|*.ogv|*.mkv|*.mpg|*.mpeg|*.vob|*.fl[icv]|*.m2v|*.mov|*.webm|*.ts|*.mts|*.m4v|*.r[am]|*.qt|*.divx) *.avi|*.mp4|*.wmv|*.dat|*.3gp|*.ogv|*.mkv|*.mpg|*.mpeg|*.vob|*.fl[icv]|*.m2v|*.mov|*.webm|*.ts|*.mts|*.m4v|*.r[am]|*.qt|*.divx)
[ ! -f "$CACHE.jpg" ] && \ [ ! -f "$CACHE.jpg" ] && \
ffmpegthumbnailer -i "$1" -o "$CACHE.jpg" -s 0 -q 5 ${my-deps.ffmpegthumbnailer} -i "$1" -o "$CACHE.jpg" -s 0 -q 5
image "$CACHE.jpg" "$2" "$3" "$4" "$5" image "$CACHE.jpg" "$2" "$3" "$4" "$5"
;; ;;
*.bmp|*.jpg|*.jpeg|*.png|*.xpm|*.webp|*.jfif) *.bmp|*.jpg|*.jpeg|*.png|*.xpm|*.webp|*.jfif)
image "$1" "$2" "$3" "$4" "$5" image "$1" "$2" "$3" "$4" "$5"
;; ;;
*.svg) *.svg)
[ ! -f "$CACHE.jpg" ] && \ [ ! -f "$CACHE.jpg" ] && \
convert "$1" "$CACHE.jpg" convert "$1" "$CACHE.jpg"
image "$CACHE.jpg" "$2" "$3" "$4" "$5" image "$CACHE.jpg" "$2" "$3" "$4" "$5"
;; ;;
*.ino) *.ino)
batted --language=cpp "$1" batted --language=cpp "$1"
;; ;;
*) *)
batted "$1" batted "$1"
;; ;;
esac esac
''; '';
home.file.".icons/default".source = "${pkgs.vanilla-dmz}/share/icons/Vanilla-DMZ"; home.file.".icons/default".source = "${pkgs.vanilla-dmz}/share/icons/Vanilla-DMZ";
@ -315,20 +287,6 @@ in
} }
] ]
''; '';
systemd.user.services = {
snapclient = {
Unit = {
Description = "Snapclient";
};
Service = {
ExecStart = "${pkgs.snapcast}/bin/snapclient -h music.local";
};
Install = {
WantedBy = ["graphical-session.target"];
};
};
};
services.kdeconnect = { services.kdeconnect = {
enable = true; enable = true;
indicator = true; indicator = true;

View file

@ -73,13 +73,13 @@ user: { config, pkgs, lib, ... }:
services.xserver = { services.xserver = {
layout = lib.mkDefault "gb"; layout = lib.mkDefault "gb";
xkbOptions = "caps:escape"; xkbOptions = "caps:escape";
# extraLayouts = { # extraLayouts = {
# mine = { # mine = {
# description = "my layout"; # description = "my layout";
# languages = [ "eng" ]; # languages = [ "eng" ];
# symbolsFile = ./xkblayout; # symbolsFile = ./xkblayout;
# }; # };
# }; # };
}; };
hardware.opentabletdriver.enable = true; hardware.opentabletdriver.enable = true;

View file

@ -14,7 +14,7 @@
} }
{ {
name = "HDMI-A-1"; name = "HDMI-A-1";
resolution = {x=1920;y=1080;freq=60;}; resolution = { x = 1920; y = 1080; freq = 60; };
position = { position = {
x = 1920; x = 1920;
y = 0; y = 0;

BIN
images/demonslayer.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 MiB

BIN
images/nier.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 MiB

View file

@ -1,6 +1,5 @@
{ user { user
, name , name
, hyprland
, work ? false , work ? false
, displays ? [ ] , displays ? [ ]
, userName , userName
@ -35,5 +34,6 @@
roles.work.enable = work; roles.work.enable = work;
roles.personal.enable = !work; roles.personal.enable = !work;
roles.mpd.enable = true; roles.mpd.enable = true;
programs.editor.neovim = true;
} }

View file

@ -4,7 +4,6 @@ name:
, home-manager , home-manager
, system , system
, user , user
, hyprland
, laptop ? false , laptop ? false
, work ? false , work ? false
, userName , userName
@ -18,7 +17,7 @@ nixpkgs.lib.nixosSystem rec {
modules = [ modules = [
({inputs, pkgs, ...}: { ({ inputs, pkgs, ... }: {
programs.hyprland = { programs.hyprland = {
enable = true; enable = true;
package = inputs.hyprland.packages.${pkgs.system}.hyprland; package = inputs.hyprland.packages.${pkgs.system}.hyprland;
@ -30,14 +29,16 @@ nixpkgs.lib.nixosSystem rec {
trusted-public-keys = [ "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc=" ]; trusted-public-keys = [ "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc=" ];
}; };
} }
inputs.stylix.nixosModules.stylix
({ pkgs, ... }: {
stylix.image = ../images/demonslayer.png;
stylix.base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-dark-hard.yaml";
})
home-manager.nixosModules.home-manager home-manager.nixosModules.home-manager
{ {
home-manager.useGlobalPkgs = true; home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true; home-manager.useUserPackages = true;
home-manager.users.${user}.imports = [
hyprland.homeManagerModules.default
];
} }
(import ./home.nix { inherit user userName name hyprland laptop work; }) (import ./home.nix { inherit inputs user userName name laptop work; })
]; ];
} }

View file

@ -5,7 +5,7 @@ let
pkg = editor.package; pkg = editor.package;
terminal = config.programs.terminal.package; terminal = config.programs.terminal.package;
termcmd = "${terminal}/bin/${terminal.pname}"; termcmd = "${terminal}/bin/${terminal.pname}";
menu = config.programs.menu.package+config.programs.menu.dmenuCommand; menu = config.programs.menu.package + config.programs.menu.dmenuCommand;
in in
{ {
options.programs = { options.programs = {
@ -23,21 +23,26 @@ in
programs.vscode = { programs.vscode = {
enable = true; enable = true;
package = editor.package; package = editor.package;
extensions = with pkgs; [ extensions =
vscode-extensions.asvetliakov.vscode-neovim if editor.neovim then with pkgs; [
]; vscode-extensions.asvetliakov.vscode-neovim
] else [ ];
userSettings = { userSettings = {
"vscode-neovim.neovimExecutablePaths.linux" = "${pkgs.neovim}/bin/nvim";
"keyboard.dispatch" = "keyCode"; "keyboard.dispatch" = "keyCode";
"terminal.integrated.sendKeybindingsToShell" = true; "terminal.integrated.sendKeybindingsToShell" = true;
"aws.telemetry" = false; "aws.telemetry" = false;
"gitlens.telemetry.enabled" = false; "gitlens.telemetry.enabled" = false;
"redhat.telemetry.enabled" = false; "redhat.telemetry.enabled" = false;
"cSpell.language" = "en,en-GB"; "cSpell.language" = "en,en-GB";
}; } // (if editor.neovim then {
"vscode-neovim.neovimExecutablePaths.linux" = "${pkgs.neovim}/bin/nvim";
"extensions.experimental.affinity" = {
"asvetliakov.vscode-neovim" = 1;
};
} else { });
}; };
programs.neovim = { programs.neovim = mkIf editor.neovim {
enable = true; enable = true;
defaultEditor = true; defaultEditor = true;
coc = { coc = {
@ -63,6 +68,7 @@ in
vnoremap * y/\V<C-R>=escape(@",'/\')<CR><CR> vnoremap * y/\V<C-R>=escape(@",'/\')<CR><CR>
vnoremap <C-R> "ry:%s/<C-R>=escape(@r,'/\')<CR> vnoremap <C-R> "ry:%s/<C-R>=escape(@r,'/\')<CR>
vnoremap A :norm A vnoremap A :norm A
noremap <C-S-I> :CocCommand editor.action.formatDocument<CR>
set number set number
set rnu set rnu
set ignorecase set ignorecase
@ -97,7 +103,7 @@ in
esac esac
''; '';
install = false; install = false;
hotkeys = [{key = "C";}]; hotkeys = [{ key = "C"; }];
}]; }];
}; };

View file

@ -6,7 +6,7 @@ in
{ {
options.roles.mpd = { options.roles.mpd = {
enable = mkEnableOption "setup mpd client"; enable = mkEnableOption "setup mpd client";
host = mkOption {default = "music.local";}; host = mkOption { default = "192.168.1.2"; };
}; };
config = mkIf cfg.enable { config = mkIf cfg.enable {
@ -27,6 +27,21 @@ in
enable = true; enable = true;
mpd.host = cfg.host; mpd.host = cfg.host;
}; };
programs.waybar.settings.mainBar.mpd.server = cfg.host;
systemd.user.services = {
snapclient = {
Unit = {
Description = "Snapclient";
};
Service = {
ExecStart = "${pkgs.snapcast}/bin/snapclient -h ${cfg.host}";
};
Install = {
WantedBy = [ "graphical-session.target" ];
};
};
};
}]; }];
}; };
} }

View file

@ -16,17 +16,20 @@ with lib;
roles.dev.enable = true; roles.dev.enable = true;
roles.gamer.enable = true; roles.gamer.enable = true;
i18n.defaultLocale = "eo.UTF-8";
i18n.supportedLocales = [ i18n.supportedLocales = [
"eo/UTF-8" "eo/UTF-8"
"en_US.UTF-8/UTF-8"
"en_GB.UTF-8/UTF-8" "en_GB.UTF-8/UTF-8"
"en_US.UTF-8/UTF-8"
]; ];
services.xserver.layout = "epo";
home-manager.users.${user}.imports = [{ home-manager.users.${user}.imports = [{
services.nextcloud-client.enable = true; services.nextcloud-client.enable = true;
services.gnome-keyring.enable = true; services.gnome-keyring.enable = true;
home.language = {
base = "eo.UTF-8";
};
home.packages = with pkgs; [ home.packages = with pkgs; [
godot_4 godot_4
ardour ardour
@ -34,6 +37,7 @@ with lib;
musescore musescore
jellyfin-media-player jellyfin-media-player
monero-gui monero-gui
electrum
xmrig xmrig
transmission-remote-gtk transmission-remote-gtk
krita krita

View file

@ -238,9 +238,6 @@ in
paused = ""; paused = "";
}; };
}; };
mpd = {
server = "music.local";
};
battery = { battery = {
format = "{icon} {capacity}%"; format = "{icon} {capacity}%";
format-icons = [ "🤏" "🪫" "🔋" "🔋" ]; format-icons = [ "🤏" "🪫" "🔋" "🔋" ];