-
-
Notifications
You must be signed in to change notification settings - Fork 14.7k
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
[NixOS] Fix + update hardware.parallels
config option
#27513
Conversation
@lukeadams, thanks for your PR! By analyzing the history of the files in this pull request, we identified @abbradar, @nckx and @fpletz to be potential reviewers. |
@Mic92 this PR is for NixOS (in Parallels on Darwin) |
71668c8
to
62c3ffa
Compare
Everything works once logged in. I couldn't find out how to create a systemd unit to launch prlcc in the getty "environment" (to allow dynamic resolution on the login window) though... |
13.0.1-42947 (parallels 13 instead of 12) is now the latest. I haven't upgraded to it so have no idea if it works, but it should be easy to test by overriding with
|
description = "Parallels Control Center"; | ||
wantedBy = [ "graphical.target" ]; | ||
serviceConfig = { | ||
ExecStart = "${prl-tools}/bin/prlcc"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am not familiar at all with parallels to excuse my question:
What does prlcc
that it is started both as a global service and a user in a graphical session?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I put prlcc as a "global" to try and get dynamic resolution working on the login screen; it can be removed. The user service is the important one which works perfectly once logged in.
I don't recall seeing prldhd in prl-12, but there was prldnd. I'm not sure if they have the same functionality?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is there any recommendation by upstream? Running x11
applications as root can create security problems because their is not user separation in x11.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Mic92 Fixed! I removed prlcc as a global service, and everything still works.
description = "Parallels Control Center"; | ||
wantedBy = [ "graphical-session.target" ]; | ||
serviceConfig = { | ||
ExecStart = "${prl-tools}/bin/prlcc"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I ask because there was a service called prldhd
before.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Above comment:
I don't recall seeing prldhd in prl-12, but there was prldnd. I'm not sure if they have the same functionality?
I haven't looked at this in a while since I just needed it to work on my system at the time; if I have a chance this weekend I'll get more information for you.
cc @disassembler for review. |
I tested this PR in a parallels VM. It built successfully and auto-resizing worked in plasma/kde after login. |
Above: prlcc as root has been removed. I've rebased this PR onto channels/nixos-17.09 and everything works. Additionally, diffing the directory structure from v12 (Parallels Tools)/v13(Parallels Tools 1) produces nearly identical output. The only differences are a few install scripts which we don't use!
|
…, fetchurl inputs; update sourceRoot
e872eb0
to
2ce30c5
Compare
Rebased onto master for vm upgrade. Changes are still good |
@GrahamcOfBorg eval |
Motivation for this change
This PR enables support for Parallels 12, and also removes the need to provide prl-tools-lin.iso. It fixes dynamic resolution/coherence/clipboard support.
It may be a good idea to add:
to allow the use of newer prl-tools versions in configuration.nix without forking nixpkgs
Squash before committing:
743485f6579422b1115986d40522d820b67b5b8f
041ae372c9531682118cdb5de99768a84fcc7a0c
c6700487d7d02453774c49bb42e2e25997a63999
I left them as separate commits for clarity
Things done
(nix.useSandbox on NixOS,
or option
build-use-sandbox
innix.conf
on non-NixOS)
nix-shell -p nox --run "nox-review wip"
./result/bin/
)TODO: possibly add tests ala Virtualbox