aboutsummaryrefslogtreecommitdiffstats
path: root/pkgs
diff options
context:
space:
mode:
authorBenedikt Peetz <benedikt.peetz@b-peetz.de>2025-06-16 14:32:49 +0200
committerBenedikt Peetz <benedikt.peetz@b-peetz.de>2025-06-16 14:32:49 +0200
commitaeecec1ccb8945517e38466a44594444c1af43a2 (patch)
treef84d6086445e74389292e9bafd8412a0efd4ada7 /pkgs
parenttreewide: Update (diff)
downloadnixos-config-aeecec1ccb8945517e38466a44594444c1af43a2.zip
pkgs/yt: v1.5.0 -> v1.6.0
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/by-name/yt/yt/package.nix85
1 files changed, 55 insertions, 30 deletions
diff --git a/pkgs/by-name/yt/yt/package.nix b/pkgs/by-name/yt/yt/package.nix
index d73776c5..07a0bb3d 100644
--- a/pkgs/by-name/yt/yt/package.nix
+++ b/pkgs/by-name/yt/yt/package.nix
@@ -8,41 +8,57 @@
# You should have received a copy of the License along with this program.
# If not, see <https://www.gnu.org/licenses/gpl-3.0.txt>.
{
+ lib,
+ rustPlatform,
+ installShellFiles,
fetchgit,
- ffmpeg,
gitUpdater,
- glibc,
- lib,
- llvmPackages_latest,
- makeWrapper,
+ # buildInputs
mpv-unwrapped,
- python3,
- rustPlatform,
+ python3Packages,
+ ffmpeg,
+ openssl,
+ libffi,
+ # NativeBuildInputs
+ makeWrapper,
+ llvmPackages_latest,
+ glibc,
sqlite,
fd,
+ pkg-config,
+ SDL2,
}: let
- version = "1.5.0";
-
- src = fetchgit {
- url = "https://git.foss-syndicate.org/bpeetz/clients/yt";
- rev = "v${version}";
- hash = "sha256-P/mpF2KPjoC7XZ6juJubeGEHhL2ajdOeiuIEb5sYrS0=";
- };
-
- buildInputs = [
- (python3.withPackages (ps: [ps.yt-dlp]))
- mpv-unwrapped.dev
- ffmpeg
- ];
+ version = "1.6.0";
in
- rustPlatform.buildRustPackage {
- inherit version src buildInputs;
+ rustPlatform.buildRustPackage (finalAttrs: {
+ inherit version;
pname = "yt";
+ src = fetchgit {
+ url = "https://git.foss-syndicate.org/bpeetz/clients/yt";
+ tag = "v${version}";
+ hash = "sha256-i87xssodfVNat/YRWJRMiuNjd1R5T0NRbAzTPxWEIuo=";
+ };
+
+ buildInputs = [
+ python3Packages.yt-dlp
+ mpv-unwrapped.dev
+ ffmpeg
+ openssl
+ libffi
+ ];
+
nativeBuildInputs = [
+ installShellFiles
makeWrapper
sqlite
fd
+ pkg-config
+ ];
+
+ checkInputs = [
+ # Needed for the tests in `libmpv2`
+ SDL2
];
passthru.updateScript = gitUpdater {rev-prefix = "v";};
@@ -52,27 +68,36 @@ in
lib.versions.major
llvmPackages_latest.clang-unwrapped.version;
in {
+ # Needed for the compile time sqlite checks.
+ DATABASE_URL = "sqlite://database.sqlx";
+
+ # Required by yt_dlp
FFMPEG_LOCATION = "${lib.getExe ffmpeg}";
- PYO3_PYTHON = lib.getExe (python3.withPackages (ps: [ps.yt-dlp]));
+ # Needed for the libmpv2.
C_INCLUDE_PATH = "${glibc.dev}/include";
- DATABASE_URL = "sqlite://target/database.sqlx";
LIBCLANG_INCLUDE_PATH = "${llvmPackages_latest.clang-unwrapped.lib}/lib/clang/${clang_version}/include";
LIBCLANG_PATH = "${llvmPackages_latest.clang-unwrapped.lib}/lib/libclang.so";
};
- # Some tests depend on network access, others require a special library.
- doCheck = false;
+ doCheck = true;
prePatch = ''
+ # Generate the sqlite db, so that we can run the comp-time sqlite checks.
bash ./scripts/mkdb.sh
'';
- useFetchCargoVendor = true;
- cargoHash = "sha256-0XTbC+mFsczUFXqAtiQ+BIsCfKilerhlzE41pzVjLVs=";
+ cargoHash = "sha256-MRbyWchMM1GPaWTLZt5Bgk/ry6k89woDdpQz0+mi09E=";
postInstall = ''
+ installShellCompletion --cmd yt \
+ --bash <(COMPLETE=bash $out/bin/yt) \
+ --fish <(COMPLETE=fish $out/bin/yt) \
+ --zsh <(COMPLETE=zsh $out/bin/yt)
+
+ # NOTE: We cannot clear the path, because we need access to the $EDITOR. <2025-04-04>
wrapProgram $out/bin/yt \
- --prefix PATH : ${lib.makeBinPath buildInputs}
+ --prefix PATH : ${lib.makeBinPath finalAttrs.buildInputs} \
+ --set YTDLP_NO_PLUGINS 1
'';
- }
+ })