Refactor for sway on all machines

This commit is contained in:
thiloho
2023-06-12 13:49:43 +02:00
parent d641f6cda4
commit 7e1ee2b43c
3 changed files with 132 additions and 162 deletions

View File

@@ -6,30 +6,9 @@
../shared.nix ../shared.nix
]; ];
environment.variables = {
TERMINAL = "alacritty";
};
hardware.enableRedistributableFirmware = true;
networking.hostName = "laptop"; networking.hostName = "laptop";
services = { hardware.firmware = [ pkgs.broadcom-bt-firmware ];
xserver = {
enable = true;
windowManager.i3 = {
enable = true;
};
libinput.enable = true;
videoDrivers = [ "modesetting" "nvidia" ];
};
};
hardware = {
bluetooth.enable = true;
firmware = [ pkgs.broadcom-bt-firmware ];
};
boot.extraModulePackages = [ config.boot.kernelPackages.broadcom_sta ]; boot.extraModulePackages = [ config.boot.kernelPackages.broadcom_sta ];
home-manager.users.thiloho = { pkgs, ... }: { home-manager.users.thiloho = { pkgs, ... }: {
@@ -38,9 +17,5 @@
key = "86C465C22C8A4D56"; key = "86C465C22C8A4D56";
}; };
}; };
services.flameshot.enable = true;
home.packages = with pkgs; [
arduino
];
}; };
} }

View File

@@ -1,4 +1,4 @@
{ pkgs, ... }: { ... }:
{ {
imports = [ imports = [
@@ -8,36 +8,8 @@
networking.hostName = "pc"; networking.hostName = "pc";
hardware.opengl.enable = true; home-manager.users.thiloho = { ... }: {
wayland.windowManager.sway.config.output = {
security.polkit.enable = true;
# Make swaylock work
security.pam.services.swaylock = {
text = ''
auth include login
'';
};
xdg.portal = {
enable = true;
extraPortals = with pkgs; [
xdg-desktop-portal-wlr
xdg-desktop-portal-gtk
];
};
home-manager.users.thiloho = { pkgs, ... }: {
wayland.windowManager.sway = {
enable = true;
wrapperFeatures.gtk = true;
config = {
modifier = "Mod1";
terminal = "alacritty";
menu = ''
tofi-run --width "100%" --height "100%" --border-width 0 --outline-width 0 --padding-left "35%" --padding-top "35%" --result-spacing 25 --num-results 5 --font "monospace" --background-color "#000A" | xargs swaymsg exec --
'';
output = {
DP-1 = { DP-1 = {
bg = "/home/thiloho/background.jpg fill"; bg = "/home/thiloho/background.jpg fill";
res = "1920x1080@144.000Hz"; res = "1920x1080@144.000Hz";
@@ -47,90 +19,11 @@
res = "1920x1080@144.000Hz"; res = "1920x1080@144.000Hz";
}; };
}; };
bars = [ programs.git = {
{ command = "waybar"; }
];
};
xwayland = false;
};
programs = {
waybar = {
enable = true;
settings = [
{
modules-left = [ "sway/workspaces" ];
modules-center = [ "sway/window" ];
modules-right = [ "user" "memory" "disk" "cpu" "clock" ];
user = {
format = "{user} - Uptime: {work_H}:{work_M}h";
};
memory = {
format = "Memory: {used}GiB";
};
disk = {
format = "Disk: {free}";
};
cpu = {
format = "CPU: {usage}%";
};
clock = {
interval = 60;
format = "{:%Y-%m-%d - %H:%M}";
};
}
];
style = ''
* {
font-size: 0.875rem;
border: none;
border-radius: 0;
}
window#waybar {
background-color: #1a1a1a;
color: #e6e6e6;
}
#workspaces button, #user, #memory, #disk, #cpu, #clock {
padding-top: 0.125rem;
padding-bottom: 0.125rem;
padding-left: 0.5rem;
padding-right: 0.5rem;
background-color: #262626;
border: 0.0625rem solid #404040;
}
'';
};
git = {
signing = { signing = {
key = "74F3E176485BE7DA"; key = "74F3E176485BE7DA";
}; };
}; };
swaylock.enable = true;
};
gtk = {
enable = true;
theme = {
package = pkgs.gnome.gnome-themes-extra;
name = "Adwaita-dark";
};
};
home = {
sessionVariables.NIXOS_OZONE_WL = "1";
packages = with pkgs; [
dconf
tofi
wayshot
wl-clipboard
xdg-utils
slurp
];
};
}; };
} }

View File

@@ -27,7 +27,28 @@
}; };
sound.enable = true; sound.enable = true;
security.rtkit.enable = true;
hardware.opengl.enable = true;
security = {
rtkit.enable = true;
polkit.enable = true;
};
# Make swaylock work
security.pam.services.swaylock = {
text = ''
auth include login
'';
};
xdg.portal = {
enable = true;
extraPortals = with pkgs; [
xdg-desktop-portal-wlr
xdg-desktop-portal-gtk
];
};
fonts = { fonts = {
fonts = with pkgs; [ fonts = with pkgs; [
@@ -53,7 +74,75 @@
# Home manager configuration # Home manager configuration
home-manager.users.thiloho = { pkgs, lib, ... }: { home-manager.users.thiloho = { pkgs, lib, ... }: {
wayland.windowManager.sway = {
enable = true;
wrapperFeatures.gtk = true;
config = {
modifier = "Mod1";
terminal = "alacritty";
menu = ''
tofi-run --width "100%" --height "100%" --border-width 0 --outline-width 0 --padding-left "35%" --padding-top "35%" --result-spacing 25 --num-results 5 --font "monospace" --background-color "#000A" | xargs swaymsg exec --
'';
bars = [
{ command = "waybar"; }
];
};
xwayland = false;
};
programs = { programs = {
waybar = {
enable = true;
settings = [
{
modules-left = [ "sway/workspaces" ];
modules-center = [ "sway/window" ];
modules-right = [ "user" "memory" "disk" "cpu" "clock" ];
user = {
format = "{user} - Uptime: {work_H}:{work_M}h";
};
memory = {
format = "Memory: {used}GiB";
};
disk = {
format = "Disk: {free}";
};
cpu = {
format = "CPU: {usage}%";
};
clock = {
interval = 60;
format = "{:%Y-%m-%d - %H:%M}";
};
}
];
style = ''
* {
font-size: 0.875rem;
border: none;
border-radius: 0;
}
window#waybar {
background-color: #1a1a1a;
color: #e6e6e6;
}
#workspaces button, #user, #memory, #disk, #cpu, #clock {
padding-top: 0.125rem;
padding-bottom: 0.125rem;
padding-left: 0.5rem;
padding-right: 0.5rem;
background-color: #262626;
border: 0.0625rem solid #404040;
}
'';
};
swaylock.enable = true;
bash = { bash = {
enable = true; enable = true;
shellAliases = { shellAliases = {
@@ -126,9 +215,16 @@
signByDefault = true; signByDefault = true;
}; };
}; };
gh.enable = true; };
gtk = {
enable = true;
theme = {
package = pkgs.gnome.gnome-themes-extra;
name = "Adwaita-dark";
};
}; };
home = { home = {
sessionVariables.NIXOS_OZONE_WL = "1";
stateVersion = "22.11"; stateVersion = "22.11";
packages = with pkgs; [ packages = with pkgs; [
zoom-us zoom-us
@@ -142,6 +238,12 @@
nodePackages.svelte-language-server nodePackages.svelte-language-server
nodePackages.vscode-langservers-extracted nodePackages.vscode-langservers-extracted
postgresqlJitPackages.plpgsql_check postgresqlJitPackages.plpgsql_check
dconf
tofi
wayshot
wl-clipboard
xdg-utils
slurp
]; ];
}; };
}; };