mirror of
https://github.com/Dichgrem/DCGOS.git
synced 2026-02-05 05:41:57 -05:00
Compare commits
1 Commits
main
...
d1e8ee7374
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d1e8ee7374 |
51
Justfile
51
Justfile
@@ -5,80 +5,79 @@ hostname := `hostname`
|
||||
username := `whoami`
|
||||
|
||||
|
||||
@anywhere input:
|
||||
anywhere input:
|
||||
# Perform nixos-anywhere install
|
||||
nix run github:nix-community/nixos-anywhere -- --generate-hardware-config nixos-generate-config ./hosts/{{input}}/hardware.nix --flake .#{{input}} --target-host root@{{input}}
|
||||
|
||||
|
||||
@anywhere-lb input:
|
||||
anywhere-lb input:
|
||||
# Perform nixos-anywhere install (local builder)
|
||||
nix run github:nix-community/nixos-anywhere -- --generate-hardware-config nixos-generate-config ./hosts/{{input}}/hardware.nix --flake .#{{input}} --target-host root@{{input}} --build-on local
|
||||
|
||||
|
||||
@anywhere-vm input:
|
||||
anywhere-vm input:
|
||||
# Test nixos-anywhere install in vm
|
||||
nix run github:nix-community/nixos-anywhere -- --flake .#{{input}} --vm-test
|
||||
|
||||
|
||||
@build input:
|
||||
build input:
|
||||
# Build
|
||||
sudo nixos-rebuild build --flake .#{{input}} --show-trace -L -v
|
||||
|
||||
|
||||
@build-vm input:
|
||||
build-vm input:
|
||||
# Build a vm
|
||||
sudo nixos-rebuild build-vm --flake .#{{input}} --show-trace -L -v
|
||||
|
||||
|
||||
@switch input:
|
||||
# Let system rebuild and switch
|
||||
sudo nixos-rebuild switch --flake .#{{input}} --show-trace -L -v
|
||||
|
||||
|
||||
@clean:
|
||||
clean:
|
||||
# Remove useless nix-channel files
|
||||
sudo rm -rf /nix/var/nix/profiles/per-user/root/channels /root/.nix-defexpr/channels
|
||||
|
||||
|
||||
@gc:
|
||||
format:
|
||||
# Use alejandra and deadnix to format code
|
||||
deadnix -e
|
||||
alejandra .
|
||||
|
||||
|
||||
gc:
|
||||
# Do garbage-clean (remove unused packages, etc)
|
||||
sudo nix profile wipe-history --older-than 7d --profile /nix/var/nix/profiles/system
|
||||
sudo nix-collect-garbage --delete-old
|
||||
|
||||
|
||||
@ghc:
|
||||
ghc:
|
||||
# Generate hardware.nix
|
||||
nixos-generate-config --show-hardware-config > ./hosts/{{hostname}}/hardware.nix
|
||||
|
||||
|
||||
@install:
|
||||
install:
|
||||
# Install this flake
|
||||
bash install.sh
|
||||
|
||||
|
||||
@cat:
|
||||
list:
|
||||
# List system packages
|
||||
nix-store -qR /run/current-system | cat
|
||||
|
||||
|
||||
@list:
|
||||
sudo nix-env -p /nix/var/nix/profiles/system --list-generations
|
||||
profile:
|
||||
# Show system profile
|
||||
sudo nix profile history --profile /nix/var/nix/profiles/system
|
||||
|
||||
|
||||
@diff:
|
||||
sudo nix profile diff-closures --profile /nix/var/nix/profiles/system
|
||||
switch input:
|
||||
# Let system rebuild and switch
|
||||
sudo nixos-rebuild switch --flake .#{{input}} --show-trace -L -v
|
||||
|
||||
|
||||
@delete generation:
|
||||
sudo nix-env -p /nix/var/nix/profiles/system --delete-generations {{generation}}
|
||||
|
||||
|
||||
@update:
|
||||
update:
|
||||
# Update flake.lock
|
||||
nix flake update --extra-experimental-features flakes --extra-experimental-features nix-command --show-trace
|
||||
|
||||
|
||||
@upgrade:
|
||||
upgrade:
|
||||
# Let system totally upgrade
|
||||
## Set hostname and username in flake.nix
|
||||
sed -i "/^\s*hostname[[:space:]]*=[[:space:]]*\"/s/\"\(.*\)\"/\"{{hostname}}\"/" ./flake.nix
|
||||
@@ -88,7 +87,7 @@ username := `whoami`
|
||||
sudo nixos-rebuild switch --flake .#{{hostname}} --show-trace
|
||||
|
||||
|
||||
@upgrade-debug:
|
||||
upgrade-debug:
|
||||
# Let system totally upgrade (deBug Mode)
|
||||
## Set hostname and username in flake.nix
|
||||
sed -i "/^\s*hostname[[:space:]]*=[[:space:]]*\"/s/\"\(.*\)\"/\"{{hostname}}\"/" ./flake.nix
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
exec-once = fcitx5 -d -r
|
||||
exec-once = nm-applet
|
||||
exec-once = swayosd-server
|
||||
exec-once = swww-daemon
|
||||
exec-once = swww restore
|
||||
exec-once = xprop -root -f _XWAYLAND_GLOBAL_OUTPUT_SCALE 32c -set _XWAYLAND_GLOBAL_OUTPUT_SCALE $SCALE
|
||||
|
||||
92
dotfiles/.config/hypr/hyprland/basic.conf
vendored
92
dotfiles/.config/hypr/hyprland/basic.conf
vendored
@@ -1,15 +1,33 @@
|
||||
source = ~/.config/hypr/theme.conf
|
||||
|
||||
#animations {
|
||||
# enabled = true
|
||||
# bezier = liner, 1, 1, 1, 1
|
||||
# bezier = overshot, 0.13, 0.99, 0.29, 1.1
|
||||
# bezier = wind, 0.05, 0.9, 0.1, 1.05
|
||||
# bezier = winIn, 0.1, 1.1, 0.1, 1.1
|
||||
# animation = windows, 1, 6, wind, slide
|
||||
# animation = windowsIn, 1, 7, winIn, slide
|
||||
# animation = windowsOut, 1, 7, default, popin 80%
|
||||
# animation = windowsMove, 1, 5, wind, slide
|
||||
# animation = border, 1, 1, liner
|
||||
# animation = fade, 1, 10, default
|
||||
# animation = workspaces, 1, 8, default, slidefade 20%
|
||||
# animation = specialWorkspaceIn, 1, 8, default, fade
|
||||
# animation = specialWorkspaceOut, 1, 8, default, fade
|
||||
#}
|
||||
|
||||
animations {
|
||||
enabled = yes
|
||||
bezier = niri, 0.2, 0.8, 0.2, 1.0
|
||||
animation = windowsIn, 1, 3, niri, slide
|
||||
animation = windowsOut, 1, 2, niri, popin 80%
|
||||
animation = windowsMove, 1, 3, niri, slide
|
||||
animation = workspacesIn, 1, 3, niri, slide
|
||||
animation = workspacesOut, 1, 3, niri, slidefade 70%
|
||||
animation = border, 1, 1, niri
|
||||
animation = fade, 1, 1, niri
|
||||
bezier = smooth, 0.1, 0.9, 0.2, 1.0
|
||||
bezier = default, 0.25, 0.8, 0.5, 1
|
||||
bezier = wind, 0.05, 0.9, 0.1, 1.05
|
||||
animation = windowsIn, 1, 4, smooth, slide
|
||||
animation = windowsOut, 1, 2, default, popin 80%
|
||||
animation = windowsMove, 1, 4, wind, slide
|
||||
animation = border, 1, 5, default
|
||||
animation = workspacesIn, 1, 6, smooth, slide
|
||||
animation = workspacesOut, 1, 6, smooth, slidefade 80%
|
||||
}
|
||||
|
||||
|
||||
@@ -19,26 +37,20 @@ debug {
|
||||
}
|
||||
|
||||
|
||||
general {
|
||||
border_size = 1
|
||||
gaps_in = 2
|
||||
gaps_out = 2
|
||||
}
|
||||
|
||||
decoration {
|
||||
rounding = 0
|
||||
active_opacity = 1.0
|
||||
blur {
|
||||
enabled = false
|
||||
}
|
||||
dim_inactive = false
|
||||
fullscreen_opacity = 1.0
|
||||
inactive_opacity = 1.0
|
||||
|
||||
rounding = 4
|
||||
shadow {
|
||||
enabled = false
|
||||
}
|
||||
}
|
||||
|
||||
general {
|
||||
col.active_border = rgba(313244ff)
|
||||
col.inactive_border = rgba(1e1e2eff)
|
||||
}
|
||||
|
||||
ecosystem {
|
||||
no_donation_nag = true
|
||||
@@ -49,6 +61,16 @@ ecosystem {
|
||||
env = XDG_SESSION_DESKTOP, Hyprland
|
||||
|
||||
|
||||
general {
|
||||
gaps_in = 1
|
||||
gaps_out = 1
|
||||
border_size = 2
|
||||
col.active_border = $lavender
|
||||
col.inactive_border = $base
|
||||
layout = tile
|
||||
}
|
||||
|
||||
|
||||
gestures {
|
||||
workspace_swipe = true
|
||||
workspace_swipe_fingers = 3
|
||||
@@ -92,6 +114,36 @@ misc {
|
||||
}
|
||||
|
||||
|
||||
#plugin {
|
||||
# hy3 {
|
||||
# no_gaps_when_only = 1
|
||||
# node_collapse_policy = 1
|
||||
# group_inset = 10
|
||||
# tab_first_window = true
|
||||
# tabs {
|
||||
# col.active = rgb(b4befe)
|
||||
# col.active.border = rgb(313244)
|
||||
# col.active.text = rgb(181825)
|
||||
# col.inactive = rgb(181825)
|
||||
# col.inactive.border = rgb(313244)
|
||||
# col.inactive.text = rgb(b4befe)
|
||||
# col.urgent = rgb(f2cdcd)
|
||||
# col.urgent.border = rgb(313244)
|
||||
# col.urgent.text = rgb(181825)
|
||||
# from_top = false
|
||||
# height = 14
|
||||
# padding = 2
|
||||
# render_text = true
|
||||
# rounding = 6
|
||||
# text_center = true
|
||||
# text_font = Sarasa Gothic SC
|
||||
# text_height = 10
|
||||
# text_padding = 0
|
||||
# }
|
||||
# }
|
||||
#}
|
||||
|
||||
|
||||
xwayland {
|
||||
force_zero_scaling = true
|
||||
}
|
||||
|
||||
18
dotfiles/.config/hypr/hyprland/bind.conf
vendored
18
dotfiles/.config/hypr/hyprland/bind.conf
vendored
@@ -175,8 +175,8 @@ bind = SUPER, mouse:276, workspace, e-1
|
||||
|
||||
|
||||
## Brightness control
|
||||
bindel = , XF86MonBrightnessUp, exec, brightnessctl -d amdgpu_bl1 s +5%
|
||||
bindel = , XF86MonBrightnessDown, exec, brightnessctl -d amdgpu_bl1 s 5%-
|
||||
bindel = , XF86MonBrightnessUp, exec, swayosd-client --brightness +5
|
||||
bindel = , XF86MonBrightnessDown, exec, swayosd-client --brightness -5
|
||||
|
||||
|
||||
## Playback control
|
||||
@@ -190,13 +190,13 @@ bindl = CONTROL_ALT, right, exec, playerctl next
|
||||
bindl = CONTROL_ALT, left, exec, playerctl previous
|
||||
|
||||
|
||||
## Volume control (stable, PipeWire)
|
||||
bindel = , XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+
|
||||
bindel = , XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
|
||||
bindl = , XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
|
||||
bindl = , XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
|
||||
## Volume control
|
||||
bindel = ,XF86AudioRaiseVolume, exec, swayosd-client --output-volume +2
|
||||
bindel = ,XF86AudioLowerVolume, exec, swayosd-client --output-volume -2
|
||||
bindl = ,XF86AudioMicMute, exec, swayosd-client --input-volume mute-toggle
|
||||
bindl = ,XF86AudioMute, exec, swayosd-client --output-volume mute-toggle
|
||||
|
||||
|
||||
## Volume control (bonus)
|
||||
bindel = CONTROL_ALT, up, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+
|
||||
bindel = CONTROL_ALT, down, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
|
||||
bindel = CONTROL_ALT, up, exec, swayosd-client --output-volume +2
|
||||
bindel = CONTROL_ALT, down, exec, swayosd-client --output-volume -2
|
||||
|
||||
39
dotfiles/.config/niri/config.kdl
vendored
39
dotfiles/.config/niri/config.kdl
vendored
@@ -165,33 +165,25 @@ binds {
|
||||
// Powers off the monitors. To turn them back on, do any input like
|
||||
// moving the mouse or pressing any other key.
|
||||
Super+Shift+P { power-off-monitors; }
|
||||
// Volume control (stable)
|
||||
XF86AudioRaiseVolume {
|
||||
spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "5%+";
|
||||
}
|
||||
XF86AudioLowerVolume {
|
||||
spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "5%-";
|
||||
}
|
||||
XF86AudioMute {
|
||||
spawn "wpctl" "set-mute" "@DEFAULT_AUDIO_SINK@" "toggle";
|
||||
}
|
||||
XF86AudioMicMute {
|
||||
spawn "wpctl" "set-mute" "@DEFAULT_AUDIO_SOURCE@" "toggle";
|
||||
}
|
||||
XF86MonBrightnessUp {
|
||||
spawn "brightnessctl" "set" "+5%";
|
||||
}
|
||||
|
||||
XF86MonBrightnessDown {
|
||||
spawn "brightnessctl" "set" "5%-";
|
||||
}
|
||||
// Volume control
|
||||
XF86AudioLowerVolume allow-when-locked=true { spawn "swayosd-client" "--output-volume" "-2"; }
|
||||
XF86AudioMute allow-when-locked=true { spawn "swayosd-client" "--output-volume" "mute-toggle"; }
|
||||
XF86AudioRaiseVolume allow-when-locked=true { spawn "swayosd-client" "--output-volume" "+2"; }
|
||||
XF86MonBrightnessDown allow-when-locked=true { spawn "swayosd-client" "--brightness" "-5"; }
|
||||
XF86MonBrightnessUp allow-when-locked=true { spawn "swayosd-client" "--brightness" "+5"; }
|
||||
|
||||
// Volume control (bonus)
|
||||
Ctrl+Alt+Down allow-when-locked=true { spawn "swayosd-client" "--output-volume" "-2"; }
|
||||
Ctrl+Alt+Up allow-when-locked=true { spawn "swayosd-client" "--output-volume" "+2"; }
|
||||
}
|
||||
|
||||
|
||||
environment {
|
||||
CURRENT_COMPOSITOR "niri"
|
||||
XDG_CURRENT_DESKTOP "Niri"
|
||||
XDG_SESSION_DESKTOP "Niri"
|
||||
DISPLAY ":0"
|
||||
XDG_CURRENT_DESKTOP "niri"
|
||||
XDG_SESSION_DESKTOP "niri"
|
||||
}
|
||||
|
||||
|
||||
@@ -206,10 +198,13 @@ screenshot-path "~/Pictures/Screenshots/SCREENSHOT-%Y-%m-%d-%H:%M:%S.png"
|
||||
spawn-at-startup "fcitx5" "-d" "-r"
|
||||
spawn-at-startup "nm-applet"
|
||||
spawn-at-startup "blueman-applet"
|
||||
spawn-at-startup "sh" "-c" "dbus-update-activation-environment --systemd --all && systemctl --user stop niri-session.target && systemctl --user start niri-session.target"
|
||||
spawn-at-startup "swayosd-server"
|
||||
spawn-at-startup "swww-daemon"
|
||||
spawn-at-startup "swww" "img" "$HOME/Git/DCGOS/dotfiles/.local/share/wallpapers/yohoho.jpg"
|
||||
spawn-at-startup "sh" "-c" "sleep 1 && swww img $HOME/Git/DCGOS/dotfiles/.local/share/wallpapers/yohoho.jpg"
|
||||
spawn-at-startup "swww" "restore"
|
||||
spawn-at-startup "waybar"
|
||||
spawn-at-startup "lxqt-policykit-agent"
|
||||
|
||||
window-rule {
|
||||
block-out-from "screen-capture"
|
||||
|
||||
4
dotfiles/.config/niri/switch_monitors.sh
vendored
4
dotfiles/.config/niri/switch_monitors.sh
vendored
@@ -48,7 +48,3 @@ echo "$NEXT_MODE" > "$STATE_FILE"
|
||||
# 刷新 Niri 布局(防止残影)
|
||||
sleep 0.5
|
||||
niri msg reload-layout >/dev/null 2>&1 || true
|
||||
pkill swayosd-server
|
||||
(swayosd-server &>/dev/null &)
|
||||
pkill wl-gammarelay-rs
|
||||
(wl-gammarelay-rs &>/dev/null &)
|
||||
|
||||
58
dotfiles/.config/waybar/config.jsonc
vendored
58
dotfiles/.config/waybar/config.jsonc
vendored
@@ -10,7 +10,7 @@
|
||||
"custom/startmenu",
|
||||
"backlight",
|
||||
"wireplumber",
|
||||
"custom/wl-gammarelay-brightness",
|
||||
"battery",
|
||||
"hyprland/workspaces",
|
||||
"niri/workspaces",
|
||||
"sway/workspaces"
|
||||
@@ -21,9 +21,9 @@
|
||||
"modules-right": [
|
||||
"custom/screenshot",
|
||||
"tray",
|
||||
"custom/wl-gammarelay-brightness",
|
||||
// "custom/wl-gammarelay-temperature",
|
||||
"clock",
|
||||
"battery",
|
||||
"custom/swaync",
|
||||
],
|
||||
|
||||
@@ -39,7 +39,7 @@
|
||||
},
|
||||
|
||||
"backlight": {
|
||||
"device": "amdgpu_bl1",
|
||||
"device": "intel_backlight",
|
||||
"format": "{icon} {percent}%",
|
||||
"format-icons": [""],
|
||||
"on-scroll-down": "brightnessctl s 2%-",
|
||||
@@ -86,7 +86,15 @@
|
||||
"on-click": "activate",
|
||||
"on-click-middle": "close",
|
||||
},
|
||||
|
||||
/*
|
||||
"custom/screenshot": {
|
||||
"format": " ",
|
||||
"on-click": "sh ~/.config/waybar/scripts/Screenshot-Area.sh",
|
||||
"on-click-right": "nemo ~/Pictures/Screenshots",
|
||||
"on-click-middle": "sh ~/.config/waybar/scripts/Screenshot-Fullscreen.sh",
|
||||
"tooltip": false,
|
||||
},
|
||||
*/
|
||||
"tray": {
|
||||
"spacing": 8,
|
||||
},
|
||||
@@ -100,7 +108,6 @@
|
||||
"on-scroll-down": "busctl --user -- call rs.wl-gammarelay / rs.wl.gammarelay UpdateBrightness d -0.02",
|
||||
"tooltip": false
|
||||
},
|
||||
|
||||
"custom/wl-gammarelay-temperature": {
|
||||
"format": "{}K",
|
||||
"exec": "wl-gammarelay-rs watch {t}",
|
||||
@@ -110,21 +117,47 @@
|
||||
"on-scroll-down": "busctl --user -- call rs.wl-gammarelay / rs.wl.gammarelay UpdateTemperature n -100",
|
||||
"tooltip": false
|
||||
},
|
||||
|
||||
/*
|
||||
"wireplumber": {
|
||||
"on-click": "pwvucontrol",
|
||||
"on-click-right": "easyeffects",
|
||||
"on-click-middle": "swayosd-client --output-volume mute-toggle",
|
||||
"on-scroll-down": "swayosd-client --output-volume -2",
|
||||
"on-scroll-up": "swayosd-client --output-volume +2",
|
||||
"format": "{icon} {volume}%",
|
||||
"format-muted": " MUTE",
|
||||
"format-muted": "MUTE",
|
||||
"format-source": "",
|
||||
"format-source-muted": "",
|
||||
"format-icons": {
|
||||
"default": ["", "", ""]
|
||||
"default": ["", "", ""],
|
||||
},
|
||||
"on-scroll-up": "wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+",
|
||||
"on-scroll-down": "wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-",
|
||||
"on-click": "pwvucontrol",
|
||||
// "on-click-right": "easyeffects"
|
||||
},
|
||||
*/
|
||||
|
||||
"wireplumber": {
|
||||
"on-click": "pwvucontrol",
|
||||
"on-click-right": "easyeffects",
|
||||
"on-click-middle": "swayosd-client --output-volume mute-toggle",
|
||||
"on-scroll-down": "swayosd-client --output-volume -2",
|
||||
"on-scroll-up": "swayosd-client --output-volume +2",
|
||||
"format": "{icon} {volume}%",
|
||||
"format-muted": "MUTE",
|
||||
"format-source": "",
|
||||
"format-source-muted": "",
|
||||
"format-icons": {
|
||||
"default": ["", "", ""],
|
||||
},
|
||||
},
|
||||
/*
|
||||
"clock": {
|
||||
"interval": 60,
|
||||
"align": 0,
|
||||
"rotate": 0,
|
||||
"tooltip-format": "<tt><big>{calendar}</big></tt>",
|
||||
"format": " {:%d.%m.%Y}",
|
||||
"format-alt": " {:%b%d %a,%G}",
|
||||
},
|
||||
*/
|
||||
"clock": {
|
||||
"interval": 60,
|
||||
"align": 0,
|
||||
@@ -149,3 +182,4 @@
|
||||
"escape": true,
|
||||
},
|
||||
}
|
||||
|
||||
|
||||
24
dotfiles/.config/waybar/style.css
vendored
24
dotfiles/.config/waybar/style.css
vendored
@@ -131,27 +131,3 @@ tooltip label {
|
||||
padding-right: 8px;
|
||||
padding-left: 10px;
|
||||
}
|
||||
#custom-startmenu {
|
||||
color: @overlay2;
|
||||
}
|
||||
|
||||
#wireplumber {
|
||||
color: @green;
|
||||
}
|
||||
|
||||
#custom-wl-gammarelay-brightness {
|
||||
color: @sapphire;
|
||||
}
|
||||
|
||||
#custom-wl-gammarelay-temperature {
|
||||
color: @teal;
|
||||
}
|
||||
|
||||
#custom-swaync {
|
||||
color: @overlay2;
|
||||
}
|
||||
|
||||
#wlr-taskbar {
|
||||
color: @subtext0;
|
||||
}
|
||||
|
||||
|
||||
447
flake.lock
generated
447
flake.lock
generated
@@ -21,28 +21,28 @@
|
||||
"base16-fish": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1765809053,
|
||||
"narHash": "sha256-XCUQLoLfBJ8saWms2HCIj4NEN+xNsWBlU1NrEPcQG4s=",
|
||||
"lastModified": 1754405784,
|
||||
"narHash": "sha256-l9xHIy+85FN+bEo6yquq2IjD1rSg9fjfjpyGP1W8YXo=",
|
||||
"owner": "tomyun",
|
||||
"repo": "base16-fish",
|
||||
"rev": "86cbea4dca62e08fb7fd83a70e96472f92574782",
|
||||
"rev": "23ae20a0093dca0d7b39d76ba2401af0ccf9c561",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tomyun",
|
||||
"repo": "base16-fish",
|
||||
"rev": "86cbea4dca62e08fb7fd83a70e96472f92574782",
|
||||
"rev": "23ae20a0093dca0d7b39d76ba2401af0ccf9c561",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"base16-helix": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1760703920,
|
||||
"narHash": "sha256-m82fGUYns4uHd+ZTdoLX2vlHikzwzdu2s2rYM2bNwzw=",
|
||||
"lastModified": 1752979451,
|
||||
"narHash": "sha256-0CQM+FkYy0fOO/sMGhOoNL80ftsAzYCg9VhIrodqusM=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-helix",
|
||||
"rev": "d646af9b7d14bff08824538164af99d0c521b185",
|
||||
"rev": "27cf1e66e50abc622fb76a3019012dc07c678fac",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -68,14 +68,76 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"chaotic": {
|
||||
"inputs": {
|
||||
"flake-schemas": "flake-schemas",
|
||||
"home-manager": "home-manager",
|
||||
"jovian": "jovian",
|
||||
"nixpkgs": "nixpkgs",
|
||||
"rust-overlay": "rust-overlay"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1764351487,
|
||||
"narHash": "sha256-7XJcTfz0dPhBd7nfyjcFxT1LIIctJZ2LthiI2Ltd7zY=",
|
||||
"owner": "chaotic-cx",
|
||||
"repo": "nyx",
|
||||
"rev": "2031f4a0507d0f7ab3e1aaff4c027a010feee447",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "chaotic-cx",
|
||||
"ref": "nyxpkgs-unstable",
|
||||
"repo": "nyx",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"daeuniverse": {
|
||||
"inputs": {
|
||||
"flake-parts": "flake-parts",
|
||||
"nixpkgs": "nixpkgs_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1762203410,
|
||||
"narHash": "sha256-+WqPI5Il43oI2/TMUrZUzzReLW/dnWM6GNqrekDXgos=",
|
||||
"owner": "daeuniverse",
|
||||
"repo": "flake.nix",
|
||||
"rev": "effa0f113add0f982a657f5bce92bac503b542b6",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "daeuniverse",
|
||||
"repo": "flake.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"disko": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1764350888,
|
||||
"narHash": "sha256-6Rp18zavTlnlZzcoLoBTJMBahL2FycVkw2rAEs3cQvo=",
|
||||
"owner": "nix-community",
|
||||
"repo": "disko",
|
||||
"rev": "2055a08fd0e2fd41318279a5355eb8a161accf26",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "disko",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"firefox-gnome-theme": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1764873433,
|
||||
"narHash": "sha256-1XPewtGMi+9wN9Ispoluxunw/RwozuTRVuuQOmxzt+A=",
|
||||
"lastModified": 1758112371,
|
||||
"narHash": "sha256-lizRM2pj6PHrR25yimjyFn04OS4wcdbc38DCdBVa2rk=",
|
||||
"owner": "rafaelmardojai",
|
||||
"repo": "firefox-gnome-theme",
|
||||
"rev": "f7ffd917ac0d253dbd6a3bf3da06888f57c69f92",
|
||||
"rev": "0909cfe4a2af8d358ad13b20246a350e14c2473d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -86,17 +148,14 @@
|
||||
},
|
||||
"flake-parts": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": [
|
||||
"stylix",
|
||||
"nixpkgs"
|
||||
]
|
||||
"nixpkgs-lib": "nixpkgs-lib"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1767609335,
|
||||
"narHash": "sha256-feveD98mQpptwrAEggBQKJTYbvwwglSbOv53uCfH9PY=",
|
||||
"lastModified": 1738453229,
|
||||
"narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "250481aafeb741edfe23d29195671c19b36b6dca",
|
||||
"rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -105,6 +164,62 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-parts_2": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": [
|
||||
"nixvim",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1763759067,
|
||||
"narHash": "sha256-LlLt2Jo/gMNYAwOgdRQBrsRoOz7BPRkzvNaI/fzXi2Q=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "2cccadc7357c0ba201788ae99c4dfa90728ef5e0",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-parts_3": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": [
|
||||
"stylix",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1756770412,
|
||||
"narHash": "sha256-+uWLQZccFHwqpGqr2Yt5VsW/PbeJVTn9Dk6SHWhNRPw=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "4524271976b625a4a605beefd893f270620fd751",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-schemas": {
|
||||
"locked": {
|
||||
"lastModified": 1721999734,
|
||||
"narHash": "sha256-G5CxYeJVm4lcEtaO87LKzOsVnWeTcHGKbKxNamNWgOw=",
|
||||
"rev": "0a5c42297d870156d9c57d8f99e476b738dcd982",
|
||||
"revCount": 75,
|
||||
"type": "tarball",
|
||||
"url": "https://api.flakehub.com/f/pinned/DeterminateSystems/flake-schemas/0.1.5/0190ef2f-61e0-794b-ba14-e82f225e55e6/source.tar.gz"
|
||||
},
|
||||
"original": {
|
||||
"type": "tarball",
|
||||
"url": "https://flakehub.com/f/DeterminateSystems/flake-schemas/%3D0.1.5.tar.gz"
|
||||
}
|
||||
},
|
||||
"flake-utils": {
|
||||
"inputs": {
|
||||
"systems": "systems"
|
||||
@@ -143,11 +258,11 @@
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"host": "gitlab.gnome.org",
|
||||
"lastModified": 1767737596,
|
||||
"narHash": "sha256-eFujfIUQDgWnSJBablOuG+32hCai192yRdrNHTv0a+s=",
|
||||
"lastModified": 1762869044,
|
||||
"narHash": "sha256-nwm/GJ2Syigf7VccLAZ66mFC8mZJFqpJmIxSGKl7+Ds=",
|
||||
"owner": "GNOME",
|
||||
"repo": "gnome-shell",
|
||||
"rev": "ef02db02bf0ff342734d525b5767814770d85b49",
|
||||
"rev": "680e3d195a92203f28d4bf8c6e8bb537cc3ed4ad",
|
||||
"type": "gitlab"
|
||||
},
|
||||
"original": {
|
||||
@@ -161,15 +276,16 @@
|
||||
"home-manager": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"chaotic",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1769978395,
|
||||
"narHash": "sha256-gj1yP3spUb1vGtaF5qPhshd2j0cg4xf51pklDsIm19Q=",
|
||||
"lastModified": 1764194569,
|
||||
"narHash": "sha256-iUM9ktarEzThkayyZrzQ7oycPshAY2XRQqVKz0xX/L0=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "984708c34d3495a518e6ab6b8633469bbca2f77a",
|
||||
"rev": "9651819d75f6c7ffaf8a9227490ac704f29659f0",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -178,34 +294,150 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"lazyvim": {
|
||||
"home-manager_2": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1770068987,
|
||||
"narHash": "sha256-NZy5S0xkntbfW3SfluZg5hbDzRw4eFBsFm9knXzH8Eo=",
|
||||
"owner": "pfassina",
|
||||
"repo": "lazyvim-nix",
|
||||
"rev": "a88c488cfd96e1d4274d34d2e35ddbe99dbe5757",
|
||||
"lastModified": 1764361670,
|
||||
"narHash": "sha256-jgWzgpIaHbL3USIq0gihZeuy1lLf2YSfwvWEwnfAJUw=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "780be8ef503a28939cf9dc7996b48ffb1a3e04c6",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "pfassina",
|
||||
"repo": "lazyvim-nix",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"ixx": {
|
||||
"inputs": {
|
||||
"flake-utils": [
|
||||
"nixvim",
|
||||
"nuschtosSearch",
|
||||
"flake-utils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"nixvim",
|
||||
"nuschtosSearch",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1754860581,
|
||||
"narHash": "sha256-EM0IE63OHxXCOpDHXaTyHIOk2cNvMCGPqLt/IdtVxgk=",
|
||||
"owner": "NuschtOS",
|
||||
"repo": "ixx",
|
||||
"rev": "babfe85a876162c4acc9ab6fb4483df88fa1f281",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NuschtOS",
|
||||
"ref": "v0.1.1",
|
||||
"repo": "ixx",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"jovian": {
|
||||
"inputs": {
|
||||
"nix-github-actions": "nix-github-actions",
|
||||
"nixpkgs": [
|
||||
"chaotic",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1764275117,
|
||||
"narHash": "sha256-DRcv8Y0BnWm4ZhUQnaYk1dNzC6ZhA2W9Vv5Jl4n0RbE=",
|
||||
"owner": "Jovian-Experiments",
|
||||
"repo": "Jovian-NixOS",
|
||||
"rev": "96023dcc9a0febaaa3b91f447b9ae2fbe86f2923",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "Jovian-Experiments",
|
||||
"repo": "Jovian-NixOS",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nix-github-actions": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"chaotic",
|
||||
"jovian",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1729697500,
|
||||
"narHash": "sha256-VFTWrbzDlZyFHHb1AlKRiD/qqCJIripXKiCSFS8fAOY=",
|
||||
"owner": "zhaofengli",
|
||||
"repo": "nix-github-actions",
|
||||
"rev": "e418aeb728b6aa5ca8c5c71974e7159c2df1d8cf",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "zhaofengli",
|
||||
"ref": "matrix-name",
|
||||
"repo": "nix-github-actions",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1770019141,
|
||||
"narHash": "sha256-VKS4ZLNx4PNrABoB0L8KUpc1fE7CLpQXQs985tGfaCU=",
|
||||
"lastModified": 1764242076,
|
||||
"narHash": "sha256-sKoIWfnijJ0+9e4wRvIgm/HgE27bzwQxcEmo2J/gNpI=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "2fad6eac6077f03fe109c4d4eb171cf96791faa4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-lib": {
|
||||
"locked": {
|
||||
"lastModified": 1738452942,
|
||||
"narHash": "sha256-vJzFZGaCpnmo7I6i416HaBLpC+hvcURh/BQwROcGIp8=",
|
||||
"type": "tarball",
|
||||
"url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz"
|
||||
},
|
||||
"original": {
|
||||
"type": "tarball",
|
||||
"url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz"
|
||||
}
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1739866667,
|
||||
"narHash": "sha256-EO1ygNKZlsAC9avfcwHkKGMsmipUk1Uc0TbrEZpkn64=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "73cf49b8ad837ade2de76f87eb53fc85ed5d4680",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_3": {
|
||||
"locked": {
|
||||
"lastModified": 1764242076,
|
||||
"narHash": "sha256-sKoIWfnijJ0+9e4wRvIgm/HgE27bzwQxcEmo2J/gNpI=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "cb369ef2efd432b3cdf8622b0ffc0a97a02f3137",
|
||||
"rev": "2fad6eac6077f03fe109c4d4eb171cf96791faa4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -215,6 +447,45 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_4": {
|
||||
"locked": {
|
||||
"lastModified": 1762977756,
|
||||
"narHash": "sha256-4PqRErxfe+2toFJFgcRKZ0UI9NSIOJa+7RXVtBhy4KE=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "c5ae371f1a6a7fd27823bc500d9390b38c05fa55",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixvim": {
|
||||
"inputs": {
|
||||
"flake-parts": "flake-parts_2",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"nuschtosSearch": "nuschtosSearch",
|
||||
"systems": "systems_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1764443358,
|
||||
"narHash": "sha256-bd9I02P/Mp9yYGcSWgLLdI/Zt0JqF8igSTAfUzknVHk=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixvim",
|
||||
"rev": "6094d2a4396c0ff4e94b22315cc43f55db626c32",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "nixvim",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nur": {
|
||||
"inputs": {
|
||||
"flake-parts": [
|
||||
@@ -227,11 +498,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1767810917,
|
||||
"narHash": "sha256-ZKqhk772+v/bujjhla9VABwcvz+hB2IaRyeLT6CFnT0=",
|
||||
"lastModified": 1758998580,
|
||||
"narHash": "sha256-VLx0z396gDCGSiowLMFz5XRO/XuNV+4EnDYjdJhHvUk=",
|
||||
"owner": "nix-community",
|
||||
"repo": "NUR",
|
||||
"rev": "dead29c804adc928d3a69dfe7f9f12d0eec1f1a4",
|
||||
"rev": "ba8d9c98f5f4630bcb0e815ab456afd90c930728",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -240,14 +511,61 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nuschtosSearch": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils",
|
||||
"ixx": "ixx",
|
||||
"nixpkgs": [
|
||||
"nixvim",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1761730856,
|
||||
"narHash": "sha256-t1i5p/vSWwueZSC0Z2BImxx3BjoUDNKyC2mk24krcMY=",
|
||||
"owner": "NuschtOS",
|
||||
"repo": "search",
|
||||
"rev": "e29de6db0cb3182e9aee75a3b1fd1919d995d85b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NuschtOS",
|
||||
"repo": "search",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"home-manager": "home-manager",
|
||||
"lazyvim": "lazyvim",
|
||||
"nixpkgs": "nixpkgs",
|
||||
"chaotic": "chaotic",
|
||||
"daeuniverse": "daeuniverse",
|
||||
"disko": "disko",
|
||||
"home-manager": "home-manager_2",
|
||||
"nixpkgs": "nixpkgs_3",
|
||||
"nixvim": "nixvim",
|
||||
"stylix": "stylix"
|
||||
}
|
||||
},
|
||||
"rust-overlay": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"chaotic",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1764211126,
|
||||
"narHash": "sha256-p5y13PnMZYd5WdHk+XCzyUaLGBUCwnz2n4KYKEZM0Pw=",
|
||||
"owner": "oxalica",
|
||||
"repo": "rust-overlay",
|
||||
"rev": "895935bff08cfcfb663fb9c8263c43596e7cd1ed",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "oxalica",
|
||||
"repo": "rust-overlay",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"stylix": {
|
||||
"inputs": {
|
||||
"base16": "base16",
|
||||
@@ -255,13 +573,11 @@
|
||||
"base16-helix": "base16-helix",
|
||||
"base16-vim": "base16-vim",
|
||||
"firefox-gnome-theme": "firefox-gnome-theme",
|
||||
"flake-parts": "flake-parts",
|
||||
"flake-parts": "flake-parts_3",
|
||||
"gnome-shell": "gnome-shell",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"nixpkgs": "nixpkgs_4",
|
||||
"nur": "nur",
|
||||
"systems": "systems_2",
|
||||
"systems": "systems_3",
|
||||
"tinted-foot": "tinted-foot",
|
||||
"tinted-kitty": "tinted-kitty",
|
||||
"tinted-schemes": "tinted-schemes",
|
||||
@@ -269,11 +585,11 @@
|
||||
"tinted-zed": "tinted-zed"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1769978605,
|
||||
"narHash": "sha256-Vjniae6HHJCb9xZLeUOP15aRQXSZuKeeaZFM+gRDCgo=",
|
||||
"lastModified": 1764451865,
|
||||
"narHash": "sha256-d4tfTm3ccp4rx7W1WW1BzSkTgEeMd4cZvhAJ7lP145M=",
|
||||
"owner": "danth",
|
||||
"repo": "stylix",
|
||||
"rev": "ce22070ec5ce6169a6841da31baea33ce930ed38",
|
||||
"rev": "8a096ccec828c68bfb870295d186ad994ea0ae2c",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -312,6 +628,21 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_3": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"tinted-foot": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
@@ -348,11 +679,11 @@
|
||||
"tinted-schemes": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1767710407,
|
||||
"narHash": "sha256-+W1EB79Jl0/gm4JqmO0Nuc5C7hRdp4vfsV/VdzI+des=",
|
||||
"lastModified": 1757716333,
|
||||
"narHash": "sha256-d4km8W7w2zCUEmPAPUoLk1NlYrGODuVa3P7St+UrqkM=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "schemes",
|
||||
"rev": "2800e2b8ac90f678d7e4acebe4fa253f602e05b2",
|
||||
"rev": "317a5e10c35825a6c905d912e480dfe8e71c7559",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -364,11 +695,11 @@
|
||||
"tinted-tmux": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1767489635,
|
||||
"narHash": "sha256-e6nnFnWXKBCJjCv4QG4bbcouJ6y3yeT70V9MofL32lU=",
|
||||
"lastModified": 1757811970,
|
||||
"narHash": "sha256-n5ZJgmzGZXOD9pZdAl1OnBu3PIqD+X3vEBUGbTi4JiI=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "tinted-tmux",
|
||||
"rev": "3c32729ccae99be44fe8a125d20be06f8d7d8184",
|
||||
"rev": "d217ba31c846006e9e0ae70775b0ee0f00aa6b1e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -380,11 +711,11 @@
|
||||
"tinted-zed": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1767488740,
|
||||
"narHash": "sha256-wVOj0qyil8m+ouSsVZcNjl5ZR+1GdOOAooAatQXHbuU=",
|
||||
"lastModified": 1757811247,
|
||||
"narHash": "sha256-4EFOUyLj85NRL3OacHoLGEo0wjiRJzfsXtR4CZWAn6w=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-zed",
|
||||
"rev": "11abb0b282ad3786a2aae088d3a01c60916f2e40",
|
||||
"rev": "824fe0aacf82b3c26690d14e8d2cedd56e18404e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
||||
@@ -2,12 +2,15 @@
|
||||
description = "🥶";
|
||||
|
||||
inputs = {
|
||||
chaotic.url = "github:chaotic-cx/nyx/nyxpkgs-unstable";
|
||||
daeuniverse.url = "github:daeuniverse/flake.nix";
|
||||
disko.inputs.nixpkgs.follows = "nixpkgs";
|
||||
disko.url = "github:nix-community/disko";
|
||||
home-manager.inputs.nixpkgs.follows = "nixpkgs";
|
||||
home-manager.url = "github:nix-community/home-manager";
|
||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||
lazyvim.inputs.nixpkgs.follows = "nixpkgs";
|
||||
lazyvim.url = "github:pfassina/lazyvim-nix";
|
||||
stylix.inputs.nixpkgs.follows = "nixpkgs";
|
||||
nixvim.inputs.nixpkgs.follows = "nixpkgs";
|
||||
nixvim.url = "github:nix-community/nixvim";
|
||||
stylix.url = "github:danth/stylix";
|
||||
};
|
||||
|
||||
|
||||
5
home/gui/anime/tsukimi.nix
Normal file
5
home/gui/anime/tsukimi.nix
Normal file
@@ -0,0 +1,5 @@
|
||||
{pkgs, ...}: {
|
||||
home.packages = with pkgs; [
|
||||
tsukimi
|
||||
];
|
||||
}
|
||||
5
home/gui/editor/zed.nix
Normal file
5
home/gui/editor/zed.nix
Normal file
@@ -0,0 +1,5 @@
|
||||
{pkgs, ...}: {
|
||||
home.packages = with pkgs; [
|
||||
zed-editor
|
||||
];
|
||||
}
|
||||
5
home/gui/file-sync/syncthing.nix
Normal file
5
home/gui/file-sync/syncthing.nix
Normal file
@@ -0,0 +1,5 @@
|
||||
{pkgs, ...}: {
|
||||
home.packages = with pkgs; [
|
||||
syncthing
|
||||
];
|
||||
}
|
||||
5
home/gui/proxy/gui-for-singbox.nix
Normal file
5
home/gui/proxy/gui-for-singbox.nix
Normal file
@@ -0,0 +1,5 @@
|
||||
{pkgs, ...}: {
|
||||
home.packages = with pkgs; [
|
||||
gui-for-singbox
|
||||
];
|
||||
}
|
||||
@@ -1,81 +1,235 @@
|
||||
{ inputs, config, lib, pkgs, ... }:
|
||||
{
|
||||
imports = [ inputs.lazyvim.homeManagerModules.default ];
|
||||
programs.lazyvim = {
|
||||
{ config
|
||||
, lib
|
||||
, pkgs
|
||||
, ...
|
||||
}: {
|
||||
programs.neovim = {
|
||||
enable = true;
|
||||
|
||||
configFiles = ./lua;
|
||||
|
||||
extras = {
|
||||
lang = {
|
||||
go.enable = true;
|
||||
clangd.enable = true;
|
||||
rust.enable = true;
|
||||
typescript.enable = true;
|
||||
python.enable = true;
|
||||
tailwind.enable = true;
|
||||
java.enable = true;
|
||||
json.enable = true;
|
||||
yaml.enable = true;
|
||||
toml.enable = true;
|
||||
docker.enable = true;
|
||||
kotlin.enable = true;
|
||||
# dart.enable = true;
|
||||
nix.enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
extraPackages = with pkgs; [
|
||||
# All
|
||||
tree-sitter
|
||||
|
||||
# Go
|
||||
#Go
|
||||
gopls
|
||||
gofumpt
|
||||
golines
|
||||
|
||||
# Lua
|
||||
#Lua
|
||||
stylua
|
||||
lua-language-server
|
||||
|
||||
# Nix
|
||||
#Nix
|
||||
nixd
|
||||
nixpkgs-fmt
|
||||
|
||||
# Java
|
||||
#Java
|
||||
google-java-format
|
||||
jdt-language-server
|
||||
|
||||
# Rust
|
||||
#Rust
|
||||
clippy
|
||||
rustfmt
|
||||
rust-analyzer
|
||||
|
||||
# Shell
|
||||
#Shell
|
||||
shfmt
|
||||
bash-language-server
|
||||
|
||||
# C/C++
|
||||
#C/C++
|
||||
clang-tools
|
||||
|
||||
# Kotlin
|
||||
#Kotlin
|
||||
ktlint
|
||||
kotlin-language-server
|
||||
|
||||
# Python
|
||||
#Python
|
||||
ruff
|
||||
black
|
||||
python312Packages.python-lsp-server
|
||||
|
||||
# JS/TS/Web
|
||||
biome
|
||||
#JS/TS/Web
|
||||
prettierd
|
||||
nodePackages.prettier
|
||||
|
||||
# Data formats
|
||||
jq #JSON
|
||||
taplo #TOML
|
||||
yamlfmt #YAML
|
||||
];
|
||||
|
||||
plugins = with pkgs.vimPlugins; [
|
||||
lazy-nvim
|
||||
];
|
||||
|
||||
extraLuaConfig =
|
||||
let
|
||||
plugins = with pkgs.vimPlugins; [
|
||||
LazyVim
|
||||
bufferline-nvim
|
||||
cmp_luasnip
|
||||
conform-nvim
|
||||
dashboard-nvim
|
||||
flash-nvim
|
||||
friendly-snippets
|
||||
gitsigns-nvim
|
||||
lualine-nvim
|
||||
neo-tree-nvim
|
||||
neoconf-nvim
|
||||
neodev-nvim
|
||||
noice-nvim
|
||||
nui-nvim
|
||||
nvim-lint
|
||||
nvim-lspconfig
|
||||
nvim-notify
|
||||
nvim-spectre
|
||||
nvim-treesitter
|
||||
nvim-treesitter-context
|
||||
nvim-ts-autotag
|
||||
nvim-ts-context-commentstring
|
||||
nvim-web-devicons
|
||||
persistence-nvim
|
||||
plenary-nvim
|
||||
todo-comments-nvim
|
||||
tokyonight-nvim
|
||||
trouble-nvim
|
||||
vim-illuminate
|
||||
vim-startuptime
|
||||
which-key-nvim
|
||||
fzf-lua
|
||||
snacks-nvim
|
||||
markview-nvim
|
||||
{
|
||||
name = "lazydev.nvim";
|
||||
path = lazydev-nvim;
|
||||
}
|
||||
{
|
||||
name = "blink.cmp";
|
||||
path = blink-cmp;
|
||||
}
|
||||
{
|
||||
name = "LuaSnip";
|
||||
path = luasnip;
|
||||
}
|
||||
{
|
||||
name = "mini.ai";
|
||||
path = mini-nvim;
|
||||
}
|
||||
{
|
||||
name = "mini.bufremove";
|
||||
path = mini-nvim;
|
||||
}
|
||||
{
|
||||
name = "mini.comment";
|
||||
path = mini-nvim;
|
||||
}
|
||||
{
|
||||
name = "mini.indentscope";
|
||||
path = mini-nvim;
|
||||
}
|
||||
{
|
||||
name = "mini.pairs";
|
||||
path = mini-nvim;
|
||||
}
|
||||
{
|
||||
name = "mini.surround";
|
||||
path = mini-nvim;
|
||||
}
|
||||
{
|
||||
name = "mini.icons";
|
||||
path = mini-icons;
|
||||
}
|
||||
{
|
||||
name = "grug-far.nvim";
|
||||
path = grug-far-nvim;
|
||||
}
|
||||
];
|
||||
mkEntryFromDrv = drv:
|
||||
if lib.isDerivation drv
|
||||
then {
|
||||
name = "${lib.getName drv}";
|
||||
path = drv;
|
||||
}
|
||||
else drv;
|
||||
lazyPath = pkgs.linkFarm "lazy-plugins" (builtins.map mkEntryFromDrv plugins);
|
||||
in
|
||||
''
|
||||
require("lazy").setup({
|
||||
defaults = {
|
||||
lazy = true,
|
||||
},
|
||||
dev = {
|
||||
-- reuse files from pkgs.vimPlugins.*
|
||||
path = "${lazyPath}",
|
||||
patterns = { "." },
|
||||
-- fallback to download
|
||||
fallback = true,
|
||||
},
|
||||
rocks = {
|
||||
enabled = false,
|
||||
hererocks = false,
|
||||
},
|
||||
spec = {
|
||||
{ "LazyVim/LazyVim", import = "lazyvim.plugins" },
|
||||
-- The following configs are needed for fixing lazyvim on nix
|
||||
-- disable mason.nvim, use programs.neovim.extraPackages
|
||||
{ "mason-org/mason-lspconfig.nvim", enabled = false },
|
||||
{ "mason-org/mason.nvim", enabled = false },
|
||||
-- import/override with your plugins
|
||||
{ import = "lazyvim.plugins.extras.lang.go" },
|
||||
{ import = "lazyvim.plugins.extras.lang.clangd" },
|
||||
{ import = "lazyvim.plugins.extras.lang.rust" },
|
||||
{ import = "lazyvim.plugins.extras.lang.typescript" },
|
||||
{ import = "lazyvim.plugins.extras.lang.python" },
|
||||
{ import = "lazyvim.plugins.extras.lang.tailwind" },
|
||||
{ import = "lazyvim.plugins.extras.lang.java" },
|
||||
{ import = "lazyvim.plugins.extras.lang.json" },
|
||||
{ import = "lazyvim.plugins.extras.lang.yaml" },
|
||||
{ import = "lazyvim.plugins.extras.lang.toml" },
|
||||
{ import = "lazyvim.plugins.extras.lang.docker" },
|
||||
{ import = "lazyvim.plugins.extras.lang.kotlin" },
|
||||
{ import = "lazyvim.plugins.extras.lang.dart" },
|
||||
{ import = "plugins" },
|
||||
-- treesitter handled by xdg.configFile."nvim/parser", put this line at the end of spec to clear ensure_installed
|
||||
{ "nvim-treesitter/nvim-treesitter",
|
||||
opts = function(_, opts)
|
||||
opts.ensure_installed = {}
|
||||
end,
|
||||
},
|
||||
},
|
||||
})
|
||||
'';
|
||||
};
|
||||
|
||||
# https://github.com/nvim-treesitter/nvim-treesitter#i-get-query-error-invalid-node-type-at-position
|
||||
xdg.configFile."nvim/parser".source =
|
||||
let
|
||||
parsers = pkgs.symlinkJoin {
|
||||
name = "treesitter-parsers";
|
||||
paths =
|
||||
(pkgs.vimPlugins.nvim-treesitter.withPlugins (plugins:
|
||||
with plugins; [
|
||||
bash
|
||||
c
|
||||
go
|
||||
lua
|
||||
rust
|
||||
java
|
||||
dart
|
||||
kotlin
|
||||
python
|
||||
javascript
|
||||
typescript
|
||||
tsx
|
||||
vue
|
||||
html
|
||||
css
|
||||
json
|
||||
yaml
|
||||
toml
|
||||
dockerfile
|
||||
markdown
|
||||
markdown_inline
|
||||
])).dependencies;
|
||||
};
|
||||
in
|
||||
"${parsers}/parser";
|
||||
|
||||
# Normal LazyVim config here, see https://github.com/LazyVim/starter/tree/main/lua
|
||||
xdg.configFile."nvim/lua".source = ./lua;
|
||||
}
|
||||
|
||||
8
home/nvim/lua/config/autocmds.lua
Normal file
8
home/nvim/lua/config/autocmds.lua
Normal file
@@ -0,0 +1,8 @@
|
||||
-- Autocmds are automatically loaded on the VeryLazy event
|
||||
-- Default autocmds that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/autocmds.lua
|
||||
--
|
||||
-- Add any additional autocmds here
|
||||
-- with `vim.api.nvim_create_autocmd`
|
||||
--
|
||||
-- Or remove existing autocmds by their group name (which is prefixed with `lazyvim_` for the defaults)
|
||||
-- e.g. vim.api.nvim_del_augroup_by_name("lazyvim_wrap_spell")
|
||||
@@ -5,31 +5,40 @@
|
||||
local map = vim.keymap.set
|
||||
local opts = { noremap = true, silent = true }
|
||||
|
||||
-- === VSCode-like buffer/tab navigation ===
|
||||
-- === VSCode-like buffer/tab navigation ===
|
||||
map("n", "<C-Tab>", "<cmd>bnext<CR>", { desc = "Next buffer (like VSCode)" })
|
||||
map("n", "<C-S-Tab>", "<cmd>bprevious<CR>", { desc = "Previous buffer (like VSCode)" })
|
||||
|
||||
-- === Vscode-like Close buffer navigation ===
|
||||
vim.keymap.set("n", "<C-w>", function()
|
||||
local current = vim.api.nvim_get_current_buf()
|
||||
local buffers = vim.fn.getbufinfo({buflisted = 1})
|
||||
-- === Close buffer like Ctrl + W in VSCode ===
|
||||
vim.keymap.set("n", "<C-w>", "<cmd>BufferLinePickClose<CR>", { desc = "Close buffer (BufferLine)" })
|
||||
|
||||
local next_buf = nil
|
||||
for i, buf in ipairs(buffers) do
|
||||
if buf.bufnr == current then
|
||||
next_buf = buffers[i + 1] or buffers[i - 1]
|
||||
break
|
||||
end
|
||||
end
|
||||
vim.keymap.set("n", "<C-S-5>", function()
|
||||
if vim.bo.buftype == "terminal" then
|
||||
vim.cmd("vsplit | terminal")
|
||||
else
|
||||
vim.cmd("botright split | terminal")
|
||||
end
|
||||
end, { desc = "Split terminal" })
|
||||
|
||||
if next_buf then
|
||||
vim.api.nvim_set_current_buf(next_buf.bufnr)
|
||||
end
|
||||
-- 在终端模式下的快捷键
|
||||
vim.keymap.set("t", "<C-h>", "<C-\\><C-n><C-w>h", { desc = "Go to left window" })
|
||||
vim.keymap.set("t", "<C-j>", "<C-\\><C-n><C-w>j", { desc = "Go to lower window" })
|
||||
vim.keymap.set("t", "<C-k>", "<C-\\><C-n><C-w>k", { desc = "Go to upper window" })
|
||||
vim.keymap.set("t", "<C-l>", "<C-\\><C-n><C-w>l", { desc = "Go to right window" })
|
||||
|
||||
vim.api.nvim_buf_delete(current, { force = true })
|
||||
end, { desc = "Close current buffer like VSCode" })
|
||||
|
||||
-- XDG Open
|
||||
vim.keymap.set("n", "<leader>xo", function()
|
||||
vim.fn.jobstart({ "xdg-open", vim.fn.expand("%:p") }, { detach = true })
|
||||
end, { desc = "使用系统默认应用程序打开当前文件" })
|
||||
|
||||
-- === Markdown priview ===
|
||||
vim.keymap.set("n", "<leader>mp", "<cmd>Markview<CR>", {
|
||||
desc = "Toggle Markview Inline Preview",
|
||||
})
|
||||
-- 开启对比预览
|
||||
vim.keymap.set("n", "<leader>mv", "<cmd>Markview splitToggle<CR>", {
|
||||
desc = "Toggle Markview Split Preview",
|
||||
})
|
||||
-- 关闭对比预览
|
||||
vim.keymap.set("n", "<leader>mc", "<cmd>Markview splitClose<CR>", {
|
||||
desc = "Close Markview Split Preview",
|
||||
})
|
||||
|
||||
53
home/nvim/lua/config/lazy.lua
Normal file
53
home/nvim/lua/config/lazy.lua
Normal file
@@ -0,0 +1,53 @@
|
||||
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
|
||||
if not (vim.uv or vim.loop).fs_stat(lazypath) then
|
||||
local lazyrepo = "https://github.com/folke/lazy.nvim.git"
|
||||
local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath })
|
||||
if vim.v.shell_error ~= 0 then
|
||||
vim.api.nvim_echo({
|
||||
{ "Failed to clone lazy.nvim:\n", "ErrorMsg" },
|
||||
{ out, "WarningMsg" },
|
||||
{ "\nPress any key to exit..." },
|
||||
}, true, {})
|
||||
vim.fn.getchar()
|
||||
os.exit(1)
|
||||
end
|
||||
end
|
||||
vim.opt.rtp:prepend(lazypath)
|
||||
|
||||
require("lazy").setup({
|
||||
spec = {
|
||||
-- add LazyVim and import its plugins
|
||||
{ "LazyVim/LazyVim", import = "lazyvim.plugins" },
|
||||
-- import/override with your plugins
|
||||
{ import = "plugins" },
|
||||
},
|
||||
defaults = {
|
||||
-- By default, only LazyVim plugins will be lazy-loaded. Your custom plugins will load during startup.
|
||||
-- If you know what you're doing, you can set this to `true` to have all your custom plugins lazy-loaded by default.
|
||||
lazy = false,
|
||||
-- It's recommended to leave version=false for now, since a lot the plugin that support versioning,
|
||||
-- have outdated releases, which may break your Neovim install.
|
||||
version = false, -- always use the latest git commit
|
||||
-- version = "*", -- try installing the latest stable version for plugins that support semver
|
||||
},
|
||||
install = { colorscheme = { "tokyonight", "habamax" } },
|
||||
checker = {
|
||||
enabled = true, -- check for plugin updates periodically
|
||||
notify = false, -- notify on update
|
||||
}, -- automatically check for plugin updates
|
||||
performance = {
|
||||
rtp = {
|
||||
-- disable some rtp plugins
|
||||
disabled_plugins = {
|
||||
"gzip",
|
||||
-- "matchit",
|
||||
-- "matchparen",
|
||||
-- "netrwPlugin",
|
||||
"tarPlugin",
|
||||
"tohtml",
|
||||
"tutor",
|
||||
"zipPlugin",
|
||||
},
|
||||
},
|
||||
},
|
||||
})
|
||||
@@ -1,16 +1,4 @@
|
||||
-- Options are automatically loaded before lazy.nvim startup
|
||||
-- Default options that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/options.lua
|
||||
-- Add any additional options here
|
||||
|
||||
-- Disable autoformat
|
||||
vim.g.autoformat = false
|
||||
-- Let terminal just one
|
||||
vim.g.root_spec = { "cwd" }
|
||||
-- Disable markdown views
|
||||
vim.api.nvim_create_autocmd("FileType", {
|
||||
pattern = "markdown",
|
||||
callback = function()
|
||||
vim.opt_local.conceallevel = 0
|
||||
vim.opt_local.concealcursor = ""
|
||||
end,
|
||||
})
|
||||
|
||||
@@ -34,11 +34,11 @@ return {
|
||||
-- Python
|
||||
opts.formatters_by_ft.python = { "black", "ruff_format" }
|
||||
-- JS/TS/Web
|
||||
opts.formatters_by_ft.javascript = { "biome" }
|
||||
opts.formatters_by_ft.typescript = { "biome" }
|
||||
opts.formatters_by_ft.javascriptreact = { "biome" }
|
||||
opts.formatters_by_ft.typescriptreact = { "biome" }
|
||||
opts.formatters_by_ft.vue = { "biome" }
|
||||
opts.formatters_by_ft.javascript = { "prettierd" }
|
||||
opts.formatters_by_ft.typescript = { "prettierd" }
|
||||
opts.formatters_by_ft.javascriptreact = { "prettierd" }
|
||||
opts.formatters_by_ft.typescriptreact = { "prettierd" }
|
||||
opts.formatters_by_ft.vue = { "prettierd" }
|
||||
-- JSON
|
||||
opts.formatters_by_ft.json = { "jq" }
|
||||
-- YAML
|
||||
|
||||
19
home/nvim/lua/plugins/markview.lua
Normal file
19
home/nvim/lua/plugins/markview.lua
Normal file
@@ -0,0 +1,19 @@
|
||||
return {
|
||||
"OXY2DEV/markview.nvim",
|
||||
name = "markview.nvim",
|
||||
lazy = false,
|
||||
dependencies = {
|
||||
"nvim-treesitter/nvim-treesitter",
|
||||
"nvim-tree/nvim-web-devicons",
|
||||
},
|
||||
config = function()
|
||||
require("markview").setup({
|
||||
markdown = { enable = true },
|
||||
latex = {
|
||||
enable = true,
|
||||
inline = { enable = true },
|
||||
block = { enable = true },
|
||||
},
|
||||
})
|
||||
end,
|
||||
}
|
||||
30
home/nvim/lua/plugins/treesitter.lua
Normal file
30
home/nvim/lua/plugins/treesitter.lua
Normal file
@@ -0,0 +1,30 @@
|
||||
return {
|
||||
{
|
||||
"LazyVim/LazyVim",
|
||||
opts = {
|
||||
treesitter = false,
|
||||
},
|
||||
},
|
||||
{
|
||||
"nvim-treesitter/nvim-treesitter",
|
||||
event = { "BufReadPost", "BufNewFile" },
|
||||
opts = {
|
||||
ensure_installed = {},
|
||||
auto_install = false,
|
||||
highlight = { enable = true },
|
||||
indent = { enable = true },
|
||||
incremental_selection = {
|
||||
enable = true,
|
||||
keymaps = {
|
||||
init_selection = "gnn",
|
||||
node_incremental = "grn",
|
||||
scope_incremental = "grc",
|
||||
node_decremental = "grm",
|
||||
},
|
||||
},
|
||||
},
|
||||
config = function(_, opts)
|
||||
require("nvim-treesitter.configs").setup(opts)
|
||||
end,
|
||||
},
|
||||
}
|
||||
@@ -3,10 +3,10 @@
|
||||
force = true;
|
||||
recursive = true;
|
||||
source = pkgs.fetchFromGitHub {
|
||||
hash = "sha256-GyiOlTr1Nw2ANTE7/fdyrPQkvRFWOyal3oAcDvsqF5A=";
|
||||
hash = "sha256-s3r8cdEliiPnKWs64Wgi0rC9Ngl1mkIrLnr2tIcyXWw=";
|
||||
owner = "iDvel";
|
||||
repo = "rime-ice";
|
||||
tag = "2025.12.08";
|
||||
tag = "2025.04.06";
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
3
home/wayland/hyprpolkitagent.nix
Normal file
3
home/wayland/hyprpolkitagent.nix
Normal file
@@ -0,0 +1,3 @@
|
||||
_: {
|
||||
services.hyprpolkitagent.enable = true;
|
||||
}
|
||||
5
home/wayland/lxqt-policykit.nix
Normal file
5
home/wayland/lxqt-policykit.nix
Normal file
@@ -0,0 +1,5 @@
|
||||
{pkgs, ...}: {
|
||||
home.packages = with pkgs; [
|
||||
lxqt.lxqt-policykit
|
||||
];
|
||||
}
|
||||
@@ -12,22 +12,6 @@ in
|
||||
niri
|
||||
xwayland-satellite
|
||||
];
|
||||
systemd.user.services.xdg-desktop-portal-gtk = {
|
||||
Unit = {
|
||||
Description = "Portal service (GTK implementation)";
|
||||
PartOf = ["graphical-session.target"];
|
||||
After = ["graphical-session.target"];
|
||||
};
|
||||
Service = {
|
||||
Type = "dbus";
|
||||
BusName = "org.freedesktop.impl.portal.desktop.gtk";
|
||||
ExecStart = "${pkgs.xdg-desktop-portal-gtk}/libexec/xdg-desktop-portal-gtk";
|
||||
Slice = "session.slice";
|
||||
};
|
||||
Install = {
|
||||
WantedBy = ["xdg-desktop-portal.service"];
|
||||
};
|
||||
};
|
||||
systemd.user.targets.niri-session = {
|
||||
Unit = {
|
||||
After = "graphical-session-pre.target graphical-session.target";
|
||||
@@ -40,7 +24,6 @@ in
|
||||
};
|
||||
};
|
||||
xdg.portal = {
|
||||
enable = true;
|
||||
config = {
|
||||
common = {
|
||||
default = ["gtk"];
|
||||
@@ -53,5 +36,6 @@ in
|
||||
pkgs.xdg-desktop-portal-gtk
|
||||
pkgs.xdg-desktop-portal-gnome
|
||||
];
|
||||
configPackages = [pkgs.niri];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,21 +0,0 @@
|
||||
{pkgs, ...}: {
|
||||
home.packages = with pkgs; [
|
||||
polkit_gnome
|
||||
];
|
||||
|
||||
systemd.user.services.polkit-gnome-authentication-agent = {
|
||||
Unit = {
|
||||
Description = "PolicyKit GNOME Authentication Agent";
|
||||
PartOf = ["graphical-session.target"];
|
||||
After = ["graphical-session.target"];
|
||||
};
|
||||
Service = {
|
||||
ExecStart = "${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1";
|
||||
Restart = "on-failure";
|
||||
Slice = "session.slice";
|
||||
};
|
||||
Install = {
|
||||
WantedBy = ["graphical-session.target"];
|
||||
};
|
||||
};
|
||||
}
|
||||
5
home/wayland/swayosd.nix
Normal file
5
home/wayland/swayosd.nix
Normal file
@@ -0,0 +1,5 @@
|
||||
{pkgs, ...}: {
|
||||
home.packages = with pkgs; [
|
||||
swayosd
|
||||
];
|
||||
}
|
||||
@@ -6,6 +6,8 @@
|
||||
}: {
|
||||
imports = with inputs; [
|
||||
./${hostname}
|
||||
chaotic.nixosModules.default
|
||||
disko.nixosModules.disko
|
||||
stylix.nixosModules.stylix
|
||||
home-manager.nixosModules.home-manager
|
||||
{
|
||||
|
||||
@@ -1,55 +1,55 @@
|
||||
{
|
||||
# -------------------- Hardware --------------------
|
||||
# See: https://github.com/blueman-project/blueman
|
||||
# Specific Use Cases
|
||||
## Hardware related
|
||||
Bluetooth = true;
|
||||
### See https://github.com/blueman-project/blueman
|
||||
|
||||
# See: https://nixos.wiki/wiki/AMD_GPU
|
||||
GPU-AMD = true;
|
||||
### See https://nixos.wiki/wiki/AMD_GPU
|
||||
|
||||
# See: https://github.com/linrunner/TLP
|
||||
Power-control = "TLP"; ## Possible options: PPD ; TLP
|
||||
Power-control = "TLP";
|
||||
### Possible options: PPD ; TLP
|
||||
|
||||
# -------------------- System --------------------
|
||||
# See https://nixos.wiki/wiki/Bootloader
|
||||
# See: https://search.nixos.org/options?show=boot.loader.grub.mirroredBoots
|
||||
BootLoader = "systemd-boot"; ## Possible options: grub ; grub-mirror ; systemd-boot
|
||||
## Software related
|
||||
QEMU-VM-Use-Case = true;
|
||||
### See https://github.com/qemu/qemu ; https://github.com/virt-manager/virt-manager
|
||||
|
||||
# See: https://search.nixos.org/options?show=boot.kernelPackages
|
||||
# See: https://www.nyx.chaotic.cx/#using-sched-ext-schedulers
|
||||
KernelPackages = "linuxPackages_lqx";
|
||||
Database-Use-Case = true;
|
||||
|
||||
# See: https://mynixos.com/nixpkgs/option/system.stateVersion
|
||||
StateVersion = "26.05";
|
||||
# Options
|
||||
## System related
|
||||
BootLoader = "systemd-boot";
|
||||
### Possible options: grub ; grub-mirror ; systemd-boot # See https://nixos.wiki/wiki/Bootloader https://search.nixos.org/options?channel=unstable&from=0&size=50&sort=relevance&type=packages&query=mirroredBoots
|
||||
|
||||
# See: https://docs.moodle.org/405/en/Table_of_locales
|
||||
Locale = "en_US.UTF-8";
|
||||
KernelPackages = "linuxPackages_cachyos";
|
||||
### See https://search.nixos.org/options?show=boot.kernelPackages https://www.nyx.chaotic.cx/#using-sched-ext-schedulers
|
||||
|
||||
# See: https://en.wikipedia.org/wiki/Keyboard_layout
|
||||
KeyboardLayout = "us";
|
||||
### See https://en.wikipedia.org/wiki/Keyboard_layout
|
||||
|
||||
Locale = "en_US.UTF-8";
|
||||
### See https://docs.moodle.org/405/en/Table_of_locales
|
||||
|
||||
StateVersion = "25.11";
|
||||
### See https://mynixos.com/nixpkgs/option/system.stateVersion
|
||||
|
||||
# See: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
|
||||
TimeZone = "Asia/Singapore";
|
||||
### See https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
|
||||
|
||||
# -------------------- Display --------------------
|
||||
WM = "niri"; ## Options: "Hyprland" | "niri" | "sway"
|
||||
|
||||
# See: https://wiki.hyprland.org/Configuring/XWayland/#hidpi-xwayland
|
||||
# See: https://github.com/swaywm/sway/wiki#hidpi
|
||||
ScaleLevel = "1";
|
||||
|
||||
# See: https://github.com/swaywm/sway/wiki#display-configuration
|
||||
OutputSettings = "output * scale 1";
|
||||
|
||||
# See: https://wiki.hyprland.org/Configuring/Monitors
|
||||
## Wayland related
|
||||
MonitorSettings = "
|
||||
monitor=eDP-1, 2560x1600@165, 0x0, 1.25
|
||||
monitor=DP-1, 2560x1440@144, 2560x0, 1.25
|
||||
";
|
||||
### MonitorSettings For Hyprland See https://wiki.hyprland.org/Configuring/Monitors/
|
||||
|
||||
# -------------------- Software --------------------
|
||||
# See: https://sing-box.sagernet.org
|
||||
SingBox = true;
|
||||
OutputSettings = "output * scale 1";
|
||||
### OutputSettings For sway See https://github.com/swaywm/sway/wiki#display-configuration
|
||||
|
||||
# See: https://github.com/qemu/qemu
|
||||
# See: https://github.com/virt-manager/virt-manager
|
||||
QEMU-VM-Use-Case = true;
|
||||
ScaleLevel = "1";
|
||||
### For Hyprland see https://wiki.hyprland.org/Configuring/XWayland/#hidpi-xwayland
|
||||
### For sway see https://github.com/swaywm/sway/wiki#hidpi
|
||||
|
||||
WM = "niri";
|
||||
### Possible options: Hyprland ; niri ; sway
|
||||
}
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/mapper/luks-6647cbcd-ed3a-4205-9a2c-78e337e2f3bf";
|
||||
{ device = "/dev/disk/by-uuid/67e9d418-8f31-4af7-9178-ae9641099844";
|
||||
fsType = "xfs";
|
||||
};
|
||||
|
||||
@@ -28,6 +28,13 @@
|
||||
|
||||
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.wlp2s0.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
||||
|
||||
@@ -1,53 +1,61 @@
|
||||
{
|
||||
# -------------------- Hardware --------------------
|
||||
# See: https://github.com/blueman-project/blueman
|
||||
# Specific Use Cases
|
||||
## Hardware related
|
||||
Bluetooth = false;
|
||||
### See https://github.com/blueman-project/blueman
|
||||
|
||||
# See: https://nixos.wiki/wiki/AMD_GPU
|
||||
GPU-AMD = false;
|
||||
### See https://nixos.wiki/wiki/AMD_GPU
|
||||
|
||||
# See: https://github.com/linrunner/TLP
|
||||
Power-control = "PPD"; ## Possible options: PPD ; TLP
|
||||
GPU-Nvidia = false;
|
||||
### See https://nixos.wiki/wiki/Nvidia
|
||||
|
||||
# -------------------- System --------------------
|
||||
# See https://nixos.wiki/wiki/Bootloader
|
||||
# See: https://search.nixos.org/options?show=boot.loader.grub.mirroredBoots
|
||||
BootLoader = "systemd-boot"; ## Possible options: grub ; grub-mirror ; systemd-boot
|
||||
GPU-Intel = false;
|
||||
### See https://nixos.wiki/wiki/Intel_Graphics
|
||||
|
||||
# See: https://search.nixos.org/options?show=boot.kernelPackages
|
||||
# See: https://www.nyx.chaotic.cx/#using-sched-ext-schedulers
|
||||
KernelPackages = "linuxPackages_zen";
|
||||
HotSpot-Use-Case = false;
|
||||
### See https://nixos.wiki/wiki/Internet_Connection_Sharing
|
||||
|
||||
# See: https://mynixos.com/nixpkgs/option/system.stateVersion
|
||||
StateVersion = "26.05";
|
||||
Power control = "PPD";
|
||||
### Possible options: PPD ; TLP
|
||||
|
||||
# See: https://docs.moodle.org/405/en/Table_of_locales
|
||||
Locale = "en_US.UTF-8";
|
||||
|
||||
# See: https://en.wikipedia.org/wiki/Keyboard_layout
|
||||
KeyboardLayout = "us";
|
||||
|
||||
# See: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
|
||||
TimeZone = "Asia/Singapore";
|
||||
|
||||
# -------------------- Display --------------------
|
||||
WM = "Hyprland"; ## Options: "Hyprland" | "niri" | "sway"
|
||||
|
||||
# See: https://wiki.hyprland.org/Configuring/XWayland/#hidpi-xwayland
|
||||
# See: https://github.com/swaywm/sway/wiki#hidpi
|
||||
ScaleLevel = "1";
|
||||
|
||||
# See: https://github.com/swaywm/sway/wiki#display-configuration
|
||||
OutputSettings = "output * scale 1";
|
||||
|
||||
# See: https://wiki.hyprland.org/Configuring/Monitors
|
||||
MonitorSettings = "monitor = , preferred, auto, auto";
|
||||
|
||||
# -------------------- Software --------------------
|
||||
# See: https://sing-box.sagernet.org
|
||||
SingBox = true;
|
||||
|
||||
# See: https://github.com/qemu/qemu
|
||||
# See: https://github.com/virt-manager/virt-manager
|
||||
## Software related
|
||||
QEMU-VM-Use-Case = false;
|
||||
### See https://github.com/qemu/qemu ; https://github.com/virt-manager/virt-manager
|
||||
|
||||
Database-Use-Case = true;
|
||||
|
||||
# Options
|
||||
## System related
|
||||
BootLoader = "systemd-boot";
|
||||
### Possible options: grub ; grub-mirror ; systemd-boot # See https://nixos.wiki/wiki/Bootloader https://search.nixos.org/options?channel=unstable&from=0&size=50&sort=relevance&type=packages&query=mirroredBoots
|
||||
|
||||
KernelPackages = "linuxPackages_cachyos";
|
||||
### See https://search.nixos.org/options?show=boot.kernelPackages https://www.nyx.chaotic.cx/#using-sched-ext-schedulers
|
||||
|
||||
KeyboardLayout = "us";
|
||||
### See https://en.wikipedia.org/wiki/Keyboard_layout
|
||||
|
||||
Locale = "en_US.UTF-8";
|
||||
### See https://docs.moodle.org/405/en/Table_of_locales
|
||||
|
||||
StateVersion = "25.11";
|
||||
### See https://mynixos.com/nixpkgs/option/system.stateVersion
|
||||
|
||||
TimeZone = "Asia/Singapore";
|
||||
### See https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
|
||||
|
||||
## Wayland related
|
||||
MonitorSettings = "monitor = , preferred, auto, auto";
|
||||
### MonitorSettings For Hyprland See https://wiki.hyprland.org/Configuring/Monitors/
|
||||
|
||||
OutputSettings = "output * scale 1";
|
||||
### OutputSettings For sway See https://github.com/swaywm/sway/wiki#display-configuration
|
||||
|
||||
ScaleLevel = "1";
|
||||
### For Hyprland see https://wiki.hyprland.org/Configuring/XWayland/#hidpi-xwayland
|
||||
### For sway see https://github.com/swaywm/sway/wiki#hidpi
|
||||
|
||||
WM = "Hyprland";
|
||||
### Possible options: Hyprland ; niri ; sway
|
||||
}
|
||||
|
||||
@@ -9,7 +9,7 @@ in
|
||||
config = mkIf Bluetooth {
|
||||
hardware.bluetooth = {
|
||||
enable = lib.mkDefault true;
|
||||
powerOnBoot = lib.mkDefault false;
|
||||
powerOnBoot = lib.mkDefault true;
|
||||
};
|
||||
services.blueman.enable = lib.mkDefault true;
|
||||
};
|
||||
|
||||
17
modules/services/mysql.nix
Normal file
17
modules/services/mysql.nix
Normal file
@@ -0,0 +1,17 @@
|
||||
{ hostname, lib, pkgs, ... }:
|
||||
with lib; let
|
||||
inherit (import ../../hosts/${hostname}/env.nix) Database-Use-Case;
|
||||
in
|
||||
{
|
||||
config = mkIf Database-Use-Case {
|
||||
services.mysql = {
|
||||
enable = true;
|
||||
package = pkgs.mysql84;
|
||||
};
|
||||
|
||||
environment.systemPackages = [
|
||||
pkgs.dbeaver-bin
|
||||
];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
{ hostname, lib, pkgs, ... }:
|
||||
with lib;
|
||||
let
|
||||
with lib; let
|
||||
inherit (import ../../hosts/${hostname}/env.nix) Power-control;
|
||||
in
|
||||
{
|
||||
@@ -8,18 +7,17 @@ in
|
||||
|
||||
services.tlp = lib.mkIf (Power-control == "TLP") {
|
||||
enable = true;
|
||||
|
||||
settings = {
|
||||
CPU_SCALING_GOVERNOR_ON_AC = "powersave";
|
||||
CPU_SCALING_GOVERNOR_ON_AC = "performance";
|
||||
CPU_SCALING_GOVERNOR_ON_BAT = "powersave";
|
||||
|
||||
CPU_ENERGY_PERF_POLICY_ON_AC = "performance";
|
||||
CPU_ENERGY_PERF_POLICY_ON_BAT = "balance_power";
|
||||
CPU_ENERGY_PERF_POLICY_ON_BAT = "powersave";
|
||||
|
||||
CPU_MIN_PERF_ON_AC = 0;
|
||||
CPU_MAX_PERF_ON_AC = 100;
|
||||
CPU_MIN_PERF_ON_BAT = 0;
|
||||
CPU_MAX_PERF_ON_BAT = 100;
|
||||
CPU_MAX_PERF_ON_BAT = 85;
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -3,5 +3,10 @@
|
||||
{
|
||||
services = {
|
||||
gvfs.enable = true;
|
||||
scx = {
|
||||
enable = true;
|
||||
scheduler = "scx_lavd";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,39 +0,0 @@
|
||||
{ hostname, lib, pkgs, ... }:
|
||||
with lib;
|
||||
let
|
||||
inherit (import ../../hosts/${hostname}/env.nix) SingBox;
|
||||
in
|
||||
{
|
||||
disabledModules = [ "services/networking/sing-box.nix" ];
|
||||
|
||||
config = mkIf SingBox {
|
||||
|
||||
environment.systemPackages = [ pkgs.sing-box ];
|
||||
|
||||
systemd.tmpfiles.rules = [
|
||||
"d /etc/sing-box 0755 root root -"
|
||||
];
|
||||
|
||||
systemd.services.sing-box = {
|
||||
description = "sing-box service (custom)";
|
||||
after = [ "network.target" ];
|
||||
wantedBy = [ ];
|
||||
|
||||
script = ''
|
||||
exec ${pkgs.sing-box}/bin/sing-box -D "$STATE_DIRECTORY" run -c /etc/sing-box/config.json
|
||||
'';
|
||||
|
||||
serviceConfig = {
|
||||
DynamicUser = true;
|
||||
CapabilityBoundingSet = "CAP_NET_ADMIN CAP_NET_BIND_SERVICE CAP_DAC_OVERRIDE";
|
||||
AmbientCapabilities = "CAP_NET_ADMIN CAP_NET_BIND_SERVICE CAP_DAC_OVERRIDE";
|
||||
|
||||
NoNewPrivileges = true;
|
||||
StateDirectory = "sing-box";
|
||||
StateDirectoryMode = "0700";
|
||||
Restart = "always";
|
||||
RestartSec = 5;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -17,19 +17,9 @@
|
||||
in
|
||||
with lib; {
|
||||
boot = {
|
||||
blacklistedKernelModules = [
|
||||
"iTCO_wdt"
|
||||
"iTCO_vendor_support"
|
||||
"intel_pmc_bxt"
|
||||
"mei"
|
||||
"mei_hdcp"
|
||||
"mei_me"
|
||||
"mei_pxp"
|
||||
"pstore"
|
||||
"sp5100_tco"
|
||||
"wdat_wdt"
|
||||
];
|
||||
bcache.enable = false;
|
||||
consoleLogLevel = 2; # Only errors and warnings are displayed
|
||||
extraModprobeConfig = "blacklist mei mei_hdcp mei_me mei_pxp iTCO_wdt pstore sp5100_tco";
|
||||
extraModulePackages = [
|
||||
config.boot.kernelPackages.v4l2loopback # v4l2loopback is for OBS Virtual Cam Support
|
||||
];
|
||||
@@ -45,7 +35,7 @@ in
|
||||
};
|
||||
kernelModules = ["v4l2loopback"]; # v4l2loopback is for OBS Virtual Cam Support
|
||||
kernelPackages = pkgs.${KernelPackages};
|
||||
kernelParams = ["8250.nr_uarts=0" "8250.skip_txen_test=1" "i8042.nopnp" "amd_pstate=active" "audit=0" "console=tty1" "erst_disable" "nmi_watchdog=0" "noatime" "nowatchdog"];
|
||||
kernelParams = ["audit=0" "console=tty1" "erst_disable" "nmi_watchdog=0" "noatime" "nowatchdog"];
|
||||
loader = {
|
||||
grub = mkIf (strings.hasInfix "grub" BootLoader) {
|
||||
configurationLimit = 50;
|
||||
@@ -101,13 +91,15 @@ in
|
||||
};
|
||||
|
||||
networking = {
|
||||
dhcpcd.extraConfig = "nohook resolv.conf";
|
||||
firewall.enable = false;
|
||||
hostName = hostname;
|
||||
nameservers = ["8.8.8.8" "1.1.1.1"];
|
||||
nameservers = ["127.0.0.1" "::1"];
|
||||
networkmanager = {
|
||||
dns = "none";
|
||||
enable = true;
|
||||
};
|
||||
resolvconf.enable = mkForce false;
|
||||
};
|
||||
|
||||
security = {
|
||||
@@ -142,6 +134,7 @@ in
|
||||
};
|
||||
|
||||
system = {
|
||||
rebuild.enableNg = true;
|
||||
stateVersion = StateVersion;
|
||||
};
|
||||
|
||||
|
||||
@@ -52,11 +52,9 @@ in {
|
||||
curl
|
||||
wget
|
||||
aria2
|
||||
syncthing
|
||||
yt-dlp
|
||||
openssl
|
||||
|
||||
# Android
|
||||
#Android
|
||||
xxd
|
||||
file
|
||||
binwalk
|
||||
@@ -64,14 +62,6 @@ in {
|
||||
android-tools
|
||||
payload-dumper-go
|
||||
|
||||
# Embedded
|
||||
scons
|
||||
openocd
|
||||
stlink
|
||||
stlink-tool
|
||||
gcc-arm-embedded
|
||||
tio
|
||||
|
||||
# Misc
|
||||
tree
|
||||
libnotify
|
||||
@@ -79,9 +69,6 @@ in {
|
||||
lm_sensors
|
||||
usbutils
|
||||
libsecret
|
||||
lsof
|
||||
nano
|
||||
zed-editor
|
||||
|
||||
# Niri
|
||||
wlr-randr
|
||||
@@ -103,16 +90,7 @@ in {
|
||||
jdk17
|
||||
python312
|
||||
pnpm
|
||||
bun
|
||||
nodejs_24
|
||||
|
||||
# Agent
|
||||
opencode
|
||||
gemini-cli-bin
|
||||
|
||||
# Blog
|
||||
zola
|
||||
pagefind
|
||||
nodejs_20
|
||||
];
|
||||
};
|
||||
|
||||
|
||||
@@ -31,11 +31,13 @@ with lib; {
|
||||
substituters = [
|
||||
"https://cache.garnix.io" # See https://github.com/daeuniverse/flake.nix
|
||||
"https://cache.nixos.org" # See https://nixos.wiki/wiki/Binary_Cache
|
||||
"https://chaotic-nyx.cachix.org" # See https://github.com/chaotic-cx/nyx
|
||||
"https://nix-community.cachix.org" # See https://nix-community.org/cache/
|
||||
];
|
||||
trusted-public-keys = [
|
||||
"cache.garnix.io:CTFPyKSLcx5RMJKfLo5EEPUObbA78b0YQ2DTCJXqr9g="
|
||||
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
|
||||
"chaotic-nyx.cachix.org-1:HfnXSw4pj95iI/n17rIDy40agHj12WfF+Gqk6SonIT8="
|
||||
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
|
||||
];
|
||||
warn-dirty = false;
|
||||
|
||||
Reference in New Issue
Block a user