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

qvim, vim_configurable: get rid of composableDerivation #43886

Merged
merged 2 commits into from Jul 26, 2018
Merged

Conversation

FRidh
Copy link
Member

@FRidh FRidh commented Jul 21, 2018

Use stdenv.mkDerivation directly instead of composableDerivation.

Some configure flags may have changed as the conversion wasn't exactly
straightforward.


Please test this change. I am no user of this package. Will merge in a week from now.

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • 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/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Fits CONTRIBUTING.md.

Use `stdenv.mkDerivation` directly instead of `composableDerivation`.

Some configure flags may have changed as the conversion wasn't exactly
straightforward.
@FRidh
Copy link
Member Author

FRidh commented Jul 21, 2018

cc contributors @Ma27 @LnL7 @bjornfor @7c6f434c @vcunat

@GrahamcOfBorg
Copy link

Success on x86_64-linux (full log)

Attempted: vim_configurable

Partial log (click to expand)

/nix/store/sq3j6kfg31ymz5rpcjz0rcqwzpgl7n1l-vim_configurable-8.1.0146/share/vim/vim81/macros/less.sh: interpreter directive changed from "/bin/sh" to "/nix/store/z9qg7lpkrajdnlgw5pxp9yx984prl1fi-bash-4.4-p23/bin/sh"
/nix/store/sq3j6kfg31ymz5rpcjz0rcqwzpgl7n1l-vim_configurable-8.1.0146/share/vim/vim81/tools/demoserver.py: interpreter directive changed from "/usr/bin/python" to "/nix/store/r99pik3abzrizbka8906ccs7vj837356-python-2.7.15/bin/python"
basename: invalid option -- 'w'
Try 'basename --help' for more information.
/nix/store/sq3j6kfg31ymz5rpcjz0rcqwzpgl7n1l-vim_configurable-8.1.0146/share/vim/vim81/tools/vimspell.sh: interpreter directive changed from "/bin/sh" to "/nix/store/z9qg7lpkrajdnlgw5pxp9yx984prl1fi-bash-4.4-p23/bin/sh"
/nix/store/sq3j6kfg31ymz5rpcjz0rcqwzpgl7n1l-vim_configurable-8.1.0146/share/vim/vim81/tools/ref: interpreter directive changed from "/bin/sh" to "/nix/store/z9qg7lpkrajdnlgw5pxp9yx984prl1fi-bash-4.4-p23/bin/sh"
/nix/store/sq3j6kfg31ymz5rpcjz0rcqwzpgl7n1l-vim_configurable-8.1.0146/share/vim/vim81/tools/vimm: interpreter directive changed from "/bin/sh" to "/nix/store/z9qg7lpkrajdnlgw5pxp9yx984prl1fi-bash-4.4-p23/bin/sh"
/nix/store/sq3j6kfg31ymz5rpcjz0rcqwzpgl7n1l-vim_configurable-8.1.0146/bin/vimtutor: interpreter directive changed from " /bin/sh" to "/nix/store/z9qg7lpkrajdnlgw5pxp9yx984prl1fi-bash-4.4-p23/bin/sh"
checking for references to /build in /nix/store/sq3j6kfg31ymz5rpcjz0rcqwzpgl7n1l-vim_configurable-8.1.0146...
/nix/store/sq3j6kfg31ymz5rpcjz0rcqwzpgl7n1l-vim_configurable-8.1.0146

@GrahamcOfBorg
Copy link

Success on x86_64-darwin (full log)

Attempted: vim_configurable

Partial log (click to expand)

patching script interpreter paths in /nix/store/rdg9y2b5wqpqsi503idf5bfnq2665vsd-vim_configurable-8.1.0146
/nix/store/rdg9y2b5wqpqsi503idf5bfnq2665vsd-vim_configurable-8.1.0146/bin/vimtutor: interpreter directive changed from " /bin/sh" to "/nix/store/mdzgfbangzw62b6cb48dg0q83sxdy12y-bash-4.4-p23/bin/sh"
/nix/store/rdg9y2b5wqpqsi503idf5bfnq2665vsd-vim_configurable-8.1.0146/share/vim/vim81/macros/less.sh: interpreter directive changed from "/bin/sh" to "/nix/store/mdzgfbangzw62b6cb48dg0q83sxdy12y-bash-4.4-p23/bin/sh"
/nix/store/rdg9y2b5wqpqsi503idf5bfnq2665vsd-vim_configurable-8.1.0146/share/vim/vim81/tools/demoserver.py: interpreter directive changed from "/usr/bin/python" to "/nix/store/rr41xvzb7jsvbzh35waxmzhj2bbipgad-python-2.7.15/bin/python"
basename: invalid option -- 'w'
Try 'basename --help' for more information.
/nix/store/rdg9y2b5wqpqsi503idf5bfnq2665vsd-vim_configurable-8.1.0146/share/vim/vim81/tools/ref: interpreter directive changed from "/bin/sh" to "/nix/store/mdzgfbangzw62b6cb48dg0q83sxdy12y-bash-4.4-p23/bin/sh"
/nix/store/rdg9y2b5wqpqsi503idf5bfnq2665vsd-vim_configurable-8.1.0146/share/vim/vim81/tools/vimm: interpreter directive changed from "/bin/sh" to "/nix/store/mdzgfbangzw62b6cb48dg0q83sxdy12y-bash-4.4-p23/bin/sh"
/nix/store/rdg9y2b5wqpqsi503idf5bfnq2665vsd-vim_configurable-8.1.0146/share/vim/vim81/tools/vimspell.sh: interpreter directive changed from "/bin/sh" to "/nix/store/mdzgfbangzw62b6cb48dg0q83sxdy12y-bash-4.4-p23/bin/sh"
/nix/store/rdg9y2b5wqpqsi503idf5bfnq2665vsd-vim_configurable-8.1.0146

@GrahamcOfBorg
Copy link

Success on aarch64-linux (full log)

Attempted: vim_configurable

Partial log (click to expand)

/nix/store/zx4x3awlz1i6j33hxwhykdppdidx109v-vim_configurable-8.1.0146/bin/vimtutor: interpreter directive changed from " /bin/sh" to "/nix/store/3swzdhnphnbxjcyx2bkk1gh9k8gi3kl6-bash-4.4-p23/bin/sh"
/nix/store/zx4x3awlz1i6j33hxwhykdppdidx109v-vim_configurable-8.1.0146/share/vim/vim81/tools/vimspell.sh: interpreter directive changed from "/bin/sh" to "/nix/store/3swzdhnphnbxjcyx2bkk1gh9k8gi3kl6-bash-4.4-p23/bin/sh"
/nix/store/zx4x3awlz1i6j33hxwhykdppdidx109v-vim_configurable-8.1.0146/share/vim/vim81/tools/vimm: interpreter directive changed from "/bin/sh" to "/nix/store/3swzdhnphnbxjcyx2bkk1gh9k8gi3kl6-bash-4.4-p23/bin/sh"
/nix/store/zx4x3awlz1i6j33hxwhykdppdidx109v-vim_configurable-8.1.0146/share/vim/vim81/tools/ref: interpreter directive changed from "/bin/sh" to "/nix/store/3swzdhnphnbxjcyx2bkk1gh9k8gi3kl6-bash-4.4-p23/bin/sh"
basename: invalid option -- 'w'
Try 'basename --help' for more information.
/nix/store/zx4x3awlz1i6j33hxwhykdppdidx109v-vim_configurable-8.1.0146/share/vim/vim81/tools/demoserver.py: interpreter directive changed from "/usr/bin/python" to "/nix/store/0bxsz2pw8n2f11lwwxwwbb8cdzaw2l9j-python-2.7.15/bin/python"
/nix/store/zx4x3awlz1i6j33hxwhykdppdidx109v-vim_configurable-8.1.0146/share/vim/vim81/macros/less.sh: interpreter directive changed from "/bin/sh" to "/nix/store/3swzdhnphnbxjcyx2bkk1gh9k8gi3kl6-bash-4.4-p23/bin/sh"
checking for references to /build in /nix/store/zx4x3awlz1i6j33hxwhykdppdidx109v-vim_configurable-8.1.0146...
/nix/store/zx4x3awlz1i6j33hxwhykdppdidx109v-vim_configurable-8.1.0146

@Mic92
Copy link
Member

Mic92 commented Jul 21, 2018

Then only qvim is left that uses this obscure function.

@Mic92
Copy link
Member

Mic92 commented Jul 21, 2018

@GrahamcOfBorg build vimNox ezquake vim_configurable vimHugeX vimPlugins.pluginnames2nix

@GrahamcOfBorg
Copy link

Failure on x86_64-darwin (full log)

Attempted: vimNox, vim_configurable, vimHugeX, vimPlugins.pluginnames2nix

The following builds were skipped because they don't evaluate on x86_64-darwin: ezquake

Partial log (click to expand)

int     sigaltstack(const stack_t * __restrict, stack_t * __restrict)  __DARWIN_ALIAS(sigaltstack) __WATCHOS_PROHIBITED __TVOS_PROHIBITED;
        ^
1 warning and 1 error generated.
make[1]: *** [Makefile:2638: objects/os_unix.o] Error 1
make[1]: Leaving directory '/private/tmp/nix-build-vim_configurable-8.1.0146.drv-0/nix_repository_manager/src'
make: *** [Makefile:29: first] Error 2
builder for '/nix/store/0j4qkns37vlql4nfj6vrpkqigm839c4w-vim_configurable-8.1.0146.drv' failed with exit code 2
building '/nix/store/kcaa0b6fa0hs27mg5p3rpxzxplc78kwc-vimrc.drv'...
building '/nix/store/61l7k7axy495nrvl1q6m7y20jkkskwd3-vim-plugin-names-to-nix.drv'...
�[31;1merror:�[0m build of '/nix/store/0j4qkns37vlql4nfj6vrpkqigm839c4w-vim_configurable-8.1.0146.drv' failed

@GrahamcOfBorg
Copy link

Success on x86_64-linux (full log)

Attempted: vimNox, ezquake, vim_configurable, vimHugeX, vimPlugins.pluginnames2nix

Partial log (click to expand)

./cd_linux.c
./com_msg.c
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/svfamhrk6kqralsdi8jnr4a2plsffyfp-ezquake-3.0.1
shrinking /nix/store/svfamhrk6kqralsdi8jnr4a2plsffyfp-ezquake-3.0.1/bin/ezquake
strip is /nix/store/90vmpr41dzsx350k5argycaf693hnl1l-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/svfamhrk6kqralsdi8jnr4a2plsffyfp-ezquake-3.0.1/bin
patching script interpreter paths in /nix/store/svfamhrk6kqralsdi8jnr4a2plsffyfp-ezquake-3.0.1
checking for references to /build in /nix/store/svfamhrk6kqralsdi8jnr4a2plsffyfp-ezquake-3.0.1...
building '/nix/store/g8m68w30jix2bakanx95qgg8d5iq914n-vim-plugin-names-to-nix.drv'...

@GrahamcOfBorg
Copy link

Failure on aarch64-linux (full log)

Attempted: vimNox, ezquake, vim_configurable, vimHugeX, vimPlugins.pluginnames2nix

Partial log (click to expand)

                 from common.h:35,
                 from qwsvdef.h:26,
                 from pr_cmds.c:22:
/nix/store/ffq01cfahpgz03kvanhiipn3gkab7zxh-glibc-2.27-dev/include/bits/stdio2.h:64:10: note: '__builtin___snprintf_chk' output between 4 and 209 bytes into a destination of size 64
   return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        __bos (__s), __fmt, __va_arg_pack ());
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
builder for '/nix/store/nndrinngaws9mzclimviql2cxaaaa0y1-ezquake-3.0.1.drv' failed with exit code 2
error: build of '/nix/store/nndrinngaws9mzclimviql2cxaaaa0y1-ezquake-3.0.1.drv' failed

@FRidh
Copy link
Member Author

FRidh commented Jul 21, 2018

@Mic92 don't forget php. That one is big...

@LnL7
Copy link
Member

LnL7 commented Jul 21, 2018

I thought php and vim_configurable where the only remaining.

@FRidh FRidh changed the title vim_configurable: get rid of composableDerivation qvim, vim_configurable: get rid of composableDerivation Jul 21, 2018
@FRidh
Copy link
Member Author

FRidh commented Jul 21, 2018

I've also added qvim to this PR. cc @ttuegel @grwlf

The expressions are quite similar, so it would also be good to afterwards get them more in line with each other.

Use `stdenv.mkDerivation` directly instead of `composableDerivation`.

Some configure flags may have changed as the conversion wasn't exactly
straightforward.

enableParallelBuilding = true; # test this

src = fetchgit {
Copy link
Member

Choose a reason for hiding this comment

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

Is this actually different from vim_configurable? It looks like a copy-paste with a different source and that's already configurable (eg. nox)

@GrahamcOfBorg
Copy link

Success on aarch64-linux (full log)

Attempted: vim_configurable

Partial log (click to expand)

/nix/store/zx4x3awlz1i6j33hxwhykdppdidx109v-vim_configurable-8.1.0146

@GrahamcOfBorg
Copy link

Success on x86_64-linux (full log)

Attempted: vim_configurable

Partial log (click to expand)

/nix/store/sq3j6kfg31ymz5rpcjz0rcqwzpgl7n1l-vim_configurable-8.1.0146/share/vim/vim81/macros/less.sh: interpreter directive changed from "/bin/sh" to "/nix/store/z9qg7lpkrajdnlgw5pxp9yx984prl1fi-bash-4.4-p23/bin/sh"
/nix/store/sq3j6kfg31ymz5rpcjz0rcqwzpgl7n1l-vim_configurable-8.1.0146/share/vim/vim81/tools/vimm: interpreter directive changed from "/bin/sh" to "/nix/store/z9qg7lpkrajdnlgw5pxp9yx984prl1fi-bash-4.4-p23/bin/sh"
/nix/store/sq3j6kfg31ymz5rpcjz0rcqwzpgl7n1l-vim_configurable-8.1.0146/share/vim/vim81/tools/ref: interpreter directive changed from "/bin/sh" to "/nix/store/z9qg7lpkrajdnlgw5pxp9yx984prl1fi-bash-4.4-p23/bin/sh"
/nix/store/sq3j6kfg31ymz5rpcjz0rcqwzpgl7n1l-vim_configurable-8.1.0146/share/vim/vim81/tools/vimspell.sh: interpreter directive changed from "/bin/sh" to "/nix/store/z9qg7lpkrajdnlgw5pxp9yx984prl1fi-bash-4.4-p23/bin/sh"
basename: invalid option -- 'w'
Try 'basename --help' for more information.
/nix/store/sq3j6kfg31ymz5rpcjz0rcqwzpgl7n1l-vim_configurable-8.1.0146/share/vim/vim81/tools/demoserver.py: interpreter directive changed from "/usr/bin/python" to "/nix/store/r99pik3abzrizbka8906ccs7vj837356-python-2.7.15/bin/python"
/nix/store/sq3j6kfg31ymz5rpcjz0rcqwzpgl7n1l-vim_configurable-8.1.0146/bin/vimtutor: interpreter directive changed from " /bin/sh" to "/nix/store/z9qg7lpkrajdnlgw5pxp9yx984prl1fi-bash-4.4-p23/bin/sh"
checking for references to /build in /nix/store/sq3j6kfg31ymz5rpcjz0rcqwzpgl7n1l-vim_configurable-8.1.0146...
/nix/store/sq3j6kfg31ymz5rpcjz0rcqwzpgl7n1l-vim_configurable-8.1.0146

@GrahamcOfBorg
Copy link

Success on x86_64-darwin (full log)

Attempted: vim_configurable

Partial log (click to expand)

/nix/store/rdg9y2b5wqpqsi503idf5bfnq2665vsd-vim_configurable-8.1.0146

@FRidh FRidh merged commit ea91420 into NixOS:master Jul 26, 2018
@FRidh FRidh deleted the vim branch July 26, 2018 09:42
@LnL7 LnL7 mentioned this pull request Jul 27, 2018
9 tasks
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

4 participants