feat(nix): add salut service and nm-applet

This commit is contained in:
steveej 2023-05-23 19:02:35 +02:00
parent 6970b8c7d2
commit e2abe10c28
5 changed files with 50 additions and 29 deletions

View file

@ -2,7 +2,7 @@
in { in {
mkSimpleTrayService = {execStart}: { mkSimpleTrayService = {execStart}: {
Unit = { Unit = {
Description = "pasystray applet"; Description = "";
After = ["graphical-session-pre.target"]; After = ["graphical-session-pre.target"];
PartOf = ["graphical-session.target"]; PartOf = ["graphical-session.target"];
}; };

View file

@ -20,27 +20,19 @@ in {
]; ];
services = { services = {
blueman-applet.enable = true; # TODO: doesn't work with 2 screens
flameshot.enable = true; # flameshot.enable = true;
}; };
home.packages = [ home.packages = [
pkgs.swayidle pkgs.swayidle
pkgs.swaylock pkgs.swaylock
packages'.yofi
pkgs.fuzzel
# required by any bar that has a tray plugin
pkgs.libappindicator-gtk3
## themes ## themes
pkgs.gnome.adwaita-icon-theme pkgs.gnome.adwaita-icon-theme
pkgs.hicolor-icon-theme pkgs.hicolor-icon-theme
pkgs.gnome-icon-theme pkgs.gnome-icon-theme
## fonts ## fonts
pkgs.dejavu_fonts # just a basic good fond pkgs.dejavu_fonts # just a basic good fond
pkgs.font-awesome_5 # needed by i3status-rust pkgs.font-awesome_5 # needed by i3status-rust
@ -49,7 +41,6 @@ in {
pkgs.roboto pkgs.roboto
pkgs.ttf_bitstream_vera pkgs.ttf_bitstream_vera
# from the wiki
pkgs.noto-fonts pkgs.noto-fonts
pkgs.noto-fonts-cjk pkgs.noto-fonts-cjk
pkgs.noto-fonts-cjk-sans pkgs.noto-fonts-cjk-sans
@ -66,13 +57,14 @@ in {
pkgs.dina-font pkgs.dina-font
pkgs.monoid pkgs.monoid
pkgs.hermit pkgs.hermit
# found on colemickens' repo
# by colemickens
pkgs.gelasio # metric-compatible with Georgia pkgs.gelasio # metric-compatible with Georgia
pkgs.powerline-symbols pkgs.powerline-symbols
pkgs.iosevka-comfy.comfy-fixed pkgs.iosevka-comfy.comfy-fixed
# experimental stuff
packages'.yofi
pkgs.fuzzel
]; ];
wayland.windowManager.sway = { wayland.windowManager.sway = {
@ -89,9 +81,9 @@ in {
input = { input = {
"type:keyboard" = { "type:keyboard" = {
xkb_layout = "us"; xkb_layout = config.home.keyboard.layout;
xkb_variant = "altgr-intl"; xkb_variant = config.home.keyboard.variant;
xkb_options = "nodeadkeys"; xkb_options = builtins.concatStringsSep "," config.home.keyboard.options;
}; };
"type:touchpad" = { "type:touchpad" = {

View file

@ -20,7 +20,15 @@ in {
# pinentry-program "${wayprompt}/bin/pinentry-wayprompt" # pinentry-program "${wayprompt}/bin/pinentry-wayprompt"
# ''; # '';
services = {
blueman-applet.enable = true;
network-manager-applet.enable = true;
};
home.packages = with pkgs; [ home.packages = with pkgs; [
# required by network-manager-applet
pkgs.networkmanagerapplet
wlr-randr wlr-randr
wayout wayout
wl-clipboard wl-clipboard

View file

@ -4,14 +4,39 @@
lib, lib,
packages', packages',
... ...
}: { }:
# useful testing command:
# for i in `seq 0 10`; do nix shell nixpkgs#libnotify --command notify-send notifiiiiiii "$i"; sleep 1; done
let
inherit (import ../lib.nix {}) mkSimpleTrayService;
in
{
home.packages = [ home.packages = [
packages'.salut packages'.salut
]; ];
home.file.".config/salut/config.ini" = { xdg.configFile."salut/config.ini" = {
enable = true; enable = true;
text = '' text = ''
[notifications]
timeout = 5
[window]
auto-hide = true
anchor = bottom
[mode]
single = true
do-not-disturb = false
[style]
preference = dark
''; '';
onChange = "${pkgs.systemd}/bin/systemctl --user restart salut";
};
systemd.user.services.salut = mkSimpleTrayService {
execStart = "${packages'.salut}/bin/salut";
}; };
} }

View file

@ -1,6 +1,11 @@
{ pkgs, config, repoFlake, ... }: { pkgs, config, repoFlake, ... }:
{ {
home.packages = [
# required by any bar that has a tray plugin
pkgs.libappindicator-gtk3
];
programs.waybar = { programs.waybar = {
enable = true; enable = true;
package = repoFlake.inputs.nixpkgs-wayland.outputs.packages.${pkgs.stdenv.hostPlatform.system}.waybar; package = repoFlake.inputs.nixpkgs-wayland.outputs.packages.${pkgs.stdenv.hostPlatform.system}.waybar;
@ -67,15 +72,6 @@
}; };
"clock#date".format = "{:%d %b %Y}"; "clock#date".format = "{:%d %b %Y}";
clock.format = "{:%H:%M %p}"; clock.format = "{:%H:%M %p}";
# "custom/hello-from-waybar" = {
# format = "hello {}";
# max-length = 40;
# interval = "once";
# exec = pkgs.writeShellScript "hello-from-waybar" ''
# echo "from within waybar"
# '';
# };
}; };
}; };
}; };