WIP nas printer setup, added dotfiles from work to home pc config

This commit is contained in:
Nate Anderson 2025-02-20 09:42:15 -07:00
parent 2d208ec6f9
commit 00d88f052b
16 changed files with 626 additions and 2 deletions

View File

@ -15,10 +15,11 @@
boot.loader.efi.canTouchEfiVariables = true;
networking = {
# Need this for ZFS
hostId = "09e1d908";
hostName = "luci"; # Define your hostname.
# Pick only one of the below networking options.
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
# Pick only one of the below networking options.
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
networkmanager.enable = true; # Easiest to use and most distros use this by default.
};

View File

@ -113,6 +113,18 @@ in
programs.zsh.enable = true;
programs.ssh.startAgent = true;
services.printing = {
enable = true;
browsing = true;
drivers = [ pkgs.brlaser ];
};
services.avahi = {
enable = true;
nssmdns4 = true;
openFirewall = true;
};
services.fprintd.enable = true;
services.greetd = {
enable = true;

View File

@ -0,0 +1,46 @@
theme = "catppuccin-macchiato"
###
# Font config
###
font-size = 14
font-family = "Monaspace Xenon Var"
font-family-bold = "Monaspace Argon Var"
font-family-italic = "Monaspace Radon Var"
font-family-bold-italic = "Monaspace Krypton Var"
font-variation = wght=400
font-variation = wdth=100
font-variation = slnt=-2
font-variation-bold = wght=600
font-variation-bold = wdth=100
font-variation-italic = wght=400
font-variation-italic = wdth=100
font-variation-italic = slnt=-10
font-variation-bold-italic = wght=700
font-variation-bold-italic = wdth=100
font-variation-bold-italic = slnt=-3
# Liguratures
font-feature = +ss01, +ss02, +ss03, +ss04, +ss05, +ss06, +ss07, +ss08, +ss09, +ss10
# Enables texture healing
font-feature = +calt
font-feature = +liga
###
# Keybinds
###
keybind = ctrl+shift+plus=increase_font_size:1
# keybind = ctrl+minus=decrease_font_size:1
###
# Misc
###
window-padding-x = 4
window-padding-y = 4

View File

@ -0,0 +1,10 @@
general {
lock_cmd = swaylock # dbus/sysd lock command (loginctl lock-session)
before_sleep_cmd = swaylock
ignore_dbus_inhibit = false
}
listener {
timeout = 600 # in seconds
on-timeout = swaylock -C ~/.config/swaylock/idle-config # command to run when timeout has passed
}

BIN
nate/dotfiles/hypr/nix.png Normal file

Binary file not shown.

After

(image error) Size: 376 KiB

View File

@ -0,0 +1,6 @@
https://www.youtube.com/watch?v=484RgaL990c
https://www.youtube.com/watch?v=6OGp_lZT2tM
https://www.youtube.com/watch?v=tIsiYbJLwIg
https://www.youtube.com/watch?v=pKw6s8w9rAI
https://www.youtube.com/watch?v=lFuErjQKoYg
https://www.youtube.com/@Denz1000

View File

@ -0,0 +1,21 @@
#! /usr/bin/env bash
hyprctl dispatch togglespecialworkspace music
YT_LINK=$(sort -R < ~/.config/hypr/scripts/music_links.txt | head -n 1)
firefox --new-window "$YT_LINK" &
sleep 1
hyprctl dispatch togglefloating
hyprctl dispatch movewindow u
hyprctl dispatch movewindow l
hyprctl dispatch resizeactive exact 45% 45%
hyprctl dispatch moveactive 30% 5%
ghostty ~/.config/hypr/scripts/music_setup_cmd.sh &
sleep 1
hyprctl dispatch togglefloating
hyprctl dispatch resizeactive exact 95% 30%
hyprctl dispatch movewindow d
hyprctl dispatch movewindow l
hyprctl dispatch moveactive -- 30 -5%

View File

@ -0,0 +1,4 @@
#! /usr/bin/env sh
sleep 1
cava

View File

@ -0,0 +1,35 @@
#!/usr/bin/env bash
entries="Screen Window Area Area+Edit"
selected=$(printf '%s\n' "$entries" | tr ' ' '\n' | wofi --style="$HOME"/.config/wofi/macc_style.css --conf="$HOME"/.config/wofi/config.screenshot | awk '{print tolower($1)}')
if [ "$1" == "clipboard" ]; then
case $selected in
screen)
hyprshot --notif-timeout 2000 -m output --clipboard-only;;
window)
hyprshot --notif-timeout 2000 -m window --clipboard-only;;
area)
hyprshot --notif-timeout 2000 -m region --clipboard-only;;
area+edit)
hyprshot --notif-timeout 2000 -m region --clipboard-only
sleep 0.1
flatpak run com.github.maoschanz.drawing -c
;;
esac
else
case $selected in
screen)
hyprshot --notif-timeout 2000 -m output -o ~/Pictures/;;
window)
hyprshot --notif-timeout 2000 -m window -o ~/Pictures/;;
area)
hyprshot --notif-timeout 2000 -m region -o ~/Pictures/;;
area+edit)
hyprshot --notif-timeout 2000 -m region --clipboard-only
sleep 0.1
flatpak run com.github.maoschanz.drawing -c
;;
esac
fi

Binary file not shown.

After

(image error) Size: 2.7 MiB

View File

@ -0,0 +1,38 @@
image=~/.config/swaylock/lock.png
clock
indicator
ignore-empty-password
show-failed-attempts
font=Overpass Nerd Font Mono
timestr=%I:%M %p
datestr=%A %b %e
bs-hl-color=f4dbd6
caps-lock-bs-hl-color=f4dbd6
caps-lock-key-hl-color=a6da95
inside-color=00000000
inside-clear-color=00000000
inside-caps-lock-color=00000000
inside-ver-color=00000000
inside-wrong-color=00000000
key-hl-color=67bf4a
layout-bg-color=00000000
layout-border-color=00000000
layout-text-color=cad3f5
line-color=00000000
line-clear-color=00000000
line-caps-lock-color=00000000
line-ver-color=00000000
line-wrong-color=00000000
ring-color=b7bdf8
ring-clear-color=f4dbd6
ring-caps-lock-color=f5a97f
ring-ver-color=8aadf4
ring-wrong-color=ee99a0
separator-color=00000000
text-color=363a4f
text-clear-color=f4dbd6
text-caps-lock-color=f5a97f
text-ver-color=8aadf4
text-wrong-color=ee99a0

View File

@ -0,0 +1,41 @@
screenshot
effect-pixelate=18
effect-vignette=0.7:0.5
clock
indicator-idle-visible
ignore-empty-password
show-failed-attempts
font=Overpass Nerd Font Mono
timestr=%I:%M %p
datestr=%A %b %e
fade-in=0.5
bs-hl-color=f4dbd6
caps-lock-bs-hl-color=f4dbd6
caps-lock-key-hl-color=a6da95
inside-color=666a8f
inside-clear-color=00000000
inside-caps-lock-color=00000000
inside-ver-color=00000000
inside-wrong-color=00000000
key-hl-color=67bf4a
layout-bg-color=00000000
layout-border-color=00000000
layout-text-color=cad3f5
line-color=00000000
line-clear-color=00000000
line-caps-lock-color=00000000
line-ver-color=00000000
line-wrong-color=00000000
ring-color=b7bdf8
ring-clear-color=f4dbd6
ring-caps-lock-color=f5a97f
ring-ver-color=8aadf4
ring-wrong-color=ee99a0
separator-color=00000000
text-color=363a4f
text-clear-color=f4dbd6
text-caps-lock-color=f5a97f
text-ver-color=8aadf4
text-wrong-color=ee99a0

View File

@ -0,0 +1,43 @@
screenshot
effect-pixelate=18
effect-vignette=0.7:0.5
clock
indicator-idle-visible
ignore-empty-password
show-failed-attempts
font=Overpass Nerd Font Mono
timestr=%I:%M %p
datestr=%A %b %e
fade-in=1
grace=10
bs-hl-color=f4dbd6
caps-lock-bs-hl-color=f4dbd6
caps-lock-key-hl-color=a6da95
inside-color=666a8f
inside-clear-color=00000000
inside-caps-lock-color=00000000
inside-ver-color=00000000
inside-wrong-color=00000000
key-hl-color=67bf4a
layout-bg-color=00000000
layout-border-color=00000000
layout-text-color=cad3f5
line-color=00000000
line-clear-color=00000000
line-caps-lock-color=00000000
line-ver-color=00000000
line-wrong-color=00000000
ring-color=b7bdf8
ring-clear-color=f4dbd6
ring-caps-lock-color=f5a97f
ring-ver-color=8aadf4
ring-wrong-color=ee99a0
separator-color=00000000
text-color=363a4f
text-clear-color=f4dbd6
text-caps-lock-color=f5a97f
text-ver-color=8aadf4
text-wrong-color=ee99a0

Binary file not shown.

After

(image error) Size: 1.7 MiB

View File

@ -0,0 +1,342 @@
* {
all: unset;
font-size: 14px;
font-family: "Ubuntu Nerd Font";
transition: 200ms;
}
trough highlight {
background: #cad3f5;
}
scale trough {
margin: 0rem 1rem;
background-color: #363a4f;
min-height: 8px;
min-width: 70px;
}
slider {
background-color: #8aadf4;
}
.floating-notifications.background .notification-row .notification-background {
box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.8), inset 0 0 0 1px #363a4f;
border-radius: 12.6px;
margin: 18px;
background-color: #24273a;
color: #cad3f5;
padding: 0;
}
.floating-notifications.background .notification-row .notification-background .notification {
padding: 7px;
border-radius: 12.6px;
}
.floating-notifications.background .notification-row .notification-background .notification.critical {
box-shadow: inset 0 0 7px 0 #ed8796;
}
.floating-notifications.background .notification-row .notification-background .notification .notification-content {
margin: 7px;
}
.floating-notifications.background .notification-row .notification-background .notification .notification-content .summary {
color: #cad3f5;
}
.floating-notifications.background .notification-row .notification-background .notification .notification-content .time {
color: #a5adcb;
}
.floating-notifications.background .notification-row .notification-background .notification .notification-content .body {
color: #cad3f5;
}
.floating-notifications.background .notification-row .notification-background .notification > *:last-child > * {
min-height: 3.4em;
}
.floating-notifications.background .notification-row .notification-background .notification > *:last-child > * .notification-action {
border-radius: 7px;
color: #cad3f5;
background-color: #363a4f;
box-shadow: inset 0 0 0 1px #494d64;
margin: 7px;
}
.floating-notifications.background .notification-row .notification-background .notification > *:last-child > * .notification-action:hover {
box-shadow: inset 0 0 0 1px #494d64;
background-color: #363a4f;
color: #cad3f5;
}
.floating-notifications.background .notification-row .notification-background .notification > *:last-child > * .notification-action:active {
box-shadow: inset 0 0 0 1px #494d64;
background-color: #7dc4e4;
color: #cad3f5;
}
.floating-notifications.background .notification-row .notification-background .close-button {
margin: 7px;
padding: 2px;
border-radius: 6.3px;
color: #24273a;
background-color: #ed8796;
}
.floating-notifications.background .notification-row .notification-background .close-button:hover {
background-color: #ee99a0;
color: #24273a;
}
.floating-notifications.background .notification-row .notification-background .close-button:active {
background-color: #ed8796;
color: #24273a;
}
.control-center {
box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.8), inset 0 0 0 1px #363a4f;
border-radius: 12.6px;
margin: 18px;
background-color: #24273a;
color: #cad3f5;
padding: 14px;
}
.control-center .widget-title > label {
color: #cad3f5;
font-size: 1.3em;
}
.control-center .widget-title button {
border-radius: 7px;
color: #cad3f5;
background-color: #363a4f;
box-shadow: inset 0 0 0 1px #494d64;
padding: 8px;
}
.control-center .widget-title button:hover {
box-shadow: inset 0 0 0 1px #494d64;
background-color: #5b6078;
color: #cad3f5;
}
.control-center .widget-title button:active {
box-shadow: inset 0 0 0 1px #494d64;
background-color: #7dc4e4;
color: #24273a;
}
.control-center .notification-row .notification-background {
border-radius: 7px;
color: #cad3f5;
background-color: #363a4f;
box-shadow: inset 0 0 0 1px #494d64;
margin-top: 14px;
}
.control-center .notification-row .notification-background .notification {
padding: 7px;
border-radius: 7px;
}
.control-center .notification-row .notification-background .notification.critical {
box-shadow: inset 0 0 7px 0 #ed8796;
}
.control-center .notification-row .notification-background .notification .notification-content {
margin: 7px;
}
.control-center .notification-row .notification-background .notification .notification-content .summary {
color: #cad3f5;
}
.control-center .notification-row .notification-background .notification .notification-content .time {
color: #a5adcb;
}
.control-center .notification-row .notification-background .notification .notification-content .body {
color: #cad3f5;
}
.control-center .notification-row .notification-background .notification > *:last-child > * {
min-height: 3.4em;
}
.control-center .notification-row .notification-background .notification > *:last-child > * .notification-action {
border-radius: 7px;
color: #cad3f5;
background-color: #181926;
box-shadow: inset 0 0 0 1px #494d64;
margin: 7px;
}
.control-center .notification-row .notification-background .notification > *:last-child > * .notification-action:hover {
box-shadow: inset 0 0 0 1px #494d64;
background-color: #363a4f;
color: #cad3f5;
}
.control-center .notification-row .notification-background .notification > *:last-child > * .notification-action:active {
box-shadow: inset 0 0 0 1px #494d64;
background-color: #7dc4e4;
color: #cad3f5;
}
.control-center .notification-row .notification-background .close-button {
margin: 7px;
padding: 2px;
border-radius: 6.3px;
color: #24273a;
background-color: #ee99a0;
}
.close-button {
border-radius: 6.3px;
}
.control-center .notification-row .notification-background .close-button:hover {
background-color: #ed8796;
color: #24273a;
}
.control-center .notification-row .notification-background .close-button:active {
background-color: #ed8796;
color: #24273a;
}
.control-center .notification-row .notification-background:hover {
box-shadow: inset 0 0 0 1px #494d64;
background-color: #8087a2;
color: #cad3f5;
}
.control-center .notification-row .notification-background:active {
box-shadow: inset 0 0 0 1px #494d64;
background-color: #7dc4e4;
color: #cad3f5;
}
.notification.critical progress {
background-color: #ed8796;
}
.notification.low progress,
.notification.normal progress {
background-color: #8aadf4;
}
.control-center-dnd {
margin-top: 5px;
border-radius: 8px;
background: #363a4f;
border: 1px solid #494d64;
box-shadow: none;
}
.control-center-dnd:checked {
background: #363a4f;
}
.control-center-dnd slider {
background: #494d64;
border-radius: 8px;
}
.widget-dnd {
margin: 0px;
font-size: 1.1rem;
}
.widget-dnd > switch {
font-size: initial;
border-radius: 8px;
background: #363a4f;
border: 1px solid #494d64;
box-shadow: none;
}
.widget-dnd > switch:checked {
background: #363a4f;
}
.widget-dnd > switch slider {
background: #494d64;
border-radius: 8px;
border: 1px solid #6e738d;
}
.widget-mpris .widget-mpris-player {
background: #363a4f;
padding: 7px;
}
.widget-mpris .widget-mpris-title {
font-size: 1.2rem;
}
.widget-mpris .widget-mpris-subtitle {
font-size: 0.8rem;
}
.widget-menubar > box > .menu-button-bar > button > label {
font-size: 3rem;
padding: 0.5rem 2rem;
}
.widget-menubar > box > .menu-button-bar > :last-child {
color: #ed8796;
}
.power-buttons button:hover,
.powermode-buttons button:hover,
.screenshot-buttons button:hover {
background: #363a4f;
}
.control-center .widget-label > label {
color: #cad3f5;
font-size: 2rem;
}
.widget-buttons-grid {
padding-top: 1rem;
}
.widget-buttons-grid > flowbox > flowboxchild > button label {
font-size: 2.5rem;
}
.widget-volume {
padding-top: 1rem;
}
.widget-volume label {
font-size: 1.5rem;
color: #7dc4e4;
}
.widget-volume trough highlight {
background: #7dc4e4;
}
.widget-backlight trough highlight {
background: #eed49f;
}
.widget-backlight label {
font-size: 1.5rem;
color: #eed49f;
}
.widget-backlight .KB {
padding-bottom: 1rem;
}
.image {
padding-right: 0.5rem;
}

View File

@ -47,6 +47,10 @@ in
default = false;
description = "Enable the caldav server service (radicale)";
};
printerSharingEnable = lib.mkOption {
default = false;
description = "Setups up avahi and printer services to expose local printer to network";
};
};
imports = [
@ -167,6 +171,27 @@ in
};
};
services.avahi = lib.mkIf srvConfig.printerSharingEnable {
enable = true;
nssmdns4 = true;
openFirewall = true;
publish = {
enable = true;
userServices = true;
};
};
services.printing = lib.mkIf srvConfig.printerSharingEnable {
enable = true;
drivers = [ pkgs.brlaser ];
listenAddresses = [ "*:631" ];
allowFrom = [ "all" ];
browsing = true;
browserAddress = "192.168.1.169:631";
defaultShared = true;
openFirewall = true;
};
systemd.timers."pixel-backups" = {
wantedBy = [ "timers.target" ];
timerConfig = {