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

Improve parallels-tools #34070

Merged
merged 5 commits into from Mar 3, 2018
Merged

Improve parallels-tools #34070

merged 5 commits into from Mar 3, 2018

Conversation

lukeadams
Copy link
Contributor

@lukeadams lukeadams commented Jan 20, 2018

Motivation for this change

This PR adds new options controlling the parallels-tools module:

hardware.parallels.{
  autoMountShares = true;
  # not implemented yet
  package = pkgs.prl-tools.overrideAttrs( rec{ ... });
}

autoMountShares is helpful to disable when non-standard mount options are needed on shares.

Done:
  • Fix prl-tools kernel issues on 18.03
  • add hardware.parallels.autoMountShares option
Todo:
  • add package override
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
    • 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/)
  • Fits CONTRIBUTING.md.

@Mic92
Copy link
Member

Mic92 commented Feb 10, 2018

still wip?

@lukeadams lukeadams changed the title [WIP] Improve parallels-tools Improve parallels-tools Feb 11, 2018
@lukeadams
Copy link
Contributor Author

@Mic92 Nope! I just forgot to rebase my local commits and publish them. Should be ready for review.

@joachifm
Copy link
Contributor

Have you considered allowing simply passing a different package. I think specifying checksum/version as NixOS options is a bad interface.

@lukeadams
Copy link
Contributor Author

lukeadams commented Feb 21, 2018

That's definitely in line with how every other NixOS module does it... no idea why it didn't occur to me to expose a package override.

@lukeadams
Copy link
Contributor Author

lukeadams commented Mar 1, 2018

Should be mergeable. I reverted the sha/version changes, and added a package override inline with the other modules.
Libelf commit is necessary for 18.03 building.

allows overriding of package with newer versions
@Mic92
Copy link
Member

Mic92 commented Mar 2, 2018

@GrahamcOfBorg build linuxPackages_hardened.prl-tools linuxPackages_xen_dom0.prl-tools linuxPackages_samus_4_12.prl-tools linuxPackages_latest_xen_dom0.prl-tools linuxPackages_4_15.prl-tools linuxPackages_testing_bcachefs.prl-tools linuxPackages_latest_hardened.prl-tools linuxPackages_xen_dom0_hardened.prl-tools linuxPackages_4_4.prl-tools linuxPackages_4_9.prl-tools linuxPackages.prl-tools linuxPackages_latest_xen_dom0_hardened.prl-tools linuxPackages_copperhead_hardened.prl-tools

@GrahamcOfBorg
Copy link

Failure on x86_64-linux (full log)

Partial log (click to expand)

Package ‘prl-tools-12.2.1-41615’ in /var/lib/gc-of-borg/.nix-test-rs/repo/38dca4e3aa6bca43ea96d2fcc04e8229/builder/ogden/pkgs/os-specific/linux/prl-tools/default.nix:161 has an unfree license (‘unfree’), refusing to evaluate.

a) For `nixos-rebuild` you can set
  { nixpkgs.config.allowUnfree = true; }
in configuration.nix to override this.

b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowUnfree = true; }
to ~/.config/nixpkgs/config.nix.

@GrahamcOfBorg
Copy link

Failure on x86_64-darwin (full log)

Partial log (click to expand)

while evaluating anonymous function at /private/var/lib/ofborg/checkout/repo/38dca4e3aa6bca43ea96d2fcc04e8229/builder/lnl7-mac/pkgs/os-specific/linux/prl-tools/default.nix:1:1, called from /private/var/lib/ofborg/checkout/repo/38dca4e3aa6bca43ea96d2fcc04e8229/builder/lnl7-mac/lib/customisation.nix:74:12:
while evaluating the attribute 'linux' at /private/var/lib/ofborg/checkout/repo/38dca4e3aa6bca43ea96d2fcc04e8229/builder/lnl7-mac/pkgs/top-level/all-packages.nix:13364:3:
while evaluating the attribute 'kernel' at /private/var/lib/ofborg/checkout/repo/38dca4e3aa6bca43ea96d2fcc04e8229/builder/lnl7-mac/pkgs/top-level/all-packages.nix:13225:12:
while evaluating the attribute 'linux_4_14' at /private/var/lib/ofborg/checkout/repo/38dca4e3aa6bca43ea96d2fcc04e8229/builder/lnl7-mac/pkgs/top-level/all-packages.nix:13145:3:
while evaluating 'callPackageWith' at /private/var/lib/ofborg/checkout/repo/38dca4e3aa6bca43ea96d2fcc04e8229/builder/lnl7-mac/lib/customisation.nix:113:35, called from /private/var/lib/ofborg/checkout/repo/38dca4e3aa6bca43ea96d2fcc04e8229/builder/lnl7-mac/pkgs/top-level/all-packages.nix:13145:16:
while evaluating 'makeOverridable' at /private/var/lib/ofborg/checkout/repo/38dca4e3aa6bca43ea96d2fcc04e8229/builder/lnl7-mac/lib/customisation.nix:72:24, called from /private/var/lib/ofborg/checkout/repo/38dca4e3aa6bca43ea96d2fcc04e8229/builder/lnl7-mac/lib/customisation.nix:117:8:
while evaluating anonymous function at /private/var/lib/ofborg/checkout/repo/38dca4e3aa6bca43ea96d2fcc04e8229/builder/lnl7-mac/pkgs/os-specific/linux/kernel/linux-4.14.nix:1:1, called from /private/var/lib/ofborg/checkout/repo/38dca4e3aa6bca43ea96d2fcc04e8229/builder/lnl7-mac/lib/customisation.nix:74:12:
while evaluating 'makeOverridable' at /private/var/lib/ofborg/checkout/repo/38dca4e3aa6bca43ea96d2fcc04e8229/builder/lnl7-mac/lib/customisation.nix:72:24, called from /private/var/lib/ofborg/checkout/repo/38dca4e3aa6bca43ea96d2fcc04e8229/builder/lnl7-mac/pkgs/os-specific/linux/kernel/linux-4.14.nix:5:1:
while evaluating anonymous function at /private/var/lib/ofborg/checkout/repo/38dca4e3aa6bca43ea96d2fcc04e8229/builder/lnl7-mac/pkgs/os-specific/linux/kernel/generic.nix:9:1, called from /private/var/lib/ofborg/checkout/repo/38dca4e3aa6bca43ea96d2fcc04e8229/builder/lnl7-mac/lib/customisation.nix:74:12:
assertion failed at /private/var/lib/ofborg/checkout/repo/38dca4e3aa6bca43ea96d2fcc04e8229/builder/lnl7-mac/pkgs/os-specific/linux/kernel/generic.nix:41:1

@GrahamcOfBorg
Copy link

Failure on aarch64-linux (full log)

Partial log (click to expand)

Package ‘prl-tools-12.2.1-41615’ in /var/lib/gc-of-borg/nix-test-rs-12/repo/38dca4e3aa6bca43ea96d2fcc04e8229/builder/grahamc-aarch64-community-12/pkgs/os-specific/linux/prl-tools/default.nix:161 has an unfree license (‘unfree’), refusing to evaluate.

a) For `nixos-rebuild` you can set
  { nixpkgs.config.allowUnfree = true; }
in configuration.nix to override this.

b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowUnfree = true; }
to ~/.config/nixpkgs/config.nix.

@Mic92
Copy link
Member

Mic92 commented Mar 2, 2018

nix-shell -p linuxPackages_latest.prl-tools

fails to build, so I assume 4.15 is not yet supported.
Can you adjust the kernel version accordingly like here: https://github.com/NixOS/nixpkgs/blob/master/pkgs/os-specific/linux/wireguard/default.nix#L4

@lukeadams
Copy link
Contributor Author

Pushed!
Here is a thread of a few others with the issue.
I'd imagine it wont be fixed as the prl-12 release has been superceded by prl-13.

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