mirror of
https://gitlab.com/Zaney/zaneyos.git
synced 2024-11-21 22:23:09 +01:00
Merge branch 'dev' into 'main'
ZaneyOS 2.2 Release See merge request Zaney/zaneyos!49
This commit is contained in:
commit
496ed27b42
24
CHANGELOG.md
24
CHANGELOG.md
@ -19,3 +19,27 @@ Simple bug fixes.
|
||||
- Should have fixed some Steam issues, but I have had some crashes due to Steam so be aware of that.
|
||||
- The flake got an update, so all the packages are fresh.
|
||||
|
||||
**ZaneyOS 2.2**
|
||||
|
||||
This release has a big theming change as well as including the move back to rofi. It is a massive improvement in many ways.
|
||||
|
||||
- Revert the switch from rofi to wofi. Rofi is just better.
|
||||
- Switch from Nix Colors to Stylix. It can build colorschemes from a wallpaper.
|
||||
- Simplified the notification center.
|
||||
- Improved emoji selection menu and options.
|
||||
- Adding fine-cmdline plugin for Neovim.
|
||||
- Removed theme changing scripts as the theme is generated by the image set with stylix.image in the config.nix file.
|
||||
- Starship is now setup in the config.nix file.
|
||||
- Switched from SDDM to tuigreet and greetd.
|
||||
- Added Plymouth for better looking booting.
|
||||
- Improve the fonts being installed and properly separate them from regular packages.
|
||||
- Separated Neovim configuration for readability.
|
||||
- Updated flake and added fix for popups going to wrkspc 1 in Hyprland.
|
||||
- Removed a few of the packages that aren't necessary and smartd by default.
|
||||
- Removed unnecessary Hyprland input in flake as home manager doesn't use it.
|
||||
- Turned off nfs by default
|
||||
- Hyprland plugins are now disabled in the config by default.
|
||||
- Fastfetch is now replacing neofetch.
|
||||
- Btop is back baby!
|
||||
- Switching to Brave as the default to protect user privacy.
|
||||
- Replaced lsd with eza for a better looking experience.
|
||||
|
@ -10,8 +10,8 @@ ZaneyOS is a simple way of reproducing my configuration on any NixOS system. Thi
|
||||
|
||||
</div>
|
||||
|
||||
> **This project has a [Wiki](https://zaney.org/zaneyos-2.0/). Find out how to use ZaneyOS here!**
|
||||
> **I have put a lot of effort into the [documentation](https://zaney.org/zaneyos-2.0/) so it should be accurate. However, please if you notice that something is wrong with it create an issue or reach out to me on Discord.**
|
||||
> **This project has a [Wiki](https://zaney.org/zaneyos-2.2/). Find out how to use ZaneyOS here!**
|
||||
> **I have put a lot of effort into the [documentation](https://zaney.org/zaneyos-2.2/) so it should be accurate. However, please if you notice that something is wrong with it create an issue or reach out to me on Discord.**
|
||||
|
||||
#### 🍖 Requirements
|
||||
- You must be running on NixOS.
|
||||
@ -38,7 +38,7 @@ ZaneyOS is a simple way of reproducing my configuration on any NixOS system. Thi
|
||||
|
||||
<div align="center">
|
||||
|
||||
Please do yourself a favor and [read the wiki](https://zaney.org/zaneyos-2.0/).
|
||||
Please do yourself a favor and [read the wiki](https://zaney.org/zaneyos-2.2/).
|
||||
|
||||
</div>
|
||||
|
||||
|
@ -1,11 +0,0 @@
|
||||
${c1} .--.
|
||||
.-./ ___\ ||
|
||||
`-'\|. .| ||
|
||||
__\=/__ .-.
|
||||
.' \:/ `. /\/|
|
||||
/ /( : )\ V /||
|
||||
\_\( : ) `-' ||
|
||||
(_(__:__) __||___
|
||||
\ | / / /
|
||||
|__|__| ( (
|
||||
(___V___) \______\\
|
@ -1,251 +0,0 @@
|
||||
3024
|
||||
apathy
|
||||
apprentice
|
||||
ashes
|
||||
atelier-cave-light
|
||||
atelier-cave
|
||||
atelier-dune-light
|
||||
atelier-dune
|
||||
atelier-estuary-light
|
||||
atelier-estuary
|
||||
atelier-forest-light
|
||||
atelier-forest
|
||||
atelier-heath-light
|
||||
atelier-heath
|
||||
atelier-lakeside-light
|
||||
atelier-lakeside
|
||||
atelier-plateau-light
|
||||
atelier-plateau
|
||||
atelier-savanna-light
|
||||
atelier-savanna
|
||||
atelier-seaside-light
|
||||
atelier-seaside
|
||||
atelier-sulphurpool-light
|
||||
atelier-sulphurpool
|
||||
atlas
|
||||
ayu-dark
|
||||
ayu-light
|
||||
ayu-mirage
|
||||
bespin
|
||||
black-metal-bathory
|
||||
black-metal-burzum
|
||||
black-metal-dark-funeral
|
||||
black-metal-gorgoroth
|
||||
black-metal-immortal
|
||||
black-metal-khold
|
||||
black-metal-marduk
|
||||
black-metal-mayhem
|
||||
black-metal-nile
|
||||
black-metal-venom
|
||||
black-metal
|
||||
blueforest
|
||||
blueish
|
||||
brewer
|
||||
bright
|
||||
brogrammer
|
||||
brushtrees-dark
|
||||
brushtrees
|
||||
caroline
|
||||
catppuccin-frappe
|
||||
catppuccin-latte
|
||||
catppuccin-macchiato
|
||||
catppuccin-mocha
|
||||
chalk
|
||||
circus
|
||||
classic-dark
|
||||
classic-light
|
||||
codeschool
|
||||
colors
|
||||
cupcake
|
||||
cupertino
|
||||
da-one-black
|
||||
da-one-gray
|
||||
da-one-ocean
|
||||
da-one-paper
|
||||
da-one-sea
|
||||
da-one-white
|
||||
danqing-light
|
||||
danqing
|
||||
darcula
|
||||
darkmoss
|
||||
darktooth
|
||||
darkviolet
|
||||
decaf
|
||||
default-dark
|
||||
default-light
|
||||
dirtysea
|
||||
dracula
|
||||
edge-dark
|
||||
edge-light
|
||||
eighties
|
||||
embers
|
||||
emil
|
||||
equilibrium-dark
|
||||
equilibrium-gray-dark
|
||||
equilibrium-gray-light
|
||||
equilibrium-light
|
||||
eris
|
||||
espresso
|
||||
eva-dim
|
||||
eva
|
||||
evenok-dark
|
||||
everforest-dark-hard
|
||||
everforest
|
||||
flat
|
||||
framer
|
||||
fruit-soda
|
||||
gigavolt
|
||||
github
|
||||
google-dark
|
||||
google-light
|
||||
gotham
|
||||
grayscale-dark
|
||||
grayscale-light
|
||||
greenscreen
|
||||
gruber
|
||||
gruvbox-dark-hard
|
||||
gruvbox-dark-medium
|
||||
gruvbox-dark-pale
|
||||
gruvbox-dark-soft
|
||||
gruvbox-light-hard
|
||||
gruvbox-light-medium
|
||||
gruvbox-light-soft
|
||||
gruvbox-material-dark-hard
|
||||
gruvbox-material-dark-medium
|
||||
gruvbox-material-dark-soft
|
||||
gruvbox-material-light-hard
|
||||
gruvbox-material-light-medium
|
||||
gruvbox-material-light-soft
|
||||
hardcore
|
||||
harmonic16-dark
|
||||
harmonic16-light
|
||||
heetch-light
|
||||
heetch
|
||||
helios
|
||||
hopscotch
|
||||
horizon-dark
|
||||
horizon-light
|
||||
horizon-terminal-dark
|
||||
horizon-terminal-light
|
||||
humanoid-dark
|
||||
humanoid-light
|
||||
ia-dark
|
||||
ia-light
|
||||
icy
|
||||
irblack
|
||||
isotope
|
||||
kanagawa
|
||||
katy
|
||||
kimber
|
||||
lime
|
||||
macintosh
|
||||
marrakesh
|
||||
materia
|
||||
material-darker
|
||||
material-lighter
|
||||
material-palenight
|
||||
material-vivid
|
||||
material
|
||||
mellow-purple
|
||||
mexico-light
|
||||
mocha
|
||||
monokai
|
||||
mountain
|
||||
nebula
|
||||
nord
|
||||
nova
|
||||
ocean
|
||||
oceanicnext
|
||||
one-light
|
||||
onedark
|
||||
outrun-dark
|
||||
oxocarbon-dark
|
||||
oxocarbon-light
|
||||
pandora
|
||||
papercolor-dark
|
||||
papercolor-light
|
||||
paraiso
|
||||
pasque
|
||||
phd
|
||||
pico
|
||||
pinky
|
||||
pop
|
||||
porple
|
||||
primer-dark-dimmed
|
||||
primer-dark
|
||||
primer-light
|
||||
purpledream
|
||||
qualia
|
||||
railscasts
|
||||
rebecca
|
||||
rose-pine-dawn
|
||||
rose-pine-moon
|
||||
rose-pine
|
||||
sagelight
|
||||
sakura
|
||||
sandcastle
|
||||
selenized-black
|
||||
selenized-dark
|
||||
selenized-light
|
||||
selenized-white
|
||||
seti
|
||||
shades-of-purple
|
||||
shadesmear-dark
|
||||
shadesmear-light
|
||||
shapeshifter
|
||||
silk-dark
|
||||
silk-light
|
||||
snazzy
|
||||
solarflare-light
|
||||
solarflare
|
||||
solarized-dark
|
||||
solarized-light
|
||||
spaceduck
|
||||
spacemacs
|
||||
standardized-dark
|
||||
standardized-light
|
||||
stella
|
||||
still-alive
|
||||
summercamp
|
||||
summerfruit-dark
|
||||
summerfruit-light
|
||||
synth-midnight-dark
|
||||
synth-midnight-light
|
||||
tango
|
||||
tarot
|
||||
tender
|
||||
tokyo-city-dark
|
||||
tokyo-city-light
|
||||
tokyo-city-terminal-dark
|
||||
tokyo-city-terminal-light
|
||||
tokyo-night-dark
|
||||
tokyo-night-light
|
||||
tokyo-night-storm
|
||||
tokyo-night-terminal-dark
|
||||
tokyo-night-terminal-light
|
||||
tokyo-night-terminal-storm
|
||||
tokyodark-terminal
|
||||
tokyodark
|
||||
tomorrow-night-eighties
|
||||
tomorrow-night
|
||||
tomorrow
|
||||
tube
|
||||
twilight
|
||||
unikitty-dark
|
||||
unikitty-light
|
||||
unikitty-reversible
|
||||
uwunicorn
|
||||
vice
|
||||
vulcan
|
||||
windows-10-light
|
||||
windows-10
|
||||
windows-95-light
|
||||
windows-95
|
||||
windows-highcontrast-light
|
||||
windows-highcontrast
|
||||
windows-nt-light
|
||||
windows-nt
|
||||
woodland
|
||||
xcode-dusk
|
||||
zenbones
|
||||
zenburn
|
BIN
config/demo.png
BIN
config/demo.png
Binary file not shown.
Before Width: | Height: | Size: 1.2 MiB After Width: | Height: | Size: 694 KiB |
1630
config/emoji
1630
config/emoji
File diff suppressed because it is too large
Load Diff
1855
config/emoji.nix
Normal file
1855
config/emoji.nix
Normal file
File diff suppressed because it is too large
Load Diff
104
config/fastfetch/config.jsonc
Normal file
104
config/fastfetch/config.jsonc
Normal file
@ -0,0 +1,104 @@
|
||||
{
|
||||
"$schema": "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json",
|
||||
"logo": {
|
||||
"source": "~/.config/fastfetch/nixos.png",
|
||||
"type": "kitty-direct",
|
||||
"height": 15,
|
||||
"width": 30,
|
||||
"padding": {
|
||||
"top": 3,
|
||||
"left": 3
|
||||
}
|
||||
},
|
||||
"modules": [
|
||||
"break",
|
||||
{
|
||||
"type": "custom",
|
||||
"format": "\u001b[90m┌──────────────────────Hardware──────────────────────┐"
|
||||
},
|
||||
{
|
||||
"type": "cpu",
|
||||
"key": "│ ",
|
||||
"keyColor": "35"
|
||||
},
|
||||
{
|
||||
"type": "gpu",
|
||||
"key": "│ ",
|
||||
"keyColor": "35"
|
||||
},
|
||||
{
|
||||
"type": "memory",
|
||||
"key": "│ ",
|
||||
"keyColor": "35"
|
||||
},
|
||||
{
|
||||
"type": "custom",
|
||||
"format": "\u001b[90m└────────────────────────────────────────────────────┘"
|
||||
},
|
||||
"break",
|
||||
{
|
||||
"type": "custom",
|
||||
"format": "\u001b[90m┌──────────────────────Software──────────────────────┐"
|
||||
},
|
||||
{
|
||||
"type": "custom",
|
||||
"format": "\u001b[31m OS -> ZaneyOS 2.2"
|
||||
},
|
||||
{
|
||||
"type": "kernel",
|
||||
"key": "│ ├",
|
||||
"keyColor": "31"
|
||||
},
|
||||
{
|
||||
"type": "packages",
|
||||
"key": "│ ├",
|
||||
"keyColor": "31"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"key": "└ └",
|
||||
"keyColor": "31"
|
||||
},
|
||||
"break",
|
||||
{
|
||||
"type": "wm",
|
||||
"key": " WM",
|
||||
"keyColor": "32"
|
||||
},
|
||||
{
|
||||
"type": "wmtheme",
|
||||
"key": "│ ├",
|
||||
"keyColor": "32"
|
||||
},
|
||||
{
|
||||
"type": "terminal",
|
||||
"key": "└ └",
|
||||
"keyColor": "32"
|
||||
},
|
||||
{
|
||||
"type": "custom",
|
||||
"format": "\u001b[90m└────────────────────────────────────────────────────┘"
|
||||
},
|
||||
"break",
|
||||
{
|
||||
"type": "custom",
|
||||
"format": "\u001b[90m┌────────────────────Uptime / Age────────────────────┐"
|
||||
},
|
||||
{
|
||||
"type": "command",
|
||||
"key": "│ ",
|
||||
"keyColor": "33",
|
||||
"text": "birth_install=$(stat -c %W /); current=$(date +%s); time_progression=$((current - birth_install)); days_difference=$((time_progression / 86400)); echo $days_difference days"
|
||||
},
|
||||
{
|
||||
"type": "uptime",
|
||||
"key": "│ ",
|
||||
"keyColor": "33"
|
||||
},
|
||||
{
|
||||
"type": "custom",
|
||||
"format": "\u001b[90m└────────────────────────────────────────────────────┘"
|
||||
},
|
||||
"break"
|
||||
]
|
||||
}
|
BIN
config/fastfetch/nixos.png
Normal file
BIN
config/fastfetch/nixos.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 78 KiB |
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,19 +1,17 @@
|
||||
{
|
||||
pkgs,
|
||||
config,
|
||||
lib,
|
||||
inputs,
|
||||
username,
|
||||
host,
|
||||
inputs,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
|
||||
let
|
||||
theme = config.colorScheme.palette;
|
||||
hyprplugins = inputs.hyprland-plugins.packages.${pkgs.system};
|
||||
inherit (import ../hosts/${host}/variables.nix)
|
||||
browser
|
||||
borderAnim
|
||||
terminal
|
||||
extraMonitorSettings
|
||||
;
|
||||
@ -24,191 +22,189 @@ with lib;
|
||||
enable = true;
|
||||
xwayland.enable = true;
|
||||
systemd.enable = true;
|
||||
plugins = [
|
||||
# hyprplugins.hyprtrails
|
||||
];
|
||||
# plugins = [
|
||||
# hyprplugins.hyprtrails
|
||||
# ];
|
||||
extraConfig =
|
||||
let
|
||||
modifier = "SUPER";
|
||||
in
|
||||
concatStrings [
|
||||
''
|
||||
env = NIXOS_OZONE_WL, 1
|
||||
env = NIXPKGS_ALLOW_UNFREE, 1
|
||||
env = XDG_CURRENT_DESKTOP, Hyprland
|
||||
env = XDG_SESSION_TYPE, wayland
|
||||
env = XDG_SESSION_DESKTOP, Hyprland
|
||||
env = GDK_BACKEND, wayland, x11
|
||||
env = CLUTTER_BACKEND, wayland
|
||||
env = QT_QPA_PLATFORM=wayland;xcb
|
||||
env = QT_WAYLAND_DISABLE_WINDOWDECORATION, 1
|
||||
env = QT_AUTO_SCREEN_SCALE_FACTOR, 1
|
||||
env = SDL_VIDEODRIVER, wayland
|
||||
env = MOZ_ENABLE_WAYLAND, 1
|
||||
exec-once = dbus-update-activation-environment --systemd --all
|
||||
exec-once = systemctl --user import-environment QT_QPA_PLATFORMTHEME WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
|
||||
exec-once = killall -q swww;sleep .5 && swww init
|
||||
exec-once = killall -q waybar;sleep .5 && waybar
|
||||
exec-once = killall -q swaync;sleep .5 && swaync
|
||||
exec-once = nm-applet --indicator
|
||||
exec-once = lxqt-policykit-agent
|
||||
exec-once = swww img /home/${username}/Pictures/Wallpapers/zaney-wallpaper.jpg
|
||||
monitor=,preferred,auto,1
|
||||
${extraMonitorSettings}
|
||||
general {
|
||||
gaps_in = 6
|
||||
gaps_out = 8
|
||||
border_size = 2
|
||||
col.active_border = rgba(${theme.base0C}ff) rgba(${theme.base0D}ff) rgba(${theme.base0B}ff) rgba(${theme.base0E}ff) 45deg
|
||||
col.inactive_border = rgba(${theme.base00}cc) rgba(${theme.base01}cc) 45deg
|
||||
layout = dwindle
|
||||
resize_on_border = true
|
||||
}
|
||||
|
||||
input {
|
||||
kb_layout = us
|
||||
kb_options = grp:alt_shift_toggle
|
||||
kb_options=caps:super
|
||||
follow_mouse = 1
|
||||
touchpad {
|
||||
natural_scroll = false
|
||||
}
|
||||
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
|
||||
accel_profile = flat
|
||||
}
|
||||
windowrule = noborder,^(wofi)$
|
||||
windowrule = center,^(wofi)$
|
||||
windowrule = center,^(steam)$
|
||||
windowrulev2 = stayfocused, title:^()$,class:^(steam)$
|
||||
windowrulev2 = minsize 1 1, title:^()$,class:^(steam)$
|
||||
gestures {
|
||||
workspace_swipe = true
|
||||
workspace_swipe_fingers = 3
|
||||
}
|
||||
misc {
|
||||
mouse_move_enables_dpms = true
|
||||
key_press_enables_dpms = false
|
||||
}
|
||||
animations {
|
||||
enabled = yes
|
||||
bezier = wind, 0.05, 0.9, 0.1, 1.05
|
||||
bezier = winIn, 0.1, 1.1, 0.1, 1.1
|
||||
bezier = winOut, 0.3, -0.3, 0, 1
|
||||
bezier = liner, 1, 1, 1, 1
|
||||
animation = windows, 1, 6, wind, slide
|
||||
animation = windowsIn, 1, 6, winIn, slide
|
||||
animation = windowsOut, 1, 5, winOut, slide
|
||||
animation = windowsMove, 1, 5, wind, slide
|
||||
animation = border, 1, 1, liner
|
||||
${
|
||||
if borderAnim == true then
|
||||
''
|
||||
animation = borderangle, 1, 30, liner, loop
|
||||
''
|
||||
else
|
||||
''''
|
||||
}
|
||||
animation = fade, 1, 10, default
|
||||
animation = workspaces, 1, 5, wind
|
||||
}
|
||||
decoration {
|
||||
rounding = 10
|
||||
drop_shadow = false
|
||||
blur {
|
||||
enabled = true
|
||||
size = 5
|
||||
passes = 3
|
||||
new_optimizations = on
|
||||
ignore_opacity = on
|
||||
}
|
||||
}
|
||||
plugin {
|
||||
hyprtrails {
|
||||
color = rgba(${theme.base0A}ff)
|
||||
}
|
||||
}
|
||||
dwindle {
|
||||
pseudotile = true
|
||||
preserve_split = true
|
||||
}
|
||||
master {
|
||||
new_is_master = true
|
||||
}
|
||||
bind = ${modifier},Return,exec,${terminal}
|
||||
bind = ${modifier}SHIFT,Return,exec,wofi
|
||||
bind = ${modifier}SHIFT,W,exec,web-search
|
||||
bind = ${modifier}ALT,W,exec,wallsetter
|
||||
bind = ${modifier}SHIFT,N,exec,swaync-client -rs
|
||||
bind = ${modifier},W,exec,${browser}
|
||||
bind = ${modifier},E,exec,emopicker9000
|
||||
bind = ${modifier},S,exec,screenshootin
|
||||
bind = ${modifier},D,exec,discord
|
||||
bind = ${modifier},O,exec,obs
|
||||
bind = ${modifier},G,exec,gimp
|
||||
bind = ${modifier}SHIFT,G,exec,godot4
|
||||
bind = ${modifier},T,exec,thunar
|
||||
bind = ${modifier},M,exec,spotify
|
||||
bind = ${modifier},Q,killactive,
|
||||
bind = ${modifier},P,pseudo,
|
||||
bind = ${modifier}SHIFT,I,togglesplit,
|
||||
bind = ${modifier},F,fullscreen,
|
||||
bind = ${modifier}SHIFT,F,togglefloating,
|
||||
bind = ${modifier}SHIFT,C,exit,
|
||||
bind = ${modifier}SHIFT,left,movewindow,l
|
||||
bind = ${modifier}SHIFT,right,movewindow,r
|
||||
bind = ${modifier}SHIFT,up,movewindow,u
|
||||
bind = ${modifier}SHIFT,down,movewindow,d
|
||||
bind = ${modifier}SHIFT,h,movewindow,l
|
||||
bind = ${modifier}SHIFT,l,movewindow,r
|
||||
bind = ${modifier}SHIFT,k,movewindow,u
|
||||
bind = ${modifier}SHIFT,j,movewindow,d
|
||||
bind = ${modifier},left,movefocus,l
|
||||
bind = ${modifier},right,movefocus,r
|
||||
bind = ${modifier},up,movefocus,u
|
||||
bind = ${modifier},down,movefocus,d
|
||||
bind = ${modifier},h,movefocus,l
|
||||
bind = ${modifier},l,movefocus,r
|
||||
bind = ${modifier},k,movefocus,u
|
||||
bind = ${modifier},j,movefocus,d
|
||||
bind = ${modifier},1,workspace,1
|
||||
bind = ${modifier},2,workspace,2
|
||||
bind = ${modifier},3,workspace,3
|
||||
bind = ${modifier},4,workspace,4
|
||||
bind = ${modifier},5,workspace,5
|
||||
bind = ${modifier},6,workspace,6
|
||||
bind = ${modifier},7,workspace,7
|
||||
bind = ${modifier},8,workspace,8
|
||||
bind = ${modifier},9,workspace,9
|
||||
bind = ${modifier},0,workspace,10
|
||||
bind = ${modifier}SHIFT,SPACE,movetoworkspace,special
|
||||
bind = ${modifier},SPACE,togglespecialworkspace
|
||||
bind = ${modifier}SHIFT,1,movetoworkspace,1
|
||||
bind = ${modifier}SHIFT,2,movetoworkspace,2
|
||||
bind = ${modifier}SHIFT,3,movetoworkspace,3
|
||||
bind = ${modifier}SHIFT,4,movetoworkspace,4
|
||||
bind = ${modifier}SHIFT,5,movetoworkspace,5
|
||||
bind = ${modifier}SHIFT,6,movetoworkspace,6
|
||||
bind = ${modifier}SHIFT,7,movetoworkspace,7
|
||||
bind = ${modifier}SHIFT,8,movetoworkspace,8
|
||||
bind = ${modifier}SHIFT,9,movetoworkspace,9
|
||||
bind = ${modifier}SHIFT,0,movetoworkspace,10
|
||||
bind = ${modifier}CONTROL,right,workspace,e+1
|
||||
bind = ${modifier}CONTROL,left,workspace,e-1
|
||||
bind = ${modifier},mouse_down,workspace, e+1
|
||||
bind = ${modifier},mouse_up,workspace, e-1
|
||||
bindm = ${modifier},mouse:272,movewindow
|
||||
bindm = ${modifier},mouse:273,resizewindow
|
||||
bind = ALT,Tab,cyclenext
|
||||
bind = ALT,Tab,bringactivetotop
|
||||
bind = ,XF86AudioRaiseVolume,exec,wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+
|
||||
bind = ,XF86AudioLowerVolume,exec,wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
|
||||
binde = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
|
||||
bind = ,XF86AudioPlay, exec, playerctl play-pause
|
||||
bind = ,XF86AudioPause, exec, playerctl play-pause
|
||||
bind = ,XF86AudioNext, exec, playerctl next
|
||||
bind = ,XF86AudioPrev, exec, playerctl previous
|
||||
bind = ,XF86MonBrightnessDown,exec,brightnessctl set 5%-
|
||||
bind = ,XF86MonBrightnessUp,exec,brightnessctl set +5%
|
||||
env = NIXOS_OZONE_WL, 1
|
||||
env = NIXPKGS_ALLOW_UNFREE, 1
|
||||
env = XDG_CURRENT_DESKTOP, Hyprland
|
||||
env = XDG_SESSION_TYPE, wayland
|
||||
env = XDG_SESSION_DESKTOP, Hyprland
|
||||
env = GDK_BACKEND, wayland, x11
|
||||
env = CLUTTER_BACKEND, wayland
|
||||
env = QT_QPA_PLATFORM=wayland;xcb
|
||||
env = QT_WAYLAND_DISABLE_WINDOWDECORATION, 1
|
||||
env = QT_AUTO_SCREEN_SCALE_FACTOR, 1
|
||||
env = SDL_VIDEODRIVER, x11
|
||||
env = MOZ_ENABLE_WAYLAND, 1
|
||||
exec-once = dbus-update-activation-environment --systemd --all
|
||||
exec-once = systemctl --user import-environment QT_QPA_PLATFORMTHEME WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
|
||||
exec-once = killall -q swww;sleep .5 && swww init
|
||||
exec-once = killall -q waybar;sleep .5 && waybar
|
||||
exec-once = killall -q swaync;sleep .5 && swaync
|
||||
exec-once = nm-applet --indicator
|
||||
exec-once = lxqt-policykit-agent
|
||||
exec-once = sleep 1.5 && swww img /home/${username}/Pictures/Wallpapers/beautifulmountainscape.jpg
|
||||
monitor=,preferred,auto,1
|
||||
${extraMonitorSettings}
|
||||
general {
|
||||
gaps_in = 6
|
||||
gaps_out = 8
|
||||
border_size = 2
|
||||
layout = dwindle
|
||||
resize_on_border = true
|
||||
col.active_border = rgb(${config.stylix.base16Scheme.base08}) rgb(${config.stylix.base16Scheme.base0C}) 45deg
|
||||
col.inactive_border = rgb(${config.stylix.base16Scheme.base01})
|
||||
}
|
||||
input {
|
||||
kb_layout = us
|
||||
kb_options = grp:alt_shift_toggle
|
||||
kb_options = caps:super
|
||||
follow_mouse = 1
|
||||
touchpad {
|
||||
natural_scroll = false
|
||||
}
|
||||
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
|
||||
accel_profile = flat
|
||||
}
|
||||
windowrule = noborder,^(wofi)$
|
||||
windowrule = center,^(wofi)$
|
||||
windowrule = center,^(steam)$
|
||||
windowrule = float, nm-connection-editor|blueman-manager
|
||||
windowrule = float, swayimg|vlc|Viewnior|pavucontrol
|
||||
windowrule = float, nwg-look|qt5ct|mpv
|
||||
windowrule = float, zoom
|
||||
windowrulev2 = stayfocused, title:^()$,class:^(steam)$
|
||||
windowrulev2 = minsize 1 1, title:^()$,class:^(steam)$
|
||||
windowrulev2 = opacity 0.9 0.7, class:^(Brave)$
|
||||
windowrulev2 = opacity 0.9 0.7, class:^(thunar)$
|
||||
gestures {
|
||||
workspace_swipe = true
|
||||
workspace_swipe_fingers = 3
|
||||
}
|
||||
misc {
|
||||
initial_workspace_tracking = 0
|
||||
mouse_move_enables_dpms = true
|
||||
key_press_enables_dpms = false
|
||||
}
|
||||
animations {
|
||||
enabled = yes
|
||||
bezier = wind, 0.05, 0.9, 0.1, 1.05
|
||||
bezier = winIn, 0.1, 1.1, 0.1, 1.1
|
||||
bezier = winOut, 0.3, -0.3, 0, 1
|
||||
bezier = liner, 1, 1, 1, 1
|
||||
animation = windows, 1, 6, wind, slide
|
||||
animation = windowsIn, 1, 6, winIn, slide
|
||||
animation = windowsOut, 1, 5, winOut, slide
|
||||
animation = windowsMove, 1, 5, wind, slide
|
||||
animation = border, 1, 1, liner
|
||||
animation = fade, 1, 10, default
|
||||
animation = workspaces, 1, 5, wind
|
||||
}
|
||||
decoration {
|
||||
rounding = 10
|
||||
drop_shadow = true
|
||||
shadow_range = 4
|
||||
shadow_render_power = 3
|
||||
col.shadow = rgba(1a1a1aee)
|
||||
blur {
|
||||
enabled = true
|
||||
size = 5
|
||||
passes = 3
|
||||
new_optimizations = on
|
||||
ignore_opacity = off
|
||||
}
|
||||
}
|
||||
plugin {
|
||||
hyprtrails {
|
||||
}
|
||||
}
|
||||
dwindle {
|
||||
pseudotile = true
|
||||
preserve_split = true
|
||||
}
|
||||
bind = ${modifier},Return,exec,${terminal}
|
||||
bind = ${modifier}SHIFT,Return,exec,rofi-launcher
|
||||
bind = ${modifier}SHIFT,W,exec,web-search
|
||||
bind = ${modifier}ALT,W,exec,wallsetter
|
||||
bind = ${modifier}SHIFT,N,exec,swaync-client -rs
|
||||
bind = ${modifier},W,exec,${browser}
|
||||
bind = ${modifier},E,exec,emopicker9000
|
||||
bind = ${modifier},S,exec,screenshootin
|
||||
bind = ${modifier},D,exec,discord
|
||||
bind = ${modifier},O,exec,obs
|
||||
bind = ${modifier},C,exec,hyprpicker
|
||||
bind = ${modifier},G,exec,gimp
|
||||
bind = ${modifier}SHIFT,G,exec,godot4
|
||||
bind = ${modifier},T,exec,thunar
|
||||
bind = ${modifier},M,exec,spotify
|
||||
bind = ${modifier},Q,killactive,
|
||||
bind = ${modifier},P,pseudo,
|
||||
bind = ${modifier}SHIFT,I,togglesplit,
|
||||
bind = ${modifier},F,fullscreen,
|
||||
bind = ${modifier}SHIFT,F,togglefloating,
|
||||
bind = ${modifier}SHIFT,C,exit,
|
||||
bind = ${modifier}SHIFT,left,movewindow,l
|
||||
bind = ${modifier}SHIFT,right,movewindow,r
|
||||
bind = ${modifier}SHIFT,up,movewindow,u
|
||||
bind = ${modifier}SHIFT,down,movewindow,d
|
||||
bind = ${modifier}SHIFT,h,movewindow,l
|
||||
bind = ${modifier}SHIFT,l,movewindow,r
|
||||
bind = ${modifier}SHIFT,k,movewindow,u
|
||||
bind = ${modifier}SHIFT,j,movewindow,d
|
||||
bind = ${modifier},left,movefocus,l
|
||||
bind = ${modifier},right,movefocus,r
|
||||
bind = ${modifier},up,movefocus,u
|
||||
bind = ${modifier},down,movefocus,d
|
||||
bind = ${modifier},h,movefocus,l
|
||||
bind = ${modifier},l,movefocus,r
|
||||
bind = ${modifier},k,movefocus,u
|
||||
bind = ${modifier},j,movefocus,d
|
||||
bind = ${modifier},1,workspace,1
|
||||
bind = ${modifier},2,workspace,2
|
||||
bind = ${modifier},3,workspace,3
|
||||
bind = ${modifier},4,workspace,4
|
||||
bind = ${modifier},5,workspace,5
|
||||
bind = ${modifier},6,workspace,6
|
||||
bind = ${modifier},7,workspace,7
|
||||
bind = ${modifier},8,workspace,8
|
||||
bind = ${modifier},9,workspace,9
|
||||
bind = ${modifier},0,workspace,10
|
||||
bind = ${modifier}SHIFT,SPACE,movetoworkspace,special
|
||||
bind = ${modifier},SPACE,togglespecialworkspace
|
||||
bind = ${modifier}SHIFT,1,movetoworkspace,1
|
||||
bind = ${modifier}SHIFT,2,movetoworkspace,2
|
||||
bind = ${modifier}SHIFT,3,movetoworkspace,3
|
||||
bind = ${modifier}SHIFT,4,movetoworkspace,4
|
||||
bind = ${modifier}SHIFT,5,movetoworkspace,5
|
||||
bind = ${modifier}SHIFT,6,movetoworkspace,6
|
||||
bind = ${modifier}SHIFT,7,movetoworkspace,7
|
||||
bind = ${modifier}SHIFT,8,movetoworkspace,8
|
||||
bind = ${modifier}SHIFT,9,movetoworkspace,9
|
||||
bind = ${modifier}SHIFT,0,movetoworkspace,10
|
||||
bind = ${modifier}CONTROL,right,workspace,e+1
|
||||
bind = ${modifier}CONTROL,left,workspace,e-1
|
||||
bind = ${modifier},mouse_down,workspace, e+1
|
||||
bind = ${modifier},mouse_up,workspace, e-1
|
||||
bindm = ${modifier},mouse:272,movewindow
|
||||
bindm = ${modifier},mouse:273,resizewindow
|
||||
bind = ALT,Tab,cyclenext
|
||||
bind = ALT,Tab,bringactivetotop
|
||||
bind = ,XF86AudioRaiseVolume,exec,wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+
|
||||
bind = ,XF86AudioLowerVolume,exec,wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
|
||||
binde = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
|
||||
bind = ,XF86AudioPlay, exec, playerctl play-pause
|
||||
bind = ,XF86AudioPause, exec, playerctl play-pause
|
||||
bind = ,XF86AudioNext, exec, playerctl next
|
||||
bind = ,XF86AudioPrev, exec, playerctl previous
|
||||
bind = ,XF86MonBrightnessDown,exec,brightnessctl set 5%-
|
||||
bind = ,XF86MonBrightnessUp,exec,brightnessctl set +5%
|
||||
''
|
||||
];
|
||||
};
|
||||
|
88
config/neovim.nix
Normal file
88
config/neovim.nix
Normal file
@ -0,0 +1,88 @@
|
||||
{ pkgs, inputs, ... }:
|
||||
let
|
||||
finecmdline = pkgs.vimUtils.buildVimPlugin {
|
||||
name = "fine-cmdline";
|
||||
src = inputs.fine-cmdline;
|
||||
};
|
||||
in
|
||||
{
|
||||
programs = {
|
||||
neovim = {
|
||||
enable = true;
|
||||
defaultEditor = true;
|
||||
viAlias = true;
|
||||
vimAlias = true;
|
||||
vimdiffAlias = true;
|
||||
withNodeJs = true;
|
||||
extraPackages = with pkgs; [
|
||||
lua-language-server
|
||||
gopls
|
||||
xclip
|
||||
wl-clipboard
|
||||
luajitPackages.lua-lsp
|
||||
nil
|
||||
rust-analyzer
|
||||
#nodePackages.bash-language-server
|
||||
yaml-language-server
|
||||
pyright
|
||||
marksman
|
||||
];
|
||||
plugins = with pkgs.vimPlugins; [
|
||||
alpha-nvim
|
||||
auto-session
|
||||
bufferline-nvim
|
||||
dressing-nvim
|
||||
indent-blankline-nvim
|
||||
nui-nvim
|
||||
finecmdline
|
||||
nvim-treesitter.withAllGrammars
|
||||
lualine-nvim
|
||||
nvim-autopairs
|
||||
nvim-web-devicons
|
||||
nvim-cmp
|
||||
nvim-surround
|
||||
nvim-lspconfig
|
||||
cmp-nvim-lsp
|
||||
cmp-buffer
|
||||
luasnip
|
||||
cmp_luasnip
|
||||
friendly-snippets
|
||||
lspkind-nvim
|
||||
comment-nvim
|
||||
nvim-ts-context-commentstring
|
||||
plenary-nvim
|
||||
neodev-nvim
|
||||
luasnip
|
||||
telescope-nvim
|
||||
todo-comments-nvim
|
||||
nvim-tree-lua
|
||||
telescope-fzf-native-nvim
|
||||
vim-tmux-navigator
|
||||
];
|
||||
extraConfig = ''
|
||||
set noemoji
|
||||
nnoremap : <cmd>FineCmdline<CR>
|
||||
'';
|
||||
extraLuaConfig = ''
|
||||
${builtins.readFile ./nvim/options.lua}
|
||||
${builtins.readFile ./nvim/keymaps.lua}
|
||||
${builtins.readFile ./nvim/plugins/alpha.lua}
|
||||
${builtins.readFile ./nvim/plugins/autopairs.lua}
|
||||
${builtins.readFile ./nvim/plugins/auto-session.lua}
|
||||
${builtins.readFile ./nvim/plugins/comment.lua}
|
||||
${builtins.readFile ./nvim/plugins/cmp.lua}
|
||||
${builtins.readFile ./nvim/plugins/lsp.lua}
|
||||
${builtins.readFile ./nvim/plugins/nvim-tree.lua}
|
||||
${builtins.readFile ./nvim/plugins/telescope.lua}
|
||||
${builtins.readFile ./nvim/plugins/todo-comments.lua}
|
||||
${builtins.readFile ./nvim/plugins/treesitter.lua}
|
||||
${builtins.readFile ./nvim/plugins/fine-cmdline.lua}
|
||||
require("ibl").setup()
|
||||
require("bufferline").setup{}
|
||||
require("lualine").setup({
|
||||
icons_enabled = true,
|
||||
})
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
33
config/nvim/plugins/fine-cmdline.lua
Normal file
33
config/nvim/plugins/fine-cmdline.lua
Normal file
@ -0,0 +1,33 @@
|
||||
require('fine-cmdline').setup({
|
||||
cmdline = {
|
||||
enable_keymaps = true,
|
||||
smart_history = true,
|
||||
prompt = '> '
|
||||
},
|
||||
popup = {
|
||||
position = {
|
||||
row = '10%',
|
||||
col = '50%',
|
||||
},
|
||||
size = {
|
||||
width = '60%',
|
||||
},
|
||||
border = {
|
||||
style = 'rounded',
|
||||
},
|
||||
win_options = {
|
||||
winhighlight = 'Normal:Normal,FloatBorder:FloatBorder',
|
||||
},
|
||||
},
|
||||
hooks = {
|
||||
before_mount = function(input)
|
||||
-- code
|
||||
end,
|
||||
after_mount = function(input)
|
||||
-- code
|
||||
end,
|
||||
set_keymaps = function(imap, feedkeys)
|
||||
-- code
|
||||
end
|
||||
}
|
||||
})
|
11
config/rofi/config-emoji.nix
Normal file
11
config/rofi/config-emoji.nix
Normal file
@ -0,0 +1,11 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
home.file.".config/rofi/config-emoji.rasi".text = ''
|
||||
@import "~/.config/rofi/config-long.rasi"
|
||||
entry {
|
||||
width: 45%;
|
||||
placeholder: "🔎 Search Emoji's 👀";
|
||||
}
|
||||
'';
|
||||
}
|
18
config/rofi/config-long.nix
Normal file
18
config/rofi/config-long.nix
Normal file
@ -0,0 +1,18 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
home.file.".config/rofi/config-long.rasi".text = ''
|
||||
@import "~/.config/rofi/config.rasi"
|
||||
window {
|
||||
width: 50%;
|
||||
}
|
||||
entry {
|
||||
placeholder: "🔎 Search ";
|
||||
}
|
||||
listview {
|
||||
columns: 1;
|
||||
lines: 8;
|
||||
scrollbar: true;
|
||||
}
|
||||
'';
|
||||
}
|
214
config/rofi/rofi.nix
Normal file
214
config/rofi/rofi.nix
Normal file
@ -0,0 +1,214 @@
|
||||
{ pkgs, config, ... }:
|
||||
|
||||
{
|
||||
programs = {
|
||||
rofi = {
|
||||
enable = true;
|
||||
package = pkgs.rofi-wayland;
|
||||
extraConfig = {
|
||||
modi = "drun,filebrowser,run";
|
||||
show-icons = true;
|
||||
icon-theme = "Papirus";
|
||||
location = 0;
|
||||
font = "JetBrainsMono Nerd Font Mono 12";
|
||||
drun-display-format = "{icon} {name}";
|
||||
display-drun = " Apps";
|
||||
display-run = " Run";
|
||||
display-filebrowser = " File";
|
||||
};
|
||||
theme =
|
||||
let
|
||||
inherit (config.lib.formats.rasi) mkLiteral;
|
||||
in
|
||||
{
|
||||
"*" = {
|
||||
bg = mkLiteral "#${config.stylix.base16Scheme.base00}";
|
||||
bg-alt = mkLiteral "#${config.stylix.base16Scheme.base09}";
|
||||
foreground = mkLiteral "#${config.stylix.base16Scheme.base01}";
|
||||
selected = mkLiteral "#${config.stylix.base16Scheme.base08}";
|
||||
active = mkLiteral "#${config.stylix.base16Scheme.base0B}";
|
||||
text-selected = mkLiteral "#${config.stylix.base16Scheme.base00}";
|
||||
text-color = mkLiteral "#${config.stylix.base16Scheme.base05}";
|
||||
border-color = mkLiteral "#${config.stylix.base16Scheme.base0F}";
|
||||
urgent = mkLiteral "#${config.stylix.base16Scheme.base0E}";
|
||||
};
|
||||
"window" = {
|
||||
width = mkLiteral "50%";
|
||||
transparency = "real";
|
||||
orientation = mkLiteral "vertical";
|
||||
cursor = mkLiteral "default";
|
||||
spacing = mkLiteral "0px";
|
||||
border = mkLiteral "2px";
|
||||
border-color = "@border-color";
|
||||
border-radius = mkLiteral "20px";
|
||||
background-color = mkLiteral "@bg";
|
||||
};
|
||||
"mainbox" = {
|
||||
padding = mkLiteral "15px";
|
||||
enabled = true;
|
||||
orientation = mkLiteral "vertical";
|
||||
children = map mkLiteral [
|
||||
"inputbar"
|
||||
"listbox"
|
||||
];
|
||||
background-color = mkLiteral "transparent";
|
||||
};
|
||||
"inputbar" = {
|
||||
enabled = true;
|
||||
padding = mkLiteral "10px 10px 200px 10px";
|
||||
margin = mkLiteral "10px";
|
||||
background-color = mkLiteral "transparent";
|
||||
border-radius = "25px";
|
||||
orientation = mkLiteral "horizontal";
|
||||
children = map mkLiteral [
|
||||
"entry"
|
||||
"dummy"
|
||||
"mode-switcher"
|
||||
];
|
||||
background-image = mkLiteral ''url("~/Pictures/Wallpapers/beautifulmountainscape.jpg", width)'';
|
||||
};
|
||||
"entry" = {
|
||||
enabled = true;
|
||||
expand = false;
|
||||
width = mkLiteral "20%";
|
||||
padding = mkLiteral "10px";
|
||||
border-radius = mkLiteral "12px";
|
||||
background-color = mkLiteral "@selected";
|
||||
text-color = mkLiteral "@text-selected";
|
||||
cursor = mkLiteral "text";
|
||||
placeholder = "🖥️ Search ";
|
||||
placeholder-color = mkLiteral "inherit";
|
||||
};
|
||||
"listbox" = {
|
||||
spacing = mkLiteral "10px";
|
||||
padding = mkLiteral "10px";
|
||||
background-color = mkLiteral "transparent";
|
||||
orientation = mkLiteral "vertical";
|
||||
children = map mkLiteral [
|
||||
"message"
|
||||
"listview"
|
||||
];
|
||||
};
|
||||
"listview" = {
|
||||
enabled = true;
|
||||
columns = 2;
|
||||
lines = 6;
|
||||
cycle = true;
|
||||
dynamic = true;
|
||||
scrollbar = false;
|
||||
layout = mkLiteral "vertical";
|
||||
reverse = false;
|
||||
fixed-height = false;
|
||||
fixed-columns = true;
|
||||
spacing = mkLiteral "10px";
|
||||
background-color = mkLiteral "transparent";
|
||||
border = mkLiteral "0px";
|
||||
};
|
||||
"dummy" = {
|
||||
expand = true;
|
||||
background-color = mkLiteral "transparent";
|
||||
};
|
||||
"mode-switcher" = {
|
||||
enabled = true;
|
||||
spacing = mkLiteral "10px";
|
||||
background-color = mkLiteral "transparent";
|
||||
};
|
||||
"button" = {
|
||||
width = mkLiteral "5%";
|
||||
padding = mkLiteral "12px";
|
||||
border-radius = mkLiteral "12px";
|
||||
background-color = mkLiteral "@text-selected";
|
||||
text-color = mkLiteral "@text-color";
|
||||
cursor = mkLiteral "pointer";
|
||||
};
|
||||
"button selected" = {
|
||||
background-color = mkLiteral "@selected";
|
||||
text-color = mkLiteral "@text-selected";
|
||||
};
|
||||
"scrollbar" = {
|
||||
width = mkLiteral "4px";
|
||||
border = 0;
|
||||
handle-color = mkLiteral "@border-color";
|
||||
handle-width = mkLiteral "8px";
|
||||
padding = 0;
|
||||
};
|
||||
"element" = {
|
||||
enabled = true;
|
||||
spacing = mkLiteral "10px";
|
||||
padding = mkLiteral "10px";
|
||||
border-radius = mkLiteral "12px";
|
||||
background-color = mkLiteral "transparent";
|
||||
cursor = mkLiteral "pointer";
|
||||
};
|
||||
"element normal.normal" = {
|
||||
background-color = mkLiteral "inherit";
|
||||
text-color = mkLiteral "inherit";
|
||||
};
|
||||
"element normal.urgent" = {
|
||||
background-color = mkLiteral "@urgent";
|
||||
text-color = mkLiteral "@foreground";
|
||||
};
|
||||
"element normal.active" = {
|
||||
background-color = mkLiteral "@active";
|
||||
text-color = mkLiteral "@foreground";
|
||||
};
|
||||
"element selected.normal" = {
|
||||
background-color = mkLiteral "@selected";
|
||||
text-color = mkLiteral "@text-selected";
|
||||
};
|
||||
"element selected.urgent" = {
|
||||
background-color = mkLiteral "@urgent";
|
||||
text-color = mkLiteral "@text-selected";
|
||||
};
|
||||
"element selected.active" = {
|
||||
background-color = mkLiteral "@urgent";
|
||||
text-color = mkLiteral "@text-selected";
|
||||
};
|
||||
"element alternate.normal" = {
|
||||
background-color = mkLiteral "transparent";
|
||||
text-color = mkLiteral "inherit";
|
||||
};
|
||||
"element alternate.urgent" = {
|
||||
background-color = mkLiteral "transparent";
|
||||
text-color = mkLiteral "inherit";
|
||||
};
|
||||
"element alternate.active" = {
|
||||
background-color = mkLiteral "transparent";
|
||||
text-color = mkLiteral "inherit";
|
||||
};
|
||||
"element-icon" = {
|
||||
background-color = mkLiteral "transparent";
|
||||
text-color = mkLiteral "inherit";
|
||||
size = mkLiteral "36px";
|
||||
cursor = mkLiteral "inherit";
|
||||
};
|
||||
"element-text" = {
|
||||
background-color = mkLiteral "transparent";
|
||||
font = "JetBrainsMono Nerd Font Mono 12";
|
||||
text-color = mkLiteral "inherit";
|
||||
cursor = mkLiteral "inherit";
|
||||
vertical-align = mkLiteral "0.5";
|
||||
horizontal-align = mkLiteral "0.0";
|
||||
};
|
||||
"message" = {
|
||||
background-color = mkLiteral "transparent";
|
||||
border = mkLiteral "0px";
|
||||
};
|
||||
"textbox" = {
|
||||
padding = mkLiteral "12px";
|
||||
border-radius = mkLiteral "10px";
|
||||
background-color = mkLiteral "@bg-alt";
|
||||
text-color = mkLiteral "@bg";
|
||||
vertical-align = mkLiteral "0.5";
|
||||
horizontal-align = mkLiteral "0.0";
|
||||
};
|
||||
"error-message" = {
|
||||
padding = mkLiteral "12px";
|
||||
border-radius = mkLiteral "20px";
|
||||
background-color = mkLiteral "@bg-alt";
|
||||
text-color = mkLiteral "@bg";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
@ -1,148 +0,0 @@
|
||||
## FIRST LINE/ROW: Info & Status
|
||||
# First param ─┌
|
||||
[username]
|
||||
format = " [╭─$user]($style)@"
|
||||
show_always = true
|
||||
style_root = "bold red"
|
||||
style_user = "bold red"
|
||||
|
||||
# Second param
|
||||
[hostname]
|
||||
disabled = false
|
||||
format = "[$hostname]($style) in "
|
||||
ssh_only = false
|
||||
style = "bold dimmed red"
|
||||
# If enabled hostnames with dashes will be cut off ##
|
||||
#trim_at = "-"
|
||||
|
||||
# Third param
|
||||
[directory]
|
||||
style = "purple"
|
||||
truncate_to_repo = true
|
||||
truncation_length = 0
|
||||
truncation_symbol = "repo: "
|
||||
|
||||
# Fourth param
|
||||
[sudo]
|
||||
disabled = false
|
||||
|
||||
# Before all the version info (python, nodejs, php, etc.)
|
||||
[git_status]
|
||||
ahead = "⇡${count}"
|
||||
behind = "⇣${count}"
|
||||
deleted = "x"
|
||||
diverged = "⇕⇡${ahead_count}⇣${behind_count}"
|
||||
style = "white"
|
||||
|
||||
# Last param in the first line/row
|
||||
[cmd_duration]
|
||||
disabled = true
|
||||
format = "took [$duration]($style)"
|
||||
min_time = 1
|
||||
|
||||
|
||||
## SECOND LINE/ROW: Prompt
|
||||
# Somethere at the beginning
|
||||
[battery]
|
||||
charging_symbol = ""
|
||||
disabled = true
|
||||
discharging_symbol = ""
|
||||
full_symbol = ""
|
||||
|
||||
[[battery.display]] # "bold red" style when capacity is between 0% and 10%
|
||||
disabled = false
|
||||
style = "bold red"
|
||||
threshold = 15
|
||||
|
||||
[[battery.display]] # "bold yellow" style when capacity is between 10% and 30%
|
||||
disabled = true
|
||||
style = "bold yellow"
|
||||
threshold = 50
|
||||
|
||||
[[battery.display]] # "bold green" style when capacity is between 10% and 30%
|
||||
disabled = true
|
||||
style = "bold green"
|
||||
threshold = 80
|
||||
|
||||
# Prompt: optional param 1
|
||||
[time]
|
||||
disabled = true
|
||||
format = " 🕙 $time($style)\n"
|
||||
style = "bright-white"
|
||||
time_format = "%T"
|
||||
|
||||
# Prompt: param 2
|
||||
[character]
|
||||
error_symbol = " [×](bold red)"
|
||||
success_symbol = " [╰─](bold red)"
|
||||
|
||||
# SYMBOLS
|
||||
[status]
|
||||
disabled = false
|
||||
format = '[\[$symbol$status_common_meaning$status_signal_name$status_maybe_int\]]($style)'
|
||||
map_symbol = true
|
||||
pipestatus = true
|
||||
symbol = "🔴"
|
||||
|
||||
[aws]
|
||||
symbol = " "
|
||||
|
||||
[conda]
|
||||
symbol = " "
|
||||
|
||||
[dart]
|
||||
symbol = " "
|
||||
|
||||
[docker_context]
|
||||
symbol = " "
|
||||
|
||||
[elixir]
|
||||
symbol = " "
|
||||
|
||||
[elm]
|
||||
symbol = " "
|
||||
|
||||
[git_branch]
|
||||
symbol = " "
|
||||
|
||||
[golang]
|
||||
symbol = " "
|
||||
|
||||
[hg_branch]
|
||||
symbol = " "
|
||||
|
||||
[java]
|
||||
symbol = " "
|
||||
|
||||
[julia]
|
||||
symbol = " "
|
||||
|
||||
[nim]
|
||||
symbol = " "
|
||||
|
||||
[nix_shell]
|
||||
symbol = " "
|
||||
|
||||
[nodejs]
|
||||
symbol = " "
|
||||
|
||||
[package]
|
||||
symbol = " "
|
||||
|
||||
[perl]
|
||||
symbol = " "
|
||||
|
||||
[php]
|
||||
symbol = " "
|
||||
|
||||
[python]
|
||||
symbol = " "
|
||||
|
||||
[ruby]
|
||||
symbol = " "
|
||||
|
||||
[rust]
|
||||
symbol = " "
|
||||
|
||||
[swift]
|
||||
symbol = "ﯣ "
|
@ -1,432 +1,312 @@
|
||||
{ pkgs, config, ... }:
|
||||
{ config, ... }:
|
||||
|
||||
let
|
||||
palette = config.colorScheme.palette;
|
||||
in
|
||||
{
|
||||
home.file.".config/swaync/config.json".text = ''
|
||||
{
|
||||
"$schema": "/etc/xdg/swaync/configSchema.json",
|
||||
"positionX": "right",
|
||||
"positionY": "top",
|
||||
"control-center-margin-top": 10,
|
||||
"control-center-margin-bottom": 10,
|
||||
"control-center-margin-right": 10,
|
||||
"control-center-margin-left": 10,
|
||||
"notification-icon-size": 64,
|
||||
"notification-body-image-height": 100,
|
||||
"notification-body-image-width": 200,
|
||||
"timeout": 10,
|
||||
"timeout-low": 5,
|
||||
"timeout-critical": 0,
|
||||
"fit-to-screen": false,
|
||||
"control-center-width": 500,
|
||||
"control-center-height": 1025,
|
||||
"notification-window-width": 500,
|
||||
"keyboard-shortcuts": true,
|
||||
"image-visibility": "when-available",
|
||||
"transition-time": 200,
|
||||
"hide-on-clear": false,
|
||||
"hide-on-action": true,
|
||||
"script-fail-notify": true,
|
||||
"widgets": [
|
||||
"title",
|
||||
"buttons-grid",
|
||||
"mpris",
|
||||
"volume",
|
||||
"backlight",
|
||||
"dnd",
|
||||
"notifications"
|
||||
],
|
||||
"widget-config": {
|
||||
"title": {
|
||||
"text": "Notification Center",
|
||||
"clear-all-button": true,
|
||||
"button-text": " Clear All"
|
||||
},
|
||||
"dnd": {
|
||||
"text": "Do Not Disturb"
|
||||
},
|
||||
"label": {
|
||||
"max-lines": 1,
|
||||
"text": "Notification Center"
|
||||
},
|
||||
"mpris": {
|
||||
"image-size": 96,
|
||||
"image-radius": 7
|
||||
},
|
||||
"volume": {
|
||||
"label": ""
|
||||
},
|
||||
"backlight": {
|
||||
"label": ""
|
||||
},
|
||||
"buttons-grid": {
|
||||
"actions": [
|
||||
{
|
||||
"label": "⏹️",
|
||||
"command": "systemctl poweroff"
|
||||
},
|
||||
{
|
||||
"label": "🔄",
|
||||
"command": "systemctl reboot"
|
||||
},
|
||||
{
|
||||
"label": "🚪",
|
||||
"command": "hyprctl dispatch exit"
|
||||
},
|
||||
{
|
||||
"label": "🗃️",
|
||||
"command": "thunar"
|
||||
},
|
||||
{
|
||||
"label": "📸",
|
||||
"command": "gimp"
|
||||
},
|
||||
{
|
||||
"label": "📣",
|
||||
"command": "pactl set-sink-mute @DEFAULT_SINK@ toggle"
|
||||
},
|
||||
{
|
||||
"label": "🎙️",
|
||||
"command": "pactl set-source-mute @DEFAULT_SOURCE@ toggle"
|
||||
},
|
||||
{
|
||||
"label": "🎮",
|
||||
"command": "steam"
|
||||
},
|
||||
{
|
||||
"label": "🌏",
|
||||
"command": "firefox"
|
||||
},
|
||||
{
|
||||
"label": "📹",
|
||||
"command": "obs"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
{
|
||||
"$schema": "/etc/xdg/swaync/configSchema.json",
|
||||
"positionX": "right",
|
||||
"positionY": "top",
|
||||
"control-center-margin-top": 10,
|
||||
"control-center-margin-bottom": 10,
|
||||
"control-center-margin-right": 10,
|
||||
"control-center-margin-left": 10,
|
||||
"notification-icon-size": 64,
|
||||
"notification-body-image-height": 100,
|
||||
"notification-body-image-width": 200,
|
||||
"timeout": 10,
|
||||
"timeout-low": 5,
|
||||
"timeout-critical": 0,
|
||||
"fit-to-screen": false,
|
||||
"control-center-width": 500,
|
||||
"control-center-height": 1025,
|
||||
"notification-window-width": 500,
|
||||
"keyboard-shortcuts": true,
|
||||
"image-visibility": "when-available",
|
||||
"transition-time": 200,
|
||||
"hide-on-clear": false,
|
||||
"hide-on-action": true,
|
||||
"script-fail-notify": true,
|
||||
"widgets": [
|
||||
"title",
|
||||
"mpris",
|
||||
"volume",
|
||||
"backlight",
|
||||
"dnd",
|
||||
"notifications"
|
||||
],
|
||||
"widget-config": {
|
||||
"title": {
|
||||
"text": "Notification Center",
|
||||
"clear-all-button": true,
|
||||
"button-text": " Clear All"
|
||||
},
|
||||
"dnd": {
|
||||
"text": "Do Not Disturb"
|
||||
},
|
||||
"label": {
|
||||
"max-lines": 1,
|
||||
"text": "Notification Center"
|
||||
},
|
||||
"mpris": {
|
||||
"image-size": 96,
|
||||
"image-radius": 7
|
||||
},
|
||||
"volume": {
|
||||
"label": ""
|
||||
},
|
||||
"backlight": {
|
||||
"label": ""
|
||||
},
|
||||
}
|
||||
}
|
||||
'';
|
||||
|
||||
home.file.".config/swaync/style.css".text = ''
|
||||
* {
|
||||
font-family: Ubuntu;
|
||||
font-weight: bolder;
|
||||
font-family: JetBrainsMono Nerd Font Mono;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.control-center .notification-row:focus,
|
||||
.control-center .notification-row:hover {
|
||||
opacity: 0.9;
|
||||
background: #${palette.base00}
|
||||
opacity: 0.9;
|
||||
background: #${config.stylix.base16Scheme.base00}
|
||||
}
|
||||
|
||||
.notification-row {
|
||||
outline: none;
|
||||
margin: 10px;
|
||||
padding: 0;
|
||||
outline: none;
|
||||
margin: 10px;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.notification {
|
||||
background: transparent;
|
||||
padding: 0;
|
||||
margin: 0px;
|
||||
background: transparent;
|
||||
padding: 0;
|
||||
margin: 0px;
|
||||
}
|
||||
|
||||
.notification-content {
|
||||
background: #${palette.base00};
|
||||
padding: 10px;
|
||||
border-radius: 5px;
|
||||
border: 2px solid #${palette.base0D};
|
||||
margin: 0;
|
||||
background: #${config.stylix.base16Scheme.base00};
|
||||
padding: 10px;
|
||||
border-radius: 5px;
|
||||
border: 2px solid #${config.stylix.base16Scheme.base0D};
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.notification-default-action {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
border-radius: 5px;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
.close-button {
|
||||
background: #${palette.base08};
|
||||
color: #${palette.base00};
|
||||
text-shadow: none;
|
||||
padding: 0;
|
||||
border-radius: 5px;
|
||||
margin-top: 5px;
|
||||
margin-right: 5px;
|
||||
background: #${config.stylix.base16Scheme.base08};
|
||||
color: #${config.stylix.base16Scheme.base00};
|
||||
text-shadow: none;
|
||||
padding: 0;
|
||||
border-radius: 5px;
|
||||
margin-top: 5px;
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
.close-button:hover {
|
||||
box-shadow: none;
|
||||
background: #${palette.base0D};
|
||||
transition: all .15s ease-in-out;
|
||||
border: none
|
||||
box-shadow: none;
|
||||
background: #${config.stylix.base16Scheme.base0D};
|
||||
transition: all .15s ease-in-out;
|
||||
border: none
|
||||
}
|
||||
|
||||
|
||||
.notification-action {
|
||||
border: 2px solid #${palette.base0D};
|
||||
border-top: none;
|
||||
border-radius: 5px;
|
||||
border: 2px solid #${config.stylix.base16Scheme.base0D};
|
||||
border-top: none;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
|
||||
.notification-default-action:hover,
|
||||
.notification-action:hover {
|
||||
color: #${palette.base0B};
|
||||
background: #${palette.base0B}
|
||||
color: #${config.stylix.base16Scheme.base0B};
|
||||
background: #${config.stylix.base16Scheme.base0B}
|
||||
}
|
||||
|
||||
.notification-default-action {
|
||||
border-radius: 5px;
|
||||
margin: 0px;
|
||||
border-radius: 5px;
|
||||
margin: 0px;
|
||||
}
|
||||
|
||||
.notification-default-action:not(:only-child) {
|
||||
border-bottom-left-radius: 7px;
|
||||
border-bottom-right-radius: 7px
|
||||
border-bottom-left-radius: 7px;
|
||||
border-bottom-right-radius: 7px
|
||||
}
|
||||
|
||||
.notification-action:first-child {
|
||||
border-bottom-left-radius: 10px;
|
||||
background: #${palette.base00}
|
||||
border-bottom-left-radius: 10px;
|
||||
background: #${config.stylix.base16Scheme.base00}
|
||||
}
|
||||
|
||||
.notification-action:last-child {
|
||||
border-bottom-right-radius: 10px;
|
||||
background: #${palette.base00}
|
||||
border-bottom-right-radius: 10px;
|
||||
background: #${config.stylix.base16Scheme.base00}
|
||||
}
|
||||
|
||||
.inline-reply {
|
||||
margin-top: 8px
|
||||
margin-top: 8px
|
||||
}
|
||||
|
||||
.inline-reply-entry {
|
||||
background: #${palette.base00};
|
||||
color: #${palette.base05};
|
||||
caret-color: #${palette.base05};
|
||||
border: 1px solid #${palette.base09};
|
||||
border-radius: 5px
|
||||
background: #${config.stylix.base16Scheme.base00};
|
||||
color: #${config.stylix.base16Scheme.base05};
|
||||
caret-color: #${config.stylix.base16Scheme.base05};
|
||||
border: 1px solid #${config.stylix.base16Scheme.base09};
|
||||
border-radius: 5px
|
||||
}
|
||||
|
||||
.inline-reply-button {
|
||||
margin-left: 4px;
|
||||
background: #${palette.base00};
|
||||
border: 1px solid #${palette.base09};
|
||||
border-radius: 5px;
|
||||
color: #${palette.base05}
|
||||
margin-left: 4px;
|
||||
background: #${config.stylix.base16Scheme.base00};
|
||||
border: 1px solid #${config.stylix.base16Scheme.base09};
|
||||
border-radius: 5px;
|
||||
color: #${config.stylix.base16Scheme.base05}
|
||||
}
|
||||
|
||||
.inline-reply-button:disabled {
|
||||
background: initial;
|
||||
color: #${palette.base03};
|
||||
border: 1px solid transparent
|
||||
background: initial;
|
||||
color: #${config.stylix.base16Scheme.base03};
|
||||
border: 1px solid transparent
|
||||
}
|
||||
|
||||
.inline-reply-button:hover {
|
||||
background: #${palette.base00}
|
||||
background: #${config.stylix.base16Scheme.base00}
|
||||
}
|
||||
|
||||
.body-image {
|
||||
margin-top: 6px;
|
||||
background-color: #${palette.base05};
|
||||
border-radius: 5px
|
||||
margin-top: 6px;
|
||||
background-color: #${config.stylix.base16Scheme.base05};
|
||||
border-radius: 5px
|
||||
}
|
||||
|
||||
.summary {
|
||||
font-size: 16px;
|
||||
font-weight: 700;
|
||||
background: transparent;
|
||||
color: rgba(158, 206, 106, 1);
|
||||
text-shadow: none
|
||||
font-size: 16px;
|
||||
font-weight: 700;
|
||||
background: transparent;
|
||||
color: rgba(158, 206, 106, 1);
|
||||
text-shadow: none
|
||||
}
|
||||
|
||||
.time {
|
||||
font-size: 16px;
|
||||
font-weight: 700;
|
||||
background: transparent;
|
||||
color: #${palette.base05};
|
||||
text-shadow: none;
|
||||
margin-right: 18px
|
||||
font-size: 16px;
|
||||
font-weight: 700;
|
||||
background: transparent;
|
||||
color: #${config.stylix.base16Scheme.base05};
|
||||
text-shadow: none;
|
||||
margin-right: 18px
|
||||
}
|
||||
|
||||
.body {
|
||||
font-size: 15px;
|
||||
font-weight: 400;
|
||||
background: transparent;
|
||||
color: #${palette.base05};
|
||||
text-shadow: none
|
||||
font-size: 15px;
|
||||
font-weight: 400;
|
||||
background: transparent;
|
||||
color: #${config.stylix.base16Scheme.base05};
|
||||
text-shadow: none
|
||||
}
|
||||
|
||||
.control-center {
|
||||
background: #${palette.base00};
|
||||
border: 2px solid #${palette.base0C};
|
||||
border-radius: 5px;
|
||||
background: #${config.stylix.base16Scheme.base00};
|
||||
border: 2px solid #${config.stylix.base16Scheme.base0C};
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
.control-center-list {
|
||||
background: transparent
|
||||
background: transparent
|
||||
}
|
||||
|
||||
.control-center-list-placeholder {
|
||||
opacity: .5
|
||||
opacity: .5
|
||||
}
|
||||
|
||||
.floating-notifications {
|
||||
background: transparent
|
||||
background: transparent
|
||||
}
|
||||
|
||||
.blank-window {
|
||||
background: alpha(black, 0)
|
||||
background: alpha(black, 0)
|
||||
}
|
||||
|
||||
.widget-title {
|
||||
color: #${palette.base0B};
|
||||
background: #${palette.base00};
|
||||
padding: 5px 10px;
|
||||
margin: 10px 10px 5px 10px;
|
||||
font-size: 1.5rem;
|
||||
border-radius: 5px;
|
||||
color: #${config.stylix.base16Scheme.base0B};
|
||||
background: #${config.stylix.base16Scheme.base00};
|
||||
padding: 5px 10px;
|
||||
margin: 10px 10px 5px 10px;
|
||||
font-size: 1.5rem;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
.widget-title>button {
|
||||
font-size: 1rem;
|
||||
color: #${palette.base05};
|
||||
text-shadow: none;
|
||||
background: #${palette.base00};
|
||||
box-shadow: none;
|
||||
border-radius: 5px;
|
||||
font-size: 1rem;
|
||||
color: #${config.stylix.base16Scheme.base05};
|
||||
text-shadow: none;
|
||||
background: #${config.stylix.base16Scheme.base00};
|
||||
box-shadow: none;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
.widget-title>button:hover {
|
||||
background: #${palette.base08};
|
||||
color: #${palette.base00};
|
||||
background: #${config.stylix.base16Scheme.base08};
|
||||
color: #${config.stylix.base16Scheme.base00};
|
||||
}
|
||||
|
||||
.widget-dnd {
|
||||
background: #${palette.base00};
|
||||
padding: 5px 10px;
|
||||
margin: 10px 10px 5px 10px;
|
||||
border-radius: 5px;
|
||||
font-size: large;
|
||||
color: #${palette.base0B};
|
||||
background: #${config.stylix.base16Scheme.base00};
|
||||
padding: 5px 10px;
|
||||
margin: 10px 10px 5px 10px;
|
||||
border-radius: 5px;
|
||||
font-size: large;
|
||||
color: #${config.stylix.base16Scheme.base0B};
|
||||
}
|
||||
|
||||
.widget-dnd>switch {
|
||||
border-radius: 5px;
|
||||
/* border: 1px solid #${palette.base0B}; */
|
||||
background: #${palette.base0B};
|
||||
border-radius: 5px;
|
||||
/* border: 1px solid #${config.stylix.base16Scheme.base0B}; */
|
||||
background: #${config.stylix.base16Scheme.base0B};
|
||||
}
|
||||
|
||||
.widget-dnd>switch:checked {
|
||||
background: #${palette.base08};
|
||||
border: 1px solid #${palette.base08};
|
||||
background: #${config.stylix.base16Scheme.base08};
|
||||
border: 1px solid #${config.stylix.base16Scheme.base08};
|
||||
}
|
||||
|
||||
.widget-dnd>switch slider {
|
||||
background: #${palette.base00};
|
||||
border-radius: 5px
|
||||
background: #${config.stylix.base16Scheme.base00};
|
||||
border-radius: 5px
|
||||
}
|
||||
|
||||
.widget-dnd>switch:checked slider {
|
||||
background: #${palette.base00};
|
||||
border-radius: 5px
|
||||
background: #${config.stylix.base16Scheme.base00};
|
||||
border-radius: 5px
|
||||
}
|
||||
|
||||
.widget-label {
|
||||
margin: 10px 10px 5px 10px;
|
||||
}
|
||||
|
||||
.widget-label>label {
|
||||
font-size: 1rem;
|
||||
color: #${palette.base05};
|
||||
font-size: 1rem;
|
||||
color: #${config.stylix.base16Scheme.base05};
|
||||
}
|
||||
|
||||
.widget-mpris {
|
||||
color: #${palette.base05};
|
||||
background: #${palette.base00};
|
||||
padding: 5px 10px;
|
||||
margin: 10px 10px 5px 10px;
|
||||
border-radius: 5px;
|
||||
color: #${config.stylix.base16Scheme.base05};
|
||||
padding: 5px 10px;
|
||||
margin: 10px 10px 5px 10px;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
.widget-mpris > box > button {
|
||||
border-radius: 5px;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
.widget-mpris-player {
|
||||
padding: 5px 10px;
|
||||
margin: 10px
|
||||
padding: 5px 10px;
|
||||
margin: 10px
|
||||
}
|
||||
|
||||
.widget-mpris-title {
|
||||
font-weight: 700;
|
||||
font-size: 1.25rem
|
||||
font-weight: 700;
|
||||
font-size: 1.25rem
|
||||
}
|
||||
|
||||
.widget-mpris-subtitle {
|
||||
font-size: 1.1rem
|
||||
font-size: 1.1rem
|
||||
}
|
||||
|
||||
.widget-buttons-grid {
|
||||
font-size: x-large;
|
||||
padding: 5px;
|
||||
margin: 10px 10px 5px 10px;
|
||||
border-radius: 5px;
|
||||
background: #${palette.base01};
|
||||
}
|
||||
|
||||
.widget-buttons-grid>flowbox>flowboxchild>button {
|
||||
margin: 3px;
|
||||
background: #${palette.base00};
|
||||
border-radius: 5px;
|
||||
color: #${palette.base05};
|
||||
}
|
||||
|
||||
.widget-buttons-grid>flowbox>flowboxchild>button:hover {
|
||||
background: rgba(122, 162, 247, 1);
|
||||
color: #${palette.base00};
|
||||
}
|
||||
|
||||
.widget-menubar>box>.menu-button-bar>button {
|
||||
border: none;
|
||||
background: transparent
|
||||
border: none;
|
||||
background: transparent
|
||||
}
|
||||
|
||||
.topbar-buttons>button {
|
||||
border: none;
|
||||
background: transparent
|
||||
border: none;
|
||||
background: transparent
|
||||
}
|
||||
|
||||
.widget-volume {
|
||||
background: #${palette.base01};
|
||||
padding: 5px;
|
||||
margin: 10px 10px 5px 10px;
|
||||
border-radius: 5px;
|
||||
font-size: x-large;
|
||||
color: #${palette.base05};
|
||||
background: #${config.stylix.base16Scheme.base01};
|
||||
padding: 5px;
|
||||
margin: 10px 10px 5px 10px;
|
||||
border-radius: 5px;
|
||||
font-size: x-large;
|
||||
color: #${config.stylix.base16Scheme.base05};
|
||||
}
|
||||
|
||||
.widget-volume>box>button {
|
||||
background: #${palette.base0B};
|
||||
border: none
|
||||
background: #${config.stylix.base16Scheme.base0B};
|
||||
border: none
|
||||
}
|
||||
|
||||
.per-app-volume {
|
||||
background-color: #${palette.base00};
|
||||
padding: 4px 8px 8px;
|
||||
margin: 0 8px 8px;
|
||||
border-radius: 5px;
|
||||
background-color: #${config.stylix.base16Scheme.base00};
|
||||
padding: 4px 8px 8px;
|
||||
margin: 0 8px 8px;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
.widget-backlight {
|
||||
background: #${palette.base01};
|
||||
padding: 5px;
|
||||
margin: 10px 10px 5px 10px;
|
||||
border-radius: 5px;
|
||||
font-size: x-large;
|
||||
color: #${palette.base05}
|
||||
background: #${config.stylix.base16Scheme.base01};
|
||||
padding: 5px;
|
||||
margin: 10px 10px 5px 10px;
|
||||
border-radius: 5px;
|
||||
font-size: x-large;
|
||||
color: #${config.stylix.base16Scheme.base05}
|
||||
}
|
||||
'';
|
||||
}
|
||||
|
BIN
config/wallpapers/beautifulmountainscape.jpg
Normal file
BIN
config/wallpapers/beautifulmountainscape.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 439 KiB |
BIN
config/wallpapers/mountainscapedark.jpg
Normal file
BIN
config/wallpapers/mountainscapedark.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 295 KiB |
@ -1,15 +1,14 @@
|
||||
{
|
||||
pkgs,
|
||||
config,
|
||||
lib,
|
||||
host,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
|
||||
let
|
||||
palette = config.colorScheme.palette;
|
||||
betterTransition = "all 0.3s cubic-bezier(.55,-0.68,.48,1.682)";
|
||||
inherit (import ../hosts/${host}/variables.nix) clock24h waybarAnimations;
|
||||
inherit (import ../hosts/${host}/variables.nix) clock24h;
|
||||
in
|
||||
with lib;
|
||||
{
|
||||
@ -32,7 +31,6 @@ with lib;
|
||||
];
|
||||
modules-right = [
|
||||
"custom/hyprbindings"
|
||||
"custom/themeselector"
|
||||
"custom/notification"
|
||||
"custom/exit"
|
||||
"battery"
|
||||
@ -114,11 +112,6 @@ with lib;
|
||||
};
|
||||
on-click = "sleep 0.1 && pavucontrol";
|
||||
};
|
||||
"custom/themeselector" = {
|
||||
tooltip = false;
|
||||
format = "";
|
||||
on-click = "sleep 0.1 && theme-selector";
|
||||
};
|
||||
"custom/exit" = {
|
||||
tooltip = false;
|
||||
format = "";
|
||||
@ -128,7 +121,7 @@ with lib;
|
||||
tooltip = false;
|
||||
format = "";
|
||||
# exec = "rofi -show drun";
|
||||
on-click = "sleep 0.1 && wofi";
|
||||
on-click = "sleep 0.1 && rofi-launcher";
|
||||
};
|
||||
"custom/hyprbindings" = {
|
||||
tooltip = false;
|
||||
@ -190,20 +183,20 @@ with lib;
|
||||
style = concatStrings [
|
||||
''
|
||||
* {
|
||||
font-family: JetBrainsMono Nerd Font Mono;
|
||||
font-size: 16px;
|
||||
border-radius: 0px;
|
||||
border: none;
|
||||
font-family: JetBrainsMono Nerd Font Mono;
|
||||
min-height: 0px;
|
||||
}
|
||||
window#waybar {
|
||||
background-color: #${palette.base00};
|
||||
window#waybar {
|
||||
background: rgba(0,0,0,0);
|
||||
}
|
||||
#workspaces {
|
||||
color: #${palette.base00};
|
||||
background: #${palette.base01};
|
||||
color: #${config.stylix.base16Scheme.base00};
|
||||
background: #${config.stylix.base16Scheme.base01};
|
||||
margin: 4px 4px;
|
||||
padding: 8px 5px;
|
||||
padding: 5px 5px;
|
||||
border-radius: 16px;
|
||||
}
|
||||
#workspaces button {
|
||||
@ -211,17 +204,8 @@ with lib;
|
||||
padding: 0px 5px;
|
||||
margin: 0px 3px;
|
||||
border-radius: 16px;
|
||||
color: #${palette.base00};
|
||||
background: linear-gradient(45deg, #${palette.base0E}, #${palette.base0F}, #${palette.base0D}, #${palette.base09});
|
||||
background-size: 300% 300%;
|
||||
${
|
||||
if waybarAnimations == true then
|
||||
''
|
||||
animation: gradient_horizontal 15s ease infinite;
|
||||
''
|
||||
else
|
||||
''''
|
||||
}
|
||||
color: #${config.stylix.base16Scheme.base00};
|
||||
background: linear-gradient(45deg, #${config.stylix.base16Scheme.base08}, #${config.stylix.base16Scheme.base0D});
|
||||
opacity: 0.5;
|
||||
transition: ${betterTransition};
|
||||
}
|
||||
@ -230,17 +214,8 @@ with lib;
|
||||
padding: 0px 5px;
|
||||
margin: 0px 3px;
|
||||
border-radius: 16px;
|
||||
color: #${palette.base00};
|
||||
background: linear-gradient(45deg, #${palette.base0E}, #${palette.base0F}, #${palette.base0D}, #${palette.base09});
|
||||
background-size: 300% 300%;
|
||||
${
|
||||
if waybarAnimations == true then
|
||||
''
|
||||
animation: gradient_horizontal 15s ease infinite;
|
||||
''
|
||||
else
|
||||
''''
|
||||
}
|
||||
color: #${config.stylix.base16Scheme.base00};
|
||||
background: linear-gradient(45deg, #${config.stylix.base16Scheme.base08}, #${config.stylix.base16Scheme.base0D});
|
||||
transition: ${betterTransition};
|
||||
opacity: 1.0;
|
||||
min-width: 40px;
|
||||
@ -248,69 +223,41 @@ with lib;
|
||||
#workspaces button:hover {
|
||||
font-weight: bold;
|
||||
border-radius: 16px;
|
||||
color: #${palette.base00};
|
||||
background: linear-gradient(45deg, #${palette.base0E}, #${palette.base0F}, #${palette.base0D}, #${palette.base09});
|
||||
background-size: 300% 300%;
|
||||
${
|
||||
if waybarAnimations == true then
|
||||
''
|
||||
animation: gradient_horizontal 15s ease infinite;
|
||||
''
|
||||
else
|
||||
''''
|
||||
}
|
||||
color: #${config.stylix.base16Scheme.base00};
|
||||
background: linear-gradient(45deg, #${config.stylix.base16Scheme.base08}, #${config.stylix.base16Scheme.base0D});
|
||||
opacity: 0.8;
|
||||
transition: ${betterTransition};
|
||||
}
|
||||
@keyframes gradient_horizontal {
|
||||
0% {
|
||||
background-position: 0% 50%;
|
||||
}
|
||||
50% {
|
||||
background-position: 100% 50%;
|
||||
}
|
||||
100% {
|
||||
background-position: 0% 50%;
|
||||
}
|
||||
}
|
||||
@keyframes swiping {
|
||||
0% {
|
||||
background-position: 0% 200%;
|
||||
}
|
||||
100% {
|
||||
background-position: 200% 200%;
|
||||
}
|
||||
}
|
||||
tooltip {
|
||||
background: #${palette.base00};
|
||||
border: 1px solid #${palette.base0E};
|
||||
background: #${config.stylix.base16Scheme.base00};
|
||||
border: 1px solid #${config.stylix.base16Scheme.base08};
|
||||
border-radius: 12px;
|
||||
}
|
||||
tooltip label {
|
||||
color: #${palette.base07};
|
||||
color: #${config.stylix.base16Scheme.base08};
|
||||
}
|
||||
#window, #pulseaudio, #cpu, #memory, #idle_inhibitor {
|
||||
font-weight: bold;
|
||||
margin: 4px 0px;
|
||||
margin-left: 7px;
|
||||
padding: 0px 18px;
|
||||
color: #${palette.base05};
|
||||
background: #${palette.base01};
|
||||
background: #${config.stylix.base16Scheme.base04};
|
||||
color: #${config.stylix.base16Scheme.base00};
|
||||
border-radius: 24px 10px 24px 10px;
|
||||
}
|
||||
#custom-startmenu {
|
||||
color: #${palette.base0D};
|
||||
background: #${palette.base01};
|
||||
color: #${config.stylix.base16Scheme.base0B};
|
||||
background: #${config.stylix.base16Scheme.base02};
|
||||
font-size: 28px;
|
||||
margin: 0px;
|
||||
padding: 0px 30px 0px 15px;
|
||||
border-radius: 0px 0px 40px 0px;
|
||||
}
|
||||
#custom-hyprbindings, #network, #custom-themeselector, #battery,
|
||||
#custom-hyprbindings, #network, #battery,
|
||||
#custom-notification, #tray, #custom-exit {
|
||||
font-weight: bold;
|
||||
background: #${palette.base01};
|
||||
color: #${palette.base05};
|
||||
background: #${config.stylix.base16Scheme.base0F};
|
||||
color: #${config.stylix.base16Scheme.base00};
|
||||
margin: 4px 0px;
|
||||
margin-right: 7px;
|
||||
border-radius: 10px 24px 10px 24px;
|
||||
@ -318,17 +265,8 @@ with lib;
|
||||
}
|
||||
#clock {
|
||||
font-weight: bold;
|
||||
color: #${palette.base00};
|
||||
background: linear-gradient(45deg, #${palette.base0C}, #${palette.base0F}, #${palette.base0B}, #${palette.base08});
|
||||
background-size: 300% 300%;
|
||||
${
|
||||
if waybarAnimations == true then
|
||||
''
|
||||
animation: gradient_horizontal 15s ease infinite;
|
||||
''
|
||||
else
|
||||
''''
|
||||
}
|
||||
color: #0D0E15;
|
||||
background: linear-gradient(90deg, #${config.stylix.base16Scheme.base0E}, #${config.stylix.base16Scheme.base0C});
|
||||
margin: 0px;
|
||||
padding: 0px 15px 0px 30px;
|
||||
border-radius: 0px 0px 0px 40px;
|
||||
|
@ -1,13 +1,5 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
{ config, ... }:
|
||||
|
||||
let
|
||||
palette = config.colorScheme.palette;
|
||||
in
|
||||
{
|
||||
programs.wlogout = {
|
||||
enable = true;
|
||||
@ -59,22 +51,22 @@ in
|
||||
background-color: rgba(12, 12, 12, 0.1);
|
||||
}
|
||||
button {
|
||||
color: #${palette.base05};
|
||||
color: #${config.stylix.base16Scheme.base05};
|
||||
font-size:20px;
|
||||
background-repeat: no-repeat;
|
||||
background-position: center;
|
||||
background-size: 25%;
|
||||
border-style: solid;
|
||||
background-color: rgba(12, 12, 12, 0.3);
|
||||
border: 3px solid #${palette.base05};
|
||||
border: 3px solid #${config.stylix.base16Scheme.base05};
|
||||
box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
|
||||
}
|
||||
button:focus,
|
||||
button:active,
|
||||
button:hover {
|
||||
color: #${palette.base0E};
|
||||
color: #${config.stylix.base16Scheme.base0B};
|
||||
background-color: rgba(12, 12, 12, 0.5);
|
||||
border: 3px solid #${palette.base0E};
|
||||
border: 3px solid #${config.stylix.base16Scheme.base0B};
|
||||
}
|
||||
#logout {
|
||||
margin: 10px;
|
||||
|
472
flake.lock
472
flake.lock
@ -1,18 +1,181 @@
|
||||
{
|
||||
"nodes": {
|
||||
"base16-schemes": {
|
||||
"base16": {
|
||||
"inputs": {
|
||||
"fromYaml": "fromYaml"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1708890466,
|
||||
"narHash": "sha256-LlrC09LoPi8OPYOGPXegD72v+//VapgAqhbOFS3i8sc=",
|
||||
"owner": "SenchoPens",
|
||||
"repo": "base16.nix",
|
||||
"rev": "665b3c6748534eb766c777298721cece9453fdae",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "SenchoPens",
|
||||
"repo": "base16.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"base16-fish": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1696158499,
|
||||
"narHash": "sha256-5yIHgDTPjoX/3oDEfLSQ0eJZdFL1SaCfb9d6M0RmOTM=",
|
||||
"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-schemes",
|
||||
"rev": "a9112eaae86d9dd8ee6bb9445b664fba2f94037a",
|
||||
"repo": "base16-foot",
|
||||
"rev": "eedbcfa30de0a4baa03e99f5e3ceb5535c2755ce",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-schemes",
|
||||
"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": 1716150083,
|
||||
"narHash": "sha256-ZMhnNmw34ogE5rJZrjRv5MtG3WaqKd60ds2VXvT6hEc=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-vim",
|
||||
"rev": "6e955d704d046b0dc3e5c2d68a2a6eeffd2b5d3d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-vim",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"fine-cmdline": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1700512774,
|
||||
"narHash": "sha256-w9wwjClkOWk3wCgEiZIFLZRJ/gAfX38x2LnVRaelKD8=",
|
||||
"owner": "VonHeikemen",
|
||||
"repo": "fine-cmdline.nvim",
|
||||
"rev": "dd676584145d62b30d7e8dbdd011796a8f0a065f",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "VonHeikemen",
|
||||
"repo": "fine-cmdline.nvim",
|
||||
"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"
|
||||
}
|
||||
},
|
||||
"gnome-shell": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1713702291,
|
||||
"narHash": "sha256-zYP1ehjtcV8fo+c+JFfkAqktZ384Y+y779fzmR9lQAU=",
|
||||
"owner": "GNOME",
|
||||
"repo": "gnome-shell",
|
||||
"rev": "0d0aadf013f78a7f7f1dc984d0d812971864b934",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "GNOME",
|
||||
"ref": "46.1",
|
||||
"repo": "gnome-shell",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
@ -22,6 +185,28 @@
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1718526747,
|
||||
"narHash": "sha256-sKrD/utGvmtQALvuDj4j0CT3AJXP1idOAq2p+27TpeE=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "0a7ffb28e5df5844d0e8039c9833d7075cdee792",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"ref": "master",
|
||||
"repo": "home-manager",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"home-manager_2": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"stylix",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1715930644,
|
||||
"narHash": "sha256-W9pyM3/vePxrffHtzlJI6lDS3seANQ+Nqp+i58O46LI=",
|
||||
@ -32,284 +217,75 @@
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"ref": "master",
|
||||
"repo": "home-manager",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprcursor": {
|
||||
"inputs": {
|
||||
"hyprlang": [
|
||||
"hyprland",
|
||||
"hyprlang"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1715791817,
|
||||
"narHash": "sha256-J069Uhv/gCMFLX1dSh2f+9ZTM09r1Nv3oUfocCnWKow=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprcursor",
|
||||
"rev": "7c3aa03dffb53921e583ade3d4ae3f487e390e7e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprcursor",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprland": {
|
||||
"inputs": {
|
||||
"hyprcursor": "hyprcursor",
|
||||
"hyprlang": "hyprlang",
|
||||
"hyprwayland-scanner": "hyprwayland-scanner",
|
||||
"nixpkgs": "nixpkgs",
|
||||
"systems": "systems",
|
||||
"xdph": "xdph"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1716063601,
|
||||
"narHash": "sha256-gAuCKupztnqai1tZ6TyCFCRbeFzbggL0Oe0vl0/cwK8=",
|
||||
"ref": "refs/heads/main",
|
||||
"rev": "f8857e6072bd85b95393499688872aaf7f088b5b",
|
||||
"revCount": 4719,
|
||||
"submodules": true,
|
||||
"type": "git",
|
||||
"url": "https://github.com/hyprwm/Hyprland"
|
||||
},
|
||||
"original": {
|
||||
"submodules": true,
|
||||
"type": "git",
|
||||
"url": "https://github.com/hyprwm/Hyprland"
|
||||
}
|
||||
},
|
||||
"hyprland-plugins": {
|
||||
"inputs": {
|
||||
"hyprland": [
|
||||
"hyprland"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland-plugins",
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1715722806,
|
||||
"narHash": "sha256-KrSLG2H3KGELxTFdiBhv8U6D53Q3UsJsQO+KgEabsNA=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-plugins",
|
||||
"rev": "c28d1011f4868c1a1ee80b10d9ee79900686df82",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-plugins",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprland-protocols": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"xdph",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"xdph",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1691753796,
|
||||
"narHash": "sha256-zOEwiWoXk3j3+EoF3ySUJmberFewWlagvewDRuWYAso=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-protocols",
|
||||
"rev": "0c2ce70625cb30aef199cb388f99e19a61a6ce03",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-protocols",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprlang": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1715791527,
|
||||
"narHash": "sha256-HhQ4zvGHrRjR63ltySSeg+x+0jb0lepiutWdnFhLRoo=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprlang",
|
||||
"rev": "969cb076e5b76f2e823aeca1937a3e1f159812ee",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprlang",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprwayland-scanner": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1715879663,
|
||||
"narHash": "sha256-/DwglRvj4XF4ECdNtrCIbthleszAZBwOiXG5A6r0K/c=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprwayland-scanner",
|
||||
"rev": "f5181a068c1b06f2db51f6222e50a0c665a2b0c3",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprwayland-scanner",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nix-colors": {
|
||||
"inputs": {
|
||||
"base16-schemes": "base16-schemes",
|
||||
"nixpkgs-lib": "nixpkgs-lib"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1707825078,
|
||||
"narHash": "sha256-hTfge2J2W+42SZ7VHXkf4kjU+qzFqPeC9k66jAUBMHk=",
|
||||
"owner": "misterio77",
|
||||
"repo": "nix-colors",
|
||||
"rev": "b01f024090d2c4fc3152cd0cf12027a7b8453ba1",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "misterio77",
|
||||
"repo": "nix-colors",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1715787315,
|
||||
"narHash": "sha256-cYApT0NXJfqBkKcci7D9Kr4CBYZKOQKDYA23q8XNuWg=",
|
||||
"owner": "NixOS",
|
||||
"lastModified": 1718318537,
|
||||
"narHash": "sha256-4Zu0RYRcAY/VWuu6awwq4opuiD//ahpc2aFHg2CWqFY=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "33d1e753c82ffc557b4a585c77de43d4c922ebb5",
|
||||
"rev": "e9ee548d90ff586a6471b4ae80ae9cfcbceb3420",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"owner": "nixos",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-lib": {
|
||||
"locked": {
|
||||
"lastModified": 1697935651,
|
||||
"narHash": "sha256-qOfWjQ2JQSQL15KLh6D7xQhx0qgZlYZTYlcEiRuAMMw=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixpkgs.lib",
|
||||
"rev": "e1e11fdbb01113d85c7f41cada9d2847660e3902",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "nixpkgs.lib",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1716137900,
|
||||
"narHash": "sha256-sowPU+tLQv8GlqtVtsXioTKeaQvlMz/pefcdwg8MvfM=",
|
||||
"owner": "nixos",
|
||||
"lastModified": 1714912032,
|
||||
"narHash": "sha256-clkcOIkg8G4xuJh+1onLG4HPMpbtzdLv4rHxFzgsH9c=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "6c0b7a92c30122196a761b440ac0d46d3d9954f1",
|
||||
"rev": "ee4a6e0f566fe5ec79968c57a9c2c3c25f2cf41d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"ref": "nixos-unstable",
|
||||
"owner": "NixOS",
|
||||
"ref": "nixpkgs-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"fine-cmdline": "fine-cmdline",
|
||||
"home-manager": "home-manager",
|
||||
"hyprland": "hyprland",
|
||||
"hyprland-plugins": "hyprland-plugins",
|
||||
"nix-colors": "nix-colors",
|
||||
"nixpkgs": "nixpkgs_2"
|
||||
"nixpkgs": "nixpkgs",
|
||||
"stylix": "stylix"
|
||||
}
|
||||
},
|
||||
"systems": {
|
||||
"locked": {
|
||||
"lastModified": 1689347949,
|
||||
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default-linux",
|
||||
"rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default-linux",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"xdph": {
|
||||
"stylix": {
|
||||
"inputs": {
|
||||
"hyprland-protocols": "hyprland-protocols",
|
||||
"hyprlang": [
|
||||
"hyprland",
|
||||
"hyprlang"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
"base16": "base16",
|
||||
"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",
|
||||
"gnome-shell": "gnome-shell",
|
||||
"home-manager": "home-manager_2",
|
||||
"nixpkgs": "nixpkgs_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1715788457,
|
||||
"narHash": "sha256-32HOkjSIyANphV0p5gIwP4ONU/CcinhwOyVFB+tL/d0=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "xdg-desktop-portal-hyprland",
|
||||
"rev": "af7c87a32f5d67eb2ada908a6a700f4e74831943",
|
||||
"lastModified": 1718634635,
|
||||
"narHash": "sha256-REUyeY+gD/QuTwAhuJycheej0FWFGPTosI+jiG5TsQk=",
|
||||
"owner": "danth",
|
||||
"repo": "stylix",
|
||||
"rev": "f13c946181730f98e1a5cd09714100490207b250",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "xdg-desktop-portal-hyprland",
|
||||
"owner": "danth",
|
||||
"repo": "stylix",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
|
28
flake.nix
28
flake.nix
@ -5,27 +5,25 @@
|
||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||
home-manager.url = "github:nix-community/home-manager/master";
|
||||
home-manager.inputs.nixpkgs.follows = "nixpkgs";
|
||||
nix-colors.url = "github:misterio77/nix-colors";
|
||||
hyprland.url = "git+https://github.com/hyprwm/Hyprland?submodules=1";
|
||||
hyprland-plugins = {
|
||||
url = "github:hyprwm/hyprland-plugins";
|
||||
inputs.hyprland.follows = "hyprland";
|
||||
stylix.url = "github:danth/stylix";
|
||||
fine-cmdline = {
|
||||
url = "github:VonHeikemen/fine-cmdline.nvim";
|
||||
flake = false;
|
||||
};
|
||||
# This is required for plugin support.
|
||||
# hyprland.url = "git+https://github.com/hyprwm/Hyprland?submodules=1";
|
||||
# hyprland-plugins = {
|
||||
# url = "github:hyprwm/hyprland-plugins";
|
||||
# inputs.hyprland.follows = "hyprland";
|
||||
# };
|
||||
};
|
||||
|
||||
outputs =
|
||||
inputs@{ nixpkgs, home-manager, ... }:
|
||||
{ nixpkgs, home-manager, ... }@inputs:
|
||||
let
|
||||
system = "x86_64-linux";
|
||||
host = "familypc";
|
||||
host = "default";
|
||||
username = "zaney";
|
||||
|
||||
pkgs = import nixpkgs {
|
||||
inherit system;
|
||||
config = {
|
||||
allowUnfree = true;
|
||||
};
|
||||
};
|
||||
in
|
||||
{
|
||||
nixosConfigurations = {
|
||||
@ -38,13 +36,13 @@
|
||||
};
|
||||
modules = [
|
||||
./hosts/${host}/config.nix
|
||||
inputs.stylix.nixosModules.stylix
|
||||
home-manager.nixosModules.home-manager
|
||||
{
|
||||
home-manager.extraSpecialArgs = {
|
||||
inherit username;
|
||||
inherit inputs;
|
||||
inherit host;
|
||||
inherit (inputs.nix-colors.lib-contrib { inherit pkgs; }) gtkThemeFromScheme;
|
||||
};
|
||||
home-manager.useGlobalPkgs = true;
|
||||
home-manager.useUserPackages = true;
|
||||
|
@ -2,7 +2,6 @@
|
||||
config,
|
||||
pkgs,
|
||||
host,
|
||||
inputs,
|
||||
username,
|
||||
options,
|
||||
...
|
||||
@ -20,38 +19,100 @@
|
||||
../../modules/local-hardware-clock.nix
|
||||
];
|
||||
|
||||
# Kernel
|
||||
boot.kernelPackages = pkgs.linuxPackages;
|
||||
# boot.kernelPackages = pkgs.linuxPackages_zen;
|
||||
|
||||
# Bootloader.
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
boot.kernel.sysctl = {
|
||||
"vm.max_map_count" = 2147483642;
|
||||
};
|
||||
boot.tmp.useTmpfs = false;
|
||||
boot.tmp.tmpfsSize = "30%";
|
||||
boot.binfmt.registrations.appimage = {
|
||||
wrapInterpreterInShell = false;
|
||||
interpreter = "${pkgs.appimage-run}/bin/appimage-run";
|
||||
recognitionType = "magic";
|
||||
offset = 0;
|
||||
mask = ''\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff'';
|
||||
magicOrExtension = ''\x7fELF....AI\x02'';
|
||||
boot = {
|
||||
# Kernel
|
||||
kernelPackages = pkgs.linuxPackages_zen;
|
||||
# This is for OBS Virtual Cam Support
|
||||
kernelModules = [ "v4l2loopback" ];
|
||||
extraModulePackages = [ config.boot.kernelPackages.v4l2loopback ];
|
||||
# Needed For Some Steam Games
|
||||
kernel.sysctl = {
|
||||
"vm.max_map_count" = 2147483642;
|
||||
};
|
||||
# Bootloader.
|
||||
loader.systemd-boot.enable = true;
|
||||
loader.efi.canTouchEfiVariables = true;
|
||||
# Make /tmp a tmpfs
|
||||
tmp = {
|
||||
useTmpfs = false;
|
||||
tmpfsSize = "30%";
|
||||
};
|
||||
# Appimage Support
|
||||
binfmt.registrations.appimage = {
|
||||
wrapInterpreterInShell = false;
|
||||
interpreter = "${pkgs.appimage-run}/bin/appimage-run";
|
||||
recognitionType = "magic";
|
||||
offset = 0;
|
||||
mask = ''\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff'';
|
||||
magicOrExtension = ''\x7fELF....AI\x02'';
|
||||
};
|
||||
plymouth.enable = true;
|
||||
};
|
||||
|
||||
# This is for OBS Virtual Cam Support - v4l2loopback setup
|
||||
boot.kernelModules = [ "v4l2loopback" ];
|
||||
boot.extraModulePackages = [ config.boot.kernelPackages.v4l2loopback ];
|
||||
# Styling Options
|
||||
stylix = {
|
||||
enable = true;
|
||||
image = ../../config/wallpapers/beautifulmountainscape.jpg;
|
||||
# base16Scheme = {
|
||||
# base00 = "232136";
|
||||
# base01 = "2a273f";
|
||||
# base02 = "393552";
|
||||
# base03 = "6e6a86";
|
||||
# base04 = "908caa";
|
||||
# base05 = "e0def4";
|
||||
# base06 = "e0def4";
|
||||
# base07 = "56526e";
|
||||
# base08 = "eb6f92";
|
||||
# base09 = "f6c177";
|
||||
# base0A = "ea9a97";
|
||||
# base0B = "3e8fb0";
|
||||
# base0C = "9ccfd8";
|
||||
# base0D = "c4a7e7";
|
||||
# base0E = "f6c177";
|
||||
# base0F = "56526e";
|
||||
# };
|
||||
polarity = "dark";
|
||||
opacity.terminal = 0.8;
|
||||
cursor.package = pkgs.bibata-cursors;
|
||||
cursor.name = "Bibata-Modern-Ice";
|
||||
cursor.size = 24;
|
||||
fonts = {
|
||||
monospace = {
|
||||
package = pkgs.nerdfonts.override { fonts = [ "JetBrainsMono" ]; };
|
||||
name = "JetBrainsMono Nerd Font Mono";
|
||||
};
|
||||
sansSerif = {
|
||||
package = pkgs.montserrat;
|
||||
name = "Montserrat";
|
||||
};
|
||||
serif = {
|
||||
package = pkgs.montserrat;
|
||||
name = "Montserrat";
|
||||
};
|
||||
sizes = {
|
||||
applications = 12;
|
||||
terminal = 15;
|
||||
desktop = 11;
|
||||
popups = 12;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
# Configure network proxy if necessary
|
||||
# networking.proxy.default = "http://user:password@proxy:port/";
|
||||
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
|
||||
# Extra Module Options
|
||||
drivers.amdgpu.enable = true;
|
||||
drivers.nvidia.enable = false;
|
||||
drivers.nvidia-prime = {
|
||||
enable = false;
|
||||
intelBusID = "";
|
||||
nvidiaBusID = "";
|
||||
};
|
||||
drivers.intel.enable = false;
|
||||
vm.guest-services.enable = false;
|
||||
local.hardware-clock.enable = false;
|
||||
|
||||
# Enable networking
|
||||
networking.networkmanager.enable = true;
|
||||
networking.hostName = "${host}";
|
||||
networking.hostName = host;
|
||||
networking.timeServers = options.networking.timeServers.default ++ [ "pool.ntp.org" ];
|
||||
|
||||
# Set your time zone.
|
||||
@ -73,12 +134,76 @@
|
||||
};
|
||||
|
||||
programs = {
|
||||
hyprland = {
|
||||
firefox.enable = false;
|
||||
starship = {
|
||||
enable = true;
|
||||
package = inputs.hyprland.packages.${pkgs.system}.hyprland;
|
||||
xwayland.enable = true;
|
||||
settings = {
|
||||
add_newline = false;
|
||||
buf = {
|
||||
symbol = " ";
|
||||
};
|
||||
c = {
|
||||
symbol = " ";
|
||||
};
|
||||
directory = {
|
||||
read_only = " ";
|
||||
};
|
||||
docker_context = {
|
||||
symbol = " ";
|
||||
};
|
||||
fossil_branch = {
|
||||
symbol = " ";
|
||||
};
|
||||
git_branch = {
|
||||
symbol = " ";
|
||||
};
|
||||
golang = {
|
||||
symbol = " ";
|
||||
};
|
||||
hg_branch = {
|
||||
symbol = " ";
|
||||
};
|
||||
hostname = {
|
||||
ssh_symbol = " ";
|
||||
};
|
||||
lua = {
|
||||
symbol = " ";
|
||||
};
|
||||
memory_usage = {
|
||||
symbol = " ";
|
||||
};
|
||||
meson = {
|
||||
symbol = " ";
|
||||
};
|
||||
nim = {
|
||||
symbol = " ";
|
||||
};
|
||||
nix_shell = {
|
||||
symbol = " ";
|
||||
};
|
||||
nodejs = {
|
||||
symbol = " ";
|
||||
};
|
||||
ocaml = {
|
||||
symbol = " ";
|
||||
};
|
||||
package = {
|
||||
symbol = " ";
|
||||
};
|
||||
python = {
|
||||
symbol = " ";
|
||||
};
|
||||
rust = {
|
||||
symbol = " ";
|
||||
};
|
||||
swift = {
|
||||
symbol = " ";
|
||||
};
|
||||
zig = {
|
||||
symbol = " ";
|
||||
};
|
||||
};
|
||||
};
|
||||
firefox.enable = true;
|
||||
dconf.enable = true;
|
||||
seahorse.enable = true;
|
||||
fuse.userAllowOther = true;
|
||||
@ -96,7 +221,10 @@
|
||||
};
|
||||
thunar = {
|
||||
enable = true;
|
||||
plugins = with pkgs.xfce; [ thunar-archive-plugin thunar-volman ];
|
||||
plugins = with pkgs.xfce; [
|
||||
thunar-archive-plugin
|
||||
thunar-volman
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
@ -106,111 +234,134 @@
|
||||
mutableUsers = true;
|
||||
};
|
||||
|
||||
environment.systemPackages =
|
||||
let
|
||||
sugar = pkgs.callPackage ../../pkgs/sddm-sugar-dark.nix { };
|
||||
tokyo-night = pkgs.libsForQt5.callPackage ../../pkgs/sddm-tokyo-night.nix { };
|
||||
in
|
||||
with pkgs;
|
||||
[
|
||||
vim
|
||||
wget
|
||||
killall
|
||||
git
|
||||
cmatrix
|
||||
lolcat
|
||||
neofetch
|
||||
htop
|
||||
libvirt
|
||||
lxqt.lxqt-policykit
|
||||
mangohud
|
||||
lm_sensors
|
||||
unzip
|
||||
unrar
|
||||
libnotify
|
||||
eza
|
||||
v4l-utils
|
||||
ydotool
|
||||
wl-clipboard
|
||||
lm_sensors
|
||||
pciutils
|
||||
socat
|
||||
cowsay
|
||||
ripgrep
|
||||
lsd
|
||||
lshw
|
||||
pkg-config
|
||||
meson
|
||||
gnumake
|
||||
ninja
|
||||
symbola
|
||||
noto-fonts-color-emoji
|
||||
material-icons
|
||||
brightnessctl
|
||||
virt-viewer
|
||||
swappy
|
||||
appimage-run
|
||||
networkmanagerapplet
|
||||
yad
|
||||
playerctl
|
||||
nh
|
||||
nixfmt-rfc-style
|
||||
discord
|
||||
libvirt
|
||||
swww
|
||||
grim
|
||||
slurp
|
||||
gnome.file-roller
|
||||
swaynotificationcenter
|
||||
imv
|
||||
transmission-gtk
|
||||
distrobox
|
||||
mpv
|
||||
gimp
|
||||
obs-studio
|
||||
rustup
|
||||
audacity
|
||||
pavucontrol
|
||||
tree
|
||||
protonup-qt
|
||||
environment.systemPackages = with pkgs; [
|
||||
vim
|
||||
wget
|
||||
killall
|
||||
eza
|
||||
git
|
||||
cmatrix
|
||||
lolcat
|
||||
fastfetch
|
||||
htop
|
||||
brave
|
||||
libvirt
|
||||
lxqt.lxqt-policykit
|
||||
lm_sensors
|
||||
unzip
|
||||
unrar
|
||||
libnotify
|
||||
v4l-utils
|
||||
ydotool
|
||||
duf
|
||||
ncdu
|
||||
wl-clipboard
|
||||
pciutils
|
||||
ffmpeg
|
||||
socat
|
||||
cowsay
|
||||
ripgrep
|
||||
lshw
|
||||
bat
|
||||
pkg-config
|
||||
meson
|
||||
hyprpicker
|
||||
ninja
|
||||
brightnessctl
|
||||
virt-viewer
|
||||
swappy
|
||||
appimage-run
|
||||
networkmanagerapplet
|
||||
yad
|
||||
inxi
|
||||
playerctl
|
||||
nh
|
||||
nixfmt-rfc-style
|
||||
discord
|
||||
libvirt
|
||||
swww
|
||||
grim
|
||||
slurp
|
||||
gnome.file-roller
|
||||
swaynotificationcenter
|
||||
imv
|
||||
mpv
|
||||
gimp
|
||||
pavucontrol
|
||||
tree
|
||||
spotify
|
||||
neovide
|
||||
greetd.tuigreet
|
||||
];
|
||||
|
||||
fonts = {
|
||||
packages = with pkgs; [
|
||||
noto-fonts-emoji
|
||||
noto-fonts-cjk
|
||||
font-awesome
|
||||
spotify
|
||||
neovide
|
||||
(nerdfonts.override { fonts = [ "JetBrainsMono" ]; })
|
||||
sugar.sddm-sugar-dark # Name: sugar-dark
|
||||
tokyo-night # Name: tokyo-night-sddm
|
||||
pkgs.libsForQt5.qt5.qtgraphicaleffects
|
||||
symbola
|
||||
material-icons
|
||||
];
|
||||
};
|
||||
|
||||
environment.variables = {
|
||||
ZANEYOS_VERSION = "2.1";
|
||||
ZANEYOS_VERSION = "2.2";
|
||||
ZANEYOS = "true";
|
||||
};
|
||||
|
||||
# Extra Portal Configuration
|
||||
xdg.portal = {
|
||||
enable = true;
|
||||
wlr.enable = true;
|
||||
extraPortals = [
|
||||
pkgs.xdg-desktop-portal-gtk
|
||||
pkgs.xdg-desktop-portal
|
||||
];
|
||||
configPackages = [
|
||||
pkgs.xdg-desktop-portal-gtk
|
||||
pkgs.xdg-desktop-portal-hyprland
|
||||
pkgs.xdg-desktop-portal
|
||||
];
|
||||
};
|
||||
|
||||
# Services to start
|
||||
services = {
|
||||
xserver = {
|
||||
enable = true;
|
||||
displayManager.sddm = {
|
||||
enable = true;
|
||||
autoNumlock = true;
|
||||
wayland.enable = true;
|
||||
theme = "sugar-dark";
|
||||
};
|
||||
desktopManager.cinnamon.enable = false;
|
||||
enable = false;
|
||||
xkb = {
|
||||
layout = "us";
|
||||
variant = "";
|
||||
};
|
||||
};
|
||||
smartd = {
|
||||
greetd = {
|
||||
enable = true;
|
||||
vt = 3;
|
||||
settings = {
|
||||
default_session = {
|
||||
# Wayland Desktop Manager is installed only for user ryan via home-manager!
|
||||
user = username;
|
||||
# .wayland-session is a script generated by home-manager, which links to the current wayland compositor(sway/hyprland or others).
|
||||
# with such a vendor-no-locking script, we can switch to another wayland compositor without modifying greetd's config here.
|
||||
# command = "$HOME/.wayland-session"; # start a wayland session directly without a login manager
|
||||
command = "${pkgs.greetd.tuigreet}/bin/tuigreet --time --cmd Hyprland"; # start Hyprland with a TUI login manager
|
||||
};
|
||||
};
|
||||
};
|
||||
smartd = {
|
||||
enable = false;
|
||||
autodetect = true;
|
||||
};
|
||||
libinput.enable = true;
|
||||
fstrim.enable = true;
|
||||
gvfs.enable = true;
|
||||
openssh.enable = true;
|
||||
flatpak.enable = false;
|
||||
printing.enable = true;
|
||||
printing = {
|
||||
enable = true;
|
||||
drivers = [
|
||||
# pkgs.hplipWithPlugin
|
||||
];
|
||||
};
|
||||
gnome.gnome-keyring.enable = true;
|
||||
avahi = {
|
||||
enable = true;
|
||||
@ -230,11 +381,10 @@
|
||||
alsa.support32Bit = true;
|
||||
pulse.enable = true;
|
||||
};
|
||||
rpcbind.enable = true;
|
||||
nfs.server.enable = true;
|
||||
rpcbind.enable = false;
|
||||
nfs.server.enable = false;
|
||||
};
|
||||
systemd.services.flatpak-repo = {
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
path = [ pkgs.flatpak ];
|
||||
script = ''
|
||||
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
|
||||
@ -245,8 +395,16 @@
|
||||
extraBackends = [ pkgs.sane-airscan ];
|
||||
disabledDefaultBackends = [ "escl" ];
|
||||
};
|
||||
|
||||
# Extra Logitech Support
|
||||
hardware.logitech.wireless.enable = true;
|
||||
hardware.logitech.wireless.enableGraphical = true;
|
||||
|
||||
# Bluetooth Support
|
||||
hardware.bluetooth.enable = true;
|
||||
hardware.bluetooth.powerOnBoot = true;
|
||||
services.blueman.enable = true;
|
||||
|
||||
# Enable sound with pipewire.
|
||||
sound.enable = true;
|
||||
hardware.pulseaudio.enable = false;
|
||||
@ -270,6 +428,11 @@
|
||||
}
|
||||
})
|
||||
'';
|
||||
security.pam.services.swaylock = {
|
||||
text = ''
|
||||
auth include login
|
||||
'';
|
||||
};
|
||||
|
||||
# Optimization settings and garbage collection automation
|
||||
nix = {
|
||||
@ -304,18 +467,6 @@
|
||||
driSupport32Bit = true;
|
||||
};
|
||||
|
||||
# Extra Module Options
|
||||
drivers.amdgpu.enable = true;
|
||||
drivers.nvidia.enable = false;
|
||||
drivers.nvidia-prime = {
|
||||
enable = false;
|
||||
intelBusID = "";
|
||||
nvidiaBusID = "";
|
||||
};
|
||||
drivers.intel.enable = false;
|
||||
vm.guest-services.enable = false;
|
||||
local.hardware-clock.enable = false;
|
||||
|
||||
# Open ports in the firewall.
|
||||
# networking.firewall.allowedTCPPorts = [ ... ];
|
||||
# networking.firewall.allowedUDPPorts = [ ... ];
|
||||
|
@ -1,7 +1,7 @@
|
||||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{ config, lib, username, modulesPath, ... }:
|
||||
{ config, lib, pkgs, modulesPath, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
@ -14,17 +14,12 @@
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-uuid/9e36b8f0-e272-4e69-99ad-dba17949887f";
|
||||
{ device = "/dev/disk/by-uuid/c537152e-ea4f-4bb7-b453-088612e0024a";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
# fileSystems."/home/${username}/nfs" =
|
||||
# { device = "/dev/disk/by-uuid/55555555-5555-5555-5555-555555555555";
|
||||
# fsType = "nfs";
|
||||
# };
|
||||
|
||||
fileSystems."/boot" =
|
||||
{ device = "/dev/disk/by-uuid/7CBF-413D";
|
||||
{ device = "/dev/disk/by-uuid/DA7B-269C";
|
||||
fsType = "vfat";
|
||||
options = [ "fmask=0022" "dmask=0022" ];
|
||||
};
|
||||
@ -37,7 +32,6 @@
|
||||
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||
networking.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.enp7s0.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.wlp0s20u10.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
|
@ -1,19 +1,11 @@
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
inputs,
|
||||
username,
|
||||
host,
|
||||
gtkThemeFromScheme,
|
||||
...
|
||||
}:
|
||||
let
|
||||
palette = config.colorScheme.palette;
|
||||
inherit (import ./variables.nix)
|
||||
gitUsername
|
||||
gitEmail
|
||||
theme
|
||||
;
|
||||
inherit (import ./variables.nix) gitUsername gitEmail;
|
||||
in
|
||||
{
|
||||
# Home Manager Settings
|
||||
@ -21,63 +13,34 @@ in
|
||||
home.homeDirectory = "/home/${username}";
|
||||
home.stateVersion = "23.11";
|
||||
|
||||
# Set The Colorscheme
|
||||
colorScheme = inputs.nix-colors.colorSchemes."${theme}";
|
||||
|
||||
# Import Program Configurations
|
||||
imports = [
|
||||
inputs.nix-colors.homeManagerModules.default
|
||||
inputs.hyprland.homeManagerModules.default
|
||||
../../config/emoji.nix
|
||||
../../config/hyprland.nix
|
||||
../../config/neovim.nix
|
||||
../../config/rofi/rofi.nix
|
||||
../../config/rofi/config-emoji.nix
|
||||
../../config/rofi/config-long.nix
|
||||
../../config/swaync.nix
|
||||
../../config/waybar.nix
|
||||
../../config/wlogout.nix
|
||||
];
|
||||
|
||||
# Define Settings For Xresources
|
||||
xresources.properties = {
|
||||
"Xcursor.size" = 24;
|
||||
};
|
||||
|
||||
# Place Files Inside Home Directory
|
||||
home.file."Pictures/Wallpapers" = {
|
||||
source = ../../config/wallpapers;
|
||||
recursive = true;
|
||||
};
|
||||
home.file.".config/fastfetch" = {
|
||||
source = ../../config/fastfetch;
|
||||
recursive = true;
|
||||
};
|
||||
home.file.".config/wlogout/icons" = {
|
||||
source = ../../config/wlogout;
|
||||
recursive = true;
|
||||
};
|
||||
home.file.".local/share/fonts" = {
|
||||
source = ../../config/fonts;
|
||||
recursive = true;
|
||||
};
|
||||
home.file.".config/starship.toml".source = ../../config/starship.toml;
|
||||
home.file.".config/ascii-neofetch".source = ../../config/ascii-neofetch;
|
||||
home.file.".base16-themes".source = ../../config/base16-themes;
|
||||
home.file.".emoji".source = ../../config/emoji;
|
||||
home.file.".face.icon".source = ../../config/face.jpg;
|
||||
home.file.".config/neofetch/config.conf".text = ''
|
||||
print_info() {
|
||||
prin "$(color 6) ZaneyOS $ZANEYOS_VERSION"
|
||||
info underline
|
||||
info "$(color 7) VER" kernel
|
||||
info "$(color 2) UP " uptime
|
||||
info "$(color 4) PKG" packages
|
||||
info "$(color 6) DE " de
|
||||
info "$(color 5) TER" term
|
||||
info "$(color 3) CPU" cpu
|
||||
info "$(color 7) GPU" gpu
|
||||
info "$(color 5) MEM" memory
|
||||
prin " "
|
||||
prin "$(color 1) $(color 2) $(color 3) $(color 4) $(color 5) $(color 6) $(color 7) $(color 8)"
|
||||
}
|
||||
distro_shorthand="on"
|
||||
memory_unit="gib"
|
||||
cpu_temp="C"
|
||||
separator=" $(color 4)>"
|
||||
stdout="off"
|
||||
'';
|
||||
home.file.".config/face.jpg".source = ../../config/face.jpg;
|
||||
home.file.".config/swappy/config".text = ''
|
||||
[Default]
|
||||
save_dir=/home/${username}/Pictures/Screenshots
|
||||
@ -91,7 +54,6 @@ in
|
||||
fill_shape=false
|
||||
'';
|
||||
|
||||
|
||||
# Install & Configure Git
|
||||
programs.git = {
|
||||
enable = true;
|
||||
@ -114,27 +76,11 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
# Configure Cursor Theme
|
||||
home.pointerCursor = {
|
||||
gtk.enable = true;
|
||||
x11.enable = true;
|
||||
package = pkgs.bibata-cursors;
|
||||
name = "Bibata-Modern-Ice";
|
||||
size = 24;
|
||||
};
|
||||
|
||||
# Theme GTK
|
||||
# Styling Options
|
||||
stylix.targets.waybar.enable = false;
|
||||
stylix.targets.rofi.enable = false;
|
||||
stylix.targets.hyprland.enable = false;
|
||||
gtk = {
|
||||
enable = true;
|
||||
font = {
|
||||
name = "Ubuntu";
|
||||
size = 12;
|
||||
package = pkgs.ubuntu_font_family;
|
||||
};
|
||||
theme = {
|
||||
name = "${config.colorScheme.slug}";
|
||||
package = gtkThemeFromScheme { scheme = config.colorScheme; };
|
||||
};
|
||||
iconTheme = {
|
||||
name = "Papirus-Dark";
|
||||
package = pkgs.papirus-icon-theme;
|
||||
@ -146,28 +92,18 @@ in
|
||||
gtk-application-prefer-dark-theme = 1;
|
||||
};
|
||||
};
|
||||
|
||||
# Theme QT -> GTK
|
||||
qt = {
|
||||
enable = true;
|
||||
platformTheme = "gtk";
|
||||
style = {
|
||||
name = "adwaita-dark";
|
||||
package = pkgs.adwaita-qt;
|
||||
};
|
||||
style.name = "adwaita-dark";
|
||||
platformTheme.name = "gtk3";
|
||||
};
|
||||
|
||||
|
||||
# Scripts
|
||||
home.packages = [
|
||||
(import ../../scripts/emopicker9000.nix { inherit pkgs; })
|
||||
(import ../../scripts/task-waybar.nix { inherit pkgs; })
|
||||
(import ../../scripts/squirtle.nix { inherit pkgs; })
|
||||
(import ../../scripts/themechange.nix {
|
||||
inherit pkgs;
|
||||
inherit host;
|
||||
inherit username;
|
||||
})
|
||||
(import ../../scripts/theme-selector.nix { inherit pkgs; })
|
||||
(import ../../scripts/nvidia-offload.nix { inherit pkgs; })
|
||||
(import ../../scripts/wallsetter.nix {
|
||||
inherit pkgs;
|
||||
@ -182,204 +118,55 @@ in
|
||||
})
|
||||
];
|
||||
|
||||
services = {
|
||||
hypridle = {
|
||||
settings = {
|
||||
general = {
|
||||
after_sleep_cmd = "hyprctl dispatch dpms on";
|
||||
ignore_dbus_inhibit = false;
|
||||
lock_cmd = "hyprlock";
|
||||
starship = {
|
||||
enable = true;
|
||||
package = pkgs.starship;
|
||||
};
|
||||
};
|
||||
listener = [
|
||||
{
|
||||
timeout = 900;
|
||||
on-timeout = "hyprlock";
|
||||
}
|
||||
{
|
||||
timeout = 1200;
|
||||
on-timeout = "hyprctl dispatch dpms off";
|
||||
on-resume = "hyprctl dispatch dpms on";
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
programs = {
|
||||
gh.enable = true;
|
||||
neovim = {
|
||||
btop = {
|
||||
enable = true;
|
||||
defaultEditor = true;
|
||||
viAlias = true;
|
||||
vimAlias = true;
|
||||
vimdiffAlias = true;
|
||||
withNodeJs = true;
|
||||
extraPackages = with pkgs; [
|
||||
lua-language-server
|
||||
gopls
|
||||
xclip
|
||||
wl-clipboard
|
||||
luajitPackages.lua-lsp
|
||||
nil
|
||||
rust-analyzer
|
||||
nodePackages.bash-language-server
|
||||
yaml-language-server
|
||||
pyright
|
||||
marksman
|
||||
];
|
||||
plugins = with pkgs.vimPlugins; [
|
||||
alpha-nvim
|
||||
auto-session
|
||||
bufferline-nvim
|
||||
dressing-nvim
|
||||
indent-blankline-nvim
|
||||
nvim-treesitter.withAllGrammars
|
||||
lualine-nvim
|
||||
nvim-autopairs
|
||||
nvim-web-devicons
|
||||
nvim-cmp
|
||||
nvim-surround
|
||||
nvim-lspconfig
|
||||
cmp-nvim-lsp
|
||||
cmp-buffer
|
||||
luasnip
|
||||
cmp_luasnip
|
||||
friendly-snippets
|
||||
lspkind-nvim
|
||||
comment-nvim
|
||||
nvim-ts-context-commentstring
|
||||
{
|
||||
plugin = dracula-nvim;
|
||||
config = "colorscheme dracula";
|
||||
}
|
||||
plenary-nvim
|
||||
neodev-nvim
|
||||
luasnip
|
||||
telescope-nvim
|
||||
todo-comments-nvim
|
||||
nvim-tree-lua
|
||||
telescope-fzf-native-nvim
|
||||
vim-tmux-navigator
|
||||
];
|
||||
extraConfig = ''
|
||||
set noemoji
|
||||
'';
|
||||
extraLuaConfig = ''
|
||||
${builtins.readFile ../../config/nvim/options.lua}
|
||||
${builtins.readFile ../../config/nvim/keymaps.lua}
|
||||
${builtins.readFile ../../config/nvim/plugins/alpha.lua}
|
||||
${builtins.readFile ../../config/nvim/plugins/autopairs.lua}
|
||||
${builtins.readFile ../../config/nvim/plugins/auto-session.lua}
|
||||
${builtins.readFile ../../config/nvim/plugins/comment.lua}
|
||||
${builtins.readFile ../../config/nvim/plugins/cmp.lua}
|
||||
${builtins.readFile ../../config/nvim/plugins/lsp.lua}
|
||||
${builtins.readFile ../../config/nvim/plugins/nvim-tree.lua}
|
||||
${builtins.readFile ../../config/nvim/plugins/telescope.lua}
|
||||
${builtins.readFile ../../config/nvim/plugins/todo-comments.lua}
|
||||
${builtins.readFile ../../config/nvim/plugins/treesitter.lua}
|
||||
require("ibl").setup()
|
||||
require("bufferline").setup{}
|
||||
require("lualine").setup({
|
||||
icons_enabled = true,
|
||||
theme = 'dracula',
|
||||
})
|
||||
'';
|
||||
settings = {
|
||||
vim_keys = true;
|
||||
};
|
||||
};
|
||||
kitty = {
|
||||
enable = true;
|
||||
package = pkgs.kitty;
|
||||
font.name = "JetBrainsMono Nerd Font";
|
||||
font.size = 16;
|
||||
settings = {
|
||||
scrollback_lines = 2000;
|
||||
wheel_scroll_min_lines = 1;
|
||||
window_padding_width = 4;
|
||||
confirm_os_window_close = 0;
|
||||
background_opacity = "0.9";
|
||||
};
|
||||
extraConfig = ''
|
||||
foreground #${palette.base05}
|
||||
background #${palette.base00}
|
||||
color0 #${palette.base03}
|
||||
color1 #${palette.base08}
|
||||
color2 #${palette.base0B}
|
||||
color3 #${palette.base09}
|
||||
color4 #${palette.base0D}
|
||||
color5 #${palette.base0E}
|
||||
color6 #${palette.base0C}
|
||||
color7 #${palette.base06}
|
||||
color8 #${palette.base04}
|
||||
color9 #${palette.base08}
|
||||
color10 #${palette.base0B}
|
||||
color11 #${palette.base0A}
|
||||
color12 #${palette.base0C}
|
||||
color13 #${palette.base0E}
|
||||
color14 #${palette.base0C}
|
||||
color15 #${palette.base07}
|
||||
color16 #${palette.base00}
|
||||
color17 #${palette.base0F}
|
||||
color18 #${palette.base0B}
|
||||
color19 #${palette.base09}
|
||||
color20 #${palette.base0D}
|
||||
color21 #${palette.base0E}
|
||||
color22 #${palette.base0C}
|
||||
color23 #${palette.base06}
|
||||
cursor #${palette.base07}
|
||||
cursor_text_color #${palette.base00}
|
||||
selection_foreground #${palette.base01}
|
||||
selection_background #${palette.base0D}
|
||||
url_color #${palette.base0C}
|
||||
active_border_color #${palette.base04}
|
||||
inactive_border_color #${palette.base00}
|
||||
bell_border_color #${palette.base03}
|
||||
tab_bar_style fade
|
||||
tab_fade 1
|
||||
active_tab_foreground #${palette.base04}
|
||||
active_tab_background #${palette.base00}
|
||||
active_tab_font_style bold
|
||||
inactive_tab_foreground #${palette.base07}
|
||||
inactive_tab_background #${palette.base08}
|
||||
inactive_tab_font_style bold
|
||||
tab_bar_background #${palette.base00}
|
||||
'';
|
||||
};
|
||||
starship = {
|
||||
enable = true;
|
||||
package = pkgs.starship;
|
||||
};
|
||||
wofi = {
|
||||
enable = true;
|
||||
settings = {
|
||||
allow_images = true;
|
||||
prompt = "Run Programs...";
|
||||
width = "35%";
|
||||
hide_scroll = true;
|
||||
term = "kitty";
|
||||
show = "drun";
|
||||
};
|
||||
style = ''
|
||||
* {
|
||||
font-family: JetBrainsMono Nerd Font Mono,monospace;
|
||||
font-weight: bold;
|
||||
}
|
||||
#window {
|
||||
border-radius: 25px;
|
||||
border: 2px solid #${palette.base08};
|
||||
background: #${palette.base00};
|
||||
}
|
||||
#input {
|
||||
border-radius: 10px;
|
||||
border: 2px solid #${palette.base0B};
|
||||
margin: 20px;
|
||||
padding: 15px 25px;
|
||||
background: #${palette.base00};
|
||||
color: #${palette.base05};
|
||||
}
|
||||
#inner-box {
|
||||
border: none;
|
||||
background-color: transparent;
|
||||
}
|
||||
#outer-box {
|
||||
border: none;
|
||||
font-weight: bold;
|
||||
font-size: 14px;
|
||||
}
|
||||
#text {
|
||||
border: none;
|
||||
}
|
||||
#entry {
|
||||
margin: 10px 80px;
|
||||
padding: 20px 20px;
|
||||
border-radius: 10px;
|
||||
border: none;
|
||||
}
|
||||
#entry:focus {
|
||||
border: none;
|
||||
}
|
||||
#entry:hover {
|
||||
border: none;
|
||||
}
|
||||
#entry:selected {
|
||||
background-color: #${palette.base0F};
|
||||
color: #${palette.base00};
|
||||
}
|
||||
'';
|
||||
};
|
||||
bash = {
|
||||
@ -391,23 +178,23 @@ in
|
||||
#fi
|
||||
'';
|
||||
initExtra = ''
|
||||
neofetch
|
||||
fastfetch
|
||||
if [ -f $HOME/.bashrc-personal ]; then
|
||||
source $HOME/.bashrc-personal
|
||||
fi
|
||||
'';
|
||||
shellAliases = {
|
||||
sv = "sudo nvim";
|
||||
flake-rebuild = "nh os switch --hostname ${host} /home/${username}/zaneyos";
|
||||
flake-update = "nh os switch --hostname ${host} --update /home/${username}/zaneyos";
|
||||
gcCleanup = "nix-collect-garbage --delete-old && sudo nix-collect-garbage -d && sudo /run/current-system/bin/switch-to-configuration boot";
|
||||
fr = "nh os switch --hostname ${host} /home/${username}/zaneyos";
|
||||
fu = "nh os switch --hostname ${host} --update /home/${username}/zaneyos";
|
||||
zu = "sh <(curl -L https://gitlab.com/Zaney/zaneyos/-/raw/main/install-zaneyos.sh)";
|
||||
ncg = "nix-collect-garbage --delete-old && sudo nix-collect-garbage -d && sudo /run/current-system/bin/switch-to-configuration boot";
|
||||
v = "nvim";
|
||||
ls = "lsd";
|
||||
ll = "lsd -l";
|
||||
la = "lsd -a";
|
||||
lal = "lsd -al";
|
||||
cat = "bat";
|
||||
ls = "eza --icons";
|
||||
ll = "eza -lh --icons --grid --group-directories-first";
|
||||
la = "eza -lah --icons --grid --group-directories-first";
|
||||
".." = "cd ..";
|
||||
neofetch="neofetch --ascii ~/.config/ascii-neofetch";
|
||||
};
|
||||
};
|
||||
home-manager.enable = true;
|
||||
@ -427,6 +214,18 @@ in
|
||||
blur_size = 8;
|
||||
}
|
||||
];
|
||||
image = [
|
||||
{
|
||||
path = "/home/${username}/.config/face.jpg";
|
||||
size = 150;
|
||||
border_size = 4;
|
||||
border_color = "rgb(0C96F9)";
|
||||
rounding = -1; # Negative means circle
|
||||
position = "0, 200";
|
||||
halign = "center";
|
||||
valign = "center";
|
||||
}
|
||||
];
|
||||
input-field = [
|
||||
{
|
||||
size = "200, 50";
|
||||
@ -434,9 +233,9 @@ in
|
||||
monitor = "";
|
||||
dots_center = true;
|
||||
fade_on_empty = false;
|
||||
font_color = "rgb(202, 211, 245)";
|
||||
inner_color = "rgb(91, 96, 120)";
|
||||
outer_color = "rgb(24, 25, 38)";
|
||||
font_color = "rgb(CFE6F4)";
|
||||
inner_color = "rgb(657DC2)";
|
||||
outer_color = "rgb(0D0E15)";
|
||||
outline_thickness = 5;
|
||||
placeholder_text = "Password...";
|
||||
shadow_passes = 2;
|
||||
|
@ -1,8 +1,6 @@
|
||||
{
|
||||
pkgs,
|
||||
config,
|
||||
username,
|
||||
host,
|
||||
...
|
||||
}:
|
||||
|
||||
@ -24,7 +22,8 @@ in
|
||||
];
|
||||
shell = pkgs.bash;
|
||||
ignoreShellProgramCheck = true;
|
||||
packages = with pkgs; [ ];
|
||||
packages = with pkgs; [
|
||||
];
|
||||
};
|
||||
# "newuser" = {
|
||||
# homeMode = "755";
|
||||
|
@ -1,20 +1,15 @@
|
||||
{
|
||||
# Git Configuration ( For Pulling Software Repos )
|
||||
gitUsername = "John Smith";
|
||||
gitEmail = "example@gmail.com";
|
||||
|
||||
# Base16 Theme
|
||||
theme = "dracula";
|
||||
gitUsername = "Tyler Kelley";
|
||||
gitEmail = "tylerzanekelley@gmail.com";
|
||||
|
||||
# Hyprland Settings
|
||||
borderAnim = true; # Enable / Disable Hyprland Border Animation
|
||||
extraMonitorSettings = "";
|
||||
|
||||
# Waybar Settings
|
||||
clock24h = false;
|
||||
waybarAnimations = false;
|
||||
|
||||
# Program Options
|
||||
browser = "firefox"; # Set Default Browser (google-chrome-stable for google-chrome)
|
||||
browser = "brave"; # Set Default Browser (google-chrome-stable for google-chrome)
|
||||
terminal = "kitty"; # Set Default System Terminal
|
||||
}
|
||||
|
@ -1,334 +0,0 @@
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
host,
|
||||
inputs,
|
||||
username,
|
||||
options,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./hardware.nix
|
||||
./users.nix
|
||||
../../modules/amd-drivers.nix
|
||||
../../modules/nvidia-drivers.nix
|
||||
../../modules/nvidia-prime-drivers.nix
|
||||
../../modules/intel-drivers.nix
|
||||
../../modules/vm-guest-services.nix
|
||||
../../modules/local-hardware-clock.nix
|
||||
];
|
||||
|
||||
# Kernel
|
||||
boot.kernelPackages = pkgs.linuxPackages;
|
||||
# boot.kernelPackages = pkgs.linuxPackages_zen;
|
||||
|
||||
# Bootloader.
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
boot.kernel.sysctl = {
|
||||
"vm.max_map_count" = 2147483642;
|
||||
};
|
||||
boot.tmp.useTmpfs = false;
|
||||
boot.tmp.tmpfsSize = "30%";
|
||||
boot.binfmt.registrations.appimage = {
|
||||
wrapInterpreterInShell = false;
|
||||
interpreter = "${pkgs.appimage-run}/bin/appimage-run";
|
||||
recognitionType = "magic";
|
||||
offset = 0;
|
||||
mask = ''\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff'';
|
||||
magicOrExtension = ''\x7fELF....AI\x02'';
|
||||
};
|
||||
|
||||
# This is for OBS Virtual Cam Support - v4l2loopback setup
|
||||
boot.kernelModules = [ "v4l2loopback" ];
|
||||
boot.extraModulePackages = [ config.boot.kernelPackages.v4l2loopback ];
|
||||
|
||||
# Configure network proxy if necessary
|
||||
# networking.proxy.default = "http://user:password@proxy:port/";
|
||||
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
|
||||
|
||||
# Enable networking
|
||||
networking.networkmanager.enable = true;
|
||||
networking.hostName = "${host}";
|
||||
networking.timeServers = options.networking.timeServers.default ++ [ "pool.ntp.org" ];
|
||||
|
||||
# Set your time zone.
|
||||
time.timeZone = "America/Chicago";
|
||||
|
||||
# Select internationalisation properties.
|
||||
i18n.defaultLocale = "en_US.UTF-8";
|
||||
|
||||
i18n.extraLocaleSettings = {
|
||||
LC_ADDRESS = "en_US.UTF-8";
|
||||
LC_IDENTIFICATION = "en_US.UTF-8";
|
||||
LC_MEASUREMENT = "en_US.UTF-8";
|
||||
LC_MONETARY = "en_US.UTF-8";
|
||||
LC_NAME = "en_US.UTF-8";
|
||||
LC_NUMERIC = "en_US.UTF-8";
|
||||
LC_PAPER = "en_US.UTF-8";
|
||||
LC_TELEPHONE = "en_US.UTF-8";
|
||||
LC_TIME = "en_US.UTF-8";
|
||||
};
|
||||
|
||||
programs = {
|
||||
hyprland = {
|
||||
enable = true;
|
||||
package = inputs.hyprland.packages.${pkgs.system}.hyprland;
|
||||
xwayland.enable = true;
|
||||
};
|
||||
firefox.enable = true;
|
||||
dconf.enable = true;
|
||||
seahorse.enable = true;
|
||||
fuse.userAllowOther = true;
|
||||
mtr.enable = true;
|
||||
gnupg.agent = {
|
||||
enable = true;
|
||||
enableSSHSupport = true;
|
||||
};
|
||||
virt-manager.enable = true;
|
||||
steam = {
|
||||
enable = true;
|
||||
gamescopeSession.enable = true;
|
||||
remotePlay.openFirewall = true;
|
||||
dedicatedServer.openFirewall = true;
|
||||
};
|
||||
thunar = {
|
||||
enable = true;
|
||||
plugins = with pkgs.xfce; [ thunar-archive-plugin thunar-volman ];
|
||||
};
|
||||
};
|
||||
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
users = {
|
||||
mutableUsers = true;
|
||||
};
|
||||
|
||||
environment.systemPackages =
|
||||
let
|
||||
sugar = pkgs.callPackage ../../pkgs/sddm-sugar-dark.nix { };
|
||||
tokyo-night = pkgs.libsForQt5.callPackage ../../pkgs/sddm-tokyo-night.nix { };
|
||||
in
|
||||
with pkgs;
|
||||
[
|
||||
vim
|
||||
wget
|
||||
handbrake
|
||||
killall
|
||||
git
|
||||
cmatrix
|
||||
lolcat
|
||||
neofetch
|
||||
htop
|
||||
libvirt
|
||||
lxqt.lxqt-policykit
|
||||
mangohud
|
||||
lm_sensors
|
||||
unzip
|
||||
unrar
|
||||
libnotify
|
||||
eza
|
||||
v4l-utils
|
||||
ydotool
|
||||
wl-clipboard
|
||||
lm_sensors
|
||||
pciutils
|
||||
ffmpeg
|
||||
socat
|
||||
cowsay
|
||||
ripgrep
|
||||
lsd
|
||||
lshw
|
||||
pkg-config
|
||||
meson
|
||||
gnumake
|
||||
ninja
|
||||
symbola
|
||||
noto-fonts-color-emoji
|
||||
material-icons
|
||||
brightnessctl
|
||||
virt-viewer
|
||||
swappy
|
||||
appimage-run
|
||||
networkmanagerapplet
|
||||
yad
|
||||
playerctl
|
||||
nh
|
||||
nixfmt-rfc-style
|
||||
discord
|
||||
libvirt
|
||||
swww
|
||||
grim
|
||||
slurp
|
||||
gnome.file-roller
|
||||
swaynotificationcenter
|
||||
imv
|
||||
transmission-gtk
|
||||
distrobox
|
||||
mpv
|
||||
gimp
|
||||
obs-studio
|
||||
rustup
|
||||
audacity
|
||||
pavucontrol
|
||||
tree
|
||||
protonup-qt
|
||||
font-awesome
|
||||
spotify
|
||||
neovide
|
||||
(nerdfonts.override { fonts = [ "JetBrainsMono" ]; })
|
||||
sugar.sddm-sugar-dark # Name: sugar-dark
|
||||
tokyo-night # Name: tokyo-night-sddm
|
||||
pkgs.libsForQt5.qt5.qtgraphicaleffects
|
||||
];
|
||||
|
||||
environment.variables = {
|
||||
ZANEYOS_VERSION = "2.1";
|
||||
ZANEYOS = "true";
|
||||
};
|
||||
|
||||
# Services to start
|
||||
services = {
|
||||
xserver = {
|
||||
enable = true;
|
||||
displayManager.sddm = {
|
||||
enable = true;
|
||||
autoNumlock = true;
|
||||
wayland.enable = true;
|
||||
theme = "sugar-dark";
|
||||
};
|
||||
desktopManager.cinnamon.enable = false;
|
||||
xkb = {
|
||||
layout = "us";
|
||||
variant = "";
|
||||
};
|
||||
};
|
||||
smartd = {
|
||||
enable = true;
|
||||
autodetect = true;
|
||||
};
|
||||
libinput.enable = true;
|
||||
openssh.enable = true;
|
||||
flatpak.enable = false;
|
||||
printing.enable = true;
|
||||
gnome.gnome-keyring.enable = true;
|
||||
avahi = {
|
||||
enable = true;
|
||||
nssmdns4 = true;
|
||||
openFirewall = true;
|
||||
};
|
||||
ipp-usb.enable = true;
|
||||
syncthing = {
|
||||
enable = false;
|
||||
user = "${username}";
|
||||
dataDir = "/home/${username}";
|
||||
configDir = "/home/${username}/.config/syncthing";
|
||||
};
|
||||
pipewire = {
|
||||
enable = true;
|
||||
alsa.enable = true;
|
||||
alsa.support32Bit = true;
|
||||
pulse.enable = true;
|
||||
};
|
||||
rpcbind.enable = true;
|
||||
nfs.server.enable = true;
|
||||
};
|
||||
systemd.services.flatpak-repo = {
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
path = [ pkgs.flatpak ];
|
||||
script = ''
|
||||
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
|
||||
'';
|
||||
};
|
||||
hardware.sane = {
|
||||
enable = true;
|
||||
extraBackends = [ pkgs.sane-airscan ];
|
||||
disabledDefaultBackends = [ "escl" ];
|
||||
};
|
||||
hardware.logitech.wireless.enable = true;
|
||||
hardware.logitech.wireless.enableGraphical = true;
|
||||
# Enable sound with pipewire.
|
||||
sound.enable = true;
|
||||
hardware.pulseaudio.enable = false;
|
||||
|
||||
# Security / Polkit
|
||||
security.rtkit.enable = true;
|
||||
security.polkit.enable = true;
|
||||
security.polkit.extraConfig = ''
|
||||
polkit.addRule(function(action, subject) {
|
||||
if (
|
||||
subject.isInGroup("users")
|
||||
&& (
|
||||
action.id == "org.freedesktop.login1.reboot" ||
|
||||
action.id == "org.freedesktop.login1.reboot-multiple-sessions" ||
|
||||
action.id == "org.freedesktop.login1.power-off" ||
|
||||
action.id == "org.freedesktop.login1.power-off-multiple-sessions"
|
||||
)
|
||||
)
|
||||
{
|
||||
return polkit.Result.YES;
|
||||
}
|
||||
})
|
||||
'';
|
||||
|
||||
# Optimization settings and garbage collection automation
|
||||
nix = {
|
||||
settings = {
|
||||
auto-optimise-store = true;
|
||||
experimental-features = [
|
||||
"nix-command"
|
||||
"flakes"
|
||||
];
|
||||
substituters = [ "https://hyprland.cachix.org" ];
|
||||
trusted-public-keys = [ "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc=" ];
|
||||
};
|
||||
gc = {
|
||||
automatic = true;
|
||||
dates = "weekly";
|
||||
options = "--delete-older-than 7d";
|
||||
};
|
||||
};
|
||||
|
||||
# Virtualization / Containers
|
||||
virtualisation.libvirtd.enable = true;
|
||||
virtualisation.podman = {
|
||||
enable = true;
|
||||
dockerCompat = true;
|
||||
defaultNetwork.settings.dns_enabled = true;
|
||||
};
|
||||
|
||||
# OpenGL
|
||||
hardware.opengl = {
|
||||
enable = true;
|
||||
driSupport = true;
|
||||
driSupport32Bit = true;
|
||||
};
|
||||
|
||||
# Extra Module Options
|
||||
drivers.amdgpu.enable = true;
|
||||
drivers.nvidia.enable = false;
|
||||
drivers.nvidia-prime = {
|
||||
enable = false;
|
||||
intelBusID = "";
|
||||
nvidiaBusID = "";
|
||||
};
|
||||
drivers.intel.enable = false;
|
||||
vm.guest-services.enable = false;
|
||||
local.hardware-clock.enable = false;
|
||||
|
||||
# Open ports in the firewall.
|
||||
# networking.firewall.allowedTCPPorts = [ ... ];
|
||||
# networking.firewall.allowedUDPPorts = [ ... ];
|
||||
# Or disable the firewall altogether.
|
||||
# networking.firewall.enable = false;
|
||||
|
||||
# This value determines the NixOS release from which the default
|
||||
# settings for stateful data, like file locations and database versions
|
||||
# on your system were taken. It‘s perfectly fine and recommended to leave
|
||||
# this value at the release version of the first install of this system.
|
||||
# Before changing this value read the documentation for this option
|
||||
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
||||
system.stateVersion = "23.11"; # Did you read the comment?
|
||||
}
|
@ -1,44 +0,0 @@
|
||||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{ config, lib, username, modulesPath, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
|
||||
boot.initrd.availableKernelModules = [ "xhci_pci" "ehci_pci" "ahci" "nvme" "usbhid" "sd_mod" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-intel" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-uuid/9e36b8f0-e272-4e69-99ad-dba17949887f";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
fileSystems."/home/${username}/Documents" =
|
||||
{ device = "/dev/disk/by-uuid/5605f7ab-73df-4234-a8ed-50c1eae69ffa";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
fileSystems."/boot" =
|
||||
{ device = "/dev/disk/by-uuid/7CBF-413D";
|
||||
fsType = "vfat";
|
||||
options = [ "fmask=0022" "dmask=0022" ];
|
||||
};
|
||||
|
||||
swapDevices = [ ];
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||
# still possible to use this option, but it's recommended to use it in conjunction
|
||||
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||
networking.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.enp7s0.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.wlp0s20u10.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
@ -1,484 +0,0 @@
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
inputs,
|
||||
username,
|
||||
host,
|
||||
gtkThemeFromScheme,
|
||||
...
|
||||
}:
|
||||
let
|
||||
palette = config.colorScheme.palette;
|
||||
inherit (import ./variables.nix)
|
||||
gitUsername
|
||||
gitEmail
|
||||
theme
|
||||
;
|
||||
in
|
||||
{
|
||||
# Home Manager Settings
|
||||
home.username = "${username}";
|
||||
home.homeDirectory = "/home/${username}";
|
||||
home.stateVersion = "23.11";
|
||||
|
||||
# Set The Colorscheme
|
||||
colorScheme = inputs.nix-colors.colorSchemes."${theme}";
|
||||
|
||||
# Import Program Configurations
|
||||
imports = [
|
||||
inputs.nix-colors.homeManagerModules.default
|
||||
inputs.hyprland.homeManagerModules.default
|
||||
../../config/hyprland.nix
|
||||
../../config/swaync.nix
|
||||
../../config/waybar.nix
|
||||
../../config/wlogout.nix
|
||||
];
|
||||
|
||||
# Define Settings For Xresources
|
||||
xresources.properties = {
|
||||
"Xcursor.size" = 24;
|
||||
};
|
||||
|
||||
# Place Files Inside Home Directory
|
||||
home.file."Pictures/Wallpapers" = {
|
||||
source = ../../config/wallpapers;
|
||||
recursive = true;
|
||||
};
|
||||
home.file.".config/wlogout/icons" = {
|
||||
source = ../../config/wlogout;
|
||||
recursive = true;
|
||||
};
|
||||
home.file.".local/share/fonts" = {
|
||||
source = ../../config/fonts;
|
||||
recursive = true;
|
||||
};
|
||||
home.file.".config/starship.toml".source = ../../config/starship.toml;
|
||||
home.file.".config/ascii-neofetch".source = ../../config/ascii-neofetch;
|
||||
home.file.".base16-themes".source = ../../config/base16-themes;
|
||||
home.file.".emoji".source = ../../config/emoji;
|
||||
home.file.".face.icon".source = ../../config/face.jpg;
|
||||
home.file.".config/face.jpg".source = ../../config/face.jpg;
|
||||
home.file.".config/neofetch/config.conf".text = ''
|
||||
print_info() {
|
||||
prin "$(color 6) ZaneyOS $ZANEYOS_VERSION"
|
||||
info underline
|
||||
info "$(color 7) VER" kernel
|
||||
info "$(color 2) UP " uptime
|
||||
info "$(color 4) PKG" packages
|
||||
info "$(color 6) DE " de
|
||||
info "$(color 5) TER" term
|
||||
info "$(color 3) CPU" cpu
|
||||
info "$(color 7) GPU" gpu
|
||||
info "$(color 5) MEM" memory
|
||||
prin " "
|
||||
prin "$(color 1) $(color 2) $(color 3) $(color 4) $(color 5) $(color 6) $(color 7) $(color 8)"
|
||||
}
|
||||
distro_shorthand="on"
|
||||
memory_unit="gib"
|
||||
cpu_temp="C"
|
||||
separator=" $(color 4)>"
|
||||
stdout="off"
|
||||
'';
|
||||
home.file.".config/swappy/config".text = ''
|
||||
[Default]
|
||||
save_dir=/home/${username}/Pictures/Screenshots
|
||||
save_filename_format=swappy-%Y%m%d-%H%M%S.png
|
||||
show_panel=false
|
||||
line_size=5
|
||||
text_size=20
|
||||
text_font=Ubuntu
|
||||
paint_mode=brush
|
||||
early_exit=true
|
||||
fill_shape=false
|
||||
'';
|
||||
|
||||
|
||||
# Install & Configure Git
|
||||
programs.git = {
|
||||
enable = true;
|
||||
userName = "${gitUsername}";
|
||||
userEmail = "${gitEmail}";
|
||||
};
|
||||
|
||||
# Create XDG Dirs
|
||||
xdg = {
|
||||
userDirs = {
|
||||
enable = true;
|
||||
createDirectories = true;
|
||||
};
|
||||
};
|
||||
|
||||
dconf.settings = {
|
||||
"org/virt-manager/virt-manager/connections" = {
|
||||
autoconnect = [ "qemu:///system" ];
|
||||
uris = [ "qemu:///system" ];
|
||||
};
|
||||
};
|
||||
|
||||
# Configure Cursor Theme
|
||||
home.pointerCursor = {
|
||||
gtk.enable = true;
|
||||
x11.enable = true;
|
||||
package = pkgs.bibata-cursors;
|
||||
name = "Bibata-Modern-Ice";
|
||||
size = 24;
|
||||
};
|
||||
|
||||
# Theme GTK
|
||||
gtk = {
|
||||
enable = true;
|
||||
font = {
|
||||
name = "Ubuntu";
|
||||
size = 12;
|
||||
package = pkgs.ubuntu_font_family;
|
||||
};
|
||||
theme = {
|
||||
name = "${config.colorScheme.slug}";
|
||||
package = gtkThemeFromScheme { scheme = config.colorScheme; };
|
||||
};
|
||||
iconTheme = {
|
||||
name = "Papirus-Dark";
|
||||
package = pkgs.papirus-icon-theme;
|
||||
};
|
||||
gtk3.extraConfig = {
|
||||
gtk-application-prefer-dark-theme = 1;
|
||||
};
|
||||
gtk4.extraConfig = {
|
||||
gtk-application-prefer-dark-theme = 1;
|
||||
};
|
||||
};
|
||||
|
||||
# Theme QT -> GTK
|
||||
qt = {
|
||||
enable = true;
|
||||
platformTheme = "gtk";
|
||||
style = {
|
||||
name = "adwaita-dark";
|
||||
package = pkgs.adwaita-qt;
|
||||
};
|
||||
};
|
||||
|
||||
# Scripts
|
||||
home.packages = [
|
||||
(import ../../scripts/emopicker9000.nix { inherit pkgs; })
|
||||
(import ../../scripts/task-waybar.nix { inherit pkgs; })
|
||||
(import ../../scripts/squirtle.nix { inherit pkgs; })
|
||||
(import ../../scripts/themechange.nix {
|
||||
inherit pkgs;
|
||||
inherit host;
|
||||
inherit username;
|
||||
})
|
||||
(import ../../scripts/theme-selector.nix { inherit pkgs; })
|
||||
(import ../../scripts/nvidia-offload.nix { inherit pkgs; })
|
||||
(import ../../scripts/wallsetter.nix {
|
||||
inherit pkgs;
|
||||
inherit username;
|
||||
})
|
||||
(import ../../scripts/web-search.nix { inherit pkgs; })
|
||||
(import ../../scripts/rofi-launcher.nix { inherit pkgs; })
|
||||
(import ../../scripts/screenshootin.nix { inherit pkgs; })
|
||||
(import ../../scripts/list-hypr-bindings.nix {
|
||||
inherit pkgs;
|
||||
inherit host;
|
||||
})
|
||||
];
|
||||
|
||||
services = {
|
||||
hypridle = {
|
||||
settings = {
|
||||
general = {
|
||||
after_sleep_cmd = "hyprctl dispatch dpms on";
|
||||
ignore_dbus_inhibit = false;
|
||||
lock_cmd = "hyprlock";
|
||||
};
|
||||
listener = [
|
||||
{
|
||||
timeout = 900;
|
||||
on-timeout = "hyprlock";
|
||||
}
|
||||
{
|
||||
timeout = 1200;
|
||||
on-timeout = "hyprctl dispatch dpms off";
|
||||
on-resume = "hyprctl dispatch dpms on";
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
programs = {
|
||||
gh.enable = true;
|
||||
neovim = {
|
||||
enable = true;
|
||||
defaultEditor = true;
|
||||
viAlias = true;
|
||||
vimAlias = true;
|
||||
vimdiffAlias = true;
|
||||
withNodeJs = true;
|
||||
extraPackages = with pkgs; [
|
||||
lua-language-server
|
||||
gopls
|
||||
xclip
|
||||
wl-clipboard
|
||||
luajitPackages.lua-lsp
|
||||
nil
|
||||
rust-analyzer
|
||||
nodePackages.bash-language-server
|
||||
yaml-language-server
|
||||
pyright
|
||||
marksman
|
||||
];
|
||||
plugins = with pkgs.vimPlugins; [
|
||||
alpha-nvim
|
||||
auto-session
|
||||
bufferline-nvim
|
||||
dressing-nvim
|
||||
indent-blankline-nvim
|
||||
nvim-treesitter.withAllGrammars
|
||||
lualine-nvim
|
||||
nvim-autopairs
|
||||
nvim-web-devicons
|
||||
nvim-cmp
|
||||
nvim-surround
|
||||
nvim-lspconfig
|
||||
cmp-nvim-lsp
|
||||
cmp-buffer
|
||||
luasnip
|
||||
cmp_luasnip
|
||||
friendly-snippets
|
||||
lspkind-nvim
|
||||
comment-nvim
|
||||
nvim-ts-context-commentstring
|
||||
{
|
||||
plugin = dracula-nvim;
|
||||
config = "colorscheme dracula";
|
||||
}
|
||||
plenary-nvim
|
||||
neodev-nvim
|
||||
luasnip
|
||||
telescope-nvim
|
||||
todo-comments-nvim
|
||||
nvim-tree-lua
|
||||
telescope-fzf-native-nvim
|
||||
vim-tmux-navigator
|
||||
];
|
||||
extraConfig = ''
|
||||
set noemoji
|
||||
'';
|
||||
extraLuaConfig = ''
|
||||
${builtins.readFile ../../config/nvim/options.lua}
|
||||
${builtins.readFile ../../config/nvim/keymaps.lua}
|
||||
${builtins.readFile ../../config/nvim/plugins/alpha.lua}
|
||||
${builtins.readFile ../../config/nvim/plugins/autopairs.lua}
|
||||
${builtins.readFile ../../config/nvim/plugins/auto-session.lua}
|
||||
${builtins.readFile ../../config/nvim/plugins/comment.lua}
|
||||
${builtins.readFile ../../config/nvim/plugins/cmp.lua}
|
||||
${builtins.readFile ../../config/nvim/plugins/lsp.lua}
|
||||
${builtins.readFile ../../config/nvim/plugins/nvim-tree.lua}
|
||||
${builtins.readFile ../../config/nvim/plugins/telescope.lua}
|
||||
${builtins.readFile ../../config/nvim/plugins/todo-comments.lua}
|
||||
${builtins.readFile ../../config/nvim/plugins/treesitter.lua}
|
||||
require("ibl").setup()
|
||||
require("bufferline").setup{}
|
||||
require("lualine").setup({
|
||||
icons_enabled = true,
|
||||
theme = 'dracula',
|
||||
})
|
||||
'';
|
||||
};
|
||||
kitty = {
|
||||
enable = true;
|
||||
package = pkgs.kitty;
|
||||
font.name = "JetBrainsMono Nerd Font";
|
||||
font.size = 16;
|
||||
settings = {
|
||||
scrollback_lines = 2000;
|
||||
wheel_scroll_min_lines = 1;
|
||||
window_padding_width = 4;
|
||||
confirm_os_window_close = 0;
|
||||
background_opacity = "0.9";
|
||||
};
|
||||
extraConfig = ''
|
||||
foreground #${palette.base05}
|
||||
background #${palette.base00}
|
||||
color0 #${palette.base03}
|
||||
color1 #${palette.base08}
|
||||
color2 #${palette.base0B}
|
||||
color3 #${palette.base09}
|
||||
color4 #${palette.base0D}
|
||||
color5 #${palette.base0E}
|
||||
color6 #${palette.base0C}
|
||||
color7 #${palette.base06}
|
||||
color8 #${palette.base04}
|
||||
color9 #${palette.base08}
|
||||
color10 #${palette.base0B}
|
||||
color11 #${palette.base0A}
|
||||
color12 #${palette.base0C}
|
||||
color13 #${palette.base0E}
|
||||
color14 #${palette.base0C}
|
||||
color15 #${palette.base07}
|
||||
color16 #${palette.base00}
|
||||
color17 #${palette.base0F}
|
||||
color18 #${palette.base0B}
|
||||
color19 #${palette.base09}
|
||||
color20 #${palette.base0D}
|
||||
color21 #${palette.base0E}
|
||||
color22 #${palette.base0C}
|
||||
color23 #${palette.base06}
|
||||
cursor #${palette.base07}
|
||||
cursor_text_color #${palette.base00}
|
||||
selection_foreground #${palette.base01}
|
||||
selection_background #${palette.base0D}
|
||||
url_color #${palette.base0C}
|
||||
active_border_color #${palette.base04}
|
||||
inactive_border_color #${palette.base00}
|
||||
bell_border_color #${palette.base03}
|
||||
tab_bar_style fade
|
||||
tab_fade 1
|
||||
active_tab_foreground #${palette.base04}
|
||||
active_tab_background #${palette.base00}
|
||||
active_tab_font_style bold
|
||||
inactive_tab_foreground #${palette.base07}
|
||||
inactive_tab_background #${palette.base08}
|
||||
inactive_tab_font_style bold
|
||||
tab_bar_background #${palette.base00}
|
||||
'';
|
||||
};
|
||||
starship = {
|
||||
enable = true;
|
||||
package = pkgs.starship;
|
||||
};
|
||||
wofi = {
|
||||
enable = true;
|
||||
settings = {
|
||||
allow_images = true;
|
||||
prompt = "Run Programs...";
|
||||
width = "35%";
|
||||
hide_scroll = true;
|
||||
term = "kitty";
|
||||
show = "drun";
|
||||
};
|
||||
style = ''
|
||||
* {
|
||||
font-family: JetBrainsMono Nerd Font Mono,monospace;
|
||||
font-weight: bold;
|
||||
}
|
||||
#window {
|
||||
border-radius: 25px;
|
||||
border: 2px solid #${palette.base08};
|
||||
background: #${palette.base00};
|
||||
}
|
||||
#input {
|
||||
border-radius: 10px;
|
||||
border: 2px solid #${palette.base0B};
|
||||
margin: 20px;
|
||||
padding: 15px 25px;
|
||||
background: #${palette.base00};
|
||||
color: #${palette.base05};
|
||||
}
|
||||
#inner-box {
|
||||
border: none;
|
||||
background-color: transparent;
|
||||
}
|
||||
#outer-box {
|
||||
border: none;
|
||||
font-weight: bold;
|
||||
font-size: 14px;
|
||||
}
|
||||
#text {
|
||||
border: none;
|
||||
}
|
||||
#entry {
|
||||
margin: 10px 80px;
|
||||
padding: 20px 20px;
|
||||
border-radius: 10px;
|
||||
border: none;
|
||||
}
|
||||
#entry:focus {
|
||||
border: none;
|
||||
}
|
||||
#entry:hover {
|
||||
border: none;
|
||||
}
|
||||
#entry:selected {
|
||||
background-color: #${palette.base0F};
|
||||
color: #${palette.base00};
|
||||
}
|
||||
'';
|
||||
};
|
||||
bash = {
|
||||
enable = true;
|
||||
enableCompletion = true;
|
||||
profileExtra = ''
|
||||
#if [ -z "$DISPLAY" ] && [ "$XDG_VTNR" = 1 ]; then
|
||||
# exec Hyprland
|
||||
#fi
|
||||
'';
|
||||
initExtra = ''
|
||||
neofetch
|
||||
if [ -f $HOME/.bashrc-personal ]; then
|
||||
source $HOME/.bashrc-personal
|
||||
fi
|
||||
'';
|
||||
shellAliases = {
|
||||
sv = "sudo nvim";
|
||||
flake-rebuild = "nh os switch --hostname ${host} /home/${username}/zaneyos";
|
||||
flake-update = "nh os switch --hostname ${host} --update /home/${username}/zaneyos";
|
||||
gcCleanup = "nix-collect-garbage --delete-old && sudo nix-collect-garbage -d && sudo /run/current-system/bin/switch-to-configuration boot";
|
||||
v = "nvim";
|
||||
ls = "lsd";
|
||||
ll = "lsd -l";
|
||||
la = "lsd -a";
|
||||
lal = "lsd -al";
|
||||
".." = "cd ..";
|
||||
neofetch="neofetch --ascii ~/.config/ascii-neofetch";
|
||||
};
|
||||
};
|
||||
home-manager.enable = true;
|
||||
hyprlock = {
|
||||
enable = true;
|
||||
settings = {
|
||||
general = {
|
||||
disable_loading_bar = true;
|
||||
grace = 10;
|
||||
hide_cursor = true;
|
||||
no_fade_in = false;
|
||||
};
|
||||
background = [
|
||||
{
|
||||
path = "/home/${username}/Pictures/Wallpapers/zaney-wallpaper.jpg";
|
||||
blur_passes = 3;
|
||||
blur_size = 8;
|
||||
}
|
||||
];
|
||||
image = [
|
||||
{
|
||||
path = "/home/${username}/.config/face.jpg";
|
||||
size = 150;
|
||||
border_size = 4;
|
||||
border_color = "rgb(${palette.base08})";
|
||||
rounding = -1; # Negative means circle
|
||||
position = "0, 200";
|
||||
halign = "center";
|
||||
valign = "center";
|
||||
}
|
||||
];
|
||||
input-field = [
|
||||
{
|
||||
size = "200, 50";
|
||||
position = "0, -80";
|
||||
monitor = "";
|
||||
dots_center = true;
|
||||
fade_on_empty = false;
|
||||
font_color = "rgb(${palette.base05})";
|
||||
inner_color = "rgb(${palette.base01})";
|
||||
outer_color = "rgb(${palette.base00})";
|
||||
outline_thickness = 5;
|
||||
placeholder_text = "Password...";
|
||||
shadow_passes = 2;
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
@ -1,43 +0,0 @@
|
||||
{
|
||||
pkgs,
|
||||
config,
|
||||
username,
|
||||
host,
|
||||
...
|
||||
}:
|
||||
|
||||
let
|
||||
inherit (import ./variables.nix) gitUsername;
|
||||
in
|
||||
{
|
||||
users.users = {
|
||||
"${username}" = {
|
||||
homeMode = "755";
|
||||
isNormalUser = true;
|
||||
description = "${gitUsername}";
|
||||
extraGroups = [
|
||||
"networkmanager"
|
||||
"wheel"
|
||||
"libvirtd"
|
||||
"scanner"
|
||||
"lp"
|
||||
];
|
||||
shell = pkgs.bash;
|
||||
ignoreShellProgramCheck = true;
|
||||
packages = with pkgs; [
|
||||
obs-studio
|
||||
zeroad
|
||||
blender-hip
|
||||
];
|
||||
};
|
||||
# "newuser" = {
|
||||
# homeMode = "755";
|
||||
# isNormalUser = true;
|
||||
# description = "New user account";
|
||||
# extraGroups = [ "networkmanager" "wheel" "libvirtd" ];
|
||||
# shell = pkgs.bash;
|
||||
# ignoreShellProgramCheck = true;
|
||||
# packages = with pkgs; [];
|
||||
# };
|
||||
};
|
||||
}
|
@ -1,20 +0,0 @@
|
||||
{
|
||||
# Git Configuration ( For Pulling Software Repos )
|
||||
gitUsername = "Tyler Kelley";
|
||||
gitEmail = "tylerzanekelley@gmail.com";
|
||||
|
||||
# Base16 Theme
|
||||
theme = "tokyo-night-storm";
|
||||
|
||||
# Hyprland Settings
|
||||
borderAnim = true; # Enable / Disable Hyprland Border Animation
|
||||
extraMonitorSettings = "";
|
||||
|
||||
# Waybar Settings
|
||||
clock24h = false;
|
||||
waybarAnimations = true;
|
||||
|
||||
# Program Options
|
||||
browser = "firefox"; # Set Default Browser (google-chrome-stable for google-chrome)
|
||||
terminal = "kitty"; # Set Default System Terminal
|
||||
}
|
@ -77,11 +77,9 @@ sudo nixos-generate-config --show-hardware-config > ./hosts/$hostName/hardware.n
|
||||
|
||||
echo "-----"
|
||||
|
||||
echo "Setting Required Nix Settings & Committing Changes"
|
||||
echo "Setting Required Nix Settings Then Going To Install"
|
||||
NIX_CONFIG="experimental-features = nix-command flakes"
|
||||
|
||||
echo "-----"
|
||||
|
||||
echo "ZaneyOS Has Been Setup"
|
||||
echo "Please Edit Your Hosts Files"
|
||||
echo "Then Run: sudo nixos-rebuild switch --flake .#${hostName}"
|
||||
sudo nixos-rebuild switch --flake ~/zaneyos/#${hostName}
|
||||
|
@ -16,11 +16,5 @@ in
|
||||
config = mkIf cfg.enable {
|
||||
systemd.tmpfiles.rules = [ "L+ /opt/rocm/hip - - - - ${pkgs.rocmPackages.clr}" ];
|
||||
services.xserver.videoDrivers = [ "amdgpu" ];
|
||||
# OpenGL
|
||||
hardware.opengl = {
|
||||
## amdvlk: an open-source Vulkan driver from AMD
|
||||
extraPackages = [ pkgs.amdvlk ];
|
||||
extraPackages32 = [ pkgs.driversi686Linux.amdvlk ];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
@ -1,18 +0,0 @@
|
||||
{ stdenv, fetchFromGitHub }:
|
||||
{
|
||||
sddm-sugar-dark = stdenv.mkDerivation rec {
|
||||
pname = "sddm-sugar-dark-theme";
|
||||
version = "1.2";
|
||||
dontBuild = true;
|
||||
installPhase = ''
|
||||
mkdir -p $out/share/sddm/themes
|
||||
cp -aR $src $out/share/sddm/themes/sugar-dark
|
||||
'';
|
||||
src = fetchFromGitHub {
|
||||
owner = "MarianArlt";
|
||||
repo = "sddm-sugar-dark";
|
||||
rev = "v${version}";
|
||||
sha256 = "0gx0am7vq1ywaw2rm1p015x90b75ccqxnb1sz3wy8yjl27v82yhb";
|
||||
};
|
||||
};
|
||||
}
|
@ -1,34 +0,0 @@
|
||||
{
|
||||
lib,
|
||||
qtbase,
|
||||
qtsvg,
|
||||
qtgraphicaleffects,
|
||||
qtquickcontrols2,
|
||||
wrapQtAppsHook,
|
||||
stdenvNoCC,
|
||||
fetchFromGitHub,
|
||||
}:
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "tokyo-night-sddm";
|
||||
version = "1..0";
|
||||
dontBuild = true;
|
||||
src = fetchFromGitHub {
|
||||
owner = "rototrash";
|
||||
repo = "tokyo-night-sddm";
|
||||
rev = "320c8e74ade1e94f640708eee0b9a75a395697c6";
|
||||
sha256 = "sha256-JRVVzyefqR2L3UrEK2iWyhUKfPMUNUnfRZmwdz05wL0=";
|
||||
};
|
||||
nativeBuildInputs = [ wrapQtAppsHook ];
|
||||
|
||||
propagatedUserEnvPkgs = [
|
||||
qtbase
|
||||
qtsvg
|
||||
qtgraphicaleffects
|
||||
qtquickcontrols2
|
||||
];
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/share/sddm/themes
|
||||
cp -aR $src $out/share/sddm/themes/tokyo-night-sddm
|
||||
'';
|
||||
}
|
@ -2,7 +2,7 @@
|
||||
|
||||
pkgs.writeShellScriptBin "emopicker9000" ''
|
||||
# Get user selection via wofi from emoji file.
|
||||
chosen=$(cat $HOME/.emoji | ${pkgs.wofi}/bin/wofi -dmenu | awk '{print $1}')
|
||||
chosen=$(cat $HOME/.config/.emoji | ${pkgs.rofi-wayland}/bin/rofi -i -dmenu -config ~/.config/rofi/config-emoji.rasi | awk '{print $1}')
|
||||
|
||||
# Exit if none chosen.
|
||||
[ -z "$chosen" ] && exit
|
||||
|
@ -17,7 +17,8 @@ pkgs.writeShellScriptBin "list-hypr-bindings" ''
|
||||
--timeout-indicator=right \
|
||||
" = Windows/Super/CAPS LOCK" "Modifier Key, used for keybindings" "Doesn't really execute anything by itself." \
|
||||
" + ENTER" "Terminal" "${terminal}" \
|
||||
" + SHIFT + ENTER" "Wofi App Launcher" "wofi" \
|
||||
" + SHIFT + ENTER" "App Launcher" "rofi" \
|
||||
" + ALT + W" "Change Wallpaper" "wallsetter" \
|
||||
" + Q" "Kill Focused Window" "killactive" \
|
||||
" + SHIFT + W" "Search Websites Like Nix Packages" "web-search" \
|
||||
" + SHIFT + N" "Reload SwayNC Styling" "swaync-client -rs" \
|
||||
|
@ -1,17 +0,0 @@
|
||||
{ pkgs }:
|
||||
|
||||
pkgs.writeShellScriptBin "theme-selector" ''
|
||||
# Get user selection for new theme from base16-themes file
|
||||
chosen=$(cat $HOME/.base16-themes | ${pkgs.wofi}/bin/wofi -dmenu)
|
||||
|
||||
# Exit if none chosen.
|
||||
[ -z "$chosen" ] && exit
|
||||
|
||||
if [ -n "$1" ]; then
|
||||
themechange "$chosen"
|
||||
else
|
||||
${pkgs.libnotify}/bin/notify-send "$chosen is building please wait" &
|
||||
themechange "$chosen"
|
||||
${pkgs.libnotify}/bin/notify-send "Theme: $chosen has been applied." &
|
||||
fi
|
||||
''
|
@ -1,16 +0,0 @@
|
||||
{
|
||||
pkgs,
|
||||
host,
|
||||
username,
|
||||
...
|
||||
}:
|
||||
|
||||
pkgs.writeShellScriptBin "themechange" ''
|
||||
if [[ ! $@ ]];then
|
||||
echo "No Theme Given"
|
||||
else
|
||||
replacement="$1"
|
||||
sed -i "/^\s*theme[[:space:]]*=[[:space:]]*\"/s/\"\(.*\)\"/\"$replacement\"/" /home/${username}/zaneyos/hosts/${host}/variables.nix
|
||||
kitty -e pkexec nixos-rebuild switch --flake /home/${username}/zaneyos
|
||||
fi
|
||||
''
|
Loading…
Reference in New Issue
Block a user