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

Update hapistrano #72985

Closed

Conversation

@cptrodolfox
Copy link
Contributor

cptrodolfox commented Nov 7, 2019

Motivation for this change

Fix hapistrano broken package.

Things done

Added zsh to list of available build packages for hapistrano in pkgs/development/haskell-modules/configuration-nix.nix.

  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
  • Built on platform(s)
    • NixOS
    • [x ] 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 nix-review --run "nix-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)
  • Ensured that relevant documentation is up to date
  • Fits CONTRIBUTING.md.
Notify maintainers

cc @basvandijk @cdepillabout

chkno and others added 30 commits Sep 6, 2019
This is important because this contains some code copied from nix (as an
interim expediency until that functionality can be exported via nix's
API).  The license specified here must be compatible with this borrowing.
Select the same license that nix is released under: lgpl2Plus.
For consistency with the Nix C++ convention.

:~(
I don't think this matters.  As long as one or the other of these is
a std::string, I get an operator== that looks at content rather than
pointer equality.  I picked casting the constant over casting the dynamic
thing in hopes that the compiler would have a better chance at optimizing
away any runtime cost.

Deferring to reviewer.
Switch from convention "appease clang-tidy --checks='*'" to
"References are like non-nullptr pointers".  The clang-tidy check
"google-runtime-references" complains about non-const reference
arguments, but this is not a convention used in Nix.
Switch from convention "appease clang-tidy --checks='*'" to
"References are like non-nullptr pointers".  The clang-tidy check
"google-runtime-references" complains about non-const reference
arguments, but this is not a convention used in Nix.
Switch from convention "appease clang-tidy --checks='*'" to
"References are like non-nullptr pointers".  The clang-tidy check
"google-runtime-references" complains about non-const reference
arguments, but this is not a convention used in Nix.
Automated consumers can use 'sed 1d' or similar to remove this header.

This probably makes this output *easier* to consume correctly.  Having
this header show up in consumers' terminal or log output is probably not
useful, but hiding it without hiding all error messages would have been
more troublesome that just stripping it from stdout.

I.e., previously, unsophisticated use would show undesired output:
  $ some-other-tool
  This attribute set contains:
  This attribute set contains:
  This attribute set contains:
  This attribute set contains:
  <Actual some-other-tool output>

The simplest way to hide this undesired output would have been
nixos-option ... 2>/dev/null, which would hide all error messages.
We do not wish to encourage that.

Correct use would have been something like:
  nixos-option ... 2> >( grep --line-buffered -v 'This attribute set contains:')

After this change, correct use is simpler:
  nixos-option ... | sed 1d
or
  nixos-option ... | sed '1/This attribute set contains:/d'
if the caller don't know if this invocation of nixos-option will yield
an attribute listing or an option description.
Cairo is also a dependency now.

    /tmp/nix-build-inkscape-0.92.4.drv-0/inkscape-0.92.4/src/display/drawing-context.h:20:10: fatal error: 'cairo.h' file not found
    #include <cairo.h>
             ^~~~~~~~~
    1 error generated.
@jonringer

This comment has been minimized.

Copy link
Contributor

jonringer commented Nov 7, 2019

make sure the branch you branched from matches the base branch :)

@cptrodolfox

This comment has been minimized.

Copy link
Contributor Author

cptrodolfox commented Nov 7, 2019

Yeah, just missed that created a new PR #72988.

@timokau

This comment has been minimized.

Copy link
Member

timokau commented on 308aba8 Nov 13, 2019

This broke the r8168 kernel module:

building '/nix/store/hyn421llzd6cvm1r4v68iw66csp9zi55-kernel-modules.drv'...
copying path '/nix/store/pdy4bawy6dscxvlwrvpvhw4x7xhx8bh2-expat-2.2.8' from 'https://cache.nixos.org'...
copying path '/nix/store/l38aff7a0xlr11kx1y0gxvbrjiz2hm3g-gawk-5.0.1' from 'https://cache.nixos.org'...
copying path '/nix/store/pgv7rl4dzmvfxgwgdiiqs87cx7v9q4f3-ripgrep-11.0.2' from 'https://cache.nixos.org'...
created 17 symlinks in user environment
/nix/store/v6za7w484cg7f1ppvziidvpdvmrqyzpx-stdenv-linux/setup: line 312: pkgBuildAccumVars: readonly variable
/nix/store/v6za7w484cg7f1ppvziidvpdvmrqyzpx-stdenv-linux/setup: line 313: pkgHostAccumVars: readonly variable
/nix/store/v6za7w484cg7f1ppvziidvpdvmrqyzpx-stdenv-linux/setup: line 314: pkgTargetAccumVars: readonly variable
/nix/store/v6za7w484cg7f1ppvziidvpdvmrqyzpx-stdenv-linux/setup: line 316: pkgAccumVarVars: readonly variable
/nix/store/v6za7w484cg7f1ppvziidvpdvmrqyzpx-stdenv-linux/setup: line 325: pkgBuildHookVars: readonly variable
/nix/store/v6za7w484cg7f1ppvziidvpdvmrqyzpx-stdenv-linux/setup: line 326: pkgHostHookVars: readonly variable
/nix/store/v6za7w484cg7f1ppvziidvpdvmrqyzpx-stdenv-linux/setup: line 327: pkgTargetHookVars: readonly variable
/nix/store/v6za7w484cg7f1ppvziidvpdvmrqyzpx-stdenv-linux/setup: line 329: pkgHookVarVars: readonly variable
/nix/store/v6za7w484cg7f1ppvziidvpdvmrqyzpx-stdenv-linux/setup: line 345: propagatedBuildDepFiles: readonly variable
/nix/store/v6za7w484cg7f1ppvziidvpdvmrqyzpx-stdenv-linux/setup: line 346: propagatedHostDepFiles: readonly variable
/nix/store/v6za7w484cg7f1ppvziidvpdvmrqyzpx-stdenv-linux/setup: line 347: propagatedTargetDepFiles: readonly variable
/nix/store/v6za7w484cg7f1ppvziidvpdvmrqyzpx-stdenv-linux/setup: line 348: propagatedDepFilesVars: readonly variable
/nix/store/v6za7w484cg7f1ppvziidvpdvmrqyzpx-stdenv-linux/setup: line 351: allPlatOffsets: readonly variable
inconsistent kernel versions: 4.19.82
4.19.84
builder for '/nix/store/hyn421llzd6cvm1r4v68iw66csp9zi55-kernel-modules.drv' failed with exit code 1

My configuration.nix:

  # r8169 network driver sometimes fails to bring network back up after suspend.
  # Re-enabling it requires reboot. r8168 can be used instead for the networks
  # card and doesn't have that bug. r8169 needs to be blacklisted to make sure
  # r8168 is used.
  boot.extraModulePackages = with pkgs.linuxPackages; [
      r8168
  ];
  boot.blacklistedKernelModules = [
    "r8169"
  ];

Any idea how to fix this?

This comment has been minimized.

Copy link
Member

timokau replied Nov 13, 2019

Never mind, this was an issue in my setup (mixing nixpkgs versions). Sorry for the noise.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.