nixcfg/homeManagerModules/desktopEnv/sway/default.nix

128 lines
3.4 KiB
Nix
Raw Normal View History

2024-04-07 22:16:33 -04:00
{
pkgs,
lib,
config,
...
}: {
2024-03-31 08:09:03 -04:00
options = {
2024-04-05 16:43:19 -04:00
desktopEnv.sway.enable = lib.mkEnableOption "Sway with extra apps.";
2024-03-31 08:09:03 -04:00
};
config = lib.mkIf config.desktopEnv.sway.enable {
# Basic apps needed to run a hyprland desktop.
guiApps.waybar.enable = lib.mkDefault true;
guiApps.mako.enable = lib.mkDefault true;
guiApps.fuzzel.enable = lib.mkDefault true;
guiApps.wlogout.enable = lib.mkDefault true;
guiApps.alacritty.enable = lib.mkDefault true;
guiApps.firefox.enable = lib.mkDefault true;
2024-04-13 23:15:26 -04:00
guiApps.kanshi.enable = lib.mkDefault true;
2024-03-31 08:09:03 -04:00
# Packages that should be installed to the user profile.
home.packages = with pkgs; [
2024-04-13 23:15:26 -04:00
# brightnessctl
# hyprnome
celluloid
2024-03-31 08:09:03 -04:00
evince
2024-04-13 23:15:26 -04:00
gnome.eog
gnome.file-roller
kdePackages.polkit-kde-agent-1
networkmanagerapplet
2024-03-31 08:09:03 -04:00
playerctl
2024-04-13 23:15:26 -04:00
swayosd
trayscale
2024-03-31 08:09:03 -04:00
xfce.exo
xfce.thunar
xfce.thunar-archive-plugin
xfce.thunar-media-tags-plugin
xfce.thunar-volman
xfce.tumbler
xfce.xfce4-settings
xfce.xfce4-taskmanager
xfce.xfconf
2024-04-13 23:15:26 -04:00
swayidle
2024-03-31 08:09:03 -04:00
];
2024-04-13 23:15:26 -04:00
programs.swaylock.enable = lib.mkDefault true;
services.cliphist.enable = lib.mkDefault true;
2024-03-31 08:09:03 -04:00
2024-04-08 11:29:07 -04:00
wayland.windowManager.sway.enable = true;
wayland.windowManager.sway.config = {
2024-04-09 13:17:19 -04:00
bars = [{command = "${pkgs.waybar}/bin/waybar";}];
2024-04-08 11:29:07 -04:00
# bars.waybar.command = "${pkgs.waybar}/bin/waybar";
terminal = "${pkgs.alacritty}/bin/alacritty";
menu = "${pkgs.fuzzel}/bin/fuzzel";
modifier = "Mod4";
2024-04-13 23:15:26 -04:00
colors.focused = {
background = "#ca9ee6";
border = "#ca9ee6";
childBorder = "#ca9ee6";
indicator = "#ca9ee6";
text = "#ffffff";
};
colors.focusedInactive = {
background = "#99d1db";
border = "#99d1db";
childBorder = "#99d1db";
indicator = "#99d1db";
text = "#ffffff";
};
colors.unfocused = {
background = "#99d1db";
border = "#99d1db";
childBorder = "#99d1db";
indicator = "#99d1db";
text = "#ffffff";
};
gaps.inner = 5;
gaps.outer = 10;
window.titlebar = false;
fonts = {
names = ["Noto SansM Nerd Font"];
style = "Bold";
size = 12.0;
};
startup = [
# { command = "${pkgs.kanshi}"; }
{command = "nm-applet";}
{command = "swayosd-server";}
{command = "thunar --daemon";}
{command = "${pkgs.swayidle}/bin/swayidle -w timeout 300 '${pkgs.swaylock}/bin/swaylock' before-sleep '${pkgs.swaylock}/bin/swaylock'";}
2024-04-13 23:15:26 -04:00
];
output = {
"BOE 0x095F Unknown" = {
scale = "1.5";
};
};
input = {
"type:touchpad" = {
click_method = "clickfinger";
dwt = "enabled";
natural_scroll = "enabled";
scroll_method = "two_finger";
tap = "enabled";
tap_button_map = "lrm";
};
};
2024-03-31 08:09:03 -04:00
};
wayland.windowManager.sway.extraConfig = ''
bindgesture swipe:right workspace prev
bindgesture swipe:left workspace next
'';
2024-03-31 08:09:03 -04:00
xdg.configFile."xfce4/helpers.rc".text = ''
TerminalEmulator=alacritty
FileManager=thunar
WebBrowser=firefox
'';
xdg.portal = {
enable = true;
2024-04-07 22:16:33 -04:00
configPackages = [pkgs.xdg-desktop-portal-wlr];
extraPortals = [pkgs.xdg-desktop-portal-wlr];
2024-03-31 08:09:03 -04:00
};
};
}