In preparation for the deprecation of `stdenv.isX`.
These shorthands are not conducive to cross-compilation because they
hide the platforms.
Darwin might get cross-compilation for which the continued usage of `stdenv.isDarwin` will get in the way
One example of why this is bad and especially affects compiler packages
https://www.github.com/NixOS/nixpkgs/pull/343059
There are too many files to go through manually but a treewide should
get users thinking when they see a `hostPlatform.isX` in a place where it
doesn't make sense.
```
fd --type f "\.nix" | xargs sd --fixed-strings "stdenv.is" "stdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "stdenv'.is" "stdenv'.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "clangStdenv.is" "clangStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "gccStdenv.is" "gccStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "stdenvNoCC.is" "stdenvNoCC.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "inherit (stdenv) is" "inherit (stdenv.hostPlatform) is"
fd --type f "\.nix" | xargs sd --fixed-strings "buildStdenv.is" "buildStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "effectiveStdenv.is" "effectiveStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "originalStdenv.is" "originalStdenv.hostPlatform.is"
```
* qt5 uses apple_sdk_11, so being a qt app, synergy must do the same
* remove the optionality of UserNotification framework
* filter out network tests, which do not run in sandbox
* consider the withGUI flag during install phase on darwin
stdenv.targetPlatform really shouldn't be used by software that
doesn't generate or manipulate binaries. I reviewed all uses of
targetPlatform outside of pkgs/development/compilers and pkgs/stdenv
and replaced those which weren't involved in something which fits
these criteria.
with structuredAttrs lists will be bash arrays which cannot be exported
which will be a issue with some patches and some wrappers like cc-wrapper
this makes it clearer that NIX_CFLAGS_COMPILE must be a string as lists
in env cause a eval failure
From the description of CVE-2020-15117:
> In Synergy before version 1.12.0, a Synergy server can be crashed by
> receiving a kMsgHelloBack packet with a client name length set to
> 0xffffffff (4294967295) if the servers memory is less than 4 GB. It
> was verified that this issue does not cause a crash through the
> exception handler if the available memory of the Server is more than
> 4GB.
While I personally would consider this a pretty low-priority issue since
Synergy usually is only used in local environment, it's nevertheless
better to patch known issues.
Since the fix is part of version 1.12, which doesn't have a stable
release yet, I'm including the fix as a patch cherry-picked from the
upstream commit.
I originally had the CVE number as a comment prior to the fetchpatch
call in question, but since @mweinelt mentioned that https://broken.sh/
uses the patch file name[1] to match whether the software in question
has been patched, I've removed my initial comment as it would be
redundant.
[1]: https://github.com/andir/nix-vulnerability-scanner/blob/fb63998885462/src/report/nix_patches.rs#L83-L95
Signed-off-by: aszlig <aszlig@nix.build>
Fixes: https://github.com/NixOS/nixpkgs/issues/94007
Just got a reminder via the vulnerability roundup[1] that I'm still
listed as maintainer for Synergy, even though I stopped using it years
ago.
I'll also take this as an opportunity to remove myself from other
packages which I stopped using and thus most certainly won't be able to
maintain. The latter is already hard enough these days for software
which I *do* use.
[1]: https://github.com/NixOS/nixpkgs/issues/94007
Signed-off-by: aszlig <aszlig@nix.build>
Includes the following fixes for Darwin:
- Build an application bundle
- Don't install the .desktop file and icons
- Get rid of unused cmake variables
- Don't list avahi as a dependency, since it's not used
This gets rid of a few patches that aren't needed any more, adds one
to make the tests work again and updates the MacOS patch. It also
introduces two builds - one with the Qt application and one without.
The patch to get the tests working will be submitted upstream and
hopefully not be needed for future releases.
* pkgs: refactor needless quoting of homepage meta attribute
A lot of packages are needlessly quoting the homepage meta attribute
(about 1400, 22%), this commit refactors all of those instances.
* pkgs: Fixing some links that were wrongfully unquoted in the previous
commit
* Fixed some instances
Regression introduced by f91dacdd07.
Accidentally thought that it's compiling with XRandR support enabled,
because the cmake output said so:
Looking for XRRQueryExtension in Xrandr - found
Unfortunately, despite this message, the relevant part is:
Looking for XRRNotifyEvent - not found
So, ea4afb7 still holds true and I've added a small comment to avoid
this from happening in the future.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
I don't know what a "mouse keyboard" is, but instead of fixing the
description, let's use the one from the upstream README file, which is
also shorter than what we previously had.
The homepage http://synergy-foss.org/ is outdate since ages, so let's
point to the new site.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
Fixes the following bugs:
* Helper tool crashes when service checks elevation state
* Zeroconf on server advertises bogus IP address
* Drag file causes client crash on Mac (10.10)
Introduces the following enhancements:
* Optional Bonjour requirement for Windows
* Automatic Bonjour download and install
* Auto-config available servers combo box
* More user friendly dialog when client is detected
* Minimize auto config message box usage
* Firewall exception for GUI (needed for Bonjour)
* Consistent naming for auto config feature
Full changelog with bug IDs can be found at:
http://synergy-project.org/changelog/
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
Bugfix release, fixing the following bugs:
- Configuration file paths containing spaces don't work
- Log path needs to be in quotes on windows
- Installer fails when Windows Firewall is disabled
http://svn.synergy-project.org/tags/1.5.1/ChangeLog
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
This is a bugfix release which fixes the following bugs:
* Synergy Service - Error 87: The parameter is incorrect.
* Option not supported on Linux: --enable-drag-drop (server not
starting)
Bug IDs and the announcement can be found at:
http://synergy-foss.org/blog/synergy-1-4-15-released/
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
This new upstream release comes with the following changes:
New features:
* Drag and drop between computers (Windows and Mac)
Fixed bugs:
* Mac does not wake up
* Unstable service (synergyd)
* Exploit: C:\Program.exe (if it exists) is run by service (elevated)
* Encryption broken (GCM, CTR and OFB)
* Start button is visible when Synergy is running
* Apply button is disabled for Mac and Linux
Release announcement with links to detailed descriptions about each
change can be found here:
http://synergy-foss.org/blog/synergy-1-4-14/
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
The second failure, and the last one I'm going to try today:
http://hydra.nixos.org/build/5404634
On the bright side there is at least the fact that version 1.4.10 has failed on
Darwin already, so I guess we don't have a lot of Mac users using Synergy.
Latest (failed) build of 1.4.10:
http://hydra.nixos.org/build/5359408
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
Seems that crypto++ in nixpkgs doesn't build on Darwin, so let's use bundled
crypto++ until the version in nixpkgs works well.
This refers to the following build:
http://hydra.nixos.org/build/5404516
Hopefully, this will fix it on Mac OS X, because I don't have a Darwin machine
for testing.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
I'm heavily using synergy for daily work, so I'm most probably going to watch
out for changes/improvements/bugs :-)
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
Integration tests don't seem to work right now, so let's see if we can figure
out a way to enable them later. But at least running unit tests is better than
not running any tests :-)
Signed-off-by: aszlig <aszlig@redmoonstudios.org>