65 lines
1.5 KiB
Nix
65 lines
1.5 KiB
Nix
{ 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;
|
|
|
|
}
|