Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

quodlibet: 2.6.3 -> 3.9.1 #29404

Closed
wants to merge 3 commits into from
Closed

quodlibet: 2.6.3 -> 3.9.1 #29404

wants to merge 3 commits into from

Conversation

sauyon
Copy link
Member

@sauyon sauyon commented Sep 14, 2017

Motivation for this change

Quod Libet 2.6.3 is ancient

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-sandbox in nix.conf on non-NixOS)
  • Built on platform(s)
    • NixOS
    • macOS
    • Linux
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Fits CONTRIBUTING.md.

@sauyon sauyon requested a review from FRidh as a code owner September 14, 2017 23:42
@sauyon sauyon force-pushed the quodlibet branch 6 times, most recently from 99a4b36 to ceadedd Compare September 15, 2017 03:19
Copy link
Member

@FRidh FRidh left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Python packages need some work, meta is missing.

@@ -5596,6 +5596,15 @@ in {
buildInputs = with self; [ fudge_9 nose ];
};

faulthandler = buildPythonPackage rec {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you move this expression to python-modules/faulthandler/default.nix.

faulthandler = buildPythonPackage rec {
name = "faulthandler-${version}";
version = "2.6";
src = pkgs.fetchurl {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fetchPypi

@@ -17465,6 +17474,14 @@ in {
};
};

pyobjc = buildPythonPackage rec {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

python-modules/pyobjc/default/nix

pyobjc = buildPythonPackage rec {
name = "pyobjc-${version}";
version = "4.0b1";
src = pkgs.fetchurl {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fetchPypi

@sauyon sauyon force-pushed the quodlibet branch 4 times, most recently from 468b8b0 to 1b3a523 Compare September 16, 2017 23:35
@sauyon
Copy link
Member Author

sauyon commented Sep 16, 2017

The license for quodlibet is stated to be

Quod Libet and all associated modules are free software distributed entirely under the terms of the GNU GPL version 2. Alternate licensing terms (such as GNU GPL “version 2 or later”, or the GNU LGPL) may be available for certain files or modules; see the files for details.

so I put gpl2.


meta = {
description = "A bridge between the Python and Objective-C programming languages";
license = stdenv.lib.licenses.mit;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

undefined variable ‘stdenv’ at /nix/store/9nl1fs575ayk3hk1bjymp03plh84wnrp-quodlibet.tar.gz/pkgs/development/python-modules/pyobjc/default.nix:16:24

Please do test.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can't, don't have a mac :/

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

actually I could've caught that... added licenses after building, whoops.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's irrelevant. I got this evaluation error on NixOS. stdenv is not passed in.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yea, its a common error. Happens to me as well.

@FRidh
Copy link
Member

FRidh commented Sep 17, 2017

Something has gone wrong here with merging/rebasing. We need a single commit per package/expression.

@sauyon
Copy link
Member Author

sauyon commented Sep 17, 2017

Yeah, I did the merge on github thinking "this'll be relatively easy to squash" like an idiot

@sauyon
Copy link
Member Author

sauyon commented Sep 17, 2017

Do you want me to separate the python packages into their own commits?

@FRidh
Copy link
Member

FRidh commented Sep 17, 2017

Preferably, yes.

@sauyon sauyon force-pushed the quodlibet branch 2 times, most recently from 01f3259 to 2d7f1a9 Compare September 17, 2017 08:07
@orivej
Copy link
Contributor

orivej commented Oct 1, 2017

@sauyon faulthandler should be disabled for python3, otherwise python36Packages.faulthandler is reachable and fails to build with ERROR: faulthandler is a builtin module since Python 3.3.

@@ -5512,6 +5512,8 @@ in {
buildInputs = with self; [ fudge_9 nose ];
};

faulthandler = if ! isPy3k then callPackage ../development/python-modules/faulthandler {} else throw "faulthandler is built into ${python.executable}";
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This line is very long, I think it would be clearer as

faulthandler =
  if ! isPy3k
  then callPackage ../development/python-modules/faulthandler {}
  else throw "faulthandler is built into ${python.executable}";

@rycee
Copy link
Member

rycee commented Nov 2, 2017

When attempting to build this on my NixOS box I get a problem with pyobjc:

rycee@beta:~/devel/nixpkgs$ nix-build -A python2Packages.pyobjc
these derivations will be built:
  /nix/store/p7w6vw0a4p7drshch389vsj9w1ggzf2z-python2.7-pyobjc-4.0b1.drv
building path(s) ‘/nix/store/jc240j31v04spa5mv8cq2c1gkn44cr32-python2.7-pyobjc-4.0b1’
unpacking sources
unpacking source archive /nix/store/30yzmj23wqhdgp41h92qs5kjd6s6i00m-pyobjc-4.0b1.tar.gz
source root is pyobjc-4.0b1
setting SOURCE_DATE_EPOCH to timestamp 1503862173 of file pyobjc-4.0b1/setup.cfg
patching sources
configuring
building
ERROR: Requires macOS to install or build
builder for ‘/nix/store/p7w6vw0a4p7drshch389vsj9w1ggzf2z-python2.7-pyobjc-4.0b1.drv’ failed with exit code 1
error: build of ‘/nix/store/p7w6vw0a4p7drshch389vsj9w1ggzf2z-python2.7-pyobjc-4.0b1.drv’ failed
rycee@beta (✗ 100):~/devel/nixpkgs$ 

@sauyon sauyon force-pushed the quodlibet branch 2 times, most recently from 054bafb to b67681b Compare November 4, 2017 04:20
@sauyon
Copy link
Member Author

sauyon commented Nov 4, 2017

I've reformatted and disabled pyobjc for non-darwin (it's only for mac os)

then callPackage ../development/python-modules/pyobjc {}
else throw "pyobjc can only be built on Mac OS";

pyodbc = buildPythonPackage rec {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think your rebase got mixed up. There is already a

pyodbc = callPackage ../development/python-modules/pyodbc { };

below. This results in an evaluation error:

error: attribute ‘pyodbc’ at /home/rycee/devel/nixpkgs/pkgs/top-level/python-packages.nix:16599:3 already defined at /home/rycee/devel/nixpkgs/pkgs/top-level/python-packages.nix:16579:3

@sauyon
Copy link
Member Author

sauyon commented Nov 4, 2017

@rycee should be fixed.

@rycee
Copy link
Member

rycee commented Nov 4, 2017

Ok, looks good to me now but you must remove the unrelated "php: fix ldap paths when header exists on host system" commit before a merge can happen.

@sauyon
Copy link
Member Author

sauyon commented Nov 5, 2017

@rycee odd, should be fixed.

@rycee
Copy link
Member

rycee commented Nov 5, 2017

Ok, now I could do a nox review and it looks good for me on NixOS. I'm a bit concerned about the error on the mac Travis though: https://travis-ci.org/NixOS/nixpkgs/jobs/297566861#L1081-L1082 Is this something that needs to be resolved? It seems limited to Python 3.6, which quodlibet does not use…

@sauyon
Copy link
Member Author

sauyon commented Nov 5, 2017

@rycee it might make sense to disable it for python3, yeah. I don't know anything about it; I don't use a mac and am not the maintainer of the project.

EDIT: gone ahead and done so.

@rycee
Copy link
Member

rycee commented Nov 5, 2017

Rebased to master in 7486ae8. Thanks!

@rycee rycee closed this Nov 5, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants