This commit is contained in:
Lucy Hochkamp 2025-09-10 15:33:48 +02:00
parent c999ed6520
commit 35c8ebb56a
No known key found for this signature in database
20 changed files with 670 additions and 405 deletions

View file

@ -5,6 +5,7 @@
lib,
...
}:
with lib;
let
cfg = config.xyno.desktop.niri;
floatingAppids = [
@ -14,7 +15,7 @@ let
"org.gnome.NautilusPreviewer"
"io.github.Qalculate.qalculate-qt"
];
matchFloat = lib.concatStringsSep "\n" (
matchFloat = concatStringsSep "\n" (
map (x: ''
window-rule {
match app-id="${x}"
@ -25,43 +26,44 @@ let
);
in
{
options.xyno.desktop.niri.enable = lib.mkEnableOption "enable the niri desktop with xynos config";
options.xyno.desktop.niri.launcher = lib.mkOption { type = lib.types.str; };
options.xyno.desktop.niri.term = lib.mkOption { type = lib.types.str; };
options.xyno.desktop.niri.extraConfig = lib.mkOption { type = lib.types.lines; };
config = lib.mkIf cfg.enable {
options.xyno.desktop.niri.enable = mkEnableOption "enable the niri desktop with xynos config";
options.xyno.desktop.niri.launcher = mkOption { type = types.str; };
options.xyno.desktop.niri.term = mkOption { type = types.str; };
options.xyno.desktop.niri.extraConfig = mkOption { type = types.lines; };
config = mkIf cfg.enable {
xyno.desktop = {
foot.enable = lib.mkDefault true;
fuzzel.enable = lib.mkDefault true;
mako.enable = lib.mkDefault true;
shikane.enable = lib.mkDefault true;
swayidle.enable = lib.mkDefault true;
waybar.enable = lib.mkDefault true;
wpaperd.enable = lib.mkDefault true;
foot.enable = mkDefault true;
fuzzel.enable = mkDefault true;
mako.enable = mkDefault true;
shikane.enable = mkDefault true;
swayidle.enable = mkDefault true;
waybar.enable = mkDefault true;
wpaperd.enable = mkDefault true;
};
nixpkgs.overlays = [
inputs.niri.overlays.default
];
services.displayManager.defaultSession = mkDefault "niri";
home-manager.users.${config.xyno.system.user.name} =
lib.mkIf config.xyno.presets.home-manager.enable
mkIf config.xyno.presets.home-manager.enable
(
{ ... }:
{
xyno.dark-theme.enable = true;
home.file.".config/xdg-desktop-portal-termfilechooser/config".text = ''
[filechooser]
cmd=${pkgs.xdg-desktop-portal-termfilechooser}/share/xdg-desktop-portal-termfilechooser/yazi-wrapper.sh
default_dir=$HOME
env=TERMCMD=footclient --app-id floating-alacritty
open_mode = suggested
save_mode = suggested
'';
# home.file.".config/xdg-desktop-portal-termfilechooser/config".text = ''
# [filechooser]
# cmd=${pkgs.xdg-desktop-portal-termfilechooser}/share/xdg-desktop-portal-termfilechooser/yazi-wrapper.sh
# default_dir=$HOME
# env=TERMCMD=footclient --app-id floating-alacritty
# open_mode = suggested
# save_mode = suggested
# '';
}
);
xdg.portal = {
extraPortals = [
pkgs.xdg-desktop-portal-termfilechooser
# pkgs.xdg-desktop-portal-termfilechooser
];
config.niri.default = [
"gnome"