Untangle the target mess a little bit
This commit is contained in:
parent
d7a35463fe
commit
64f19c2f34
|
@ -274,7 +274,7 @@ in
|
||||||
Unit.After = [ "graphical-session-pre.target" ];
|
Unit.After = [ "graphical-session-pre.target" ];
|
||||||
Unit.Before = [ "graphical-session.target" ];
|
Unit.Before = [ "graphical-session.target" ];
|
||||||
Unit.BindsTo = [ "graphical-session.target" ];
|
Unit.BindsTo = [ "graphical-session.target" ];
|
||||||
Install.WantedBy = [ "plasma-workspace.target" ];
|
Install.WantedBy = [ "graphical-session.target" ];
|
||||||
};
|
};
|
||||||
# XWayland target
|
# XWayland target
|
||||||
xwayland = {
|
xwayland = {
|
||||||
|
@ -282,7 +282,7 @@ in
|
||||||
Unit.After = [ "graphical-session-pre.target" ];
|
Unit.After = [ "graphical-session-pre.target" ];
|
||||||
Unit.Before = [ "graphical-session.target" ];
|
Unit.Before = [ "graphical-session.target" ];
|
||||||
Unit.BindsTo = [ "graphical-session.target" ];
|
Unit.BindsTo = [ "graphical-session.target" ];
|
||||||
Install.WantedBy = [ "plasma-workspace.target" ];
|
Install.WantedBy = [ "graphical-session.target" ];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -10,7 +10,7 @@ let
|
||||||
|
|
||||||
wallpaper = config.linux.graphical.wallpaper;
|
wallpaper = config.linux.graphical.wallpaper;
|
||||||
|
|
||||||
xwayland-display = ":12";
|
xwayland-display = ":0";
|
||||||
|
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
|
@ -67,22 +67,10 @@ in
|
||||||
"10" = { name = "🎲 misc"; };
|
"10" = { name = "🎲 misc"; };
|
||||||
"99" = { name = "📧 Email"; };
|
"99" = { name = "📧 Email"; };
|
||||||
};
|
};
|
||||||
# systemd.user.services.niri = lib.mkIf cfg.enable {
|
systemd.user.services.swaync.Install.WantedBy = [ "niri.service" ];
|
||||||
# Unit.Wants = [ "tray.target" "xwayland.target" ];
|
systemd.user.services.swaync.Unit.After = [ "niri.service" ];
|
||||||
# };
|
systemd.user.targets.tray.Unit.After = [ "niri.service" ];
|
||||||
systemd.user.services.niri = lib.mkIf cfg.enable {
|
systemd.user.targets.xwayland.Unit.After = [ "niri.service" ];
|
||||||
Unit = {
|
|
||||||
Description = "A scrollable-tiling Wayland compositor";
|
|
||||||
BindsTo = [ "graphical-session.target" ];
|
|
||||||
Before = [ "graphical-session.target" "tray.target" "swaync.service" "xdg-desktop-autostart.target" ];
|
|
||||||
Wants = [ "graphical-session-pre.target" "swaync.service" "xdg-desktop-autostart.target" ];
|
|
||||||
After = [ "graphical-session-pre.target" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
Service.Slice = "session.slice";
|
|
||||||
Service.Type = "notify";
|
|
||||||
Service.ExecStart = "${lib.getExe config.programs.niri.package} --session";
|
|
||||||
};
|
|
||||||
|
|
||||||
# xwayland-satellite
|
# xwayland-satellite
|
||||||
systemd.user.services.niri-xwayland-satellite = lib.mkIf cfg.enable {
|
systemd.user.services.niri-xwayland-satellite = lib.mkIf cfg.enable {
|
||||||
|
@ -92,8 +80,9 @@ in
|
||||||
Before = [ "xwayland.target" "xdg-desktop-autostart.target" ];
|
Before = [ "xwayland.target" "xdg-desktop-autostart.target" ];
|
||||||
After = [ "niri.service" ];
|
After = [ "niri.service" ];
|
||||||
};
|
};
|
||||||
Install.RequiredBy = [ "niri.service" ];
|
Install.UpheldBy = [ "niri.service" ];
|
||||||
Service.Slice = "session.slice";
|
Service.Slice = "session.slice";
|
||||||
|
Service.Type = "notify";
|
||||||
Service.ExecStart = "${lib.getExe pkgs.xwayland-satellite} ${xwayland-display}";
|
Service.ExecStart = "${lib.getExe pkgs.xwayland-satellite} ${xwayland-display}";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -143,8 +132,6 @@ in
|
||||||
{ command = [ (lib.getExe pkgs.swaybg) "-i" "${wallpaper}" "-m" "fill" ]; }
|
{ command = [ (lib.getExe pkgs.swaybg) "-i" "${wallpaper}" "-m" "fill" ]; }
|
||||||
# Waybar
|
# Waybar
|
||||||
{ command = [ "systemctl" "--user" "start" "xdg-desktop-portal-gtk.service" "xdg-desktop-portal.service" ]; }
|
{ command = [ "systemctl" "--user" "start" "xdg-desktop-portal-gtk.service" "xdg-desktop-portal.service" ]; }
|
||||||
# Export XWayland DISPLAY
|
|
||||||
{ command = [ "sh" "-c" "systemctl --user set-environment DISPLAY=${xwayland-display} && systemctl --user start xwayland.target" ]; }
|
|
||||||
];
|
];
|
||||||
|
|
||||||
layout = {
|
layout = {
|
||||||
|
|
|
@ -42,10 +42,6 @@ in
|
||||||
default = "";
|
default = "";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
config.systemd.user.services.waybar = lib.mkIf cfg.enable {
|
|
||||||
Unit.BindsTo = [ "tray.target" ];
|
|
||||||
Unit.After = [ "tray.target" ];
|
|
||||||
};
|
|
||||||
config.programs.waybar =
|
config.programs.waybar =
|
||||||
let
|
let
|
||||||
barWith = { showMedia ? true, showConnectivity ? true, extraSettings ? { }, ... }: lib.mkMerge ([{
|
barWith = { showMedia ? true, showConnectivity ? true, extraSettings ? { }, ... }: lib.mkMerge ([{
|
||||||
|
@ -260,7 +256,7 @@ in
|
||||||
lib.mkIf cfg.enable {
|
lib.mkIf cfg.enable {
|
||||||
enable = true;
|
enable = true;
|
||||||
systemd.enable = true;
|
systemd.enable = true;
|
||||||
systemd.target = "graphical-session.target";
|
systemd.target = "tray.target";
|
||||||
settings = cfg.makeBars barWith;
|
settings = cfg.makeBars barWith;
|
||||||
style = ''
|
style = ''
|
||||||
* {
|
* {
|
||||||
|
|
|
@ -46,6 +46,10 @@
|
||||||
tap = "enabled";
|
tap = "enabled";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
programs.my-niri.enable = true;
|
||||||
|
programs.niri.settings = {
|
||||||
|
input.keyboard.xkb.options = "ctrl:swapcaps";
|
||||||
|
};
|
||||||
programs.my-waybar.extraSettings =
|
programs.my-waybar.extraSettings =
|
||||||
let
|
let
|
||||||
change-mode = pkgs.writeScript "change-mode" ''
|
change-mode = pkgs.writeScript "change-mode" ''
|
||||||
|
|
Loading…
Reference in a new issue