mirror of
https://github.com/kmein/niveum
synced 2026-03-16 10:11:08 +01:00
cro: abstract out and use for chromecasting radio streams
This commit is contained in:
@@ -5,18 +5,6 @@
|
||||
}: let
|
||||
inherit (import ../lib) tmpfilesConfig;
|
||||
in {
|
||||
environment.systemPackages = [
|
||||
(pkgs.writers.writeDashBin "cro" ''
|
||||
${pkgs.chromium}/bin/chromium \
|
||||
--disable-sync \
|
||||
--no-default-browser-check \
|
||||
--no-first-run \
|
||||
--user-data-dir="$(mktemp -d)" \
|
||||
--incognito \
|
||||
"$@"
|
||||
'')
|
||||
];
|
||||
|
||||
home-manager.users.me = {
|
||||
programs.firefox = {
|
||||
enable = true;
|
||||
|
||||
@@ -153,9 +153,15 @@ in {
|
||||
niveumPackages.emailmenu
|
||||
niveumPackages.closest
|
||||
niveumPackages.trans
|
||||
niveumPackages.cro
|
||||
(niveumPackages.mpv-radio.override {
|
||||
di-fm-key-file = config.age.secrets.di-fm-key.path;
|
||||
})
|
||||
(niveumPackages.mpv-radio.override {
|
||||
di-fm-key-file = config.age.secrets.di-fm-key.path;
|
||||
executableName = "cro-radio";
|
||||
mpvCommand = "${niveumPackages.cro}/bin/cro";
|
||||
})
|
||||
(niveumPackages.mpv-tuner.override {
|
||||
di-fm-key-file = config.age.secrets.di-fm-key.path;
|
||||
})
|
||||
|
||||
@@ -321,6 +321,7 @@
|
||||
brassica = pkgs.callPackage packages/brassica.nix {};
|
||||
cheat-sh = pkgs.callPackage packages/cheat-sh.nix {};
|
||||
closest = pkgs.callPackage packages/closest {};
|
||||
cro = pkgs.callPackage packages/cro.nix {};
|
||||
cyberlocker-tools = pkgs.callPackage packages/cyberlocker-tools.nix {};
|
||||
default-gateway = pkgs.callPackage packages/default-gateway.nix {};
|
||||
depp = pkgs.callPackage packages/depp.nix {};
|
||||
|
||||
10
packages/cro.nix
Normal file
10
packages/cro.nix
Normal file
@@ -0,0 +1,10 @@
|
||||
{ writers, chromium }:
|
||||
writers.writeDashBin "cro" ''
|
||||
${chromium}/bin/chromium \
|
||||
--disable-sync \
|
||||
--no-default-browser-check \
|
||||
--no-first-run \
|
||||
--user-data-dir="$(mktemp -d)" \
|
||||
--incognito \
|
||||
"$@"
|
||||
''
|
||||
@@ -7,6 +7,8 @@
|
||||
coreutils,
|
||||
gnused,
|
||||
di-fm-key-file,
|
||||
executableName ? "mpv-radio",
|
||||
mpvCommand ? "${mpv}/bin/mpv --force-window=yes"
|
||||
}: let
|
||||
streams = import ../lib/streams.nix {
|
||||
di-fm-key = "%DI_FM_KEY%";
|
||||
@@ -19,11 +21,13 @@
|
||||
}: "${station}\t${desc}\t${stream}")
|
||||
streams);
|
||||
in
|
||||
writers.writeDashBin "mpv-radio" ''
|
||||
writers.writeDashBin executableName ''
|
||||
set -x
|
||||
|
||||
if [ -z ''${DI_FM_KEY} ]; then
|
||||
DI_FM_KEY=$(cat "${di-fm-key-file}")
|
||||
fi
|
||||
exec ${mpv}/bin/mpv --force-window=yes "$(
|
||||
exec ${mpvCommand} "$(
|
||||
${dmenu}/bin/dmenu -i -l 5 < ${streams-tsv} \
|
||||
| ${coreutils}/bin/cut -f3 \
|
||||
| ${gnused}/bin/sed s/%DI_FM_KEY%/"$DI_FM_KEY"/
|
||||
|
||||
Reference in New Issue
Block a user