mirror of
https://git.gay/xqtc/nixos-config
synced 2024-11-25 19:43:54 +01:00
Modularization of most of the home-manager config
This commit is contained in:
parent
9a79731723
commit
b77d9b37ae
268
home/default.nix
268
home/default.nix
|
@ -7,7 +7,11 @@
|
||||||
}: {
|
}: {
|
||||||
imports = [
|
imports = [
|
||||||
./modules/nixvim.nix
|
./modules/nixvim.nix
|
||||||
|
./modules/shell.nix
|
||||||
./modules/firefox.nix
|
./modules/firefox.nix
|
||||||
|
./modules/wm.nix
|
||||||
|
./modules/gtk.nix
|
||||||
|
./modules/home-pkgs.nix
|
||||||
#./modules/ssh.nix
|
#./modules/ssh.nix
|
||||||
];
|
];
|
||||||
home.username = "xqtc";
|
home.username = "xqtc";
|
||||||
|
@ -25,215 +29,69 @@
|
||||||
|
|
||||||
programs.joshuto = {enable = true;};
|
programs.joshuto = {enable = true;};
|
||||||
|
|
||||||
programs = {
|
|
||||||
zsh.enable = true;
|
|
||||||
atuin = {
|
|
||||||
enable = true;
|
|
||||||
enableNushellIntegration = true;
|
|
||||||
};
|
|
||||||
eza.enable = true;
|
|
||||||
nushell = {
|
|
||||||
enable = true;
|
|
||||||
shellAliases = {ls = "eza -l --icons --group-directories-first";};
|
|
||||||
extraConfig = "uwufetch --image";
|
|
||||||
configFile = {
|
|
||||||
text = ''
|
|
||||||
$env.config = {
|
|
||||||
show_banner: false
|
|
||||||
}
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
|
||||||
carapace.enable = true;
|
|
||||||
carapace.enableNushellIntegration = true;
|
|
||||||
starship = let
|
|
||||||
flavour = "mocha";
|
|
||||||
in {
|
|
||||||
enable = true;
|
|
||||||
enableNushellIntegration = true;
|
|
||||||
enableBashIntegration = true;
|
|
||||||
enableZshIntegration = true;
|
|
||||||
settings =
|
|
||||||
{
|
|
||||||
# Other config here
|
|
||||||
character = {
|
|
||||||
success_symbol = "[λ::](bold green)";
|
|
||||||
error_symbol = "[λ::](bold red)";
|
|
||||||
};
|
|
||||||
username = {
|
|
||||||
style_user = "bold pink";
|
|
||||||
format = "[$user]($style)";
|
|
||||||
show_always = true;
|
|
||||||
disabled = false;
|
|
||||||
};
|
|
||||||
hostname = {
|
|
||||||
ssh_only = false;
|
|
||||||
format = "[ 🏳️⚧️ ](bold pink)[$hostname](bold flamingo)";
|
|
||||||
disabled = false;
|
|
||||||
};
|
|
||||||
right_format = "$all";
|
|
||||||
format = ''
|
|
||||||
$username$hostname in $directory
|
|
||||||
$character'';
|
|
||||||
palette = "catppuccin_${flavour}";
|
|
||||||
}
|
|
||||||
// builtins.fromTOML (builtins.readFile (pkgs.fetchFromGitHub {
|
|
||||||
owner = "catppuccin";
|
|
||||||
repo = "starship";
|
|
||||||
rev = "5629d2356f62a9f2f8efad3ff37476c19969bd4f"; # Replace with the latest commit hash
|
|
||||||
sha256 = "sha256-nsRuxQFKbQkyEI4TXgvAjcroVdG+heKX5Pauq/4Ota0=";
|
|
||||||
}
|
|
||||||
+ /palettes/${flavour}.toml));
|
|
||||||
};
|
|
||||||
};
|
|
||||||
dconf.enable = true;
|
dconf.enable = true;
|
||||||
dconf.settings = {
|
|
||||||
"org/gnome/desktop/interface" = {
|
|
||||||
color-scheme = "prefer-dark";
|
|
||||||
cursor-theme = "Adwaita";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
gtk = {
|
|
||||||
enable = true;
|
|
||||||
theme = {
|
|
||||||
name = "Catppuccin-Mocha-Compact-Pink-Dark";
|
|
||||||
package = pkgs.catppuccin-gtk.override {
|
|
||||||
accents = ["pink"];
|
|
||||||
size = "compact";
|
|
||||||
tweaks = ["rimless"];
|
|
||||||
variant = "mocha";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
home.sessionVariables.DEFAULT_BROWSER = "${pkgs.firefox}/bin/firefox";
|
|
||||||
|
|
||||||
home.file."~/.local/share/fonts/AppleColorEmoji.ttf".source =
|
|
||||||
./config-files/AppleColorEmoji.ttf;
|
|
||||||
|
|
||||||
wayland.windowManager.hyprland = {
|
|
||||||
enable = true;
|
|
||||||
package = pkgs.hyprland;
|
|
||||||
|
|
||||||
#xwayland.enable = true;
|
|
||||||
|
|
||||||
#enableNvidiaPatches = true;
|
|
||||||
extraConfig = builtins.readFile ./config-files/hyprland.conf;
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.waybar = {
|
|
||||||
enable = true;
|
|
||||||
settings = {
|
|
||||||
mainBar = {
|
|
||||||
layer = "top";
|
|
||||||
position = "top";
|
|
||||||
height = 30;
|
|
||||||
modules-left = ["hyprland/workspaces"];
|
|
||||||
#modules-center = [ "hyprland/window" ];
|
|
||||||
modules-right = ["tray" "network" "battery" "battery#bat2" "clock"];
|
|
||||||
"tray" = {"icon-size" = 21;};
|
|
||||||
"network" = {
|
|
||||||
"format-wifi" = "NET: {essid} ({signalStrength}%) ";
|
|
||||||
"format-ethernet" = "{ifname} ";
|
|
||||||
"format-disconnected" = "";
|
|
||||||
"max-length" = 50;
|
|
||||||
};
|
|
||||||
"battery" = {
|
|
||||||
"bat" = "BAT0";
|
|
||||||
"interval" = 10;
|
|
||||||
"states" = {
|
|
||||||
"warning" = 30;
|
|
||||||
"critical" = 15;
|
|
||||||
};
|
|
||||||
"format" = " BAT IN: {capacity}%";
|
|
||||||
#"format-icons" = ''["", "", "", "", ""]'';
|
|
||||||
"max-length" = 25;
|
|
||||||
};
|
|
||||||
"battery#bat2" = {
|
|
||||||
"bat" = "BAT1";
|
|
||||||
"interval" = 10;
|
|
||||||
"states" = {
|
|
||||||
"warning" = 30;
|
|
||||||
"critical" = 15;
|
|
||||||
};
|
|
||||||
"format" = " BAT EX: {capacity}%";
|
|
||||||
#"format-icons" = ''["", "", "", "", ""]'';
|
|
||||||
"max-length" = 25;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
style = builtins.readFile ./config-files/waybar-mocha.css;
|
|
||||||
};
|
|
||||||
|
|
||||||
services.mako = {
|
|
||||||
enable = true;
|
|
||||||
font = "Hack Nerd Font 15";
|
|
||||||
backgroundColor = "#1e1e2e";
|
|
||||||
textColor = "#cdd6f4";
|
|
||||||
};
|
|
||||||
|
|
||||||
services.easyeffects = {enable = true;};
|
services.easyeffects = {enable = true;};
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
# home.packages = with pkgs; [
|
||||||
neofetch
|
# neofetch
|
||||||
uwufetch
|
# uwufetch
|
||||||
btop
|
# btop
|
||||||
iftop
|
# iftop
|
||||||
ranger
|
# ranger
|
||||||
|
#
|
||||||
obsidian
|
# obsidian
|
||||||
|
#
|
||||||
moodle-dl
|
# moodle-dl
|
||||||
|
#
|
||||||
brightnessctl
|
# brightnessctl
|
||||||
pavucontrol
|
# pavucontrol
|
||||||
|
#
|
||||||
bitwarden
|
# bitwarden
|
||||||
bitwarden-cli
|
# bitwarden-cli
|
||||||
|
#
|
||||||
sway-contrib.grimshot
|
# sway-contrib.grimshot
|
||||||
|
#
|
||||||
libnotify
|
# libnotify
|
||||||
|
#
|
||||||
strace
|
# strace
|
||||||
ltrace
|
# ltrace
|
||||||
|
#
|
||||||
nodejs
|
# nodejs
|
||||||
|
#
|
||||||
nerdfonts
|
# nerdfonts
|
||||||
vivaldi
|
# vivaldi
|
||||||
vivaldi-ffmpeg-codecs
|
# vivaldi-ffmpeg-codecs
|
||||||
|
#
|
||||||
signal-desktop
|
# signal-desktop
|
||||||
vesktop
|
# vesktop
|
||||||
discord
|
# discord
|
||||||
telegram-desktop
|
# telegram-desktop
|
||||||
webex
|
# webex
|
||||||
element-desktop
|
# element-desktop
|
||||||
|
#
|
||||||
qbittorrent
|
# qbittorrent
|
||||||
nicotine-plus
|
# nicotine-plus
|
||||||
|
#
|
||||||
via
|
# via
|
||||||
qmk
|
# qmk
|
||||||
qmk-udev-rules
|
# qmk-udev-rules
|
||||||
|
#
|
||||||
neovide
|
# neovide
|
||||||
|
#
|
||||||
yubioath-flutter
|
# yubioath-flutter
|
||||||
|
#
|
||||||
steam
|
# steam
|
||||||
protonup-qt
|
# protonup-qt
|
||||||
|
#
|
||||||
spotify
|
# spotify
|
||||||
sayonara
|
# sayonara
|
||||||
mpv
|
# mpv
|
||||||
feishin
|
# feishin
|
||||||
|
#
|
||||||
nixos-icons
|
# nixos-icons
|
||||||
swww
|
# swww
|
||||||
];
|
# ];
|
||||||
home.stateVersion = "23.11";
|
home.stateVersion = "23.11";
|
||||||
|
|
||||||
programs.home-manager.enable = true;
|
programs.home-manager.enable = true;
|
||||||
|
|
26
home/modules/gtk.nix
Normal file
26
home/modules/gtk.nix
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
inputs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
dconf.settings = {
|
||||||
|
"org/gnome/desktop/interface" = {
|
||||||
|
color-scheme = "prefer-dark";
|
||||||
|
cursor-theme = "Adwaita";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
gtk = {
|
||||||
|
enable = true;
|
||||||
|
theme = {
|
||||||
|
name = "Catppuccin-Mocha-Compact-Pink-Dark";
|
||||||
|
package = pkgs.catppuccin-gtk.override {
|
||||||
|
accents = ["pink"];
|
||||||
|
size = "compact";
|
||||||
|
tweaks = ["rimless"];
|
||||||
|
variant = "mocha";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
66
home/modules/home-pkgs.nix
Normal file
66
home/modules/home-pkgs.nix
Normal file
|
@ -0,0 +1,66 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
inputs,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
neofetch
|
||||||
|
uwufetch
|
||||||
|
btop
|
||||||
|
iftop
|
||||||
|
ranger
|
||||||
|
|
||||||
|
obsidian
|
||||||
|
|
||||||
|
moodle-dl
|
||||||
|
|
||||||
|
brightnessctl
|
||||||
|
pavucontrol
|
||||||
|
|
||||||
|
bitwarden
|
||||||
|
bitwarden-cli
|
||||||
|
|
||||||
|
sway-contrib.grimshot
|
||||||
|
|
||||||
|
libnotify
|
||||||
|
|
||||||
|
strace
|
||||||
|
ltrace
|
||||||
|
|
||||||
|
nodejs
|
||||||
|
|
||||||
|
nerdfonts
|
||||||
|
vivaldi
|
||||||
|
vivaldi-ffmpeg-codecs
|
||||||
|
|
||||||
|
signal-desktop
|
||||||
|
vesktop
|
||||||
|
discord
|
||||||
|
telegram-desktop
|
||||||
|
webex
|
||||||
|
element-desktop
|
||||||
|
|
||||||
|
qbittorrent
|
||||||
|
nicotine-plus
|
||||||
|
|
||||||
|
via
|
||||||
|
qmk
|
||||||
|
qmk-udev-rules
|
||||||
|
|
||||||
|
neovide
|
||||||
|
|
||||||
|
yubioath-flutter
|
||||||
|
|
||||||
|
steam
|
||||||
|
protonup-qt
|
||||||
|
|
||||||
|
spotify
|
||||||
|
sayonara
|
||||||
|
mpv
|
||||||
|
feishin
|
||||||
|
|
||||||
|
nixos-icons
|
||||||
|
swww
|
||||||
|
];
|
||||||
|
}
|
67
home/modules/wm.nix
Normal file
67
home/modules/wm.nix
Normal file
|
@ -0,0 +1,67 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
inputs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
wayland.windowManager.hyprland = {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.hyprland;
|
||||||
|
|
||||||
|
#xwayland.enable = true;
|
||||||
|
|
||||||
|
#enableNvidiaPatches = true;
|
||||||
|
extraConfig = builtins.readFile ../config-files/hyprland.conf;
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.waybar = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
mainBar = {
|
||||||
|
layer = "top";
|
||||||
|
position = "top";
|
||||||
|
height = 30;
|
||||||
|
modules-left = ["hyprland/workspaces"];
|
||||||
|
#modules-center = [ "hyprland/window" ];
|
||||||
|
modules-right = ["tray" "network" "battery" "battery#bat2" "clock"];
|
||||||
|
"tray" = {"icon-size" = 21;};
|
||||||
|
"network" = {
|
||||||
|
"format-wifi" = "NET: {essid} ({signalStrength}%) ";
|
||||||
|
"format-ethernet" = "{ifname} ";
|
||||||
|
"format-disconnected" = "";
|
||||||
|
"max-length" = 50;
|
||||||
|
};
|
||||||
|
"battery" = {
|
||||||
|
"bat" = "BAT0";
|
||||||
|
"interval" = 10;
|
||||||
|
"states" = {
|
||||||
|
"warning" = 30;
|
||||||
|
"critical" = 15;
|
||||||
|
};
|
||||||
|
"format" = " BAT IN: {capacity}%";
|
||||||
|
#"format-icons" = ''["", "", "", "", ""]'';
|
||||||
|
"max-length" = 25;
|
||||||
|
};
|
||||||
|
"battery#bat2" = {
|
||||||
|
"bat" = "BAT1";
|
||||||
|
"interval" = 10;
|
||||||
|
"states" = {
|
||||||
|
"warning" = 30;
|
||||||
|
"critical" = 15;
|
||||||
|
};
|
||||||
|
"format" = " BAT EX: {capacity}%";
|
||||||
|
#"format-icons" = ''["", "", "", "", ""]'';
|
||||||
|
"max-length" = 25;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
style = builtins.readFile ../config-files/waybar-mocha.css;
|
||||||
|
};
|
||||||
|
|
||||||
|
services.mako = {
|
||||||
|
enable = true;
|
||||||
|
font = "Hack Nerd Font 15";
|
||||||
|
backgroundColor = "#1e1e2e";
|
||||||
|
textColor = "#cdd6f4";
|
||||||
|
};
|
||||||
|
}
|
Loading…
Reference in a new issue