2 Commits

Author SHA1 Message Date
dc171890f1 flake.lock: Update
All checks were successful
Check flake / build-amd64-linux (push) Successful in 11m49s
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/a0c384e0a3b8bcaed30a6bcf3783f8a7c8b35be4?narHash=sha256-iYh6h8yueU8IyOfNclbiBG2%2BfBFcjjUfXm90ZBzk0c0%3D' (2024-11-20)
  → 'github:nix-community/disko/341482e2f4d888e3f60cae1c12c3df896e7230d8?narHash=sha256-i%2BUw8VOHzQe9YdNwKRbzvaPWLE07tYVqUDzSFTXhRgk%3D' (2024-11-27)
• Updated input 'firefox-gnome-theme':
    'github:rafaelmardojai/firefox-gnome-theme/823756d8ddd21cfd3a24a87dad402e490e0eb5ee?narHash=sha256-lf9MQs8%2BNUvQd8b5t%2B7c4kLqUQixGO9WwWcLa1XYuiQ%3D' (2024-11-03)
  → 'github:rafaelmardojai/firefox-gnome-theme/ef6ac4285eaac6053338a6240bc615902a839493?narHash=sha256-k7v5PE6OcqMkC/u7aokwcxKDmTKM%2BejiZGCsH9MK0s0%3D' (2024-11-28)
• Updated input 'home-manager':
    'github:nix-community/home-manager/aecd341dfead1c3ef7a3c15468ecd71e8343b7c6?narHash=sha256-FmYTkIyPBUxSWgA7DPIVTsCCMvSSbs56yOtHpLNSnKg%3D' (2024-11-17)
  → 'github:nix-community/home-manager/f3111f62a23451114433888902a55cf0692b408d?narHash=sha256-T1e5oceypZu3Q8vzICjv1X/sGs9XfJRMW5OuXHgpB3c%3D' (2024-11-24)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/672ac2ac86f7dff2f6f3406405bddecf960e0db6?narHash=sha256-UhWmEZhwJZmVZ1jfHZFzCg%2BZLO9Tb/v3Y6LC0UNyeTo%3D' (2024-11-16)
  → 'github:NixOS/nixos-hardware/45348ad6fb8ac0e8415f6e5e96efe47dd7f39405?narHash=sha256-kF6rDeCshoCgmQz%2B7uiuPdREVFuzhIorGOoPXMalL2U%3D' (2024-11-24)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/057f63b6dc1a2c67301286152eb5af20747a9cb4?narHash=sha256-v5P3dk5JdiT%2B4x69ZaB18B8%2BRcu3TIOrcdG4uEX7WZ8%3D' (2024-11-16)
  → 'github:NixOS/nixpkgs/0c582677378f2d9ffcb01490af2f2c678dcb29d3?narHash=sha256-GcOQbOgmwlsRhpLGSwZJwLbo3pu9ochMETuRSS1xpz4%3D' (2024-11-23)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/23e89b7da85c3640bbc2173fe04f4bd114342367?narHash=sha256-y/MEyuJ5oBWrWAic/14LaIr/u5E0wRVzyYsouYY3W6w%3D' (2024-11-19)
  → 'github:NixOS/nixpkgs/4633a7c72337ea8fd23a4f2ba3972865e3ec685d?narHash=sha256-2ThgXBUXAE1oFsVATK1ZX9IjPcS4nKFOAjhPNKuiMn0%3D' (2024-11-25)
• Updated input 'nixvim':
    'github:nix-community/nixvim/2f71c4250bef7a52fe21bd00d1e58c119f62008c?narHash=sha256-lh2Qi8gd1SwJVGo7gJjoFvS/djS5Nimaw25j792PJjM%3D' (2024-11-20)
  → 'github:nix-community/nixvim/fc9178d124eba824f1862513314d351784e1a84c?narHash=sha256-gvCPgtcXGf/GZaJBHYrXuM5r2pFRG3VDr7uOb7B1748%3D' (2024-11-27)
• Updated input 'nixvim/home-manager':
    'github:nix-community/home-manager/a46e702093a5c46e192243edbd977d5749e7f294?narHash=sha256-qjEI64RKvDxRyEarY0jTzrZMa8ebezh2DEZmJJrpVdo%3D' (2024-11-19)
  → 'github:nix-community/home-manager/a9953635d7f34e7358d5189751110f87e3ac17da?narHash=sha256-GUffLwzawz5WRVfWaWCg78n/HrBJrOG7QadFY6rtV8A%3D' (2024-11-24)
• Updated input 'nixvim/nix-darwin':
    'github:lnl7/nix-darwin/61cee20168a3ebb71a9efd70a55adebaadfbe4d4?narHash=sha256-XwXUK%2BmeYnlhdQz2TVE4Wv%2Btsx1CkdGbDPt1tRzCNH4%3D' (2024-11-19)
  → 'github:lnl7/nix-darwin/6ab87b7c84d4ee873e937108c4ff80c015a40c7a?narHash=sha256-AEjWTJwOmSnVYsSJCojKgoguGfFfwel6z/6ud6UFMU8%3D' (2024-11-26)
• Updated input 'nixvim/treefmt-nix':
    'github:numtide/treefmt-nix/62003fdad7a5ab7b6af3ea9bd7290e4c220277d0?narHash=sha256-XWHuPWcP59QnHEewdZJXBX1TA2lAP78Vz4daG6tfIr4%3D' (2024-11-20)
  → 'github:numtide/treefmt-nix/84637a7ab04179bdc42aa8fd0af1909fba76ad0c?narHash=sha256-uI7TXEb231o8dkwB5AUCecx3AQtosRmL6hKgnckvjps%3D' (2024-11-26)
• Updated input 'plasma-manager':
    'github:nix-community/plasma-manager/f33173b9d22e554a6f869626bc01808d35995257?narHash=sha256-pGF8L5g9QpkQtJP9JmNIRNZfcyhJHf7uT%2Bd8tqI1h6Y%3D' (2024-11-09)
  → 'github:nix-community/plasma-manager/06e3209d11797d9c741e25df06ab61048746bf93?narHash=sha256-kFtXjoCIqx9xe0ZryPXpqS6l/HVg71aNcuL8Y5e8%2BpI%3D' (2024-11-26)
• Updated input 'thunderbird-gnome-theme':
    'github:rafaelmardojai/thunderbird-gnome-theme/628fcccb7788e3e0ad34f67114f563c87ac8c1dc?narHash=sha256-BHW9jlx92CsHY84FT0ce5Vxl0KFheLhNn2vndcIf7no%3D' (2024-07-25)
  → 'github:rafaelmardojai/thunderbird-gnome-theme/1994e7ec0649053e2a0811973245758d41e33f5f?narHash=sha256-i0Uo5EN45rlGuR85hvPet43zW/thOQTwHypVg9shTHU%3D' (2024-11-26)
2024-11-28 17:24:26 +00:00
b1d9cd902a Add streamrip package 2024-11-22 14:40:16 +00:00
4 changed files with 147 additions and 37 deletions

72
flake.lock generated
View File

@@ -107,11 +107,11 @@
]
},
"locked": {
"lastModified": 1732109232,
"narHash": "sha256-iYh6h8yueU8IyOfNclbiBG2+fBFcjjUfXm90ZBzk0c0=",
"lastModified": 1732742778,
"narHash": "sha256-i+Uw8VOHzQe9YdNwKRbzvaPWLE07tYVqUDzSFTXhRgk=",
"owner": "nix-community",
"repo": "disko",
"rev": "a0c384e0a3b8bcaed30a6bcf3783f8a7c8b35be4",
"rev": "341482e2f4d888e3f60cae1c12c3df896e7230d8",
"type": "github"
},
"original": {
@@ -123,11 +123,11 @@
"firefox-gnome-theme": {
"flake": false,
"locked": {
"lastModified": 1730674701,
"narHash": "sha256-lf9MQs8+NUvQd8b5t+7c4kLqUQixGO9WwWcLa1XYuiQ=",
"lastModified": 1732798888,
"narHash": "sha256-k7v5PE6OcqMkC/u7aokwcxKDmTKM+ejiZGCsH9MK0s0=",
"owner": "rafaelmardojai",
"repo": "firefox-gnome-theme",
"rev": "823756d8ddd21cfd3a24a87dad402e490e0eb5ee",
"rev": "ef6ac4285eaac6053338a6240bc615902a839493",
"type": "github"
},
"original": {
@@ -318,11 +318,11 @@
]
},
"locked": {
"lastModified": 1731880681,
"narHash": "sha256-FmYTkIyPBUxSWgA7DPIVTsCCMvSSbs56yOtHpLNSnKg=",
"lastModified": 1732466619,
"narHash": "sha256-T1e5oceypZu3Q8vzICjv1X/sGs9XfJRMW5OuXHgpB3c=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "aecd341dfead1c3ef7a3c15468ecd71e8343b7c6",
"rev": "f3111f62a23451114433888902a55cf0692b408d",
"type": "github"
},
"original": {
@@ -340,11 +340,11 @@
]
},
"locked": {
"lastModified": 1732025103,
"narHash": "sha256-qjEI64RKvDxRyEarY0jTzrZMa8ebezh2DEZmJJrpVdo=",
"lastModified": 1732482255,
"narHash": "sha256-GUffLwzawz5WRVfWaWCg78n/HrBJrOG7QadFY6rtV8A=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "a46e702093a5c46e192243edbd977d5749e7f294",
"rev": "a9953635d7f34e7358d5189751110f87e3ac17da",
"type": "github"
},
"original": {
@@ -405,11 +405,11 @@
]
},
"locked": {
"lastModified": 1732016537,
"narHash": "sha256-XwXUK+meYnlhdQz2TVE4Wv+tsx1CkdGbDPt1tRzCNH4=",
"lastModified": 1732603785,
"narHash": "sha256-AEjWTJwOmSnVYsSJCojKgoguGfFfwel6z/6ud6UFMU8=",
"owner": "lnl7",
"repo": "nix-darwin",
"rev": "61cee20168a3ebb71a9efd70a55adebaadfbe4d4",
"rev": "6ab87b7c84d4ee873e937108c4ff80c015a40c7a",
"type": "github"
},
"original": {
@@ -420,11 +420,11 @@
},
"nixos-hardware": {
"locked": {
"lastModified": 1731797098,
"narHash": "sha256-UhWmEZhwJZmVZ1jfHZFzCg+ZLO9Tb/v3Y6LC0UNyeTo=",
"lastModified": 1732483221,
"narHash": "sha256-kF6rDeCshoCgmQz+7uiuPdREVFuzhIorGOoPXMalL2U=",
"owner": "NixOS",
"repo": "nixos-hardware",
"rev": "672ac2ac86f7dff2f6f3406405bddecf960e0db6",
"rev": "45348ad6fb8ac0e8415f6e5e96efe47dd7f39405",
"type": "github"
},
"original": {
@@ -489,11 +489,11 @@
},
"nixpkgs-unstable": {
"locked": {
"lastModified": 1732014248,
"narHash": "sha256-y/MEyuJ5oBWrWAic/14LaIr/u5E0wRVzyYsouYY3W6w=",
"lastModified": 1732521221,
"narHash": "sha256-2ThgXBUXAE1oFsVATK1ZX9IjPcS4nKFOAjhPNKuiMn0=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "23e89b7da85c3640bbc2173fe04f4bd114342367",
"rev": "4633a7c72337ea8fd23a4f2ba3972865e3ec685d",
"type": "github"
},
"original": {
@@ -520,11 +520,11 @@
},
"nixpkgs_3": {
"locked": {
"lastModified": 1731755305,
"narHash": "sha256-v5P3dk5JdiT+4x69ZaB18B8+Rcu3TIOrcdG4uEX7WZ8=",
"lastModified": 1732350895,
"narHash": "sha256-GcOQbOgmwlsRhpLGSwZJwLbo3pu9ochMETuRSS1xpz4=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "057f63b6dc1a2c67301286152eb5af20747a9cb4",
"rev": "0c582677378f2d9ffcb01490af2f2c678dcb29d3",
"type": "github"
},
"original": {
@@ -548,11 +548,11 @@
"treefmt-nix": "treefmt-nix"
},
"locked": {
"lastModified": 1732143099,
"narHash": "sha256-lh2Qi8gd1SwJVGo7gJjoFvS/djS5Nimaw25j792PJjM=",
"lastModified": 1732726573,
"narHash": "sha256-gvCPgtcXGf/GZaJBHYrXuM5r2pFRG3VDr7uOb7B1748=",
"owner": "nix-community",
"repo": "nixvim",
"rev": "2f71c4250bef7a52fe21bd00d1e58c119f62008c",
"rev": "fc9178d124eba824f1862513314d351784e1a84c",
"type": "github"
},
"original": {
@@ -594,11 +594,11 @@
]
},
"locked": {
"lastModified": 1731193165,
"narHash": "sha256-pGF8L5g9QpkQtJP9JmNIRNZfcyhJHf7uT+d8tqI1h6Y=",
"lastModified": 1732639391,
"narHash": "sha256-kFtXjoCIqx9xe0ZryPXpqS6l/HVg71aNcuL8Y5e8+pI=",
"owner": "nix-community",
"repo": "plasma-manager",
"rev": "f33173b9d22e554a6f869626bc01808d35995257",
"rev": "06e3209d11797d9c741e25df06ab61048746bf93",
"type": "github"
},
"original": {
@@ -690,11 +690,11 @@
"thunderbird-gnome-theme": {
"flake": false,
"locked": {
"lastModified": 1721874544,
"narHash": "sha256-BHW9jlx92CsHY84FT0ce5Vxl0KFheLhNn2vndcIf7no=",
"lastModified": 1732643121,
"narHash": "sha256-i0Uo5EN45rlGuR85hvPet43zW/thOQTwHypVg9shTHU=",
"owner": "rafaelmardojai",
"repo": "thunderbird-gnome-theme",
"rev": "628fcccb7788e3e0ad34f67114f563c87ac8c1dc",
"rev": "1994e7ec0649053e2a0811973245758d41e33f5f",
"type": "github"
},
"original": {
@@ -711,11 +711,11 @@
]
},
"locked": {
"lastModified": 1732111664,
"narHash": "sha256-XWHuPWcP59QnHEewdZJXBX1TA2lAP78Vz4daG6tfIr4=",
"lastModified": 1732643199,
"narHash": "sha256-uI7TXEb231o8dkwB5AUCecx3AQtosRmL6hKgnckvjps=",
"owner": "numtide",
"repo": "treefmt-nix",
"rev": "62003fdad7a5ab7b6af3ea9bd7290e4c220277d0",
"rev": "84637a7ab04179bdc42aa8fd0af1909fba76ad0c",
"type": "github"
},
"original": {

View File

@@ -1,5 +1,7 @@
{ config, ... }:
{ config, pkgs, ... }:
let streamrip = pkgs.callPackage ../../pkgs/streamrip/package.nix { };
in
{
imports = [
./hardware-configuration.nix
@@ -49,6 +51,10 @@
};
};
environment.systemPackages = [
streamrip
];
modules = {
desktop = {
apps.qbittorrent.enable = true;

View File

@@ -0,0 +1,26 @@
From 18efb9b5c8e562b169425f6ba79977e52e8b91b9 Mon Sep 17 00:00:00 2001
From: Pavel Sobolev <paveloomm@gmail.com>
Date: Sat, 13 Jan 2024 12:49:45 +0000
Subject: [PATCH] Ensure the default config file is writable.
---
streamrip/config.py | 3 +++
1 file changed, 3 insertions(+)
diff --git a/streamrip/config.py b/streamrip/config.py
index 7ee2f57..88a5fef 100644
--- a/streamrip/config.py
+++ b/streamrip/config.py
@@ -378,6 +378,9 @@ def set_user_defaults(path: str, /):
"""Update the TOML file at the path with user-specific default values."""
shutil.copy(BLANK_CONFIG_PATH, path)
+ # Ensure the default config file is writable
+ os.chmod(path, 0o644)
+
with open(path) as f:
toml = parse(f.read())
toml["downloads"]["folder"] = DEFAULT_DOWNLOADS_FOLDER # type: ignore
--
2.42.0

View File

@@ -0,0 +1,78 @@
{ lib
, python3Packages
, fetchFromGitHub
, ffmpeg
}:
python3Packages.buildPythonApplication {
pname = "streamrip";
version = "2.0.7";
pyproject = true;
src = fetchFromGitHub {
owner = "nathom";
repo = "streamrip";
rev = "46b570dbb6f81d604cbaa3bfa379463e0a20a841";
hash = "sha256-LD99OjguaBnrQxCwmCeHvmBMq5aOfobwnMd5/aCRZW8=";
};
patches = [
./ensure-the-default-config-file-is-writable.patch
];
nativeBuildInputs = with python3Packages; [
poetry-core
];
propagatedBuildInputs = with python3Packages; [
aiodns
aiofiles
aiohttp
aiolimiter
appdirs
cleo
click-help-colors
deezer-py
m3u8
mutagen
pathvalidate
pillow
pycryptodomex
pytest-asyncio
pytest-mock
rich
simple-term-menu
tomlkit
tqdm
];
nativeCheckInputs = with python3Packages; [
pytestCheckHook
];
prePatch = ''
sed -i 's#aiofiles = ".*"#aiofiles = "*"#' pyproject.toml
sed -i 's#deezer-py = ".*"#deezer-py = "*"#' pyproject.toml
sed -i 's#m3u8 = ".*"#m3u8 = "*"#' pyproject.toml
sed -i 's#pathvalidate = ".*"#pathvalidate = "*"#' pyproject.toml
sed -i 's#Pillow = ".*"#Pillow = "*"#' pyproject.toml
sed -i 's#pytest-asyncio = ".*"#pytest-asyncio = "*"#' pyproject.toml
sed -i 's#tomlkit = ".*"#tomlkit = "*"#' pyproject.toml
sed -i 's#"ffmpeg"#"${lib.getBin ffmpeg}/bin/ffmpeg"#g' streamrip/client/downloadable.py
'';
preCheck = ''
export HOME=$(mktemp -d)
'';
meta = with lib; {
description = "Scriptable music downloader for Qobuz, Tidal, SoundCloud, and Deezer";
homepage = "https://github.com/nathom/streamrip";
license = licenses.gpl3Only;
maintainers = with maintainers; [ paveloom ];
mainProgram = "rip";
};
}