diff --git a/hosts/ace/configuration.nix b/hosts/ace/configuration.nix index a3e2150..0c01e48 100644 --- a/hosts/ace/configuration.nix +++ b/hosts/ace/configuration.nix @@ -6,7 +6,7 @@ /etc/nixos/hardware-configuration.nix /home/don/nixos/workstation /home/don/nixos/home - /home/don/nixos/dm/sway + /home/don/nixos/wm/sway ]; networking.hostName = "ace"; } diff --git a/hosts/dragon/configuration.nix b/hosts/dragon/configuration.nix index 1e495dc..da1b705 100644 --- a/hosts/dragon/configuration.nix +++ b/hosts/dragon/configuration.nix @@ -6,7 +6,7 @@ /etc/nixos/hardware-configuration.nix /home/don/nixos/workstation /home/don/nixos/home - /home/don/nixos/dm/sway + /home/don/nixos/wm/sway ]; networking.hostName = "dragon"; } diff --git a/hosts/eve/configuration.nix b/hosts/eve/configuration.nix index 33f7f93..b33cb49 100644 --- a/hosts/eve/configuration.nix +++ b/hosts/eve/configuration.nix @@ -7,7 +7,8 @@ /etc/nixos/hardware-configuration.nix /home/don/nixos/workstation /home/don/nixos/home - /home/don/nixos/dm/sway + /home/don/nixos/wm/sway + /home/don/nixos/wm/hyperland ]; networking.hostName = "eve"; } diff --git a/hosts/loki/configuration.nix b/hosts/loki/configuration.nix index ac0d285..3c21a3c 100644 --- a/hosts/loki/configuration.nix +++ b/hosts/loki/configuration.nix @@ -7,7 +7,8 @@ /etc/nixos/hardware-configuration.nix /home/don/nixos/workstation /home/don/nixos/home - /home/don/nixos/dm/sway + /home/don/nixos/wm/sway + /home/don/nixos/wm/hyperland ]; networking.hostName = "loki"; } diff --git a/hosts/pocket2/configuration.nix b/hosts/pocket2/configuration.nix index 12058d6..70e6cde 100644 --- a/hosts/pocket2/configuration.nix +++ b/hosts/pocket2/configuration.nix @@ -6,7 +6,7 @@ /etc/nixos/hardware-configuration.nix /home/don/nixos/workstation /home/don/nixos/home - /home/don/nixos/dm/sway + /home/don/nixos/wm/sway ]; networking.hostName = "pocket2"; } diff --git a/hosts/smaug/configuration.nix b/hosts/smaug/configuration.nix index 73c591f..8acdd0f 100644 --- a/hosts/smaug/configuration.nix +++ b/hosts/smaug/configuration.nix @@ -7,7 +7,7 @@ /etc/nixos/hardware-configuration.nix /home/don/nixos/workstation /home/don/nixos/home - /home/don/nixos/dm/sway + /home/don/nixos/wm/sway ]; networking.hostName = "smaug"; } diff --git a/wm/hyperland/default.nix b/wm/hyperland/default.nix new file mode 100644 index 0000000..019461a --- /dev/null +++ b/wm/hyperland/default.nix @@ -0,0 +1,65 @@ +{ config, pkgs, lib, ... }: +let + configure-gtk = pkgs.writeTextFile { + name = "configure-gtk"; + destination = "/bin/configure-gtk"; + executable = true; + text = let + schema = pkgs.gsettings-desktop-schemas; + datadir = "${schema}/share/gsettings-schemas/${schema.name}"; + in '' + export XDG_DATA_DIRS=${datadir}:$XDG_DATA_DIRS + gnome_schema=org.gnome.desktop.interface + gsettings set $gnome_schema gtk-theme 'Dracula' + ''; + }; + +in +{ + environment.systemPackages = with pkgs; [ + alacritty + bemenu + #configure-gtk + #dbus-sway-environment + dracula-theme # gtk theme + glib + gnome.adwaita-icon-theme + grim + mako + slurp + swaybg + swayidle + swayimg + swaylock-effects + swaynotificationcenter + waybar + wayland + wl-clipboard + ]; + + + # xdg-desktop-portal works by exposing a series of D-Bus interfaces + # known as portals under a well-known name + # (org.freedesktop.portal.Desktop) and object path + # (/org/freedesktop/portal/desktop). + # The portal interfaces include APIs for file access, opening URIs, + # printing and others. + services.dbus.enable = true; + xdg.portal = { + enable = true; + wlr.enable = true; + # gtk portal needed to make gtk apps happy + extraPortals = [ pkgs.xdg-desktop-portal-gtk ]; + #gtkUsePortal = true; + }; +# wayland.windowManager.hyprland = { +# enable = true; + +# extraConfig = '' +# bind = SUPER, Return, exec, kitty +# # ... +# ''; +# }; + programs.hyprland.enable = true; + +} diff --git a/dm/kde/default.nix b/wm/kde/default.nix similarity index 100% rename from dm/kde/default.nix rename to wm/kde/default.nix diff --git a/dm/sway/default.nix b/wm/sway/default.nix similarity index 100% rename from dm/sway/default.nix rename to wm/sway/default.nix diff --git a/workstation/default.nix b/workstation/default.nix index c625822..31f39c7 100644 --- a/workstation/default.nix +++ b/workstation/default.nix @@ -24,7 +24,7 @@ in # Enable networking networking.networkmanager.enable = true; - networking.enableIPv6 = false; # FIXME this is to test connectivity @ the office via wireguard + networking.enableIPv6 = false; # FIXME this is to test connectivity @ the office via tailscale networking.networkmanager.wifi.powersave = true; networking.useDHCP = false; @@ -45,15 +45,20 @@ in boot.plymouth.enable = true; boot.plymouth.theme = "breeze"; - security.polkit.enable = true; - # Enable doas instead of sudo - security.sudo.enable = false; - security.doas.enable = true; - security.doas.extraRules = [{ - users = [ "don" ]; - keepEnv = true; - noPass = true; - }]; + security = { + polkit = { + enable = true; + }; + sudo.enable = false; + doas = { + enable = true; + extraRules = [{ + users = [ "don" ]; + keepEnv = true; + noPass = true; + }]; + }; + }; services = { avahi = { @@ -256,6 +261,7 @@ in vit wget widevine-cdm + wireplumber wlsunset xdg-utils xfce.thunar