mirror of
https://github.com/Feliix42/dotfiles.git
synced 2024-11-22 22:16:30 +00:00
Fix GTK theme mess, use greetd
This commit is contained in:
parent
264b61f83b
commit
3faaec2655
4 changed files with 119 additions and 22 deletions
|
@ -221,13 +221,14 @@ in
|
||||||
openconnect
|
openconnect
|
||||||
];
|
];
|
||||||
|
|
||||||
|
services.dbus.enable = true;
|
||||||
xdg.portal = {
|
xdg.portal = {
|
||||||
enable = true;
|
enable = true;
|
||||||
gtkUsePortal = true;
|
gtkUsePortal = true;
|
||||||
extraPortals = with pkgs; [
|
extraPortals = with pkgs; [
|
||||||
xdg-desktop-portal-wlr
|
xdg-desktop-portal-wlr
|
||||||
xdg-desktop-portal-kde
|
xdg-desktop-portal-kde
|
||||||
#xdg-desktop-portal-gtk
|
xdg-desktop-portal-gtk
|
||||||
];
|
];
|
||||||
wlr = {
|
wlr = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
|
@ -1,12 +1,34 @@
|
||||||
{ pkgs, ... }:
|
{ pkgs, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
services.xserver.desktopManager.plasma5 = {
|
services.xserver = {
|
||||||
|
enable = false;
|
||||||
|
autorun = false;
|
||||||
|
|
||||||
|
desktopManager.plasma5 = {
|
||||||
enable = true;
|
enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# use startx to run plasma
|
||||||
|
displayManager.startx.enable = true;
|
||||||
|
|
||||||
|
# I'd like a log please
|
||||||
|
logFile = "/var/log/Xorg.0.log";
|
||||||
|
|
||||||
|
# graphics
|
||||||
|
useGlamor = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
environment.etc."X11/xinit/xinitrc".text = ''
|
||||||
|
export DESKTOP_SESSION=plasma
|
||||||
|
exec ${pkgs.libsForQt5.plasma-workspace}/bin/startplasma-x11
|
||||||
|
'';
|
||||||
|
|
||||||
#environment.variables = {
|
#environment.variables = {
|
||||||
#GDK_SCALE = "2";
|
#GDK_SCALE = "2";
|
||||||
#GDK_DPI_SCALE = "0.5";
|
#GDK_DPI_SCALE = "0.5";
|
||||||
#_JAVA_OPTIONS = "-Dsun.java2d.uiScale=2";
|
#_JAVA_OPTIONS = "-Dsun.java2d.uiScale=2";
|
||||||
#};
|
#};
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,49 @@
|
||||||
{ pkgs, ... }:
|
{ pkgs, ... }:
|
||||||
|
|
||||||
|
let
|
||||||
|
# currently, there is some friction between sway and gtk:
|
||||||
|
# https://github.com/swaywm/sway/wiki/GTK-3-settings-on-Wayland
|
||||||
|
# the suggested way to set gtk settings is with gsettings
|
||||||
|
# for gsettings to work, we need to tell it where the schemas are
|
||||||
|
# using the XDG_DATA_DIR environment variable
|
||||||
|
# run at the end of sway config
|
||||||
|
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"
|
||||||
|
gsettings set $gnome_schema icon-theme "Paper"
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
greetstyleWrapper = pkgs.writeText "gtkgreet.css" ''
|
||||||
|
window {
|
||||||
|
background-image: url("file://${pkgs.nixos-artwork.wallpapers.stripes-logo.gnomeFilePath}");
|
||||||
|
background-size: cover;
|
||||||
|
background-position: center;
|
||||||
|
color: #dddddd;
|
||||||
|
}
|
||||||
|
'';
|
||||||
|
|
||||||
|
# configures the sway wrapper for the GTK greeter
|
||||||
|
gtkgreetSwayWrapper = pkgs.writeText "gtkgreet-sway" ''
|
||||||
|
# `-l` activates layer-shell mode. Notice that `swaymsg exit` will run after gtkgreet.
|
||||||
|
exec configure-gtk
|
||||||
|
exec "${pkgs.greetd.gtkgreet}/bin/gtkgreet -l -s ${greetstyleWrapper}; swaymsg exit"
|
||||||
|
bindsym Mod4+shift+q exec swaynag \
|
||||||
|
-t warning \
|
||||||
|
-m 'What do you want to do?' \
|
||||||
|
-b 'Poweroff' 'systemctl poweroff' \
|
||||||
|
-b 'Reboot' 'systemctl reboot'
|
||||||
|
include /etc/sway/config.d/*
|
||||||
|
'';
|
||||||
|
in
|
||||||
{
|
{
|
||||||
programs.sway = {
|
programs.sway = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
@ -16,6 +60,11 @@
|
||||||
kanshi # replacement for autorandr
|
kanshi # replacement for autorandr
|
||||||
sway-contrib.grimshot
|
sway-contrib.grimshot
|
||||||
imv # image viewer
|
imv # image viewer
|
||||||
|
glib # gsettings
|
||||||
|
configure-gtk
|
||||||
|
#zafiro-icons
|
||||||
|
dracula-theme
|
||||||
|
paper-icon-theme
|
||||||
];
|
];
|
||||||
extraSessionCommands = ''
|
extraSessionCommands = ''
|
||||||
export SDL_VIDEODRIVER=wayland
|
export SDL_VIDEODRIVER=wayland
|
||||||
|
@ -43,27 +92,49 @@
|
||||||
|
|
||||||
|
|
||||||
# ------------ Display Manager ----------------------------------------------
|
# ------------ Display Manager ----------------------------------------------
|
||||||
services.xserver = {
|
services.greetd = {
|
||||||
# under protest
|
|
||||||
enable = true;
|
enable = true;
|
||||||
|
settings = {
|
||||||
# graphics
|
default_session = {
|
||||||
#videoDrivers = [ "modesetting" ];
|
command = "${pkgs.sway}/bin/sway --config ${gtkgreetSwayWrapper}";
|
||||||
useGlamor = true;
|
|
||||||
|
|
||||||
# use sddm for authentication
|
|
||||||
displayManager.sddm.enable = true;
|
|
||||||
};
|
};
|
||||||
#services.xserver.videoDrivers = [
|
};
|
||||||
#"intel"
|
};
|
||||||
#"amdgpu"
|
|
||||||
#"radeon"
|
environment.etc."greetd/environments".text = ''
|
||||||
#"nouveau"
|
${pkgs.sway}/bin/sway
|
||||||
#"modesetting"
|
startx
|
||||||
#"fbdev"
|
${pkgs.libsForQt5.plasma-workspace}/bin/startplasma-wayland
|
||||||
#];
|
${pkgs.fish}/bin/fish
|
||||||
#services.xserver.displayManager.gdm = {
|
'';
|
||||||
|
|
||||||
|
#environment.etc."greetd/gtkgreet.css".text = ''
|
||||||
|
#window {
|
||||||
|
#background-image: url("file://${pkgs.nixos-artwork.wallpapers.stripes-logo.gnomeFilePath}");
|
||||||
|
#background-size: cover;
|
||||||
|
#background-position: center;
|
||||||
|
#}
|
||||||
|
#'';
|
||||||
|
|
||||||
|
#services.xserver = {
|
||||||
|
## under protest
|
||||||
#enable = true;
|
#enable = true;
|
||||||
#wayland = true;
|
|
||||||
|
## graphics
|
||||||
|
##videoDrivers = [ "modesetting" ];
|
||||||
|
#useGlamor = true;
|
||||||
|
|
||||||
|
## use sddm for authentication
|
||||||
|
##displayManager.sddm.enable = true;
|
||||||
|
#displayManager.lightdm = {
|
||||||
|
#enable = true;
|
||||||
|
#greeters.enso = {
|
||||||
|
#enable = true;
|
||||||
|
#theme = {
|
||||||
|
#name = "Dracula";
|
||||||
|
#package = pkgs.dracula-theme;
|
||||||
|
#};
|
||||||
|
#};
|
||||||
|
#};
|
||||||
#};
|
#};
|
||||||
}
|
}
|
||||||
|
|
|
@ -39,6 +39,9 @@ exec systemctl --user import-environment XDG_SESSION_TYPE XDG_CURRENT_DESKTOP
|
||||||
exec dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP=sway
|
exec dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP=sway
|
||||||
#exec dbus-update-activation-environment WAYLAND_DISPLAY
|
#exec dbus-update-activation-environment WAYLAND_DISPLAY
|
||||||
|
|
||||||
|
# Set up GTK properly
|
||||||
|
exec configure-gtk
|
||||||
|
|
||||||
### Idle configuration
|
### Idle configuration
|
||||||
#
|
#
|
||||||
# Example configuration:
|
# Example configuration:
|
||||||
|
|
Loading…
Reference in a new issue