right before reorganizing - i3 stable
This commit is contained in:
parent
4976ff2b34
commit
534652294a
12 changed files with 755 additions and 87 deletions
|
|
@ -45,11 +45,13 @@
|
|||
modules = sharedModules ++ [
|
||||
./hosts/common/workstation.nix
|
||||
./hosts/electra/configuration.nix
|
||||
./hosts/common/wm/sway.nix
|
||||
home-manager.nixosModules.home-manager
|
||||
({ config, ...}: {
|
||||
home-manager.users.alisceon.imports = [
|
||||
./home/alisceon/base.nix
|
||||
./home/alisceon/workstation.nix
|
||||
./home/wm/sway.nix
|
||||
];
|
||||
}) # end home-manager
|
||||
]; # end modules
|
||||
|
|
@ -59,11 +61,13 @@
|
|||
modules = sharedModules ++ [
|
||||
./hosts/common/workstation.nix
|
||||
./hosts/tower/configuration.nix
|
||||
./hosts/common/wm/gnome.nix
|
||||
home-manager.nixosModules.home-manager
|
||||
({ config, ...}: {
|
||||
home-manager.users.alisceon.imports = [
|
||||
./home/alisceon/base.nix
|
||||
./home/alisceon/workstation.nix
|
||||
./home/wm/gnome.nix
|
||||
];
|
||||
}) # end home-manager
|
||||
]; # end modules
|
||||
|
|
|
|||
|
|
@ -5,7 +5,8 @@
|
|||
|
||||
# NixOS commands
|
||||
nixoss = "sudo nixos-rebuild switch --flake .#${hostName}";
|
||||
nixost = "sudo nixos-rebuild dry-build --flake .#${hostName}";
|
||||
nixost = "sudo nixos-rebuild test --flake .#${hostName}";
|
||||
nixosdb = "sudo nixos-rebuild dry-build --flake .#${hostName}";
|
||||
|
||||
# Development commands
|
||||
devt = "devenv test";
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@
|
|||
firefox = {
|
||||
enable = true;
|
||||
nativeMessagingHosts = [
|
||||
pkgs.gnome-browser-connector
|
||||
pkgs.firefoxpwa
|
||||
];
|
||||
}; # end firefox
|
||||
|
|
@ -36,55 +35,4 @@
|
|||
services.syncthing = {
|
||||
enable = true;
|
||||
};
|
||||
dconf.enable = true;
|
||||
dconf.settings = {
|
||||
"org/gnome/desktop/background" = {
|
||||
color-shading-type = "solid";
|
||||
picture-options = "zoom";
|
||||
primary-color = "#000000000000";
|
||||
secondary-color = "#000000000000";
|
||||
picture-uri = "file:///home/alisceon/Pictures/system/bg.png";
|
||||
picture-uri-dark = "file:///home/alisceon/Pictures/system/bg.png";
|
||||
};
|
||||
"org/gnome/mutter" = {
|
||||
auto-maximize = true;
|
||||
};
|
||||
"org/gnome/desktop/interface" = {
|
||||
accent-color = "red";
|
||||
color-scheme = "prefer-dark";
|
||||
};
|
||||
"org/gnome/shell" = {
|
||||
disable-user-extensions = false;
|
||||
enabled-extensions = [ pkgs.gnomeExtensions.ddterm.extensionUuid ];
|
||||
favorite-apps = [
|
||||
"org.gnome.Nautilus.desktop"
|
||||
"firefox.desktop"
|
||||
"code.desktop"
|
||||
"obsidian.desktop"
|
||||
"discord.desktop"
|
||||
"signal.desktop"
|
||||
];
|
||||
};
|
||||
"org/gnome/shell/keybindings" = {
|
||||
show-screenshot-ui = [ "<Shift><Super>s" ];
|
||||
};
|
||||
"org/gnome/settings-daemon/plugins/media-keys" = {
|
||||
custom-keybindings = [
|
||||
"/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/"
|
||||
];
|
||||
};
|
||||
"org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0" = {
|
||||
name = "GNOME Console";
|
||||
command = "kgx";
|
||||
binding = "<Shift><Super>Return";
|
||||
};
|
||||
"com/github/amezin/ddterm" = {
|
||||
ddterm-toggle-hotkey = [ "<Super>Return" ];
|
||||
window-monitor = "focus";
|
||||
hide-when-focus-lost = true;
|
||||
hide-window-on-esc = true;
|
||||
tab-policy = "never";
|
||||
panel-icon-type = "none";
|
||||
};
|
||||
}; # end dconf.settings
|
||||
} # end file
|
||||
|
|
|
|||
61
home/wm/gnome.nix
Normal file
61
home/wm/gnome.nix
Normal file
|
|
@ -0,0 +1,61 @@
|
|||
{ pkgs, config, hostName, lib, ... }: {
|
||||
programs = {
|
||||
firefox = {
|
||||
nativeMessagingHosts = [
|
||||
pkgs.gnome-browser-connector
|
||||
];
|
||||
}; # end firefox
|
||||
}; # end programs
|
||||
|
||||
dconf.enable = true;
|
||||
dconf.settings = {
|
||||
"org/gnome/desktop/background" = {
|
||||
color-shading-type = "solid";
|
||||
picture-options = "zoom";
|
||||
primary-color = "#000000000000";
|
||||
secondary-color = "#000000000000";
|
||||
picture-uri = "file:///home/alisceon/Pictures/system/bg.png";
|
||||
picture-uri-dark = "file:///home/alisceon/Pictures/system/bg.png";
|
||||
};
|
||||
"org/gnome/mutter" = {
|
||||
auto-maximize = true;
|
||||
};
|
||||
"org/gnome/desktop/interface" = {
|
||||
accent-color = "red";
|
||||
color-scheme = "prefer-dark";
|
||||
};
|
||||
"org/gnome/shell" = {
|
||||
disable-user-extensions = false;
|
||||
enabled-extensions = [ pkgs.gnomeExtensions.ddterm.extensionUuid ];
|
||||
favorite-apps = [
|
||||
"org.gnome.Nautilus.desktop"
|
||||
"firefox.desktop"
|
||||
"code.desktop"
|
||||
"obsidian.desktop"
|
||||
"discord.desktop"
|
||||
"signal.desktop"
|
||||
];
|
||||
};
|
||||
"org/gnome/shell/keybindings" = {
|
||||
show-screenshot-ui = [ "<Shift><Super>s" ];
|
||||
};
|
||||
"org/gnome/settings-daemon/plugins/media-keys" = {
|
||||
custom-keybindings = [
|
||||
"/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/"
|
||||
];
|
||||
};
|
||||
"org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0" = {
|
||||
name = "GNOME Console";
|
||||
command = "kgx";
|
||||
binding = "<Shift><Super>Return";
|
||||
};
|
||||
"com/github/amezin/ddterm" = {
|
||||
ddterm-toggle-hotkey = [ "<Super>Return" ];
|
||||
window-monitor = "focus";
|
||||
hide-when-focus-lost = true;
|
||||
hide-window-on-esc = true;
|
||||
tab-policy = "never";
|
||||
panel-icon-type = "none";
|
||||
};
|
||||
}; # end dconf.settings
|
||||
} # end file
|
||||
18
home/wm/hyprland.nix
Normal file
18
home/wm/hyprland.nix
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
{ pkgs, config, hostName, lib, ... }: {
|
||||
wayland.windowManager.hyprland.settings = {
|
||||
decoration = {
|
||||
shadow_offset = "0 5";
|
||||
"col.shadow" = "rgba(00000099)";
|
||||
};
|
||||
|
||||
"$mod" = "SUPER";
|
||||
|
||||
bindm = [
|
||||
# mouse movements
|
||||
"$mod, mouse:272, movewindow"
|
||||
"$mod, mouse:273, resizewindow"
|
||||
"$mod ALT, mouse:272, resizewindow"
|
||||
];
|
||||
};
|
||||
|
||||
} # end file
|
||||
560
home/wm/sway.nix
Normal file
560
home/wm/sway.nix
Normal file
|
|
@ -0,0 +1,560 @@
|
|||
{ pkgs, config, hostName, lib, ... }:
|
||||
let
|
||||
# execs
|
||||
lock = "${pkgs.swaylock}/bin/swaylock --daemonize";
|
||||
term = "${pkgs.foot}/bin/foot";
|
||||
dmenu = "${pkgs.rofi-wayland}/bin/rofi -show drun";
|
||||
|
||||
# keybinds
|
||||
key_mod = "Mod4";
|
||||
key_left = "Left";
|
||||
key_right = "Right";
|
||||
key_up = "Up";
|
||||
key_down = "Down";
|
||||
|
||||
# style
|
||||
style_font = "Inconsolata";
|
||||
style_font_sz = "12";
|
||||
style_font_bold = "${style_font}-Bold";
|
||||
color_blue_1 = "#99c1f1";
|
||||
color_blue_2 = "#62a0ea";
|
||||
color_blue_3 = "#3584e4";
|
||||
color_blue_4 = "#1c71d8";
|
||||
color_blue_5 = "#1a5fb4";
|
||||
color_green_1 = "#8ff0a4";
|
||||
color_green_2 = "#57e389";
|
||||
color_green_3 = "#33d17a";
|
||||
color_green_4 = "#2ec27e";
|
||||
color_green_5 = "#26a269";
|
||||
color_yellow_1 = "#f9f06b";
|
||||
color_yellow_2 = "#f8e45c";
|
||||
color_yellow_3 = "#f6d32d";
|
||||
color_yellow_4 = "#f5c211";
|
||||
color_yellow_5 = "#e5a50a";
|
||||
color_orange_1 = "#ffbe6f";
|
||||
color_orange_2 = "#ffa348";
|
||||
color_orange_3 = "#ff7800";
|
||||
color_orange_4 = "#e66100";
|
||||
color_orange_5 = "#c64600";
|
||||
color_red_1 = "#f66151";
|
||||
color_red_2 = "#ed333b";
|
||||
color_red_3 = "#e01b24";
|
||||
color_red_4 = "#c01c28";
|
||||
color_red_5 = "#a51d2d";
|
||||
color_purple_1 = "#dc8add";
|
||||
color_purple_2 = "#c061cb";
|
||||
color_purple_3 = "#9141ac";
|
||||
color_purple_4 = "#813d9c";
|
||||
color_purple_5 = "#613583";
|
||||
color_brown_1 = "#cdab8f";
|
||||
color_brown_2 = "#b5835a";
|
||||
color_brown_3 = "#986a44";
|
||||
color_brown_4 = "#865e3c";
|
||||
color_brown_5 = "#63452c";
|
||||
color_light_1 = "#ffffff";
|
||||
color_light_2 = "#f6f5f4";
|
||||
color_light_3 = "#d8d8d8";
|
||||
color_light_4 = "#c0c0c0";
|
||||
color_light_5 = "#9b9b9b";
|
||||
color_dark_1 = "#757575";
|
||||
color_dark_2 = "#666666";
|
||||
color_dark_3 = "#494949";
|
||||
color_dark_4 = "#333333";
|
||||
color_dark_5 = "#000000";
|
||||
color_f_bg = color_dark_3;
|
||||
color_f_text = color_light_1;
|
||||
color_uf_bg = color_dark_4;
|
||||
color_uf_text = color_light_4;
|
||||
color_alert_bg = color_red_5;
|
||||
color_alert_text = color_light_1;
|
||||
color_inv_bg = color_light_4;
|
||||
color_inv_text = color_dark_5;
|
||||
|
||||
# other
|
||||
display = status: "swaymsg 'output * power ${status}'";
|
||||
in
|
||||
{
|
||||
wayland.windowManager.sway = {
|
||||
enable = true;
|
||||
wrapperFeatures.gtk = true; # Fixes common issues with GTK 3 apps
|
||||
config = {
|
||||
modifier = "${key_mod}";
|
||||
bars = [{
|
||||
command = "${pkgs.waybar}/bin/waybar";
|
||||
}];
|
||||
fonts = {
|
||||
names = ["${style_font}"];
|
||||
size = style_font_sz;
|
||||
};
|
||||
input = {
|
||||
"type:touchpad" = {
|
||||
dwt = "enabled";
|
||||
tap = "enabled";
|
||||
natural_scroll = "disabled";
|
||||
middle_emulation = "enabled";
|
||||
click_method = "clickfinger";
|
||||
clickfinger_button_map = "lrm";
|
||||
};
|
||||
"type:mouse" = {
|
||||
natural_scroll = "disabled";
|
||||
};
|
||||
"*" = {
|
||||
xkb_layout = "se";
|
||||
};
|
||||
}; # end input
|
||||
keybindings = {
|
||||
# Basic
|
||||
"${key_mod}+Return" = "exec ${term}";
|
||||
"${key_mod}+d" = "exec ${dmenu}";
|
||||
"${key_mod}+Shift+q" = "kill";
|
||||
"${key_mod}+L" = "exec ${lock}";
|
||||
#Screenshot region
|
||||
"${key_mod}+Shift+s" = ''
|
||||
bash -c '\
|
||||
${pkgs.slurp}/bin/slurp | \
|
||||
${pkgs.grim}/bin/grim -g - \
|
||||
~/Pictures/Screenshots_${hostName}/$(date +"%Y-%m-%d-%H%M%S.png") | \
|
||||
${pkgs.wl-clipboard}/bin/wl-copy -t image/png \
|
||||
'
|
||||
'';
|
||||
# Workspaces
|
||||
"${key_mod}+Tab" = "workspace next";
|
||||
"${key_mod}+Shift+Tab" = "workspace prev";
|
||||
|
||||
"${key_mod}+1" = "workspace number 1";
|
||||
"${key_mod}+2" = "workspace number 2";
|
||||
"${key_mod}+3" = "workspace number 3";
|
||||
"${key_mod}+4" = "workspace number 4";
|
||||
"${key_mod}+5" = "workspace number 5";
|
||||
"${key_mod}+6" = "workspace number 6";
|
||||
"${key_mod}+7" = "workspace number 7";
|
||||
"${key_mod}+8" = "workspace number 8";
|
||||
"${key_mod}+9" = "workspace number 9";
|
||||
|
||||
"${key_mod}+Shift+period" = "move container to workspace next; workspace next";
|
||||
"${key_mod}+Shift+comma" = "move container to workspace prev; workspace prev";
|
||||
|
||||
"${key_mod}+Shift+1" = "move container to workspace number 1; workspace 1";
|
||||
"${key_mod}+Shift+2" = "move container to workspace number 2; workspace 2";
|
||||
"${key_mod}+Shift+3" = "move container to workspace number 3; workspace 3";
|
||||
"${key_mod}+Shift+4" = "move container to workspace number 4; workspace 4";
|
||||
"${key_mod}+Shift+5" = "move container to workspace number 5; workspace 5";
|
||||
"${key_mod}+Shift+6" = "move container to workspace number 6; workspace 6";
|
||||
"${key_mod}+Shift+7" = "move container to workspace number 7; workspace 7";
|
||||
"${key_mod}+Shift+8" = "move container to workspace number 8; workspace 8";
|
||||
"${key_mod}+Shift+9" = "move container to workspace number 9; workspace 9";
|
||||
|
||||
# Focus
|
||||
"${key_mod}+${key_left}" = "focus left";
|
||||
"${key_mod}+${key_down}" = "focus down";
|
||||
"${key_mod}+${key_up}" = "focus up";
|
||||
"${key_mod}+${key_right}" = "focus right";
|
||||
|
||||
"${key_mod}+Ctrl+${key_left}" = "move workspace to output left";
|
||||
"${key_mod}+Ctrl+${key_down}" = "move workspace to output down";
|
||||
"${key_mod}+Ctrl+${key_up}" = "move workspace to output up";
|
||||
"${key_mod}+Ctrl+${key_right}" = "move workspace to output right";
|
||||
|
||||
"${key_mod}+Shift+${key_left}" = "move left";
|
||||
"${key_mod}+Shift+${key_down}" = "move down";
|
||||
"${key_mod}+Shift+${key_up}" = "move up";
|
||||
"${key_mod}+Shift+${key_right}" = "move right";
|
||||
|
||||
# System
|
||||
"XF86AudioRaiseVolume" = "exec 'pactl set-sink-volume @DEFAULT_SINK@ +1%'";
|
||||
"XF86AudioLowerVolume" = "exec 'pactl set-sink-volume @DEFAULT_SINK@ -1%'";
|
||||
"XF86AudioMute" = "exec 'pactl set-sink-mute @DEFAULT_SINK@ toggle'";
|
||||
"XF86MonBrightnessUp" = "exec ${pkgs.light}/bin/light -A 10";
|
||||
"XF86MonBrightnessDown" = "exec ${pkgs.light}/bin/light -U 10";
|
||||
}; # end keybindings
|
||||
window = {
|
||||
titlebar = false;
|
||||
};
|
||||
colors = {
|
||||
background = color_dark_5;
|
||||
focused = {
|
||||
border = color_f_bg;
|
||||
background = color_f_bg;
|
||||
text = color_light_1;
|
||||
indicator = color_f_bg;
|
||||
childBorder = color_f_bg;
|
||||
};
|
||||
focusedInactive = {
|
||||
border = color_f_bg;
|
||||
background = color_f_bg;
|
||||
text = color_light_1;
|
||||
indicator = color_f_bg;
|
||||
childBorder = color_f_bg;
|
||||
};
|
||||
unfocused = {
|
||||
border = color_uf_bg;
|
||||
background = color_uf_bg;
|
||||
text = color_uf_text;
|
||||
indicator = color_uf_bg;
|
||||
childBorder = color_uf_bg;
|
||||
};
|
||||
urgent = {
|
||||
border = color_alert_bg;
|
||||
background = color_alert_bg;
|
||||
text = color_alert_text;
|
||||
indicator = color_alert_bg;
|
||||
childBorder = color_alert_bg;
|
||||
};
|
||||
placeholder = {
|
||||
border = color_dark_3;
|
||||
background = color_dark_3;
|
||||
text = color_light_4;
|
||||
indicator = color_dark_3;
|
||||
childBorder = color_dark_3;
|
||||
};
|
||||
}; # end colors
|
||||
};
|
||||
};
|
||||
services = {
|
||||
swayidle = {
|
||||
enable = true;
|
||||
timeouts = [
|
||||
{
|
||||
timeout = 120;
|
||||
command = "${pkgs.libnotify}/bin/notify-send 'Locking in 5 seconds' -t 5000";
|
||||
}
|
||||
{
|
||||
timeout = 125;
|
||||
command = lock;
|
||||
}
|
||||
{
|
||||
timeout = 125;
|
||||
command = display "off";
|
||||
resumeCommand = display "on";
|
||||
}
|
||||
{
|
||||
timeout = 600;
|
||||
command = "${pkgs.systemd}/bin/systemctl suspend";
|
||||
}
|
||||
]; # end timeouts
|
||||
events = [
|
||||
{
|
||||
event = "before-sleep";
|
||||
command = (display "off") + "; " + lock;
|
||||
}
|
||||
{
|
||||
event = "after-resume";
|
||||
command = display "on";
|
||||
}
|
||||
{
|
||||
event = "lock";
|
||||
command = (display "off") + "; " + lock;
|
||||
}
|
||||
{
|
||||
event = "unlock";
|
||||
command = display "on";
|
||||
}
|
||||
]; # end events
|
||||
}; # end swayidle
|
||||
}; # end services
|
||||
programs = {
|
||||
rofi = {
|
||||
enable = true;
|
||||
font = "${style_font} ${style_font_sz}";
|
||||
theme = let
|
||||
inherit (config.lib.formats.rasi) mkLiteral;
|
||||
in {
|
||||
"*" = {
|
||||
bg = mkLiteral color_uf_bg;
|
||||
fg = mkLiteral color_f_text;
|
||||
ac = mkLiteral color_f_bg;
|
||||
background-color = mkLiteral "transparent";
|
||||
};
|
||||
|
||||
"#window" = {
|
||||
background-color = mkLiteral "@bg";
|
||||
location = mkLiteral "center";
|
||||
width = mkLiteral "30%";
|
||||
};
|
||||
|
||||
"#prompt" = {
|
||||
text-color = mkLiteral "@fg";
|
||||
};
|
||||
|
||||
"#textbox-prompt-colon" = {
|
||||
text-color = mkLiteral "@fg";
|
||||
};
|
||||
|
||||
"#entry" = {
|
||||
text-color = mkLiteral "@fg";
|
||||
blink = mkLiteral "true";
|
||||
};
|
||||
|
||||
"#inputbar" = {
|
||||
children = mkLiteral "[ prompt, entry ]";
|
||||
text-color = mkLiteral "@fg";
|
||||
padding = mkLiteral "5px";
|
||||
};
|
||||
|
||||
"#listview" = {
|
||||
columns = mkLiteral "1";
|
||||
lines = mkLiteral "6";
|
||||
cycle = mkLiteral "true";
|
||||
dynamic = mkLiteral "true";
|
||||
};
|
||||
|
||||
"#mainbox" = {
|
||||
border = mkLiteral "3px";
|
||||
border-color = mkLiteral "@ac";
|
||||
children = mkLiteral "[ inputbar, listview ]";
|
||||
padding = mkLiteral "10px";
|
||||
};
|
||||
|
||||
"#element" = {
|
||||
text-color = mkLiteral "@fg";
|
||||
padding = mkLiteral "5px";
|
||||
};
|
||||
|
||||
"#element-icon" = {
|
||||
text-color = mkLiteral "@fg";
|
||||
size = mkLiteral "32px";
|
||||
};
|
||||
|
||||
"#element-text" = {
|
||||
text-color = mkLiteral "@fg";
|
||||
padding = mkLiteral "5px";
|
||||
};
|
||||
|
||||
"#element selected" = {
|
||||
border = mkLiteral "3px";
|
||||
border-color = mkLiteral "@ac";
|
||||
text-color = mkLiteral "@fg";
|
||||
background-color = mkLiteral "@ac";
|
||||
};
|
||||
}; # end theme
|
||||
}; # end rofi
|
||||
waybar = {
|
||||
enable = true;
|
||||
settings = {
|
||||
mainBar = {
|
||||
layer = "bottom";
|
||||
position = "top";
|
||||
height = 32;
|
||||
spacing = 0;
|
||||
modules-left = [
|
||||
"sway/workspaces"
|
||||
"sway/window"
|
||||
];
|
||||
modules-center = [
|
||||
"clock"
|
||||
];
|
||||
modules-right = [
|
||||
"network"
|
||||
"pulseaudio"
|
||||
"battery"
|
||||
"tray"
|
||||
];
|
||||
"sway/workspaces" = {
|
||||
on-click = "activate";
|
||||
sort-by-number = true;
|
||||
format = "{value}";
|
||||
};
|
||||
"sway/window" = {
|
||||
max-length = 64;
|
||||
};
|
||||
"tray" = {
|
||||
icon-size = 13;
|
||||
spacing = 8;
|
||||
};
|
||||
"clock" = {
|
||||
interval = 60;
|
||||
tooltip = false;
|
||||
format = "{:%R}";
|
||||
format-alt = "{:%a, %Y-%m-%d}";
|
||||
};
|
||||
"battery" = {
|
||||
states = {
|
||||
critical = 10;
|
||||
warning = 20;
|
||||
good = 90;
|
||||
full = 100;
|
||||
over = 101;
|
||||
};
|
||||
interval = 30;
|
||||
format = "Bat {capacity}%";
|
||||
format-charging = "Bat {capacity}%";
|
||||
format-plugged = "Bat {capacity}%";
|
||||
};
|
||||
"network" = {
|
||||
format-wifi = "WiFi up";
|
||||
format-ethernet = "eth up";
|
||||
tooltip-format = "{ifname} = {ipaddr}/{cidr}";
|
||||
format-linked = "{ifname} (no ip)";
|
||||
format-disconnected = "No network";
|
||||
format-alt = "{essid}: {ipaddr}";
|
||||
interval = 10;
|
||||
};
|
||||
"pulseaudio" = {
|
||||
# "scroll-step" = 1; # %; can be a float
|
||||
format = "Sound: {volume}%";
|
||||
format-muted = "Sound Muted";
|
||||
};
|
||||
}; # end mainbar
|
||||
}; # end settings
|
||||
style = ''
|
||||
* {
|
||||
font-family: ${style_font_bold};
|
||||
font-size: ${style_font_sz}pt;
|
||||
}
|
||||
|
||||
window#waybar {
|
||||
color: ${color_f_text};
|
||||
background-color: ${color_uf_bg};
|
||||
transition-property: background-color;
|
||||
transition-duration: .5s;
|
||||
}
|
||||
|
||||
window#waybar.hidden {
|
||||
opacity: 0.2;
|
||||
}
|
||||
|
||||
/*
|
||||
window#waybar.empty {
|
||||
background-color: transparent;
|
||||
}
|
||||
window#waybar.solo {
|
||||
background-color: ${color_purple_1};
|
||||
}
|
||||
*/
|
||||
|
||||
button {
|
||||
box-shadow: inset 0 -8px transparent;
|
||||
border: none;
|
||||
border-radius: 0;
|
||||
}
|
||||
|
||||
button:hover {
|
||||
color: ${color_f_text};
|
||||
background: ${color_f_bg};
|
||||
}
|
||||
|
||||
#workspaces button {
|
||||
color: ${color_uf_text};
|
||||
background-color: ${color_uf_bg};
|
||||
}
|
||||
|
||||
#workspaces button:hover {
|
||||
color: ${color_f_text};
|
||||
background: ${color_f_bg};
|
||||
}
|
||||
|
||||
#workspaces button.focused {
|
||||
color: ${color_inv_text};
|
||||
background-color: ${color_inv_bg};
|
||||
}
|
||||
|
||||
#workspaces button.urgent {
|
||||
color: ${color_alert_text};
|
||||
background-color: ${color_alert_bg};
|
||||
}
|
||||
|
||||
#battery,
|
||||
#clock,
|
||||
#network,
|
||||
#pulseaudio,
|
||||
#tray,
|
||||
|
||||
#window,
|
||||
#workspaces {
|
||||
margin: 0 2px;
|
||||
}
|
||||
|
||||
.modules-left > widget:first-child > #workspaces {
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
.modules-right > widget:last-child > #workspaces {
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
#battery {
|
||||
color: ${color_f_text};
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
#battery.critical.discharging {
|
||||
animation: blink 1s infinite;
|
||||
color: ${color_red_2};
|
||||
}
|
||||
|
||||
#battery.warning.discharging {
|
||||
animation: blink 1s infinite;
|
||||
color: ${color_orange_2};
|
||||
}
|
||||
|
||||
#battery.good {
|
||||
animation: none;
|
||||
color: ${color_f_text};
|
||||
}
|
||||
|
||||
#battery.full.charging {
|
||||
color: ${color_green_2};
|
||||
}
|
||||
|
||||
#battery.over.charging {
|
||||
color: ${color_green_2};
|
||||
}
|
||||
|
||||
#clock {
|
||||
color: ${color_f_text};
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
label:focus {
|
||||
color: ${color_f_text};
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
#network {
|
||||
color: ${color_f_text};
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
#network.disconnected {
|
||||
color: ${color_f_text};
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
#pulseaudio {
|
||||
color: ${color_f_text};
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
#pulseaudio.muted {
|
||||
color: ${color_f_text};
|
||||
background-color: transparent;
|
||||
}
|
||||
#tray {
|
||||
background-color: transparent;
|
||||
border-bottom: 3px solid ${color_f_text};
|
||||
}
|
||||
|
||||
#tray > .passive {
|
||||
-gtk-icon-effect: dim;
|
||||
}
|
||||
|
||||
#tray > .needs-attention {
|
||||
-gtk-icon-effect: highlight;
|
||||
background-color: transparent;
|
||||
}
|
||||
''; # end style
|
||||
}; # end waybar
|
||||
swaylock = {
|
||||
enable = true;
|
||||
settings = {
|
||||
color = color_uf_bg;
|
||||
font = style_font;
|
||||
font-size = style_font_sz;
|
||||
ignore-empty-password = true;
|
||||
indicator-caps-lock = true;
|
||||
indicator-radius = 50;
|
||||
indicator-thickness = 10;
|
||||
}; # end settings
|
||||
}; # end swaylock
|
||||
}; # end programs
|
||||
} # end file
|
||||
33
hosts/common/wm/gnome.nix
Normal file
33
hosts/common/wm/gnome.nix
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
security.sudo.wheelNeedsPassword = false;
|
||||
|
||||
services = {
|
||||
displayManager = {
|
||||
gdm.enable = true;
|
||||
gdm.wayland = true;
|
||||
};
|
||||
desktopManager.gnome.enable = true;
|
||||
gnome = {
|
||||
gnome-keyring.enable = true;
|
||||
gnome-initial-setup.enable = false;
|
||||
};
|
||||
}; # end services
|
||||
|
||||
environment = {
|
||||
gnome.excludePackages = with pkgs; [
|
||||
evolution
|
||||
geary
|
||||
gnome-contacts
|
||||
gnome-music
|
||||
gnome-user-docs
|
||||
gnome-tour
|
||||
gnome-weather
|
||||
gnome-maps
|
||||
gnome-calendar
|
||||
gnome-initial-setup
|
||||
gnome-clocks
|
||||
]; # end gnome.excludePackages
|
||||
}; # end environment
|
||||
} #end file
|
||||
21
hosts/common/wm/hyprland.nix
Normal file
21
hosts/common/wm/hyprland.nix
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
{
|
||||
programs.hyprland = {
|
||||
enable = true;
|
||||
withUWSM = true; # recommended for most users
|
||||
xwayland.enable = true; # Xwayland can be disabled.
|
||||
};
|
||||
services.greetd = {
|
||||
enable = true;
|
||||
settings = {
|
||||
default_session = {
|
||||
command = "${pkgs.greetd.tuigreet}/bin/tuigreet --time --cmd hyprland";
|
||||
user = "alisceon";
|
||||
};
|
||||
};
|
||||
};
|
||||
environment.systemPackages = with
|
||||
pkgs; [
|
||||
kitty
|
||||
];
|
||||
}
|
||||
40
hosts/common/wm/sway.nix
Normal file
40
hosts/common/wm/sway.nix
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
{
|
||||
environment.systemPackages = with pkgs; [
|
||||
grim # screenshot functionality
|
||||
slurp # screenshot functionality
|
||||
wl-clipboard # wl-copy and wl-paste for copy/paste from stdin / stdout
|
||||
mako # notification system developed by swaywm maintainer
|
||||
rofi-wayland
|
||||
waybar
|
||||
];
|
||||
|
||||
# enable Sway window manager
|
||||
programs = {
|
||||
sway = {
|
||||
enable = true;
|
||||
wrapperFeatures.gtk = true;
|
||||
}; # end sway
|
||||
light = {
|
||||
enable = true;
|
||||
}; # end light
|
||||
}; # end programs
|
||||
security.polkit.enable = true;
|
||||
services = {
|
||||
greetd = {
|
||||
enable = true;
|
||||
settings = {
|
||||
default_session = {
|
||||
command = "${pkgs.greetd.tuigreet}/bin/tuigreet --time --cmd sway";
|
||||
user = "greeter";
|
||||
}; # end default_session
|
||||
}; # end settings
|
||||
}; # end greetd
|
||||
logind = {
|
||||
lidSwitch = "suspend";
|
||||
lidSwitchExternalPower = "suspend";
|
||||
}; # end logind
|
||||
gnome.gnome-keyring.enable = true;
|
||||
}; # end services
|
||||
users.users.alisceon.extraGroups = [ "video" ];
|
||||
}
|
||||
|
|
@ -61,19 +61,11 @@
|
|||
obsidian
|
||||
gparted
|
||||
]; # end systemPackages
|
||||
|
||||
gnome.excludePackages = with pkgs; [
|
||||
evolution
|
||||
geary
|
||||
gnome-contacts
|
||||
gnome-music
|
||||
gnome-user-docs
|
||||
gnome-tour
|
||||
gnome-weather
|
||||
gnome-maps
|
||||
gnome-calendar
|
||||
gnome-initial-setup
|
||||
gnome-clocks
|
||||
]; # end gnome.excludePackages
|
||||
}; # end environment
|
||||
fonts = {
|
||||
enableDefaultPackages = true;
|
||||
packages = with pkgs; [
|
||||
inconsolata
|
||||
]; # end packages
|
||||
}; # end fonts
|
||||
} #end file
|
||||
|
|
|
|||
|
|
@ -13,26 +13,6 @@
|
|||
luks.devices."luks-654125f4-7b26-408d-b1b5-d31648ec8770".device = "/dev/disk/by-uuid/654125f4-7b26-408d-b1b5-d31648ec8770";
|
||||
verbose = false;
|
||||
};
|
||||
|
||||
plymouth = {
|
||||
enable = true;
|
||||
theme = "rings";
|
||||
themePackages = with pkgs; [
|
||||
(adi1090x-plymouth-themes.override {
|
||||
selected_themes = [ "rings" ];
|
||||
})
|
||||
];
|
||||
};
|
||||
consoleLogLevel = 3;
|
||||
kernelParams = [
|
||||
"quiet"
|
||||
"splash"
|
||||
"boot.shell_on_fail"
|
||||
"udev.log_priority=3"
|
||||
"rd.systemd.show_status=auto"
|
||||
"mem_sleep_default=s2idle"
|
||||
];
|
||||
loader.timeout = 0;
|
||||
#resumeDevice = "/dev/disk/by-uuid/c49249b9-0d68-44af-97e0-e399c8409408";
|
||||
}; # end boot
|
||||
systemd.services = {
|
||||
|
|
|
|||
10
nixos/default.nix
Normal file
10
nixos/default.nix
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
{ ... }: {
|
||||
imports = [
|
||||
./hardware
|
||||
./programs
|
||||
./services
|
||||
./system
|
||||
./themes
|
||||
./virtual
|
||||
];
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue