remove gnome and hyprland
This commit is contained in:
@@ -12,6 +12,7 @@
|
|||||||
|
|
||||||
# ── Desktop module options ──────────────────────────────────────────────
|
# ── Desktop module options ──────────────────────────────────────────────
|
||||||
myDesktop.windowManager = "niri";
|
myDesktop.windowManager = "niri";
|
||||||
|
myDesktop.niri.hotkeyVariant = "lifebook";
|
||||||
myDesktop.cpu = "intel";
|
myDesktop.cpu = "intel";
|
||||||
myDesktop.virtualisation.enable = true;
|
myDesktop.virtualisation.enable = true;
|
||||||
|
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
# ../../modules/desktop
|
# ../../modules/desktop
|
||||||
# ];
|
# ];
|
||||||
#
|
#
|
||||||
# myDesktop.windowManager = "niri"; # niri (default) | hyprland | sway | kde | gnome
|
# myDesktop.windowManager = "niri"; # niri (default) | sway | kde
|
||||||
# myDesktop.cpu = "amd"; # amd | intel | none (default)
|
# myDesktop.cpu = "amd"; # amd | intel | none (default)
|
||||||
#
|
#
|
||||||
# myDesktop.virtualisation.enable = true;
|
# myDesktop.virtualisation.enable = true;
|
||||||
@@ -43,7 +43,7 @@ in
|
|||||||
options.myDesktop = with lib; {
|
options.myDesktop = with lib; {
|
||||||
|
|
||||||
windowManager = mkOption {
|
windowManager = mkOption {
|
||||||
type = types.enum [ "niri" "hyprland" "sway" "kde" "gnome" ];
|
type = types.enum [ "niri" "sway" "kde" ];
|
||||||
default = "niri";
|
default = "niri";
|
||||||
description = "Window manager / desktop environment for this host.";
|
description = "Window manager / desktop environment for this host.";
|
||||||
};
|
};
|
||||||
@@ -355,42 +355,6 @@ in
|
|||||||
};
|
};
|
||||||
})
|
})
|
||||||
|
|
||||||
# ── Hyprland ───────────────────────────────────────────────────────────
|
|
||||||
(lib.mkIf (cfg.windowManager == "hyprland") {
|
|
||||||
hardware.opengl.enable = true;
|
|
||||||
|
|
||||||
environment = {
|
|
||||||
loginShellInit = ''
|
|
||||||
if [ -z $DISPLAY ] && [ $UID != 0 ] && [ "$(tty)" = "/dev/tty1" ]; then
|
|
||||||
exec Hyprland
|
|
||||||
fi
|
|
||||||
'';
|
|
||||||
variables = {
|
|
||||||
MOZ_ENABLE_WAYLAND = "1";
|
|
||||||
MOZ_WEBRENDER = "1";
|
|
||||||
MOZ_USE_XINPUT2 = "2";
|
|
||||||
MOZ_DBUS_REMOTE = "1";
|
|
||||||
XDG_SESSION_TYPE = "wayland";
|
|
||||||
XDG_CURRENT_DESKTOP = "Unity";
|
|
||||||
GST_VAAPI_ALL_DRIVERS = "1";
|
|
||||||
GTK_THEME = "Arc";
|
|
||||||
_JAVA_AWT_WM_NONREPARENTING = "1";
|
|
||||||
};
|
|
||||||
systemPackages = with pkgs; [
|
|
||||||
xdg-desktop-portal-wlr
|
|
||||||
swaylock
|
|
||||||
swayidle
|
|
||||||
slurp
|
|
||||||
grim
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.hyprland.enable = true;
|
|
||||||
xdg.portal.wlr.enable = true;
|
|
||||||
|
|
||||||
home-manager.users.${user}.imports = [ ../wm/hyprland/home.nix ];
|
|
||||||
})
|
|
||||||
|
|
||||||
# ── Sway ───────────────────────────────────────────────────────────────
|
# ── Sway ───────────────────────────────────────────────────────────────
|
||||||
(lib.mkIf (cfg.windowManager == "sway") {
|
(lib.mkIf (cfg.windowManager == "sway") {
|
||||||
environment = {
|
environment = {
|
||||||
@@ -468,39 +432,6 @@ in
|
|||||||
home-manager.users.${user}.imports = [ ../wm/kde/home.nix ];
|
home-manager.users.${user}.imports = [ ../wm/kde/home.nix ];
|
||||||
})
|
})
|
||||||
|
|
||||||
# ── GNOME ──────────────────────────────────────────────────────────────
|
|
||||||
(lib.mkIf (cfg.windowManager == "gnome") {
|
|
||||||
hardware.pulseaudio.enable = lib.mkForce false;
|
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
gnome.gnome-terminal
|
|
||||||
gnomeExtensions.dash-to-dock
|
|
||||||
gnomeExtensions.appindicator
|
|
||||||
rocmPackages.clr.icd
|
|
||||||
rocmPackages.clr
|
|
||||||
clinfo
|
|
||||||
];
|
|
||||||
|
|
||||||
services = {
|
|
||||||
xserver = {
|
|
||||||
enable = true;
|
|
||||||
desktopManager.gnome.enable = true;
|
|
||||||
displayManager = {
|
|
||||||
gdm.wayland = true;
|
|
||||||
gdm.enable = true;
|
|
||||||
gdm.autoLogin.delay = 5;
|
|
||||||
gdm.settings.security.DisallowTCP = true;
|
|
||||||
defaultSession = "gnome";
|
|
||||||
autoLogin.enable = true;
|
|
||||||
autoLogin.user = user;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
udev.packages = with pkgs; [ gnome.gnome-settings-daemon ];
|
|
||||||
};
|
|
||||||
|
|
||||||
home-manager.users.${user}.imports = [ ../wm/gnome/home.nix ];
|
|
||||||
})
|
|
||||||
|
|
||||||
# ── Virtualisation (podman/docker-compat + qemu/libvirt) ───────────────
|
# ── Virtualisation (podman/docker-compat + qemu/libvirt) ───────────────
|
||||||
(lib.mkIf cfg.virtualisation.enable {
|
(lib.mkIf cfg.virtualisation.enable {
|
||||||
users.groups = {
|
users.groups = {
|
||||||
|
|||||||
@@ -1,48 +0,0 @@
|
|||||||
#
|
|
||||||
# Gnome configuration
|
|
||||||
#
|
|
||||||
# flake.nix
|
|
||||||
# ├─ ./hosts
|
|
||||||
# │ └─ ./laptop
|
|
||||||
# │ └─ default.nix
|
|
||||||
# └─ ./modules
|
|
||||||
# └─ ./desktop
|
|
||||||
# └─ ./gnome
|
|
||||||
# └─ default.nix *
|
|
||||||
#
|
|
||||||
{ config, lib, user, pkgs, ... }:
|
|
||||||
|
|
||||||
{
|
|
||||||
hardware.pulseaudio.enable = lib.mkForce false;
|
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
gnome.gnome-terminal
|
|
||||||
gnomeExtensions.dash-to-dock
|
|
||||||
gnomeExtensions.appindicator
|
|
||||||
rocmPackages.clr.icd
|
|
||||||
rocmPackages.clr
|
|
||||||
clinfo
|
|
||||||
];
|
|
||||||
|
|
||||||
services = {
|
|
||||||
xserver = {
|
|
||||||
enable = true;
|
|
||||||
desktopManager.gnome.enable = true;
|
|
||||||
displayManager = {
|
|
||||||
gdm.wayland = true;
|
|
||||||
gdm.enable = true;
|
|
||||||
gdm.autoLogin.delay = 5;
|
|
||||||
gdm.settings = {
|
|
||||||
security = {
|
|
||||||
DisallowTCP=true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
defaultSession = "steam-wayland";
|
|
||||||
autoLogin.enable = true;
|
|
||||||
autoLogin.user = "kabbone";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
#flatpak.enable = true;
|
|
||||||
udev.packages = with pkgs; [ gnome.gnome-settings-daemon ];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,53 +0,0 @@
|
|||||||
#
|
|
||||||
# Gnome NixOS & Home manager configuration
|
|
||||||
#
|
|
||||||
# flake.nix
|
|
||||||
# ├─ ./hosts
|
|
||||||
# │ └─ ./steamdeck
|
|
||||||
# │ └─ home.nix
|
|
||||||
# └─ ./modules
|
|
||||||
# └─ ./desktop
|
|
||||||
# └─ ./gnome
|
|
||||||
# └─ home.nix *
|
|
||||||
#
|
|
||||||
|
|
||||||
{ config, lib, pkgs, ... }:
|
|
||||||
{
|
|
||||||
dconf.settings = {
|
|
||||||
# Enable on-screen keyboard
|
|
||||||
"org/gnome/desktop/a11y/applications" = {
|
|
||||||
screen-keyboard-enabled = true;
|
|
||||||
};
|
|
||||||
"org/gnome/shell" = {
|
|
||||||
enabled-extensions = [
|
|
||||||
"dash-to-dock@micxgx.gmail.com"
|
|
||||||
];
|
|
||||||
favorite-apps = [
|
|
||||||
"firefox.desktop"
|
|
||||||
"thunderbird.desktop"
|
|
||||||
"element-desktop.desktop"
|
|
||||||
"keepassxc"
|
|
||||||
"yubioath-flutter.desktop"
|
|
||||||
"alacritty.desktop"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
# Dash to Dock settings for a better touch screen experience
|
|
||||||
"org/gnome/shell/extensions/dash-to-dock" = {
|
|
||||||
background-opacity = 0.80000000000000004;
|
|
||||||
custom-theme-shrink = true;
|
|
||||||
dash-max-icon-size = 48;
|
|
||||||
dock-fixed = true;
|
|
||||||
dock-position = "LEFT";
|
|
||||||
extend-height = true;
|
|
||||||
height-fraction = 0.60999999999999999;
|
|
||||||
hot-keys = false;
|
|
||||||
preferred-monitor = -2;
|
|
||||||
preferred-monitor-by-connector = "eDP-1";
|
|
||||||
scroll-to-focused-application = true;
|
|
||||||
show-apps-at-top = true;
|
|
||||||
show-mounts = true;
|
|
||||||
show-show-apps-button = true;
|
|
||||||
show-trash = false;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,65 +0,0 @@
|
|||||||
#
|
|
||||||
# Sway configuration
|
|
||||||
#
|
|
||||||
# flake.nix
|
|
||||||
# ├─ ./hosts
|
|
||||||
# │ └─ ./laptop
|
|
||||||
# │ └─ default.nix
|
|
||||||
# └─ ./modules
|
|
||||||
# └─ ./desktop
|
|
||||||
# └─ ./hyprland
|
|
||||||
# └─ hyprland.nix *
|
|
||||||
#
|
|
||||||
|
|
||||||
{ config, lib, user, pkgs, ... }:
|
|
||||||
|
|
||||||
{
|
|
||||||
imports = [ ../../programs/waybar.nix ];
|
|
||||||
|
|
||||||
hardware.opengl = {
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
environment = {
|
|
||||||
loginShellInit = ''
|
|
||||||
if [ -z $DISPLAY ] && [ $UID != 0 ] && [ "$(tty)" = "/dev/tty1" ]; then
|
|
||||||
exec Hyprland
|
|
||||||
fi
|
|
||||||
''; # Will automatically open sway when logged into tty1
|
|
||||||
variables = {
|
|
||||||
MOZ_ENABLE_WAYLAND = "1";
|
|
||||||
MOZ_WEBRENDER = "1";
|
|
||||||
MOZ_USE_XINPUT2 = "2";
|
|
||||||
MOZ_DBUS_REMOTE = "1";
|
|
||||||
#GDK_BACKEND = "wayland";
|
|
||||||
LIBVA_DRIVER_NAME = "iHD";
|
|
||||||
VDPAU_DRIVER = "iHD";
|
|
||||||
XDG_SESSION_TYPE = "wayland";
|
|
||||||
XDG_CURRENT_DESKTOP = "Unity";
|
|
||||||
#QT_QPA_PLATFORMTHEME = "wayland-egl";
|
|
||||||
GST_VAAPI_ALL_DRIVERS = "1";
|
|
||||||
GTK_THEME = "Arc";
|
|
||||||
_JAVA_AWT_WM_NONREPARENTING = "1";
|
|
||||||
#LIBCL_ALWAYS_SOFTWARE = "1"; # For applications in VM like alacritty to work
|
|
||||||
#WLR_NO_HARDWARE_CURSORS = "1"; # For cursor in VM
|
|
||||||
};
|
|
||||||
systemPackages = with pkgs; [
|
|
||||||
xdg-desktop-portal-wlr
|
|
||||||
swaylock
|
|
||||||
swayidle
|
|
||||||
slurp
|
|
||||||
grim
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
programs = {
|
|
||||||
hyprland.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
security.pam.services.swaylock = {};
|
|
||||||
|
|
||||||
xdg.portal = { # Required for flatpak with windowmanagers
|
|
||||||
#enable = true;
|
|
||||||
wlr.enable = true;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,144 +0,0 @@
|
|||||||
#
|
|
||||||
# Hyprland NixOS & Home manager configuration
|
|
||||||
#
|
|
||||||
# flake.nix
|
|
||||||
# ├─ ./hosts
|
|
||||||
# │ └─ ./laptop
|
|
||||||
# │ └─ home.nix
|
|
||||||
# └─ ./modules
|
|
||||||
# └─ ./desktop
|
|
||||||
# └─ ./hyprland
|
|
||||||
# └─ home.nix *
|
|
||||||
#
|
|
||||||
|
|
||||||
{ config, lib, pkgs, ... }:
|
|
||||||
|
|
||||||
{
|
|
||||||
home.file = {
|
|
||||||
".config/hypr/hyprland.conf".text = ''
|
|
||||||
monitor=eDP-1,1920x1080@60,0x0,1
|
|
||||||
# monitor=HDMI-A-2,1920x1080@60,1920x0,1
|
|
||||||
# monitor=HDMI-A-1,1280x1028@60,3840x0,1
|
|
||||||
workspace=eDP-1,1
|
|
||||||
# workspace=HDMI-A-2,2
|
|
||||||
# workspace=HDMI-A-1,3
|
|
||||||
general {
|
|
||||||
main_mod=SUPER
|
|
||||||
border_size=4
|
|
||||||
gaps_in=5
|
|
||||||
gaps_out=7
|
|
||||||
col.active_border=0x80ffffff
|
|
||||||
col.inactive_border=0x66333333
|
|
||||||
damage_tracking=full # leave it on full unless you hate your GPU and want to make it suffer
|
|
||||||
layout=dwindle
|
|
||||||
}
|
|
||||||
|
|
||||||
decoration {
|
|
||||||
rounding=5
|
|
||||||
multisample_edges=true
|
|
||||||
active_opacity=1
|
|
||||||
inactive_opacity=1
|
|
||||||
fullscreen_opacity=1
|
|
||||||
blur=false
|
|
||||||
drop_shadow=false
|
|
||||||
blur_new_optimizations=true
|
|
||||||
}
|
|
||||||
animations {
|
|
||||||
enabled=true
|
|
||||||
}
|
|
||||||
misc {
|
|
||||||
no_vfr=false
|
|
||||||
}
|
|
||||||
input {
|
|
||||||
kb_layout=us
|
|
||||||
follow_mouse=1
|
|
||||||
repeat_delay=250
|
|
||||||
numlock_by_default=0
|
|
||||||
force_no_accel=1
|
|
||||||
sensitivity=0
|
|
||||||
touchpad {
|
|
||||||
disable_while_typing=1
|
|
||||||
natural_scroll=0
|
|
||||||
}
|
|
||||||
}
|
|
||||||
dwindle {
|
|
||||||
pseudotile=0
|
|
||||||
}
|
|
||||||
bind=SUPER,Return,exec,${pkgs.alacritty}/bin/alacritty
|
|
||||||
bind=SUPER,Q,killactive,
|
|
||||||
bind=SUPER,Escape,exit,
|
|
||||||
bind=SUPER,E,exec,${pkgs.pcmanfm}/bin/pcmanfm
|
|
||||||
bind=SUPER,H,togglefloating,
|
|
||||||
bind=SUPER,Space,exec,${pkgs.rofi}/bin/rofi -show drun
|
|
||||||
bind=SUPER,P,pseudo,
|
|
||||||
bind=SUPER,F,fullscreen,
|
|
||||||
bind=SUPER,left,movefocus,l
|
|
||||||
bind=SUPER,right,movefocus,r
|
|
||||||
bind=SUPER,up,movefocus,u
|
|
||||||
bind=SUPER,down,movefocus,d
|
|
||||||
bind=ALT,1,workspace,1
|
|
||||||
bind=ALT,2,workspace,2
|
|
||||||
bind=ALT,3,workspace,3
|
|
||||||
bind=ALT,4,workspace,4
|
|
||||||
bind=ALT,5,workspace,5
|
|
||||||
bind=ALT,6,workspace,6
|
|
||||||
bind=ALT,7,workspace,7
|
|
||||||
bind=ALT,8,workspace,8
|
|
||||||
bind=ALT,9,workspace,9
|
|
||||||
bind=ALT,0,workspace,10
|
|
||||||
bind=ALT,right,workspace,+1
|
|
||||||
bind=ALT,left,workspace,-1
|
|
||||||
bind=ALTSHIFT,1,movetoworkspace,1
|
|
||||||
bind=ALTSHIFT,2,movetoworkspace,2
|
|
||||||
bind=ALTSHIFT,3,movetoworkspace,3
|
|
||||||
bind=ALTSHIFT,4,movetoworkspace,4
|
|
||||||
bind=ALTSHIFT,5,movetoworkspace,5
|
|
||||||
bind=ALTSHIFT,6,movetoworkspace,6
|
|
||||||
bind=ALTSHIFT,7,movetoworkspace,7
|
|
||||||
bind=ALTSHIFT,8,movetoworkspace,8
|
|
||||||
bind=ALTSHIFT,9,movetoworkspace,9
|
|
||||||
bind=ALTSHIFT,0,movetoworkspace,10
|
|
||||||
bind=ALTSHIFT,right,movetoworkspace,+1
|
|
||||||
bind=ALTSHIFT,left,movetoworkspace,-1
|
|
||||||
bind=CTRL,right,resizeactive,20 0
|
|
||||||
bind=CTRL,left,resizeactive,-20 0
|
|
||||||
bind=CTRL,up,resizeactive,0 -20
|
|
||||||
bind=CTRL,down,resizeactive,0 20
|
|
||||||
bind=,print,exec,${pkgs.flameshot}/bin/flameshot gui
|
|
||||||
bind=,XF86AudioLowerVolume,exec,${pkgs.pamixer}/bin/pamixer -d 10
|
|
||||||
bind=,XF86AudioRaiseVolume,exec,${pkgs.pamixer}/bin/pamixer -i 10
|
|
||||||
bind=,XF86AudioMute,exec,${pkgs.pamixer}/bin/pamixer -t
|
|
||||||
bind=,XF86AudioMicMute,exec,${pkgs.pamixer}/bin/pamixer --default-source -t
|
|
||||||
bind=,XF86MonBrightnessDown,exec,${pkgs.light}/bin/light -U 5
|
|
||||||
bind=,XF86MonBrightnessUP,exec,${pkgs.light}/bin/light -A 5
|
|
||||||
windowrule=float,^(Rofi)$
|
|
||||||
windowrule=float,title:^(Picture-in-Picture)$
|
|
||||||
windowrule=float,title:^(Volume Control)$
|
|
||||||
exec-once=${pkgs.swaybg}/bin/swaybg -m center -i $HOME/.config/wall
|
|
||||||
exec-once=${pkgs.waybar}/bin/waybar
|
|
||||||
exec-once=${pkgs.blueman}/bin/blueman-applet
|
|
||||||
exec-once=${pkgs.swayidle}/bin/swayidle -w timeout 600 "${pkgs.swaylock}/bin/swaylock -f" timeout 300 "${pkgs.hyprland}/bin/hyprctl dispatch dpms off" resume "${pkgs.hyprland}/bin/hyprctl dispatch dpms on" before-sleep "${pkgs.swaylock}/bin/swaylock -f"
|
|
||||||
exec-once=dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
|
|
||||||
exec-once=systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
programs.swaylock.settings = {
|
|
||||||
color = "000000";
|
|
||||||
image = "$HOME/.config/lockwall";
|
|
||||||
indicator-caps-lock = true;
|
|
||||||
show-keyboard-layout = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
services.swayidle = {
|
|
||||||
enable = false;
|
|
||||||
events = [
|
|
||||||
{ event = "before-sleep"; command = "${pkgs.swaylock}/bin/swaylock"; }
|
|
||||||
{ event = "lock"; command = "${pkgs.swaylock}/bin/swaylock -fF"; }
|
|
||||||
{ event = "after-resume"; command = "${pkgs.hyprland}/bin/hyprctl dispatch dpms on"; }
|
|
||||||
];
|
|
||||||
timeouts = [
|
|
||||||
{ timeout = 300; command = "${pkgs.swaylock}/bin/swaylock -fF"; }
|
|
||||||
{ timeout = 600; command = "${pkgs.hyprland}/bin/hyprctl dispatch dpms off"; }
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user