feat(spotifyd): get credentials from librespot-auth
All checks were successful
Discord / discord commits (push) Has been skipped

This commit is contained in:
matt1432 2024-09-18 19:27:16 -04:00
parent 2d97a15541
commit 292b1ef0fa
6 changed files with 2341 additions and 5 deletions

View file

@ -61,7 +61,7 @@
device_name = config.networking.hostName;
device_type = "speaker";
zeroconf_port = 33797;
zeroconf_port = 33798;
cache_path = cacheDir;
username_cmd = "${lib.getExe pkgs.jq} -r .username ${cacheDir}/credentials.json";

View file

@ -1700,11 +1700,11 @@
]
},
"locked": {
"lastModified": 1726679017,
"narHash": "sha256-Nflpm4CG7K/c8uaS09G0m1tnxBbeM05u0pNHX2lF7Wo=",
"lastModified": 1726701157,
"narHash": "sha256-2b4UqC8zswsskPdOumII0ZyLgy5nKdya2Due82/yXJ8=",
"ref": "refs/heads/main",
"rev": "571df8a09d051cf6caa08b94b65c980d92894c7c",
"revCount": 77,
"rev": "0751670349b9908d33fa21c3d3f15675f8565e44",
"revCount": 78,
"type": "git",
"url": "ssh://git@git.nelim.org/matt1432/nixos-secrets"
},

View file

@ -3,4 +3,10 @@ final: prev: {
withCUDA = true;
withCuDNN = true;
};
# FIXME: remove this if https://github.com/NixOS/nixpkgs/pull/342913 is merged
spotifyd = prev.spotifyd.override {
withMpris = false;
withKeyring = false;
};
}

View file

@ -14,6 +14,8 @@
inherit (inputs) libratbag-src;
};
librespot-auth = pkgs.callPackage ./librespot-auth {};
pam-fprint-grosshack = pkgs.callPackage ./pam-fprint-grosshack {
inherit (inputs) pam-fprint-grosshack-src;
};

2285
packages/librespot-auth/Cargo.lock generated Normal file

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,43 @@
{
lib,
fetchFromGitHub,
makeWrapper,
openssl,
pkg-config,
rustPlatform,
...
}:
rustPlatform.buildRustPackage rec {
pname = "librespot-auth";
version = "0.1.1";
src = fetchFromGitHub {
owner = "dspearson";
repo = pname;
rev = "v${version}";
sha256 = "sha256-IbbArRSKpnljhZSgL0b3EjVzKWN7bk6t0Bv7TkYr8FI=";
};
cargoLock = {
lockFile = ./Cargo.lock;
outputHashes = {
"librespot-core-0.5.0-dev" = "sha256-7HrA1hWEy5lliwgJ9amJy+Kd8lB50b3q2niaFWWwcYE=";
};
};
nativeBuildInputs = [
pkg-config
makeWrapper
];
buildInputs = [
openssl
];
meta = with lib; {
description = "A simple program for populating a credentials.json via Spotify's zeroconf authentication.";
mainProgram = pname;
homepage = "https://github.com/dspearson/librespot-auth";
license = with licenses; [isc];
};
}