93 lines
2.2 KiB
Nix
93 lines
2.2 KiB
Nix
|
{
|
||
|
pkgs,
|
||
|
...
|
||
|
}:
|
||
|
|
||
|
let
|
||
|
dbus-hyprland-environment = pkgs.writeTextFile {
|
||
|
name = "dbus-hyprland-environment";
|
||
|
destination = "/bin/dbus-hyprland-environment";
|
||
|
executable = true;
|
||
|
text = ''
|
||
|
dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP=hyprland
|
||
|
systemctl --user stop pipewire pipewire-media-session xdg-desktop-portal xdg-desktop-portal-wlr
|
||
|
systemctl --user start pipewire wireplumber pipewire-media-session xdg-desktop-portal xdg-desktop-portal-hyprland
|
||
|
'';
|
||
|
};
|
||
|
in
|
||
|
{
|
||
|
|
||
|
imports = [
|
||
|
../../modules/greetd.nix
|
||
|
];
|
||
|
|
||
|
environment.systemPackages = with pkgs; [
|
||
|
dbus-hyprland-environment
|
||
|
xdg-user-dirs
|
||
|
wayland
|
||
|
grim
|
||
|
slurp
|
||
|
swappy
|
||
|
cliphist
|
||
|
wl-clipboard
|
||
|
wlogout
|
||
|
wlr-randr
|
||
|
wdisplays
|
||
|
kanshi
|
||
|
glib
|
||
|
];
|
||
|
|
||
|
services.dbus.enable = true;
|
||
|
xdg.portal = {
|
||
|
enable = true;
|
||
|
# wlr.enable = true;
|
||
|
extraPortals = with pkgs; [
|
||
|
xdg-desktop-portal-hyprland
|
||
|
xdg-desktop-portal
|
||
|
];
|
||
|
};
|
||
|
|
||
|
programs.xwayland.enable = true;
|
||
|
|
||
|
environment.sessionVariables = rec {
|
||
|
GBM_BACKEND = "amd-drm";
|
||
|
__GL_GSYNC_ALLOWED = "0";
|
||
|
__GL_VRR_ALLOWED = "0";
|
||
|
WLR_DRM_NO_ATOMIC = "1";
|
||
|
__GLX_VENDOR_LIBRARY_NAME = "amd";
|
||
|
_JAVA_AWT_WM_NONREPARENTING = "1";
|
||
|
QT_QPA_PLATFORM = "wayland";
|
||
|
QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
|
||
|
GDK_BACKEND = "wayland";
|
||
|
WLR_NO_HARDWARE_CURSORS = "1";
|
||
|
MOZ_ENABLE_WAYLAND = "1";
|
||
|
WLR_BACKEND = "vulkan";
|
||
|
WLR_RENDERER = "vulkan";
|
||
|
XCURSOR_SIZE = "24";
|
||
|
NIXOS_OZONE_WL = "1";
|
||
|
PATH = [
|
||
|
"$HOME/.local/bin/:$PATH"
|
||
|
];
|
||
|
XDG_CACHE_HOME = "$HOME/.cache";
|
||
|
XDG_CONFIG_HOME = "$HOME/.config";
|
||
|
XDG_DATA_HOME = "$HOME/.local/share";
|
||
|
XDG_STATE_HOME = "$HOME/.local/state";
|
||
|
XDG_BIN_HOME = "$HOME/.local/bin";
|
||
|
};
|
||
|
|
||
|
environment.etc."greetd/environments".text = ''
|
||
|
Hyprland
|
||
|
'';
|
||
|
|
||
|
environment.etc."xdg/user-dirs.defaults".text = ''
|
||
|
XDG_DESKTOP_DIR="$HOME/desktop"
|
||
|
XDG_DOCUMENTS_DIR="$HOME/files"
|
||
|
XDG_DOWNLOAD_DIR="$HOME/download"
|
||
|
XDG_MUSIC_DIR="$HOME/media/music"
|
||
|
XDG_PICTURES_DIR="$HOME/media/photo"
|
||
|
XDG_PUBLICSHARE_DIR="$HOME/pub"
|
||
|
XDG_TEMPLATES_DIR="$HOME/media/templates"
|
||
|
XDG_VIDEOS_DIR="$HOME/media/video"
|
||
|
'';
|
||
|
|
||
|
}
|