This commit is contained in:
Seraphim R. Pardee 2025-03-26 22:51:40 -04:00
parent ae0fc9d84b
commit 8227a9ddbb
12 changed files with 148 additions and 75 deletions

View File

@ -1,5 +1,6 @@
#!/bin/sh #!/bin/sh
dconf write /org/gtk/settings/file-chooser/clock-format "'12h'"
sudo cp -R nixos/* /etc/nixos/ sudo cp -R nixos/* /etc/nixos/
#nix flake update --flake /etc/nixos #nix flake update --flake /etc/nixos
sudo nixos-rebuild switch --flake /etc/nixos#nixos --commit-lock-file --upgrade --show-trace sudo nixos-rebuild switch --flake /etc/nixos#nixos --commit-lock-file --upgrade --show-trace

View File

@ -17,12 +17,14 @@ monitor = HDMI-A-2, 2560x1440@60, auto-left, 1
# Set programs that you use # Set programs that you use
$terminal = kitty $terminal = kitty
$fileManager = dolphin $fileManager = dolphin
$menu = rofi -show run $menu = ~/.config/rofi/launchers/type-1/launcher.sh
env = XCURSOR_SIZE,30; $cursor = catppuccin-macchiato-mauve-cursors
env = XCURSOR_THEME,"McMojave Cursors"; exec-once = hyprctl setcursor "$cursor" 28
env = HYPRCURSOR_SIZE,30; exec-once = dconf write /org/gnome/desktop/interface/cursor-size 28
env = HYPRCURSOR_THEME,"McMojave"; exec-once = dconf write /org/gnome/desktop/interface/cursor-theme "$cursor"
env = HYPRCURSOR_THEME,"$cursor"
env = XCURSOR_THEME,"$cursor"
################# #################
### AUTOSTART ### ### AUTOSTART ###
@ -52,8 +54,8 @@ general {
border_size = 2 border_size = 2
# https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors # https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
col.active_border = rgba(88c0d0ee) rgba(a3be8cee) 45deg col.active_border = rgba(c6a0f6ee) rgba(f0c6c6ee) 45deg
col.inactive_border = rgba(4c566aaa) col.inactive_border = rgba(363a4faa)
# Set to true enable resizing windows by clicking and dragging on borders and gaps # Set to true enable resizing windows by clicking and dragging on borders and gaps
resize_on_border = false resize_on_border = false
@ -239,10 +241,14 @@ bindel = ,XF86MonBrightnessUp, exec, brightnessctl s 10%+
bindel = ,XF86MonBrightnessDown, exec, brightnessctl s 10%- bindel = ,XF86MonBrightnessDown, exec, brightnessctl s 10%-
# Requires playerctl # Requires playerctl
bindl = , XF86AudioNext, exec, playerctl next bindl = , XF86AudioNext, exec, playerctl -p Plexamp next
bindl = , XF86AudioPause, exec, playerctl play-pause bindl = , XF86AudioPause, exec, playerctl -p Plexamp play-pause
bindl = , XF86AudioPlay, exec, playerctl play-pause bindl = , XF86AudioPlay, exec, playerctl -p Plexamp play-pause
bindl = , XF86AudioPrev, exec, playerctl previous bindl = , XF86AudioPrev, exec, playerctl -p Plexamp previous
bind = , Print, exec, grimblast --notify --cursor copy area
bind = CTRL, Print, exec, grimblast --notify --cursor copy output
bind = SHIFT, Print, exec, grimblast --notify --cursor copy screen
############################## ##############################
### WINDOWS AND WORKSPACES ### ### WINDOWS AND WORKSPACES ###
@ -263,4 +269,4 @@ windowrulev2 = suppressevent maximize, class:.*
# Fix some dragging issues with XWayland # Fix some dragging issues with XWayland
windowrulev2 = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0 windowrulev2 = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0
debug:disable_logs = false debug:disable_logs = false

View File

@ -1,7 +1,7 @@
# BACKGROUND # BACKGROUND
background { background {
monitor = monitor =
path = ~/img/nixos.png path = ~/img/nix-black-4k.png
blur_passes = 3 blur_passes = 3
contrast = 0.8916 contrast = 0.8916
brightness = 0.8172 brightness = 0.8172

View File

@ -1,22 +1,29 @@
@define-color cursor #E5E9F0; @define-color rosewater #f4dbd6;
@define-color background #2E3440; @define-color flamingo #f0c6c6;
@define-color foreground #E5E9F0; @define-color pink #f5bde6;
@define-color color0 #2E3440; @define-color mauve #c6a0f6;
@define-color color1 #3B4252; @define-color red #ed8796;
@define-color color2 #434C5E; @define-color maroon #ee99a0;
@define-color color3 #4C566A; @define-color peach #f5a97f;
@define-color color4 #D8DEE9; @define-color yellow #eed49f;
@define-color color5 #E5E9F0; @define-color green #a6da95;
@define-color color6 #ECEFF4; @define-color teal #8bd5ca;
@define-color color7 #8FBCBB; @define-color sky #91d7e3;
@define-color color8 #BF616A; @define-color sapphire #7dc4e4;
@define-color color9 #D08770; @define-color blue #8aadf4;
@define-color color10 #EBCB8B; @define-color lavender #b7bdf8;
@define-color color11 #A3BE8C; @define-color text #cad3f5;
@define-color color12 #88C0D0; @define-color subtext1 #b8c0e0;
@define-color color13 #81A1C1; @define-color subtext0 #a5adcb;
@define-color color14 #B48EAD; @define-color overlay2 #939ab7;
@define-color color15 #8E9197; @define-color overlay1 #8087a2;
@define-color overlay0 #6e738d;
@define-color surface2 #5b6078;
@define-color surface1 #494d64;
@define-color surface0 #363a4f;
@define-color base #24273a;
@define-color mantle #1e2030;
@define-color crust #181926;
* { * {
font-size:13px; font-size:13px;
@ -29,48 +36,48 @@ window#waybar{
padding:7px; padding:7px;
margin:10 0 5 10; margin:10 0 5 10;
border-radius:10px; border-radius:10px;
border: 1px solid alpha(@color7,.6); border: 1px solid alpha(@mauve,.6);
background: alpha(@background,.6); background: alpha(@base,.6);
box-shadow: 0px 0px 2px rgba(0, 0, 0, .6); box-shadow: 0px 0px 2px rgba(0, 0, 0, .6);
} }
.modules-center { .modules-center {
padding:7px; padding:7px;
margin:10 0 5 0; margin:10 0 5 0;
border-radius:10px; border-radius:10px;
border: 1px solid alpha(@color7,.6); border: 1px solid alpha(@mauve,.6);
background: alpha(@background,.6); background: alpha(@base,.6);
box-shadow: 0px 0px 2px rgba(0, 0, 0, .6); box-shadow: 0px 0px 2px rgba(0, 0, 0, .6);
} }
.modules-right { .modules-right {
padding:7px; padding:7px;
margin: 10 10 5 0; margin: 10 10 5 0;
border-radius:10px; border-radius:10px;
border: 1px solid alpha(@color7,.6); border: 1px solid alpha(@mauve,.6);
background: alpha(@background,.6); background: alpha(@base,.6);
box-shadow: 0px 0px 2px rgba(0, 0, 0, .6); box-shadow: 0px 0px 2px rgba(0, 0, 0, .6);
} }
tooltip { tooltip {
background:@background; background:@base;
color: @color7; color: @rosewater;
} }
#clock:hover, #custom-pacman:hover, #custom-notification:hover,#bluetooth:hover,#network:hover,#battery:hover, #cpu:hover,#memory:hover,#temperature:hover{ #clock:hover, #custom-pacman:hover, #custom-notification:hover,#bluetooth:hover,#network:hover,#battery:hover, #cpu:hover,#memory:hover,#temperature:hover{
transition: all .3s ease; transition: all .3s ease;
color:@color11; color:@rosewater;
} }
#custom-notification { #custom-notification {
padding: 0px 10px; padding: 0px 10px;
transition: all .3s ease; transition: all .3s ease;
color:@color7; color:@rosewater;
} }
#clock{ #clock{
padding: 0px 10px; padding: 0px 10px;
color:@color5; color:@text;
transition: all .3s ease; transition: all .3s ease;
} }
#custom-pacman{ #custom-pacman{
padding: 0px 10px; padding: 0px 10px;
transition: all .3s ease; transition: all .3s ease;
color:@color7; color:@rosewater;
} }
#workspaces { #workspaces {
@ -79,17 +86,17 @@ tooltip {
#workspaces button { #workspaces button {
all:unset; all:unset;
padding: 0px 10px; padding: 0px 10px;
color: alpha(@color7,.4); color: alpha(@flamingo,.4);
transition: all .2s ease; transition: all .2s ease;
} }
#workspaces button:hover { #workspaces button:hover {
color: @color11; color: @pink;
border: none; border: none;
text-shadow: 0px 0px 1.5px rgba(0, 0, 0, .5); text-shadow: 0px 0px 1.5px rgba(0, 0, 0, .5);
transition: all 1s ease; transition: all 1s ease;
} }
#workspaces button.active { #workspaces button.active {
color: @color7; color: @rosewater;
border: none; border: none;
text-shadow: 0px 0px 2px rgba(0, 0, 0, .5); text-shadow: 0px 0px 2px rgba(0, 0, 0, .5);
} }
@ -105,31 +112,31 @@ tooltip {
transition: all 1s ease; transition: all 1s ease;
} }
#workspaces button.empty.active { #workspaces button.empty.active {
color: @color7; color: @rosewater;
border: none; border: none;
text-shadow: 0px 0px 2px rgba(0, 0, 0, .5); text-shadow: 0px 0px 2px rgba(0, 0, 0, .5);
} }
#bluetooth{ #bluetooth{
padding: 0px 10px; padding: 0px 10px;
transition: all .3s ease; transition: all .3s ease;
color:@color7; color:@rosewater;
} }
#network{ #network{
padding: 0px 10px; padding: 0px 10px;
transition: all .3s ease; transition: all .3s ease;
color:@color7; color:@rosewater;
} }
#mpris{ #mpris{
padding: 0px 10px; padding: 0px 10px;
transition: all .3s ease; transition: all .3s ease;
color:@color7; color:@rosewater;
} }
#battery{ #battery{
padding: 0px 10px; padding: 0px 10px;
transition: all .3s ease; transition: all .3s ease;
color:@color7; color:@rosewater;
} }
#battery.charging { #battery.charging {
color: #26A65B; color: #26A65B;
@ -153,7 +160,7 @@ tooltip {
} }
#custom-expand{ #custom-expand{
padding: 0px 10px; padding: 0px 10px;
color:alpha(@foreground,.2); color:alpha(@text,.2);
text-shadow: 0px 0px 2px rgba(0, 0, 0, .7); text-shadow: 0px 0px 2px rgba(0, 0, 0, .7);
transition: all .3s ease; transition: all .3s ease;
} }
@ -167,7 +174,7 @@ tooltip {
#cpu,#memory,#temperature{ #cpu,#memory,#temperature{
padding: 0px 10px; padding: 0px 10px;
transition: all .3s ease; transition: all .3s ease;
color:@color7; color:@rosewater;
} }
#custom-endpoint{ #custom-endpoint{

View File

@ -11,6 +11,8 @@
}; };
}; };
programs.noisetorch.enable = true;
programs.hyprland = { programs.hyprland = {
enable = true; enable = true;
withUWSM = true; withUWSM = true;
@ -38,6 +40,7 @@
xdg-desktop-portal-gtk xdg-desktop-portal-gtk
brave brave
thunderbird-latest
zathura zathura
mpv mpv
imv imv
@ -47,5 +50,6 @@
cinny-desktop cinny-desktop
telegram-desktop telegram-desktop
vscode.fhs vscode.fhs
grimblast
]; ];
} }

View File

@ -44,6 +44,7 @@
./users.nix ./users.nix
./virtualisation.nix ./virtualisation.nix
./programming.nix ./programming.nix
#./programming-dotnet.nix
./terminal.nix ./terminal.nix
./misc-pkgs.nix ./misc-pkgs.nix
]; ];

View File

@ -13,5 +13,6 @@
wine wine
mangohud mangohud
protontricks protontricks
gamemode
]; ];
} }

View File

@ -23,6 +23,7 @@
grep = "rg"; grep = "rg";
cat = "bat"; cat = "bat";
ls = "eza"; ls = "eza";
ssh = "kitten ssh";
}; };
}; };
@ -32,7 +33,12 @@
enable = true; enable = true;
plugins.lualine.enable = true; plugins.lualine.enable = true;
colorschemes.nord.enable = true; colorschemes.catppuccin = {
enable = true;
settings = {
flavour = "macchiato";
};
};
}; };
programs.git = { programs.git = {
@ -58,12 +64,16 @@
XDG_VIDEOS_DIR="$HOME/vid"; XDG_VIDEOS_DIR="$HOME/vid";
SSH_AUTH_SOCK="/run/user/1000/keyring/ssh"; SSH_AUTH_SOCK="/run/user/1000/keyring/ssh";
SSH_AGENT_SOCK="/run/user/1000/keyring/ssh"; SSH_AGENT_SOCK="/run/user/1000/keyring/ssh";
XCURSOR_SIZE="30";
XCURSOR_THEME="Catppuccin Macchiato Mauve";
HYPRCURSOR_SIZE="30";
HYPRCURSOR_THEME="Catppuccin Macchiato Mauve";
}; };
programs.kitty = with pkgs; { programs.kitty = with pkgs; {
enable = true; enable = true;
font.name = "JetBrainsMono Nerd Font"; font.name = "JetBrainsMono Nerd Font";
themeFile = "Nord"; themeFile = "Catppuccin-Macchiato";
}; };
programs.starship.enable = true; programs.starship.enable = true;
@ -86,11 +96,18 @@
]; ];
}; };
gtk.iconTheme.package = pkgs.catppuccin-papirus-folders.override {
flavor = "macchiato";
accent = "mauve";
};
services.easyeffects.enable = true;
services.dunst = { services.dunst = {
enable = true; enable = true;
settings = { settings = {
global = { global = {
frame_color = "#88C0D0"; frame_color = "#8aadf4";
separator_color = "frame"; separator_color = "frame";
font = "JetBrains Mono Regular 11"; font = "JetBrains Mono Regular 11";
corner_radius = 5; corner_radius = 5;
@ -103,24 +120,23 @@
height = "(0, 100)"; height = "(0, 100)";
monitor = 1; monitor = 1;
show_indicators = "no"; show_indicators = "no";
highlight = "#8aadf4";
}; };
urgency_low = { urgency_low = {
background = "#2E3440"; background = "#24273a";
foreground = "#ECEFF4"; foreground = "#cad3f5";
frame_color = "#81A1C1";
}; };
urgency_normal = { urgency_normal = {
background = "#2E3440"; background = "#24273a";
foreground = "#ECEFF4"; foreground = "#cad3f5";
frame_color = "#88C0D0";
}; };
urgency_critical = { urgency_critical = {
background = "#2E3440"; background = "#24273a";
foreground = "#ECEFF4"; foreground = "#cad3f5";
frame_color = "#BF616A"; frame_color = "#f5a97f";
}; };
}; };
}; };
@ -256,8 +272,8 @@
ipc = "on"; ipc = "on";
splash = true; splash = true;
preload = [ "$HOME/img/nixos.png" "$HOME/img/osf-024-static-wallpaper.png" ]; preload = [ "$HOME/img/nixos.png" "$HOME/img/osf-024-static-wallpaper.png" "$HOME/img/nix-black-4k.png" "$HOME/img/basement.jpg" ];
wallpaper = [ ", $HOME/img/nixos.png" ]; wallpaper = [ ", $HOME/img/basement.jpg" ];
}; };
}; };

View File

@ -0,0 +1,32 @@
{ pkgs, ... }:
{
environment = let
dotnet-combined = (with pkgs.dotnetCorePackages; combinePackages [
sdk_9_0-bin
]).overrideAttrs (finalAttrs: previousAttrs: {
# This is needed to install workload in $HOME
# https://discourse.nixos.org/t/dotnet-maui-workload/20370/2
postBuild = (previousAttrs.postBuild or '''') + ''
for i in $out/sdk/*
do
i=$(basename $i)
length=$(printf "%s" "$i" | wc -c)
substring=$(printf "%s" "$i" | cut -c 1-$(expr $length - 2))
i="$substring""00"
mkdir -p $out/metadata/workloads/''${i/-*}
touch $out/metadata/workloads/''${i/-*}/userlocal
done
'';
});
in
{
sessionVariables = {
DOTNET_ROOT = "${dotnet-combined}";
};
systemPackages = [
dotnet-combined
];
};
}

View File

@ -7,8 +7,8 @@
nodePackages.nodejs nodePackages.nodejs
typescript typescript
pnpm pnpm
dotnetCorePackages.dotnet_9.sdk
# see https://github.com/XNM1/linux-nixos-hyprland-config-dotfiles/blob/main/nixos/rust.nix for rust impl # see https://github.com/XNM1/linux-nixos-hyprland-config-dotfiles/blob/main/nixos/rust.nix for rust impl
dotnetCorePackages.sdk_9_0-bin
# LSPs # LSPs
python313Packages.python-lsp-server python313Packages.python-lsp-server

View File

@ -22,10 +22,6 @@
psi-notify psi-notify
playerctl playerctl
psmisc psmisc
grim
slurp
imagemagick
swappy
ffmpeg_6-full ffmpeg_6-full
wl-screenrec wl-screenrec
wl-clipboard wl-clipboard
@ -37,6 +33,5 @@
rofi-wayland rofi-wayland
dunst dunst
wlogout wlogout
gifsicle
]; ];
} }

View File

@ -1,5 +1,11 @@
{ inputs, pkgs, ... }: { inputs, pkgs, ... }:
let
catppuccin = pkgs.catppuccin-gtk.override {
accents = [ "mauve" ];
variant = "macchiato";
};
in
{ {
console = { console = {
font = "Lat2-Terminus16"; font = "Lat2-Terminus16";
@ -13,7 +19,7 @@
noto-fonts noto-fonts
nerd-fonts.jetbrains-mono nerd-fonts.jetbrains-mono
]; ];
# lots to do here, compare to https://github.com/XNM1/linux-nixos-hyprland-config-dotfiles/blob/main/nixos/theme.nix # lots to do here, compare to https://github.com/XNM1/linux-nixos-hyprland-config-dotfiles/blob/main/nixos/theme.nix
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
papirus-nord papirus-nord
@ -26,5 +32,9 @@
nwg-look # we do all the configuration in here nwg-look # we do all the configuration in here
kitty-themes kitty-themes
wallust wallust
catppuccin-cursors.macchiatoMauve
catppuccinifier-gui
catppuccinifier-cli
catppuccin
]; ];
} }