1
0
mirror of https://github.com/kmein/niveum synced 2026-03-23 13:21:06 +01:00

chore: update, spotify, notify

This commit is contained in:
Kierán Meinhardt
2020-05-20 20:45:00 +02:00
parent a59be3f398
commit 9a33c1a106
5 changed files with 41 additions and 16 deletions

View File

@@ -1,7 +1,7 @@
{ {
"url": "https://github.com/NixOS/nixpkgs-channels.git", "url": "https://github.com/NixOS/nixpkgs-channels.git",
"rev": "22a3bf9fb9edad917fb6cd1066d58b5e426ee975", "rev": "0f5ce2fac0c726036ca69a5524c59a49e2973dd4",
"date": "2020-04-21T08:56:52+02:00", "date": "2020-05-19T01:31:20+02:00",
"sha256": "089hqg2r2ar5piw9q5z3iv0qbmfjc4rl5wkx9z16aqnlras72zsa", "sha256": "0nkk492aa7pr0d30vv1aw192wc16wpa1j02925pldc09s9m9i0r3",
"fetchSubmodules": false "fetchSubmodules": false
} }

View File

@@ -1,7 +1,7 @@
{ {
"url": "https://github.com/NixOS/nixpkgs-channels.git", "url": "https://github.com/NixOS/nixpkgs-channels.git",
"rev": "1e90c46c2d98f9391df79954a74d14f263cad729", "rev": "82b5f87fcc710a99c47c5ffe441589807a8202af",
"date": "2020-04-20T23:47:17-04:00", "date": "2020-05-19T09:19:41+02:00",
"sha256": "1xs0lgh3q1hbrj0lbpy3czw41cv6vxx9kdf2npwc58z8xq3sdqmh", "sha256": "0wz07gzapdj95h9gf0rdc2ywgd7fnaivnf4vhwyh5gx24dblg7q8",
"fetchSubmodules": false "fetchSubmodules": false
} }

View File

@@ -27,7 +27,7 @@ let
if [ -n "$1" ]; then if [ -n "$1" ]; then
xdotool key Shift+Insert xdotool key Shift+Insert
else else
notify-send "'$chosen' copied to clipboard." & notify-send --app-name="emoji-menu" "'$chosen' copied to clipboard." &
fi fi
''; '';

View File

@@ -7,15 +7,40 @@ in
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
spotify spotify
spotify-tui spotify-tui
playerctl
]; ];
services.spotifyd = { # https://github.com/NixOS/nixpkgs/blob/master/nixos/modules/services/audio/spotifyd.nix
enable = true; systemd.user.services.spotifyd =
config = toTOML { let
spotifyd = pkgs.unstable.spotifyd.override {
withMpris = true;
withPulseAudio = true;
inherit (pkgs) libpulseaudio dbus;
};
spotifydConf = pkgs.writeText "spotifyd.conf" (lib.generators.toINI {} {
global = { global = {
username = fileContents <shared-secrets/spotify/username>; username = fileContents <shared-secrets/spotify/username>;
password_cmd = "${pkgs.pass}/bin/pass shared/spotify/password"; password = fileContents <shared-secrets/spotify/password>;
backend = "pulseaudio";
on_song_change_hook = toString (pkgs.writers.writeDash "songinfo" ''
PATH=$PATH:${lib.makeBinPath [pkgs.playerctl pkgs.gawk pkgs.libnotify]}
metadata=$(playerctl metadata --player spotifyd)
title=$(echo "$metadata" | awk '/xesam:title\s/ { print substr($0, index($0, $3)) }')
artist=$(echo "$metadata" | awk '/xesam:artist\s/ { print substr($0, index($0, $3)) }' | paste --serial --delimiters "/")
album=$(echo "$metadata" | awk '/xesam:album\s/ { print substr($0, index($0, $3)) }')
notify-send --app-name=" Spotify" "$title" "$album $artist"
'');
}; };
});
in {
wantedBy = [ "multi-user.target" ];
after = [ "network-online.target" "sound.target" ];
description = "spotifyd, a Spotify playing daemon";
serviceConfig = {
ExecStart = "${spotifyd}/bin/spotifyd --no-daemon --config-path ${spotifydConf}";
Restart = "always";
RestartSec = 12;
}; };
}; };
} }

View File

@@ -97,9 +97,9 @@ in
${pkgs.newsboat}/bin/newsboat --execute=print-unread | ${pkgs.gawk}/bin/awk '{ print "📰 " $1 }' ${pkgs.newsboat}/bin/newsboat --execute=print-unread | ${pkgs.gawk}/bin/awk '{ print "📰 " $1 }'
''; '';
on_click = setsid (pkgs.writers.writeDash "rss-update" '' on_click = setsid (pkgs.writers.writeDash "rss-update" ''
${pkgs.libnotify}/bin/notify-send newsboat "Updating feeds. " \ ${pkgs.libnotify}/bin/notify-send --app-name=" Newsboat" "Updating feeds." \
&& ${pkgs.newsboat}/bin/newsboat --execute=reload \ && ${pkgs.newsboat}/bin/newsboat --execute=reload \
&& ${pkgs.libnotify}/bin/notify-send newsboat "Feeds updated. 📰" && ${pkgs.libnotify}/bin/notify-send --app-name=" Newsboat" "Feeds updated."
''); '');
} }
{ {
@@ -114,9 +114,9 @@ in
done | paste --serial --delimiters=" " - done | paste --serial --delimiters=" " -
''; '';
on_click = setsid (pkgs.writers.writeDash "mail-update" '' on_click = setsid (pkgs.writers.writeDash "mail-update" ''
${pkgs.libnotify}/bin/notify-send newsboat "Updating mail. " \ ${pkgs.libnotify}/bin/notify-send --app-name="📧 MBSync" "Updating email." \
&& ${pkgs.isync}/bin/mbsync -a \ && ${pkgs.isync}/bin/mbsync --all \
&& ${pkgs.libnotify}/bin/notify-send newsboat "Mail updated. 📧" && ${pkgs.libnotify}/bin/notify-send --app-name="📧 MBSync" "Email updated."
''); '');
} }
{ {