3
0
Fork 0
forked from mirrors/nixpkgs

Merge pull request #232182 from fabaff/coursera-dl-fix

coursera-dl: modernize
This commit is contained in:
Fabian Affolter 2023-05-17 01:54:28 +02:00 committed by GitHub
commit 541397177b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -1,41 +1,23 @@
{ lib, fetchFromGitHub, fetchpatch, glibcLocales, pandoc, python3 }: { lib
, fetchFromGitHub
, fetchpatch
, glibcLocales
, pandoc
, python3
}:
let python3.pkgs.buildPythonApplication rec {
pythonPackages = python3.pkgs;
in pythonPackages.buildPythonApplication rec {
pname = "coursera-dl"; pname = "coursera-dl";
version = "0.11.5"; version = "0.11.5";
format = "setuptools";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "coursera-dl"; owner = "coursera-dl";
repo = "coursera-dl"; repo = "coursera-dl";
rev = version; rev = "refs/tags/${version}";
sha256 = "0akgwzrsx094jj30n4bd2ilwgva4qxx38v3bgm69iqfxi8c2bqbk"; sha256 = "0akgwzrsx094jj30n4bd2ilwgva4qxx38v3bgm69iqfxi8c2bqbk";
}; };
nativeBuildInputs = with pythonPackages; [ pandoc ];
buildInputs = with pythonPackages; [ glibcLocales ];
propagatedBuildInputs = with pythonPackages; [ attrs beautifulsoup4 configargparse keyring pyasn1 requests six urllib3 ];
nativeCheckInputs = with pythonPackages; [ pytest mock ];
postPatch = ''
substituteInPlace requirements.txt \
--replace '==' '>='
'';
preConfigure = ''
export LC_ALL=en_US.utf-8
'';
checkPhase = ''
# requires dbus service
py.test -k 'not test_get_credentials_with_keyring' .
'';
patches = [ patches = [
(fetchpatch { (fetchpatch {
url = "https://github.com/coursera-dl/coursera-dl/commit/c8796e567698be166cb15f54e095140c1a9b567e.patch"; url = "https://github.com/coursera-dl/coursera-dl/commit/c8796e567698be166cb15f54e095140c1a9b567e.patch";
@ -47,9 +29,48 @@ in pythonPackages.buildPythonApplication rec {
}) })
]; ];
postPatch = ''
substituteInPlace requirements.txt \
--replace '==' '>='
'';
preConfigure = ''
export LC_ALL=en_US.utf-8
'';
nativeBuildInputs = with python3.pkgs; [
pandoc
];
buildInputs = with python3.pkgs; [
glibcLocales
];
propagatedBuildInputs = with python3.pkgs; [
attrs
beautifulsoup4
configargparse
keyring
pyasn1
requests
six
urllib3
];
nativeCheckInputs = with python3.pkgs; [
pytestCheckHook
mock
];
disabledTests = [
"test_get_credentials_with_keyring"
"test_quiz_exam_to_markup_converter"
];
meta = with lib; { meta = with lib; {
description = "CLI for downloading Coursera.org videos and naming them"; description = "CLI for downloading Coursera.org videos and naming them";
homepage = "https://github.com/coursera-dl/coursera-dl"; homepage = "https://github.com/coursera-dl/coursera-dl";
changelog = "https://github.com/coursera-dl/coursera-dl/blob/0.11.5/CHANGELOG.md";
license = licenses.lgpl3Plus; license = licenses.lgpl3Plus;
maintainers = with maintainers; [ alexfmpe ]; maintainers = with maintainers; [ alexfmpe ];
platforms = platforms.darwin ++ platforms.linux; platforms = platforms.darwin ++ platforms.linux;