This commit is contained in:
Lucy Hochkamp 2025-04-11 15:34:25 +02:00
parent 44307a3f6f
commit b69b80c93f
No known key found for this signature in database
13 changed files with 237 additions and 123 deletions

View file

@ -22,6 +22,7 @@ in
# systemd.user.services.foot.wantedBy = lib.mkForce [ cfg.wantedBy ];
# systemd.user.sockets.foot.wantedBy = lib.mkForce [ cfg.wantedBy ];
systemd.packages = [ cfg.package ];
xyno.desktop.niri.term = lib.mkDefault "footclient";
programs.foot = {
enable = true;
package = cfg.package;

View file

@ -0,0 +1,49 @@
{
pkgs,
config,
lib,
...
}:
let
cfg = config.xyno.desktop.fuzzel;
in
{
options.xyno.desktop.fuzzel.enable = lib.mkEnableOption "enable fuzzel launcher";
options.xyno.desktop.fuzzel.wantedBy = lib.mkOption {
type = lib.types.str;
default = "niri.service";
};
options.xyno.desktop.fuzzel.package = lib.mkOption {
type = lib.types.package;
default = pkgs.fuzzel;
};
config = lib.mkIf cfg.enable {
environment.systemPackages = [ cfg.package ];
xyno.desktop.niri.launcher = lib.mkDefault "fuzzel";
environment.etc."xdg/fuzzel/fuzzel.ini".text = ''
font=JetBrains Mono Nerd Font:size=10
dpi-aware=yes
# prompt=>
icon-theme=hicolor
icons-enabled=yes
match-mode=fuzzy
launch-prefix=systemd-run --user --scope
width=80
horizontal-pad=10
vertical-pad=10
inner-pad=10
line-height=18
[colors]
background=000000AA
text=efefefef
match=fabd2fff
selection-match=fabd2fff
selection=666666ff
selection-text=efefefef
border=33eeffee
[border]
width=2
radius=3
'';
};
}

View file

@ -25,6 +25,7 @@ in
default = pkgs.mako;
};
config = lib.mkIf cfg.enable {
environment.systemPackages = [ cfg.package pkgs.libnotify ];
systemd.user.services.mako = {
unitConfig.PartOf = "graphical-session.target";
unitConfig.After = "graphical-session.target";

View file

@ -24,14 +24,17 @@ 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; };
config = lib.mkIf cfg.enable {
xyno.desktop = {
waybar.enable = lib.mkDefault true;
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 = lib.mkDefault true;
};
home-manager.users.${config.xyno.system.user.name} =
lib.mkIf config.xyno.presets.home-manager.enable
@ -47,35 +50,6 @@ in
# wlr.enable = true;
# };
programs.niri.enable = true;
environment.systemPackages = with pkgs; [
fuzzel
libnotify
];
environment.etc."xdg/fuzzel/fuzzel.ini".text = ''
font=JetBrains Mono Nerd Font:size=10
dpi-aware=yes
# prompt=>
icon-theme=hicolor
icons-enabled=yes
match-mode=fuzzy
launch-prefix=systemd-run --user --scope
width=80
horizontal-pad=10
vertical-pad=10
inner-pad=10
line-height=18
[colors]
background=000000AA
text=efefefef
match=fabd2fff
selection-match=fabd2fff
selection=666666ff
selection-text=efefefef
border=33eeffee
[border]
width=2
radius=3
'';
environment.etc."niri/config.kdl".mode = "444"; # copy file so niri detects changes
environment.etc."niri/config.kdl".text = ''
// xwayland
@ -85,10 +59,10 @@ in
}
// keybinds
binds {
Mod+D { spawn "fuzzel"; }
Mod+D { spawn "${cfg.launcher}"; }
Mod+Alt+L { spawn "lock"; }
Mod+T { spawn "footclient"; }
Mod+Y { spawn "footclient yazi"; }
Mod+T { spawn "${cfg.term}"; }
Mod+Y { spawn "${cfg.term} yazi"; }
Mod+P { spawn "keepassxc"; }
XF86AudioRaiseVolume allow-when-locked=true { spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.1+"; }
XF86AudioLowerVolume allow-when-locked=true { spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.1-"; }
@ -375,7 +349,7 @@ in
// Place steam notifications in the bottom right
window-rule {
match app-id="steam" title="^notificationtoasts_[\\d]+_desktop$"
default-floating-position x=o y=o relative-to="bottom-right"
default-floating-position x=0 y=0 relative-to="bottom-right"
}
input {

View file

@ -424,7 +424,7 @@ in
};
options.xyno.desktop.waybar.package = lib.mkOption {
type = lib.types.package;
default = pkgs.unstable.waybar;
default = pkgs.unstable.waybar.override { hyprlandSupport = false; }; # we don't use it and hyprland seems to not build on current master
};
options.xyno.desktop.waybar.mode = lib.mkOption {
type = lib.types.str;

View file

@ -5,6 +5,7 @@
./desktop/common-programs.nix
./desktop/fcitx5.nix
./desktop/foot.nix
./desktop/fuzzel.nix
./desktop/mako.nix
./desktop/mate-polkit.nix
./desktop/niri.nix

View file

@ -16,6 +16,14 @@ in
security.sudo.enable = false;
nix.settings = {
substituters = [
"https://cache.lix.systems"
"https://helix.cachix.org"
];
trusted-public-keys = [
"cache.lix.systems:aBnZUw8zA7H35Cz2RyKFVs3H4PlGTLawyY5KRbvJR8o="
"helix.cachix.org-1:ejp9KQpR1FBI2onstMQ34yogDm4OgU2ru6lIwPvuCVs="
];
trusted-users = lib.mkDefault [
"root"
"@wheel"
@ -62,6 +70,7 @@ in
ripgrep
pv
yt-dlp
moar
helix
lm_sensors
dig
@ -70,9 +79,10 @@ in
programs.mosh.enable = true;
environment.variables.EDITOR = "hx";
environment.variables.VISUAL = "hx";
environment.variables.PAGER= "moar";
environment.shellAliases = {
l = "ls -al";
l = "ls -alh";
n = "yazi";
gc = "git commit -v";
gpl = "git pull";

View file

@ -51,18 +51,22 @@ in
services.gnome.gnome-settings-daemon.enable = true;
services.gvfs.enable = true;
xdg.terminal-exec = {
enable = true;
settings.default = [ "foot.desktop" ];
};
environment.sessionVariables.GTK_USE_PORTAL = "1";
home-manager.users.${config.xyno.system.user.name} =
{ pkgs, ... }:
{
xdg.desktopEntries.nemo = {
name = "Nemo";
exec = "${pkgs.nemo-with-extensions}/bin/nemo";
};
xdg.mimeApps = {
enable = true;
defaultApplications = {
"inode/directory" = [ "nemo.desktop" ];
"application/x-gnome-saved-search" = [ "nemo.desktop" ];
"x-scheme-handler/mailto" = [ "aerc.desktop" ];
"inode/directory" = [ "org.gnome.Nautilus.desktop" ];
"application/x-gnome-saved-search" = [ "org.gnome.Nautilus.desktop" ];
"x-scheme-handler/http" = "userapp-Zen-D2P132.desktop";
"x-scheme-handler/https" = "userapp-Zen-D2P132.desktop";
"x-scheme-handler/chrome" = "userapp-Zen-D2P132.desktop";
@ -80,7 +84,6 @@ in
};
environment.systemPackages = with pkgs; [
nemo-with-extensions
kdePackages.breeze-gtk
kdePackages.breeze.qt5
kdePackages.breeze