diff options
Diffstat (limited to 'pkgs/applications')
32 files changed, 1049 insertions, 184 deletions
diff --git a/pkgs/applications/audio/axoloti/default.nix b/pkgs/applications/audio/axoloti/default.nix index 986e476779cb..274233167bd8 100644 --- a/pkgs/applications/audio/axoloti/default.nix +++ b/pkgs/applications/audio/axoloti/default.nix @@ -2,14 +2,14 @@ , gnumake, gcc-arm-embedded, dfu-util-axoloti, jdk, ant, libfaketime }: stdenv.mkDerivation rec { - version = "1.0.12-1"; + version = "1.0.12-2"; name = "axoloti-${version}"; src = fetchFromGitHub { owner = "axoloti"; repo = "axoloti"; rev = "${version}"; - sha256 = "13njmv8zac0kaaxgkv4y4zfjcclafn9cw0m8lj2k4926wnwjmf50"; + sha256 = "1qffis277wshldr3i939b0r2x3a2mlr53samxqmr2nk1sfm2b4w9"; }; chibi_version = "2.6.9"; @@ -96,6 +96,6 @@ stdenv.mkDerivation rec { <literal>SUBSYSTEM=="usb", ATTR{idVendor}=="16c0", ATTR{idProduct}=="0442", OWNER="someuser", GROUP="somegroup"</literal> ''; license = licenses.gpl3; - maintainers = with maintainers; [ TealG ]; + maintainers = with maintainers; [ ]; }; } diff --git a/pkgs/applications/audio/caps/default.nix b/pkgs/applications/audio/caps/default.nix index 2d90599346fb..1f53809e9059 100644 --- a/pkgs/applications/audio/caps/default.nix +++ b/pkgs/applications/audio/caps/default.nix @@ -1,23 +1,12 @@ { stdenv, fetchurl }: stdenv.mkDerivation rec { name = "caps-${version}"; - version = "0.9.24"; + version = "0.9.26"; src = fetchurl { url = "http://www.quitte.de/dsp/caps_${version}.tar.bz2"; - sha256 = "081zx0i2ysw5nmy03j60q9j11zdlg1fxws81kwanncdgayxgwipp"; + sha256 = "1jcq9y51vdnk93q27r566y9qmddvadhr4ddnvkiypaq5rrdnqjg7"; }; - patches = [ - (fetchurl { - url = "https://salsa.debian.org/multimedia-team/caps/raw/9a99c225/debian/patches/0001-Avoid-ambiguity-in-div-invocation.patch"; - sha256 = "1b1pb5yfskiw8zi1lkj572l2ajpirh4amq538vggwvlpv1fqfway"; - }) - (fetchurl { - url = "https://salsa.debian.org/multimedia-team/caps/raw/a411203d/debian/patches/0002-Use-standard-exp10f-instead-of-pow10f.patch"; - sha256 = "18ciklnscabr77l8b89xmbagkk79w4iqfpzr2yhn2ywv2jp8akx9"; - }) - ]; - configurePhase = '' echo "PREFIX = $out" > defines.make ''; diff --git a/pkgs/applications/audio/dragonfly-reverb/default.nix b/pkgs/applications/audio/dragonfly-reverb/default.nix index b3d9fd580288..fbe987e09cbe 100644 --- a/pkgs/applications/audio/dragonfly-reverb/default.nix +++ b/pkgs/applications/audio/dragonfly-reverb/default.nix @@ -1,12 +1,14 @@ -{ stdenv, fetchgit, libjack2, libGL, pkgconfig, xorg }: +{ stdenv, fetchFromGitHub, libjack2, libGL, pkgconfig, xorg }: stdenv.mkDerivation rec { name = "dragonfly-reverb-${src.rev}"; - src = fetchgit { - url = "https://github.com/michaelwillis/dragonfly-reverb"; - rev = "0.9.1"; - sha256 = "1dbykx044h768bbzabdagl4jh65gqgfsxsrarjrkp07sqnhlnhpd"; + src = fetchFromGitHub { + owner = "michaelwillis"; + repo = "dragonfly-reverb"; + rev = "0.9.4"; + sha256 = "0lc45jybjwg4wrcz4s9lvzpvqawgj825rkqhz2xxvalfbvjazi53"; + fetchSubmodules = true; }; patchPhase = '' diff --git a/pkgs/applications/audio/fluidsynth/default.nix b/pkgs/applications/audio/fluidsynth/default.nix index 27ca539850e2..b3b838c5d470 100644 --- a/pkgs/applications/audio/fluidsynth/default.nix +++ b/pkgs/applications/audio/fluidsynth/default.nix @@ -5,13 +5,13 @@ stdenv.mkDerivation rec { name = "fluidsynth-${version}"; - version = "1.1.10"; + version = "1.1.11"; src = fetchFromGitHub { owner = "FluidSynth"; repo = "fluidsynth"; rev = "v${version}"; - sha256 = "04jlgq1d1hd8r9cnmkl3lgf1fgm7kgy4hh9nfddap41fm1wp121p"; + sha256 = "0n75jq3xgq46hfmjkaaxz3gic77shs4fzajq40c8gk043i84xbdh"; }; nativeBuildInputs = [ pkgconfig cmake ]; diff --git a/pkgs/applications/audio/snapcast/default.nix b/pkgs/applications/audio/snapcast/default.nix index 3afd73493b05..5730dec6b994 100644 --- a/pkgs/applications/audio/snapcast/default.nix +++ b/pkgs/applications/audio/snapcast/default.nix @@ -1,49 +1,61 @@ { stdenv, lib, fetchFromGitHub, cmake, pkgconfig -, asio, alsaLib, avahi, libogg, libvorbis, flac }: +, alsaLib, asio, avahi, flac, libogg, libvorbis }: let - popl = stdenv.mkDerivation rec { - name = "popl-${version}"; - version = "1.1.0"; + dependency = { name, version, sha256 }: + stdenv.mkDerivation { + name = "${name}-${version}"; src = fetchFromGitHub { owner = "badaix"; - repo = "popl"; - rev = "v${version}"; - sha256 = "1zgjgcingyi1xw61azxxasaidbgqidncml5c2y2cj90mz23yam1i"; + repo = name; + rev = "v${version}"; + inherit sha256; }; + nativeBuildInputs = [ cmake ]; }; - aixlog = stdenv.mkDerivation rec { - name = "aixlog-${version}"; + aixlog = dependency { + name = "aixlog"; version = "1.2.1"; + sha256 = "1rh4jib5g41b85bqrxkl5g74hk5ryf187y9fw0am76g59xlymfpr"; + }; - src = fetchFromGitHub { - owner = "badaix"; - repo = "aixlog"; - rev = "v${version}"; - sha256 = "1rh4jib5g41b85bqrxkl5g74hk5ryf187y9fw0am76g59xlymfpr"; - }; - nativeBuildInputs = [ cmake ]; + popl = dependency { + name = "popl"; + version = "1.2.0"; + sha256 = "1z6z7fwffs3d9h56mc2m24d5gp4fc5bi8836zyfb276s6fjyfcai"; }; in stdenv.mkDerivation rec { name = "snapcast-${version}"; - version = "0.14.0"; + version = "0.15.0"; src = fetchFromGitHub { - owner = "badaix"; - repo = "snapcast"; - rev = "v${version}"; - sha256 = "14f5jrsarjdk2mixmznmighrh22j6flp7y47r9j3qzxycmm1mcf6"; + owner = "badaix"; + repo = "snapcast"; + rev = "v${version}"; + sha256 = "11rnpy6w3wm240qgmkp74k5w8wh5b7hzfx05qrnh6l7ng7m25ky2"; }; nativeBuildInputs = [ cmake pkgconfig ]; - buildInputs = [ asio popl aixlog alsaLib avahi libogg libvorbis flac ]; + # snapcast also supports building against tremor but as we have libogg, that's + # not needed + buildInputs = [ + alsaLib asio avahi flac libogg libvorbis + aixlog popl + ]; + + # Upstream systemd unit files are pretty awful, so we provide our own in a + # NixOS module. It might make sense to get that upstreamed... + postInstall = '' + install -d $out/share/doc/snapcast + cp -r ../doc/* ../*.md $out/share/doc/snapcast + ''; meta = with lib; { description = "Synchronous multi-room audio player"; diff --git a/pkgs/applications/audio/spotify/update.sh b/pkgs/applications/audio/spotify/update.sh index 114245f6d46c..0e19ca1920b4 100755 --- a/pkgs/applications/audio/spotify/update.sh +++ b/pkgs/applications/audio/spotify/update.sh @@ -1,8 +1,31 @@ -channel="stable" # stable/candidate/edge +#!/usr/bin/env nix-shell +#! nix-shell -i bash -p curl jq git gnused gnugrep + + +# executing this script without arguments will +# - find the newest stable spotify version avaiable on snapcraft (https://snapcraft.io/spotify) +# - read the current spotify version from the current nix expression +# - update the nix expression if the versions differ +# - try to build the updated version, exit if that fails +# - give instructions for upstreaming + +# Please test the update manually before pushing. There have been errors before +# and because the service is proprietary and a paid account is necessary to do +# anything with spotify automatic testing is not possible. + +# As an optional argument you can specify the snapcraft channel to update to. +# Default is `stable` and only stable updates should be pushed to nixpkgs. For +# testing you may specify `candidate` or `edge`. + + +channel="${1:-stable}" # stable/candidate/edge nixpkgs="$(git rev-parse --show-toplevel)" spotify_nix="$nixpkgs/pkgs/applications/audio/spotify/default.nix" +# +# find the newest stable spotify version avaiable on snapcraft +# # create bash array from snap info snap_info=($( @@ -12,38 +35,62 @@ snap_info=($( '.revision,.download_sha512,.version,.last_updated' )) +# "revision" is the actual version identifier on snapcraft, the "version" is +# just for human consumption. Revision is just an integer that gets increased +# by one every (stable or unstable) release. revision="${snap_info[0]}" sha512="${snap_info[1]}" -version="${snap_info[2]}" +upstream_version="${snap_info[2]}" last_updated="${snap_info[3]}" -# find the last commited version -version_pre=$( - git grep 'version\s*=' HEAD "$spotify_nix" \ +echo "Latest $channel release is $upstream_version from $last_updated." + +# +# read the current spotify version from the currently *committed* nix expression +# + +current_nix_version=$( + grep 'version\s*=' "$spotify_nix" \ | sed -Ene 's/.*"(.*)".*/\1/p' ) -if [[ "$version_pre" = "$version" ]]; then +echo "Current nix version: $current_nix_version" + +# +# update the nix expression if the versions differ +# + +if [[ "$current_nix_version" = "$upstream_version" ]]; then echo "Spotify is already up ot date" exit 0 fi -echo "Updating from ${version_pre} to ${version}, released on ${last_updated}" +echo "Updating from ${current_nix_version} to ${upstream_version}, released on ${last_updated}" -# search-andreplace revision, hash and version +# search-and-replace revision, hash and version sed --regexp-extended \ -e 's/rev\s*=\s*"[0-9]+"\s*;/rev = "'"${revision}"'";/' \ - -e 's/sha512\s*=\s*".{128}"\s*;/sha512 = "'"${sha512}"'";/' \ - -e 's/version\s*=\s*".*"\s*;/version = "'"${version}"'";/' \ + -e 's/sha512\s*=\s*"[^"]*"\s*;/sha512 = "'"${sha512}"'";/' \ + -e 's/version\s*=\s*".*"\s*;/version = "'"${upstream_version}"'";/' \ -i "$spotify_nix" +# +# try to build the updated version +# + if ! nix-build -A spotify "$nixpkgs"; then echo "The updated spotify failed to build." exit 1 fi +# +# give instructions for upstreaming +# + git add "$spotify_nix" -# show diff for review -git diff HEAD -# prepare commit message, but allow edit -git commit --edit --message "spotify: $version_pre -> $version" +# show changes for review +git status +echo 'Please review and test the changes (./result/bin/spotify).' +echo 'Then stage the changes with `git add` and commit with:' +# prepare commit message +echo "git commit -m 'spotify: $current_nix_version -> $upstream_version'" diff --git a/pkgs/applications/audio/whipper/default.nix b/pkgs/applications/audio/whipper/default.nix index 1097e7b8fd7e..fa5845c260be 100644 --- a/pkgs/applications/audio/whipper/default.nix +++ b/pkgs/applications/audio/whipper/default.nix @@ -6,7 +6,7 @@ python2.pkgs.buildPythonApplication rec { version = "0.7.0"; src = fetchFromGitHub { - owner = "JoeLametta"; + owner = "whipper-team"; repo = "whipper"; rev = "v${version}"; sha256 = "04m8s0s9dcnly9l6id8vv99n9kbjrjid79bss52ay9yvwng0frmj"; @@ -39,7 +39,7 @@ python2.pkgs.buildPythonApplication rec { ''; meta = with stdenv.lib; { - homepage = https://github.com/JoeLametta/whipper; + homepage = https://github.com/whipper-team/whipper; description = "A CD ripper aiming for accuracy over speed"; maintainers = with maintainers; [ rycee jgeerds ]; license = licenses.gpl3Plus; diff --git a/pkgs/applications/editors/eclipse/plugins.nix b/pkgs/applications/editors/eclipse/plugins.nix index fa83975b8d97..cbc30588434a 100644 --- a/pkgs/applications/editors/eclipse/plugins.nix +++ b/pkgs/applications/editors/eclipse/plugins.nix @@ -555,12 +555,12 @@ rec { spotbugs = buildEclipseUpdateSite rec { name = "spotbugs-${version}"; - version = "3.1.6"; + version = "3.1.8"; src = fetchzip { stripRoot = false; url = "https://github.com/spotbugs/spotbugs/releases/download/${version}/eclipsePlugin.zip"; - sha256 = "1qsams12n64slp00nfc9v943sy9bzffzm7anqqaz2hjw64iia7fh"; + sha256 = "0086shivxx745f69226f59xcv7l9xliwyr9kxm6zyn753c888js3"; }; meta = with stdenv.lib; { diff --git a/pkgs/applications/kde/marble.nix b/pkgs/applications/kde/marble.nix index ea140cad5ee5..b02e29e33513 100644 --- a/pkgs/applications/kde/marble.nix +++ b/pkgs/applications/kde/marble.nix @@ -14,4 +14,7 @@ mkDerivation { qtscript qtsvg qtquickcontrols qtwebkit shared-mime-info krunner kparts knewstuff gpsd ]; + preConfigure = '' + cmakeFlags+=" -DINCLUDE_INSTALL_DIR=''${!outputDev}/include" + ''; } diff --git a/pkgs/applications/misc/lxterminal/default.nix b/pkgs/applications/misc/lxterminal/default.nix index 314f8bcece10..4fd86a5a4f52 100644 --- a/pkgs/applications/misc/lxterminal/default.nix +++ b/pkgs/applications/misc/lxterminal/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, automake, autoconf, intltool, pkgconfig, gtk3, vte +{ stdenv, fetchurl, automake, autoconf, intltool, pkgconfig, gtk3, vte, wrapGAppsHook , libxslt, docbook_xml_dtd_412, docbook_xsl, libxml2, findXMLCatalogs }: @@ -18,7 +18,7 @@ stdenv.mkDerivation rec { ]; nativeBuildInputs = [ - automake autoconf intltool pkgconfig + automake autoconf intltool pkgconfig wrapGAppsHook libxslt docbook_xml_dtd_412 docbook_xsl libxml2 findXMLCatalogs ]; diff --git a/pkgs/applications/misc/mako/default.nix b/pkgs/applications/misc/mako/default.nix new file mode 100644 index 000000000000..3950e4945cf1 --- /dev/null +++ b/pkgs/applications/misc/mako/default.nix @@ -0,0 +1,25 @@ +{ stdenv, fetchFromGitHub, meson, ninja, pkgconfig, scdoc, systemd, pango, cairo +, wayland, wayland-protocols }: + +stdenv.mkDerivation rec { + name = "mako-${version}"; + version = "1.1"; + + src = fetchFromGitHub { + owner = "emersion"; + repo = "mako"; + rev = "v${version}"; + sha256 = "18krsyp9g6f689024dn1mq8dyj4yg8c3kcy5s88q1gm8py6c4493"; + }; + + nativeBuildInputs = [ meson ninja pkgconfig scdoc ]; + buildInputs = [ systemd pango cairo wayland wayland-protocols ]; + + meta = with stdenv.lib; { + description = "A lightweight Wayland notification daemon"; + homepage = https://wayland.emersion.fr/mako/; + license = licenses.mit; + maintainers = with maintainers; [ dywedir ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/applications/misc/sequeler/default.nix b/pkgs/applications/misc/sequeler/default.nix index 89b4e33a927b..24f4cbfe8eff 100644 --- a/pkgs/applications/misc/sequeler/default.nix +++ b/pkgs/applications/misc/sequeler/default.nix @@ -4,7 +4,7 @@ let - version = "0.6.2"; + version = "0.6.3"; sqlGda = libgda.override { mysqlSupport = true; postgresSupport = true; @@ -17,7 +17,7 @@ in stdenv.mkDerivation rec { owner = "Alecaddd"; repo = "sequeler"; rev = "v${version}"; - sha256 = "0j5z3z34jc1acclmlkjpv7fcs4f2gf0bcfnvcpn3zdzw9fzj0sw7"; + sha256 = "14a0i9y003m4pvdfp4ax7jfxvyzvyfg45zhln44rm08rfngb0f7k"; }; nativeBuildInputs = [ meson ninja pkgconfig vala gobjectIntrospection gettext wrapGAppsHook python3 desktop-file-utils ]; diff --git a/pkgs/applications/misc/visidata/default.nix b/pkgs/applications/misc/visidata/default.nix new file mode 100644 index 000000000000..dd95b231bd13 --- /dev/null +++ b/pkgs/applications/misc/visidata/default.nix @@ -0,0 +1,29 @@ +{ buildPythonApplication, lib, fetchFromGitHub +, dateutil, pyyaml, openpyxl, xlrd, h5py, fonttools, lxml, pandas, pyshp +}: +buildPythonApplication rec { + name = "${pname}-${version}"; + pname = "visidata"; + version = "1.3.1"; + + src = fetchFromGitHub { + owner = "saulpw"; + repo = "visidata"; + rev = "v${version}"; + sha256 = "1d5sx1kfil1vjkynaac5sjsnn9azxxw834gwbh9plzd5fwxg4dz2"; + }; + + propagatedBuildInputs = [dateutil pyyaml openpyxl xlrd h5py fonttools + lxml pandas pyshp ]; + + doCheck = false; + + meta = { + inherit version; + description = "Interactive terminal multitool for tabular data"; + license = lib.licenses.gpl3 ; + maintainers = [lib.maintainers.raskin]; + platforms = lib.platforms.linux; + homepage = "http://visidata.org/"; + }; +} diff --git a/pkgs/applications/misc/xmr-stak/default.nix b/pkgs/applications/misc/xmr-stak/default.nix index 877a25fe662e..ed90689da1ea 100644 --- a/pkgs/applications/misc/xmr-stak/default.nix +++ b/pkgs/applications/misc/xmr-stak/default.nix @@ -12,13 +12,13 @@ in stdenv'.mkDerivation rec { name = "xmr-stak-${version}"; - version = "2.5.0"; + version = "2.5.1"; src = fetchFromGitHub { owner = "fireice-uk"; repo = "xmr-stak"; rev = "${version}"; - sha256 = "1qls0rai9c1cszcqqqmhcdvcsmm23w1jxzlq2b035apkz7ywbxjl"; + sha256 = "0n042vxrr52k6x86h06f298flmxghsfh2a3kqnc41r7p7qybgjj8"; }; NIX_CFLAGS_COMPILE = "-O3"; @@ -40,6 +40,6 @@ stdenv'.mkDerivation rec { description = "Unified All-in-one Monero miner"; homepage = "https://github.com/fireice-uk/xmr-stak"; license = licenses.gpl3Plus; - maintainers = with maintainers; [ fpletz ]; + maintainers = with maintainers; [ fpletz bfortz ]; }; } diff --git a/pkgs/applications/networking/browsers/brave/default.nix b/pkgs/applications/networking/browsers/brave/default.nix new file mode 100644 index 000000000000..d097e0b448ca --- /dev/null +++ b/pkgs/applications/networking/browsers/brave/default.nix @@ -0,0 +1,108 @@ +{ stdenv, lib, fetchurl, + dpkg, + alsaLib, + at-spi2-atk, + atk, + cairo, + cups, + dbus, + expat, + fontconfig, + freetype, + gdk_pixbuf, + glib, + gnome2, + gtk3, + libuuid, + libX11, + libXcomposite, + libXcursor, + libXdamage, + libXext, + libXfixes, + libXi, + libXrandr, + libXrender, + libXScrnSaver, + libXtst, + nspr, + nss, + pango, + udev, + xorg, + zlib +}: + +let rpath = lib.makeLibraryPath [ + alsaLib + at-spi2-atk + atk + cairo + cups + dbus + expat + fontconfig + freetype + gdk_pixbuf + glib + gnome2.GConf + gtk3 + libuuid + libX11 + libXcomposite + libXcursor + libXdamage + libXext + libXfixes + libXi + libXrandr + libXrender + libXScrnSaver + libXtst + nspr + nss + pango + udev + xorg.libxcb + zlib +]; + + +in stdenv.mkDerivation rec { + name = "brave"; + version = "0.25.2"; + + src = fetchurl { + url = "https://github.com/brave/browser-laptop/releases/download/v${version}dev/brave_${version}_amd64.deb"; + sha256 = "1r3rsa6szps7mvvpqyw0mg16zn36x451dxq4nmn2l5ds5cp1f017"; + }; + + phases = [ "unpackPhase" "installPhase" ]; + + nativeBuildInputs = [ dpkg ]; + + unpackPhase = "dpkg-deb -x $src ."; + + installPhase = '' + mkdir -p $out + + cp -R usr/* $out + + patchelf \ + --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \ + --set-rpath "${rpath}" $out/bin/brave + ''; + + meta = with stdenv.lib; { + homepage = "https://brave.com/"; + description = "Privacy-oriented browser for Desktop and Laptop computers"; + longDescription = '' + Brave browser blocks the ads and trackers that slow you down, + chew up your bandwidth, and invade your privacy. Brave lets you + contribute to your favorite creators automatically. + ''; + license = licenses.mpl20; + maintainers = [ maintainers.uskudnik ]; + platforms = [ "x86_64-linux" ]; + }; +} diff --git a/pkgs/applications/networking/browsers/firefox/common.nix b/pkgs/applications/networking/browsers/firefox/common.nix index bfdb5fcc0103..b72e3703ef7e 100644 --- a/pkgs/applications/networking/browsers/firefox/common.nix +++ b/pkgs/applications/networking/browsers/firefox/common.nix @@ -1,7 +1,7 @@ -{ pname, version, updateScript ? null -, src, patches ? [], extraConfigureFlags ? [], extraMakeFlags ? [] -, overrides ? {}, extraNativeBuildInputs ? [], meta -, isTorBrowserLike ? false }: +{ pname, ffversion, meta, updateScript ? null +, src, unpackPhase ? null, patches ? [] +, extraNativeBuildInputs ? [], extraConfigureFlags ? [], extraMakeFlags ? [] +, isTorBrowserLike ? false, tbversion ? null }: { lib, stdenv, pkgconfig, pango, perl, python2, zip, libIDL , libjpeg, zlib, dbus, dbus-glib, bzip2, xorg @@ -19,7 +19,7 @@ , alsaSupport ? stdenv.isLinux, alsaLib , pulseaudioSupport ? true, libpulseaudio , ffmpegSupport ? true, gstreamer, gst-plugins-base -, gtk3Support ? !isTorBrowserLike, gtk2, gtk3, wrapGAppsHook +, gtk3Support ? true, gtk2, gtk3, wrapGAppsHook , gssSupport ? true, kerberos ## privacy-related options @@ -31,7 +31,7 @@ # webrtcSupport breaks the aarch64 build on version >= 60. # https://bugzilla.mozilla.org/show_bug.cgi?id=1434589 -, webrtcSupport ? (if lib.versionAtLeast version "60" && stdenv.isAarch64 then false else !privacySupport) +, webrtcSupport ? (if lib.versionAtLeast ffversion "60" && stdenv.isAarch64 then false else !privacySupport) , geolocationSupport ? !privacySupport , googleAPISupport ? geolocationSupport , crashreporterSupport ? false @@ -80,23 +80,24 @@ let browserName = if stdenv.isDarwin then "Firefox" else "firefox"; in -stdenv.mkDerivation (rec { +stdenv.mkDerivation rec { name = "${pname}-unwrapped-${version}"; + version = if !isTorBrowserLike then ffversion else tbversion; - inherit src patches meta; + inherit src unpackPhase patches meta; buildInputs = [ gtk2 perl zip libIDL libjpeg zlib bzip2 dbus dbus-glib pango freetype fontconfig xorg.libXi xorg.libXcursor xorg.libX11 xorg.libXrender xorg.libXft xorg.libXt file - nspr libnotify xorg.pixman yasm libGLU_combined + libnotify xorg.pixman yasm libGLU_combined xorg.libXScrnSaver xorg.scrnsaverproto xorg.libXext xorg.xextproto sqlite unzip makeWrapper libevent libstartup_notification libvpx /* cairo */ icu libpng jemalloc glib ] - ++ lib.optionals (!isTorBrowserLike) [ nss ] - ++ lib.optional (lib.versionOlder version "61") hunspell + ++ lib.optionals (!isTorBrowserLike) [ nspr nss ] + ++ lib.optional (lib.versionOlder ffversion "61") hunspell ++ lib.optional alsaSupport alsaLib ++ lib.optional pulseaudioSupport libpulseaudio # only headers are needed ++ lib.optionals ffmpegSupport [ gstreamer gst-plugins-base ] @@ -106,12 +107,17 @@ stdenv.mkDerivation (rec { AVFoundation MediaToolbox CoreLocation Foundation libobjc AddressBook cups ]; - NIX_CFLAGS_COMPILE = [ "-I${nspr.dev}/include/nspr" - "-I${nss.dev}/include/nss" - "-I${glib.dev}/include/gio-unix-2.0" ] - ++ lib.optional stdenv.isDarwin [ - "-isystem ${llvmPackages.libcxx}/include/c++/v1" - "-DMAC_OS_X_VERSION_MAX_ALLOWED=MAC_OS_X_VERSION_10_10" ]; + NIX_CFLAGS_COMPILE = [ + "-I${glib.dev}/include/gio-unix-2.0" + ] + ++ lib.optionals (!isTorBrowserLike) [ + "-I${nspr.dev}/include/nspr" + "-I${nss.dev}/include/nss" + ] + ++ lib.optional stdenv.isDarwin [ + "-isystem ${llvmPackages.libcxx}/include/c++/v1" + "-DMAC_OS_X_VERSION_MAX_ALLOWED=MAC_OS_X_VERSION_10_10" + ]; postPatch = lib.optionalString stdenv.isDarwin '' substituteInPlace js/src/jsmath.cpp --replace 'defined(HAVE___SINCOS)' 0 @@ -128,14 +134,14 @@ stdenv.mkDerivation (rec { rm -f configure rm -f js/src/configure rm -f .mozconfig* - '' + (if lib.versionAtLeast version "58" + '' + (if lib.versionAtLeast ffversion "58" # this will run autoconf213 then '' configureScript="$(realpath ./mach) configure" '' else '' make -f client.mk configure-files configureScript="$(realpath ./configure)" - '') + lib.optionalString (!isTorBrowserLike && lib.versionAtLeast version "53") '' + '') + lib.optionalString (lib.versionAtLeast ffversion "53") '' export MOZCONFIG=$(pwd)/mozconfig # Set C flags for Rust's bindgen program. Unlike ordinary C @@ -158,7 +164,7 @@ stdenv.mkDerivation (rec { # please get your own set of keys. echo "AIzaSyDGi15Zwl11UNe6Y-5XW_upsfyw31qwZPI" > $TMPDIR/ga configureFlagsArray+=("--with-google-api-keyfile=$TMPDIR/ga") - '' + lib.optionalString (lib.versionOlder version "58") '' + '' + lib.optionalString (lib.versionOlder ffversion "58") '' cd obj-* ''; @@ -185,37 +191,29 @@ stdenv.mkDerivation (rec { "--disable-gconf" "--enable-default-toolkit=${default-toolkit}" ] - ++ lib.optional (stdenv.isDarwin && lib.versionAtLeast version "61") "--disable-xcode-checks" - ++ lib.optional (lib.versionOlder version "61") "--enable-system-hunspell" - ++ lib.optionals (lib.versionAtLeast version "56" && !stdenv.hostPlatform.isi686) [ + ++ lib.optional (stdenv.isDarwin && lib.versionAtLeast ffversion "61") "--disable-xcode-checks" + ++ lib.optional (lib.versionOlder ffversion "61") "--enable-system-hunspell" + ++ lib.optionals (lib.versionAtLeast ffversion "56" && !stdenv.hostPlatform.isi686) [ # on i686-linux: --with-libclang-path is not available in this configuration "--with-libclang-path=${llvmPackages.libclang}/lib" "--with-clang-path=${llvmPackages.clang}/bin/clang" ] - ++ lib.optionals (lib.versionAtLeast version "57") [ + ++ lib.optionals (lib.versionAtLeast ffversion "57") [ "--enable-webrender=build" ] # TorBrowser patches these ++ lib.optionals (!isTorBrowserLike) [ - "--with-system-nss" "--with-system-nspr" + "--with-system-nss" ] # and wants these ++ lib.optionals isTorBrowserLike ([ - "--with-tor-browser-version=${version}" + "--with-tor-browser-version=${tbversion}" "--enable-signmar" "--enable-verify-mar" - - # We opt out of TorBrowser's nspr because that patch is useless on - # anything but Windows and produces zero fingerprinting - # possibilities on other platforms. - # Lets save some space instead. - "--with-system-nspr" - ] ++ flag geolocationSupport "mozril-geoloc" - ++ flag safeBrowsingSupport "safe-browsing" - ) + ]) ++ flag alsaSupport "alsa" ++ flag pulseaudioSupport "pulseaudio" @@ -226,6 +224,11 @@ stdenv.mkDerivation (rec { ++ flag crashreporterSupport "crashreporter" ++ lib.optional drmSupport "--enable-eme=widevine" + ++ lib.optionals (lib.versionOlder ffversion "60") ([] + ++ flag geolocationSupport "mozril-geoloc" + ++ flag safeBrowsingSupport "safe-browsing" + ) + ++ (if debugBuild then [ "--enable-debug" "--enable-profiling" ] else [ "--disable-debug" "--enable-release" "--enable-optimize" @@ -239,11 +242,11 @@ stdenv.mkDerivation (rec { # top level and then run `make` in obj-*. (We can also run the # `make` at the top level in 58, but then we would have to `cd` to # `make install` anyway. This is ugly, but simple.) - postConfigure = lib.optionalString (lib.versionAtLeast version "58") '' + postConfigure = lib.optionalString (lib.versionAtLeast ffversion "58") '' cd obj-* ''; - preBuild = lib.optionalString (enableOfficialBranding && isTorBrowserLike) '' + preBuild = lib.optionalString isTorBrowserLike '' buildFlagsArray=("MOZ_APP_DISPLAYNAME=Tor Browser") ''; @@ -302,4 +305,4 @@ stdenv.mkDerivation (rec { inherit browserName; } // lib.optionalAttrs gtk3Support { inherit gtk3; }; -} // overrides) +} diff --git a/pkgs/applications/networking/browsers/firefox/packages.nix b/pkgs/applications/networking/browsers/firefox/packages.nix index 369b18d5ead5..bd42cf2d9d0b 100644 --- a/pkgs/applications/networking/browsers/firefox/packages.nix +++ b/pkgs/applications/networking/browsers/firefox/packages.nix @@ -2,16 +2,22 @@ let - common = opts: callPackage (import ./common.nix opts); + common = opts: callPackage (import ./common.nix opts) {}; nixpkgsPatches = [ ./env_var_for_system_dir.patch ]; firefox60_aarch64_skia_patch = fetchpatch { - name = "aarch64-skia.patch"; - url = https://src.fedoraproject.org/rpms/firefox/raw/8cff86d95da3190272d1beddd45b41de3148f8ef/f/build-aarch64-skia.patch; - sha256 = "11acb0ms4jrswp7268nm2p8g8l4lv8zc666a5bqjbb09x9k6b78k"; + name = "aarch64-skia.patch"; + url = https://src.fedoraproject.org/rpms/firefox/raw/8cff86d95da3190272d1beddd45b41de3148f8ef/f/build-aarch64-skia.patch; + sha256 = "11acb0ms4jrswp7268nm2p8g8l4lv8zc666a5bqjbb09x9k6b78k"; + }; + + firefox60_triplet_patch = fetchpatch { + name = "triplet.patch"; + url = https://hg.mozilla.org/releases/mozilla-release/raw-rev/bc651d3d910c; + sha256 = "0iybkadsgsf6a3pq3jh8z1p110vmpkih8i35jfj8micdkhxzi89g"; }; in @@ -20,9 +26,9 @@ rec { firefox = common rec { pname = "firefox"; - version = "62.0.3"; + ffversion = "62.0.3"; src = fetchurl { - url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz"; + url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz"; sha512 = "0kvb664s47bmmdq2ppjsnyqy8yaiig1xj81r25s36c3i8igfq3zxvws10k2dlmmmrwyc5k4g9i9imgkxj7r3xwwqxc72dl429wvfys8"; }; @@ -42,13 +48,13 @@ rec { updateScript = callPackage ./update.nix { attrPath = "firefox-unwrapped"; }; - } {}; + }; firefox-esr-52 = common rec { pname = "firefox-esr"; - version = "52.9.0esr"; + ffversion = "52.9.0esr"; src = fetchurl { - url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz"; + url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz"; sha512 = "bfca42668ca78a12a9fb56368f4aae5334b1f7a71966fbba4c32b9c5e6597aac79a6e340ac3966779d2d5563eb47c054ab33cc40bfb7306172138ccbd3adb2b9"; }; @@ -64,15 +70,15 @@ rec { }; updateScript = callPackage ./update.nix { attrPath = "firefox-esr-52-unwrapped"; - versionSuffix = "esr"; + ffversionSuffix = "esr"; }; - } {}; + }; firefox-esr-60 = common rec { pname = "firefox-esr"; - version = "60.2.2esr"; + ffversion = "60.2.2esr"; src = fetchurl { - url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz"; + url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz"; sha512 = "2h2naaxx4lv90bjpcrsma4sdhl4mvsisx3zi09vakjwv2lad91gy41cmcpqprpcbsmlvpqf8yiv52ah4d02a8d9335xhw2ajw6asjc1"; }; @@ -91,23 +97,27 @@ rec { attrPath = "firefox-esr-60-unwrapped"; versionSuffix = "esr"; }; - } {}; + }; } // (let - commonAttrs = { - overrides = { - unpackPhase = '' - # fetchFromGitHub produces ro sources, root dir gets a name that - # is too long for shebangs. fixing - cp -a $src tor-browser - chmod -R +w tor-browser - cd tor-browser - - # set times for xpi archives - find . -exec touch -d'2010-01-01 00:00' {} \; - ''; - }; + tbcommon = args: common (args // { + pname = "tor-browser"; + isTorBrowserLike = true; + + unpackPhase = '' + # fetchFromGitHub produces ro sources, root dir gets a name that + # is too long for shebangs. fixing + cp -a $src tor-browser + chmod -R +w tor-browser + cd tor-browser + + # set times for xpi archives + find . -exec touch -d'2010-01-01 00:00' {} \; + ''; + + patches = nixpkgsPatches + ++ lib.optional (args.tbversion == "8.0.2") firefox60_triplet_patch; meta = { description = "A web browser built from TorBrowser source tree"; @@ -142,14 +152,13 @@ rec { platforms = lib.platforms.linux; license = lib.licenses.bsd3; }; - }; + }); in rec { - tor-browser-7-5 = common (rec { - pname = "tor-browser"; - version = "7.5.6"; - isTorBrowserLike = true; + tor-browser-7-5 = (tbcommon rec { + ffversion = "52.9.0esr"; + tbversion = "7.5.6"; # FIXME: fetchFromGitHub is not ideal, unpacked source is >900Mb src = fetchFromGitHub { @@ -159,27 +168,24 @@ in rec { rev = "95bb92d552876a1f4260edf68fda5faa3eb36ad8"; sha256 = "1ykn3yg4s36g2cpzxbz7s995c33ij8kgyvghx38z4i8siaqxdddy"; }; + }).override { + gtk3Support = false; + }; - patches = nixpkgsPatches; - } // commonAttrs) {}; - - tor-browser-8-0 = common (rec { - pname = "tor-browser"; - version = "8.0.1"; - isTorBrowserLike = true; + tor-browser-8-0 = tbcommon rec { + ffversion = "60.2.1esr"; + tbversion = "8.0.2"; # FIXME: fetchFromGitHub is not ideal, unpacked source is >900Mb src = fetchFromGitHub { owner = "SLNOS"; repo = "tor-browser"; - # branch "tor-browser-52.8.0esr-8.0-1-slnos"; - rev = "5d7e9e1cacbf70840f8f1a9aafe99f354f9ad0ca"; - sha256 = "0cwxwwc4m7331bbp3id694ffwxar0j5kfpgpn9l1z36rmgv92n21"; + # branch "tor-browser-60.2.1esr-8.0-1-slnos" + rev = "4f71403a3e6203baa349a8f81d8664782c5ea548"; + sha256 = "0zxdi162gpnfca7g77hc0rw4wkmxhfzp9hfmw6dpn97d5kn1zqq3"; }; + }; - patches = nixpkgsPatches; - } // commonAttrs) {}; - - tor-browser = tor-browser-7-5; + tor-browser = tor-browser-8-0; }) diff --git a/pkgs/applications/networking/cloudflared/default.nix b/pkgs/applications/networking/cloudflared/default.nix new file mode 100644 index 000000000000..fd047147e01a --- /dev/null +++ b/pkgs/applications/networking/cloudflared/default.nix @@ -0,0 +1,25 @@ +{ stdenv, buildGoPackage, fetchFromGitHub }: + +buildGoPackage rec { + name = "cloudflared-${version}"; + version = "2018.10.3"; + + goPackagePath = "github.com/cloudflare/cloudflared"; + + src = fetchFromGitHub { + owner = "cloudflare"; + repo = "cloudflared"; + rev = "41916365b689bf2cc1446ea5717e4d26cc8aed43"; # untagged + sha256 = "109bhnmvlvj3ag9vw090fy202z8aaqr1rakhn8v550wwy30h9zkf"; + }; + + goDeps = ./deps.nix; + + meta = with stdenv.lib; { + description = "CloudFlare Argo Tunnel daemon (and DNS-over-HTTPS client)"; + homepage = https://www.cloudflare.com/products/argo-tunnel; + license = licenses.unfree; + platforms = platforms.unix; + maintainers = [ maintainers.thoughtpolice ]; + }; +} diff --git a/pkgs/applications/networking/cloudflared/deps.nix b/pkgs/applications/networking/cloudflared/deps.nix new file mode 100644 index 000000000000..da7f509378dd --- /dev/null +++ b/pkgs/applications/networking/cloudflared/deps.nix @@ -0,0 +1,444 @@ +# file generated from Gopkg.lock using dep2nix (https://github.com/nixcloud/dep2nix) +[ + { + goPackagePath = "github.com/BurntSushi/toml"; + fetch = { + type = "git"; + url = "https://github.com/BurntSushi/toml"; + rev = "b26d9c308763d68093482582cea63d69be07a0f0"; + sha256 = "0k7v2i1d2d6si8gswn83qb84czhhia53v2wdy33yz9ppdidxk0ry"; + }; + } + { + goPackagePath = "github.com/beorn7/perks"; + fetch = { + type = "git"; + url = "https://github.com/beorn7/perks"; + rev = "3a771d992973f24aa725d07868b467d1ddfceafb"; + sha256 = "1l2lns4f5jabp61201sh88zf3b0q793w4zdgp9nll7mmfcxxjif3"; + }; + } + { + goPackagePath = "github.com/certifi/gocertifi"; + fetch = { + type = "git"; + url = "https://github.com/certifi/gocertifi"; + rev = "deb3ae2ef2610fde3330947281941c562861188b"; + sha256 = "1xy09y1fdfcny1z09hd4493w1acj5min9z2sx4gfpshc80icrmr6"; + }; + } + { + goPackagePath = "github.com/cloudflare/brotli-go"; + fetch = { + type = "git"; + url = "https://github.com/cloudflare/brotli-go"; + rev = "18c9f6c67e3dfc12e0ddaca748d2887f97a7ac28"; + sha256 = "10112y4k8qing552n0df9w33cgminrzm6g3x7ng0vgin4sv59785"; + }; + } + { + goPackagePath = "github.com/coredns/coredns"; + fetch = { + type = "git"; + url = "https://github.com/coredns/coredns"; + rev = "992e7928c7c258628d2b13b769acc86781b9faea"; + sha256 = "0mvlkca11ikwzii0p7g5a2z3gn1xrp7qmmjwklp4i52lbnsawzv0"; + }; + } + { + goPackagePath = "github.com/coreos/go-oidc"; + fetch = { + type = "git"; + url = "https://github.com/coreos/go-oidc"; + rev = "a93f71fdfe73d2c0f5413c0565eea0af6523a6df"; + sha256 = "00pmmky0y9a9l767xn16xlf52h81j4869n6j0xql79rybp6xc1f3"; + }; + } + { + goPackagePath = "github.com/coreos/go-systemd"; + fetch = { + type = "git"; + url = "https://github.com/coreos/go-systemd"; + rev = "39ca1b05acc7ad1220e09f133283b8859a8b71ab"; + sha256 = "1kzqrrzqspa5qm7kwslxl3m16lqzns23c24rv474ajzwmj3ixmx1"; + }; + } + { + goPackagePath = "github.com/coreos/pkg"; + fetch = { + type = "git"; + url = "https://github.com/coreos/pkg"; + rev = "97fdf19511ea361ae1c100dd393cc47f8dcfa1e1"; + sha256 = "1srn87wih25l09f75483hnxsr8fc6rq3bk7w1x8125ym39p6mg21"; + }; + } + { + goPackagePath = "github.com/davecgh/go-spew"; + fetch = { + type = "git"; + url = "https://github.com/davecgh/go-spew"; + rev = "346938d642f2ec3594ed81d874461961cd0faa76"; + sha256 = "0d4jfmak5p6lb7n2r6yvf5p1zcw0l8j74kn55ghvr7zr7b7axm6c"; + }; + } + { + goPackagePath = "github.com/elgs/gosqljson"; + fetch = { + type = "git"; + url = "https://github.com/elgs/gosqljson"; + rev = "027aa4915315a0b2825c0f025cea347829b974fa"; + sha256 = "14i45m1y505acvsk4l725bp8p9w3mcg49khz9hxkzg3afg7nc5gq"; + }; + } + { + goPackagePath = "github.com/equinox-io/equinox"; + fetch = { + type = "git"; + url = "https://github.com/equinox-io/equinox"; + rev = "f24972fa72facf59d05c91c848b65eac38815915"; + sha256 = "1d3620g1kxyzn8b3py2471qp8ssyzm1qnpbap9gxrmg8912wiww1"; + }; + } + { + goPackagePath = "github.com/facebookgo/grace"; + fetch = { + type = "git"; + url = "https://github.com/facebookgo/grace"; + rev = "75cf19382434e82df4dd84953f566b8ad23d6e9e"; + sha256 = "15chyvgv5y59w9x2asm0vh29cmmcji7f5vxvv8gqcr15nkyi61q0"; + }; + } + { + goPackagePath = "github.com/flynn/go-shlex"; + fetch = { + type = "git"; + url = "https://github.com/flynn/go-shlex"; + rev = "3f9db97f856818214da2e1057f8ad84803971cff"; + sha256 = "1j743lysygkpa2s2gii2xr32j7bxgc15zv4113b0q9jhn676ysia"; + }; + } + { + goPackagePath = "github.com/getsentry/raven-go"; + fetch = { + type = "git"; + url = "https://github.com/getsentry/raven-go"; + rev = "ed7bcb39ff10f39ab08e317ce16df282845852fa"; + sha256 = "0pqggcjbia9sidxqxnyd5z5k44iswxaqss3qvkka8bfm082kczij"; + }; + } + { + goPackagePath = "github.com/golang-collections/collections"; + fetch = { + type = "git"; + url = "https://github.com/golang-collections/collections"; + rev = "604e922904d35e97f98a774db7881f049cd8d970"; + sha256 = "04g0xc1bs4aphc2rcj9knah2shmck500qagnazy4mg052b84ggwm"; + }; + } + { + goPackagePath = "github.com/golang/protobuf"; + fetch = { + type = "git"; + url = "https://github.com/golang/protobuf"; + rev = "b4deda0973fb4c70b50d226b1af49f3da59f5265"; + sha256 = "0ya4ha7m20bw048m1159ppqzlvda4x0vdprlbk5sdgmy74h3xcdq"; + }; + } + { + goPackagePath = "github.com/google/uuid"; + fetch = { + type = "git"; + url = "https://github.com/google/uuid"; + rev = "064e2069ce9c359c118179501254f67d7d37ba24"; + sha256 = "1b1ibx3rbiv7xwa9kz4b4zpp1fza5cjnn8v6749b4vrkjjmp3rqb"; + }; + } + { + goPackagePath = "github.com/gorilla/context"; + fetch = { + type = "git"; + url = "https://github.com/gorilla/context"; + rev = "08b5f424b9271eedf6f9f0ce86cb9396ed337a42"; + sha256 = "03p4hn87vcmfih0p9w663qbx9lpsf7i7j3lc7yl7n84la3yz63m4"; + }; + } + { + goPackagePath = "github.com/gorilla/mux"; + fetch = { + type = "git"; + url = "https://github.com/gorilla/mux"; + rev = "e3702bed27f0d39777b0b37b664b6280e8ef8fbf"; + sha256 = "0pvzm23hklxysspnz52mih6h1q74vfrdhjfm1l3sa9r8hhqmmld2"; + }; + } + { + goPackagePath = "github.com/gorilla/websocket"; + fetch = { + type = "git"; + url = "https://github.com/gorilla/websocket"; + rev = "ea4d1f681babbce9545c9c5f3d5194a789c89f5b"; + sha256 = "1bhgs2542qs49p1dafybqxfs2qc072xv41w5nswyrknwyjxxs2a1"; + }; + } + { + goPackagePath = "github.com/grpc-ecosystem/grpc-opentracing"; + fetch = { + type = "git"; + url = "https://github.com/grpc-ecosystem/grpc-opentracing"; + rev = "8e809c8a86450a29b90dcc9efbf062d0fe6d9746"; + sha256 = "1yz3gxhdipmi63n32y5srwx7p254k3fm8y64cimkb1gz7sw99nxw"; + }; + } + { + goPackagePath = "github.com/jonboulle/clockwork"; + fetch = { + type = "git"; + url = "https://github.com/jonboulle/clockwork"; + rev = "2eee05ed794112d45db504eb05aa693efd2b8b09"; + sha256 = "1pqxhsdavbp1n5grgyx2j6ylvql2fzn2cvpsgkc8li69dil7sibl"; + }; + } + { + goPackagePath = "github.com/lib/pq"; + fetch = { + type = "git"; + url = "https://github.com/lib/pq"; + rev = "90697d60dd844d5ef6ff15135d0203f65d2f53b8"; + sha256 = "0hb4bfsk8g5473yzbf3lzrb373xicakjznkf0v085xgimz991i9r"; + }; + } + { + goPackagePath = "github.com/mattn/go-colorable"; + fetch = { + type = "git"; + url = "https://github.com/mattn/go-colorable"; + rev = "167de6bfdfba052fa6b2d3664c8f5272e23c9072"; + sha256 = "1nwjmsppsjicr7anq8na6md7b1z84l9ppnlr045hhxjvbkqwalvx"; + }; + } + { + goPackagePath = "github.com/mattn/go-isatty"; + fetch = { + type = "git"; + url = "https://github.com/mattn/go-isatty"; + rev = "0360b2af4f38e8d38c7fce2a9f4e702702d73a39"; + sha256 = "06w45aqz2a6yrk25axbly2k5wmsccv8cspb94bfmz4izvw8h927n"; + }; + } + { + goPackagePath = "github.com/matttproud/golang_protobuf_extensions"; + fetch = { + type = "git"; + url = "https://github.com/matttproud/golang_protobuf_extensions"; + rev = "c12348ce28de40eed0136aa2b644d0ee0650e56c"; + sha256 = "1d0c1isd2lk9pnfq2nk0aih356j30k3h1gi2w0ixsivi5csl7jya"; + }; + } + { + goPackagePath = "github.com/mholt/caddy"; + fetch = { + type = "git"; + url = "https://github.com/mholt/caddy"; + rev = "d3b731e9255b72d4571a5aac125634cf1b6031dc"; + sha256 = "1183cfaryw7m3hvngzv87w80pc9vp3369sjyz7a0dlbr39jip1r0"; + }; + } + { + goPackagePath = "github.com/miekg/dns"; + fetch = { + type = "git"; + url = "https://github.com/miekg/dns"; + rev = "5a2b9fab83ff0f8bfc99684bd5f43a37abe560f1"; + sha256 = "1vmgkpmwlqg6pwrpvjbn4h4al6af5fjvwwnacyv18hvlfd3fyfmx"; + }; + } + { + goPackagePath = "github.com/mitchellh/go-homedir"; + fetch = { + type = "git"; + url = "https://github.com/mitchellh/go-homedir"; + rev = "3864e76763d94a6df2f9960b16a20a33da9f9a66"; + sha256 = "1n8vya16l60i5jms43yb8fzdgwvqa2q926p5wkg3lbrk8pxy1nv0"; + }; + } + { + goPackagePath = "github.com/opentracing/opentracing-go"; + fetch = { + type = "git"; + url = "https://github.com/opentracing/opentracing-go"; + rev = "1949ddbfd147afd4d964a9f00b24eb291e0e7c38"; + sha256 = "0i0ghg94dg8lk05mw5n23983wq04yjvkjmdkc9z5y1f3508938h9"; + }; + } + { + goPackagePath = "github.com/pkg/errors"; + fetch = { + type = "git"; + url = "https://github.com/pkg/errors"; + rev = "645ef00459ed84a119197bfb8d8205042c6df63d"; + sha256 = "001i6n71ghp2l6kdl3qq1v2vmghcz3kicv9a5wgcihrzigm75pp5"; + }; + } + { + goPackagePath = "github.com/pmezard/go-difflib"; + fetch = { + type = "git"; + url = "https://github.com/pmezard/go-difflib"; + rev = "792786c7400a136282c1664665ae0a8db921c6c2"; + sha256 = "0c1cn55m4rypmscgf0rrb88pn58j3ysvc2d0432dp3c6fqg6cnzw"; + }; + } + { + goPackagePath = "github.com/prometheus/client_golang"; + fetch = { + type = "git"; + url = "https://github.com/prometheus/client_golang"; + rev = "967789050ba94deca04a5e84cce8ad472ce313c1"; + sha256 = "1djwz6shmyx5kbp9b1pim3kncq2jwn3qhbx4b0b4lq7msww76hpz"; + }; + } + { + goPackagePath = "github.com/prometheus/client_model"; + fetch = { + type = "git"; + url = "https://github.com/prometheus/client_model"; + rev = "99fa1f4be8e564e8a6b613da7fa6f46c9edafc6c"; + sha256 = "19y4ywsivhpxj7ikf2j0gm9k3cmyw37qcbfi78n526jxcc7kw998"; + }; + } + { + goPackagePath = "github.com/prometheus/common"; + fetch = { + type = "git"; + url = "https://github.com/prometheus/common"; + rev = "7600349dcfe1abd18d72d3a1770870d9800a7801"; + sha256 = "0lsp94dqpj35dny4m4x15kg4wgwawlm3in7cnpajkkacgyxagk5f"; + }; + } + { + goPackagePath = "github.com/prometheus/procfs"; + fetch = { + type = "git"; + url = "https://github.com/prometheus/procfs"; + rev = "ae68e2d4c00fed4943b5f6698d504a5fe083da8a"; + sha256 = "04sar4k99w8nvq3kwx6chz0mbp4s6xfjfxww7aqfd950xgs2jv5f"; + }; + } + { + goPackagePath = "github.com/rifflock/lfshook"; + fetch = { + type = "git"; + url = "https://github.com/rifflock/lfshook"; + rev = "bf539943797a1f34c1f502d07de419b5238ae6c6"; + sha256 = "0hns4zidw8g3s5l9dyl894fnyjr0a5xgdvx26rnal9jrn4n6z835"; + }; + } + { + goPackagePath = "github.com/sirupsen/logrus"; + fetch = { + type = "git"; + url = "https://github.com/sirupsen/logrus"; + rev = "c155da19408a8799da419ed3eeb0cb5db0ad5dbc"; + sha256 = "0g5z7al7kky11ai2dhac6gkp3b5pxsvx72yj3xg4wg3265gbn7yz"; + }; + } + { + goPackagePath = "github.com/stretchr/testify"; + fetch = { + type = "git"; + url = "https://github.com/stretchr/testify"; + rev = "f35b8ab0b5a2cef36673838d662e249dd9c94686"; + sha256 = "0dlszlshlxbmmfxj5hlwgv3r22x0y1af45gn1vd198nvvs3pnvfs"; + }; + } + { + goPackagePath = "golang.org/x/crypto"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/crypto"; + rev = "a49355c7e3f8fe157a85be2f77e6e269a0f89602"; + sha256 = "020q1laxjx5kcmnqy4wmdb63zhb0lyq6wpy40axhswzg2nd21s44"; + }; + } + { + goPackagePath = "golang.org/x/net"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/net"; + rev = "32a936f46389aa10549d60bd7833e54b01685d09"; + sha256 = "0f24khgx6s7idpnmwgkml4qyrqwkvdjd18aapn5rmybyhmrb57j7"; + }; + } + { + goPackagePath = "golang.org/x/sync"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/sync"; + rev = "1d60e4601c6fd243af51cc01ddf169918a5407ca"; + sha256 = "046jlanz2lkxq1r57x9bl6s4cvfqaic6p2xybsj8mq1120jv4rs6"; + }; + } + { + goPackagePath = "golang.org/x/sys"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/sys"; + rev = "ce36f3865eeb42541ce3f87f32f8462c5687befa"; + sha256 = "0dkmxn48l9g7w1247c473qlacfkfp8wyan54k9cbi79icdp65jja"; + }; + } + { + goPackagePath = "golang.org/x/text"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/text"; + rev = "f21a4dfb5e38f5895301dc265a8def02365cc3d0"; + sha256 = "0r6x6zjzhr8ksqlpiwm5gdd7s209kwk5p4lw54xjvz10cs3qlq19"; + }; + } + { + goPackagePath = "google.golang.org/genproto"; + fetch = { + type = "git"; + url = "https://github.com/google/go-genproto"; + rev = "ff3583edef7de132f219f0efc00e097cabcc0ec0"; + sha256 = "0bpzxk85fgvznmdf9356nzh8riqhwzcil9r2a955rbfn27lh4lmy"; + }; + } + { + goPackagePath = "google.golang.org/grpc"; + fetch = { + type = "git"; + url = "https://github.com/grpc/grpc-go"; + rev = "168a6198bcb0ef175f7dacec0b8691fc141dc9b8"; + sha256 = "0d8vj372ri55mrqfc0rhjl3albp5ykwfjhda1s5cgm5n40v70pr3"; + }; + } + { + goPackagePath = "gopkg.in/urfave/cli.v2"; + fetch = { + type = "git"; + url = "https://github.com/cbranch/cli"; + rev = "d604b6ffeee878fbf084fd2761466b6649989cee"; + sha256 = "16csqipw5vrbb91m9w9g72jlxlrhcyxa79fz6fjp6803znmjdpk2"; + }; + } + { + goPackagePath = "gopkg.in/yaml.v2"; + fetch = { + type = "git"; + url = "https://github.com/go-yaml/yaml"; + rev = "5420a8b6744d3b0345ab293f6fcba19c978f1183"; + sha256 = "0dwjrs2lp2gdlscs7bsrmyc5yf6mm4fvgw71bzr9mv2qrd2q73s1"; + }; + } + { + goPackagePath = "zombiezen.com/go/capnproto2"; + fetch = { + type = "git"; + url = "https://github.com/zombiezen/go-capnproto2"; + rev = "7cfd211c19c7f5783c695f3654efa46f0df259c3"; + sha256 = "0nzw3g8xpxyzwqqv3ja0iznd0j18l1rwagwhf9sinwdjjgmh51sy"; + }; + } +] diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-opensteamworks/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-opensteamworks/default.nix index 457e76d0a82c..b8d6cf6aee39 100644 --- a/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-opensteamworks/default.nix +++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-opensteamworks/default.nix @@ -2,22 +2,21 @@ stdenv.mkDerivation rec { name = "pidgin-opensteamworks-${version}"; - version = "1.6.1"; + version = "unstable-2018-08-02"; src = fetchFromGitHub { owner = "EionRobb"; repo = "pidgin-opensteamworks"; - rev = "${version}"; - sha256 = "6ab27831e454ad3b440e4f06b52e0b3671a4f8417ba4da3ab6f56c56d82cc29b"; + rev = "b16a636d177f4a8862abdfbdb2c0994712ea0cd3"; + sha256 = "0qyxfrfzsm43f1gmbg350znwxld1fqr9a9yziqs322bx2vglzgfh"; }; preConfigure = "cd steam-mobile"; - postInstall = '' - mkdir -p $out/lib/purple-2 - mkdir -p $out/share/pixmaps/pidgin/protocols/ - cp libsteam.so $out/lib/purple-2/ - unzip releases/icons.zip -d $out/share/pixmaps/pidgin/protocols/ - ''; + installFlags = [ + "DESTDIR=$(out)" + "PLUGIN_DIR_PURPLE=/lib/purple-2" + "DATA_ROOT_DIR_PURPLE=/share" + ]; buildInputs = [ pidgin unzip glib json-glib nss nspr libgnome-keyring ]; diff --git a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix index 92f0b11c63fe..29a65b5d9bc1 100644 --- a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix +++ b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix @@ -56,11 +56,11 @@ let in stdenv.mkDerivation rec { name = "signal-desktop-${version}"; - version = "1.16.3"; + version = "1.17.0"; src = fetchurl { url = "https://updates.signal.org/desktop/apt/pool/main/s/signal-desktop/signal-desktop_${version}_amd64.deb"; - sha256 = "1fhs3408i8f80z5rlchrc3gwm0481rxqb5jk37gb8ip94zf97hsf"; + sha256 = "0daxp8ychvvr4lqz8wni8lkalk3w409pzwnikvf92f1whxs76xj0"; }; phases = [ "unpackPhase" "installPhase" ]; diff --git a/pkgs/applications/networking/instant-messengers/wavebox/default.nix b/pkgs/applications/networking/instant-messengers/wavebox/default.nix index ac58d4f39d6f..8297304e55c5 100644 --- a/pkgs/applications/networking/instant-messengers/wavebox/default.nix +++ b/pkgs/applications/networking/instant-messengers/wavebox/default.nix @@ -6,7 +6,7 @@ with stdenv.lib; let bits = "x86_64"; - version = "4.3.0"; + version = "4.4.0"; desktopItem = makeDesktopItem rec { name = "Wavebox"; @@ -23,7 +23,7 @@ in stdenv.mkDerivation rec { name = "wavebox-${version}"; src = fetchurl { url = "https://github.com/wavebox/waveboxapp/releases/download/v${version}/${tarball}"; - sha256 = "0kdg5q9rv8nxlg5jhmdfy5vv7gkdswzhy49af29d3zf57z69187c"; + sha256 = "0g77clrxks1ivldq496bg14hv57hm0kjh4g1askxyck69yf8illn"; }; # don't remove runtime deps diff --git a/pkgs/applications/networking/irc/weechat/default.nix b/pkgs/applications/networking/irc/weechat/default.nix index bf5d06423142..513407a0b710 100644 --- a/pkgs/applications/networking/irc/weechat/default.nix +++ b/pkgs/applications/networking/irc/weechat/default.nix @@ -6,7 +6,7 @@ , asciidoctor # manpages , guileSupport ? true, guile , luaSupport ? true, lua5 -, perlSupport ? true, perl +, perlSupport ? true, perl, perlPackages , pythonSupport ? true, pythonPackages , rubySupport ? true, ruby , tclSupport ? true, tcl @@ -108,6 +108,12 @@ in if configure == null then weechat else extraEnv = '' export PATH="${perlInterpreter}/bin:$PATH" ''; + withPackages = pkgsFun: (perl // { + extraEnv = '' + ${perl.extraEnv} + export PERL5LIB=${lib.makeFullPerlPath (pkgsFun perlPackages)} + ''; + }); }; tcl = simplePlugin "tcl"; ruby = simplePlugin "ruby"; diff --git a/pkgs/applications/networking/mumble/default.nix b/pkgs/applications/networking/mumble/default.nix index cda02fedfb69..d0a690496e27 100644 --- a/pkgs/applications/networking/mumble/default.nix +++ b/pkgs/applications/networking/mumble/default.nix @@ -118,12 +118,21 @@ let sha256 = "1s60vaici3v034jzzi20x23hsj6mkjlc0glipjq4hffrg9qgnizh"; }; - # Fix compile error against boost 1.66 (#33655): - patches = singleton (fetchpatch { - url = "https://github.com/mumble-voip/mumble/commit/" - + "ea861fe86743c8402bbad77d8d1dd9de8dce447e.patch"; - sha256 = "1r50dc8dcl6jmbj4abhnay9div7y56kpmajzqd7ql0pm853agwbh"; - }); + patches = [ + # Fix compile error against boost 1.66 (#33655): + (fetchpatch { + url = "https://github.com/mumble-voip/mumble/commit/" + + "ea861fe86743c8402bbad77d8d1dd9de8dce447e.patch"; + sha256 = "1r50dc8dcl6jmbj4abhnay9div7y56kpmajzqd7ql0pm853agwbh"; + }) + # Fixes hang on reconfiguring audio (often including startup) + # https://github.com/mumble-voip/mumble/pull/3418 + (fetchpatch { + url = "https://github.com/mumble-voip/mumble/commit/" + + "fbbdf2e8ab7d93ed6f7680268ad0689b7eaa71ad.patch"; + sha256 = "1yhj62mlwm6q42i4aclbia645ha97d3j4ycxhgafr46dbjs0gani"; + }) + ]; }; gitSource = rec { diff --git a/pkgs/applications/networking/p2p/zeronet/default.nix b/pkgs/applications/networking/p2p/zeronet/default.nix index 33acd103d8b4..1dc4e3e43513 100644 --- a/pkgs/applications/networking/p2p/zeronet/default.nix +++ b/pkgs/applications/networking/p2p/zeronet/default.nix @@ -2,14 +2,14 @@ python2Packages.buildPythonApplication rec { pname = "zeronet"; - version = "0.6.2"; + version = "0.6.4"; format = "other"; src = fetchFromGitHub { owner = "HelloZeroNet"; repo = "ZeroNet"; rev = "v${version}"; - sha256 = "0v19jjirkyv8hj2yfdj0c40zwynn51h2bj4issn5blr95vhfm8s7"; + sha256 = "04mpnkx0pbvcfjs337f0ajabdbh6h0gypnaz6n395avkf8r1g4c3"; }; propagatedBuildInputs = with python2Packages; [ msgpack gevent ]; diff --git a/pkgs/applications/science/math/sage/patches/Only-test-py2-py3-optional-tests-when-all-of-sage-is.patch b/pkgs/applications/science/math/sage/patches/Only-test-py2-py3-optional-tests-when-all-of-sage-is.patch new file mode 100644 index 000000000000..8cd80281d0e4 --- /dev/null +++ b/pkgs/applications/science/math/sage/patches/Only-test-py2-py3-optional-tests-when-all-of-sage-is.patch @@ -0,0 +1,35 @@ +From 8218bd4fdeb4c92de8af0d3aabec55980fc4fb3d Mon Sep 17 00:00:00 2001 +From: Timo Kaufmann <timokau@zoho.com> +Date: Sun, 21 Oct 2018 17:52:40 +0200 +Subject: [PATCH] Only test py2/py3 optional tests when all of sage is tested + +--- + src/sage/doctest/control.py | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/src/sage/doctest/control.py b/src/sage/doctest/control.py +index bf18df8b2b..935c67abf7 100644 +--- a/src/sage/doctest/control.py ++++ b/src/sage/doctest/control.py +@@ -362,7 +362,8 @@ class DocTestController(SageObject): + if not optionaltag_regex.search(o): + raise ValueError('invalid optional tag {!r}'.format(o)) + +- options.optional |= auto_optional_tags ++ if "sage" in options.optional: ++ options.optional |= auto_optional_tags + + self.options = options + +@@ -765,7 +766,7 @@ class DocTestController(SageObject): + sage: DC = DocTestController(DD, [dirname]) + sage: DC.expand_files_into_sources() + sage: sorted(DC.sources[0].options.optional) # abs tol 1 +- ['guava', 'magma', 'py2'] ++ ['guava', 'magma'] + + We check that files are skipped appropriately:: + +-- +2.18.1 + diff --git a/pkgs/applications/science/math/sage/patches/revert-sphinx-always-fork.patch b/pkgs/applications/science/math/sage/patches/revert-sphinx-always-fork.patch new file mode 100644 index 000000000000..64dd6fd93777 --- /dev/null +++ b/pkgs/applications/science/math/sage/patches/revert-sphinx-always-fork.patch @@ -0,0 +1,71 @@ +commit f1c59929c3c180ac283334c2b3c901ac8c82f6b1 +Author: Timo Kaufmann <timokau@zoho.com> +Date: Sat Oct 20 20:07:41 2018 +0200 + + Revert "Something related to the sphinxbuild seems to be leaking memory" + + This reverts commit 7d85dc796c58c3de57401bc22d3587b94e205091. + +diff --git a/src/sage_setup/docbuild/__init__.py b/src/sage_setup/docbuild/__init__.py +index 0b24b1a60b..084c3f89d7 100644 +--- a/src/sage_setup/docbuild/__init__.py ++++ b/src/sage_setup/docbuild/__init__.py +@@ -265,29 +265,35 @@ class DocBuilder(object): + # import the customized builder for object.inv files + inventory = builder_helper('inventory') + +-def build_many(target, args): +- # Pool() uses an actual fork() to run each new instance. This is important +- # for performance reasons, i.e., don't use a forkserver when it becomes +- # available with Python 3: Here, sage is already initialized which is quite +- # costly, with a forkserver we would have to reinitialize it for every +- # document we build. At the same time, don't serialize this by taking the +- # pool (and thus the call to fork()) out completely: The call to Sphinx +- # leaks memory, so we need to build each document in its own process to +- # control the RAM usage. +- from multiprocessing import Pool +- pool = Pool(NUM_THREADS, maxtasksperchild=1) +- # map_async handles KeyboardInterrupt correctly. Plain map and +- # apply_async does not, so don't use it. +- x = pool.map_async(target, args, 1) +- try: +- ret = x.get(99999) +- pool.close() +- pool.join() +- except Exception: +- pool.terminate() +- if ABORT_ON_ERROR: +- raise +- return ret ++if NUM_THREADS > 1: ++ def build_many(target, args): ++ from multiprocessing import Pool ++ pool = Pool(NUM_THREADS, maxtasksperchild=1) ++ # map_async handles KeyboardInterrupt correctly. Plain map and ++ # apply_async does not, so don't use it. ++ x = pool.map_async(target, args, 1) ++ try: ++ ret = x.get(99999) ++ pool.close() ++ pool.join() ++ except Exception: ++ pool.terminate() ++ if ABORT_ON_ERROR: ++ raise ++ return ret ++else: ++ def build_many(target, args): ++ results = [] ++ ++ for arg in args: ++ try: ++ results.append(target(arg)) ++ except Exception: ++ if ABORT_ON_ERROR: ++ raise ++ ++ return results ++ + + ########################################## + # Parallel Building Ref Manual # diff --git a/pkgs/applications/science/math/sage/sage-src.nix b/pkgs/applications/science/math/sage/sage-src.nix index f217a7a0caed..b86f9d1aa0de 100644 --- a/pkgs/applications/science/math/sage/sage-src.nix +++ b/pkgs/applications/science/math/sage/sage-src.nix @@ -27,6 +27,16 @@ stdenv.mkDerivation rec { # https://trac.sagemath.org/ticket/25316 # https://github.com/python/cpython/pull/7476 ./patches/python-5755-hotpatch.patch + + # Revert the commit that made the sphinx build fork even in the single thread + # case. For some yet unknown reason, that breaks the docbuild on nix and archlinux. + # See https://groups.google.com/forum/#!msg/sage-packaging/VU4h8IWGFLA/mrmCMocYBwAJ. + ./patches/revert-sphinx-always-fork.patch + + # Make sure py2/py3 tests are only run when their expected context (all "sage" + # tests) are also run. That is necessary to test dochtml individually. See + # https://trac.sagemath.org/ticket/26110 for an upstream discussion. + ./patches/Only-test-py2-py3-optional-tests-when-all-of-sage-is.patch ]; packageUpgradePatches = [ diff --git a/pkgs/applications/version-management/git-and-tools/git-crypt/default.nix b/pkgs/applications/version-management/git-and-tools/git-crypt/default.nix index 0d6b206cb4a4..2163855d00e1 100644 --- a/pkgs/applications/version-management/git-and-tools/git-crypt/default.nix +++ b/pkgs/applications/version-management/git-and-tools/git-crypt/default.nix @@ -1,14 +1,14 @@ { fetchFromGitHub, git, gnupg1compat, makeWrapper, openssl, stdenv }: stdenv.mkDerivation rec { - - name = "git-crypt-${meta.version}"; + name = "git-crypt-${version}"; + version = "0.6.0"; src = fetchFromGitHub { owner = "AGWA"; repo = "git-crypt"; - rev = meta.version; - sha256 = "4fe45f903a4b3cc06a5fe11334b914c225009fe8440d9e91a54fdf21cf4dcc4d"; + rev = "${version}"; + sha256 = "13m9y0m6gc3mlw3pqv9x4i0him2ycbysizigdvdanhh514kga602"; inherit name; }; @@ -40,7 +40,6 @@ stdenv.mkDerivation rec { ''; downloadPage = "https://github.com/AGWA/git-crypt/releases"; license = licenses.gpl3; - version = "0.5.0"; maintainers = [ maintainers.dochang ]; platforms = platforms.unix; }; diff --git a/pkgs/applications/video/clipgrab/default.nix b/pkgs/applications/video/clipgrab/default.nix index c54a9358b609..6a429116a71d 100644 --- a/pkgs/applications/video/clipgrab/default.nix +++ b/pkgs/applications/video/clipgrab/default.nix @@ -2,10 +2,10 @@ stdenv.mkDerivation rec { name = "clipgrab-${version}"; - version = "3.7.0"; + version = "3.7.1"; src = fetchurl { - sha256 = "0rx12218yy6h27z3xsmmxfsw8ldlsf4y862adkz6ybrygppsaib4"; + sha256 = "0bhzkmcinlsfp5ldgqp59xnkaz6ikzdnq78drcdf1w7q4z05ipxd"; # The .tar.bz2 "Download" link is a binary blob, the source is the .tar.gz! url = "https://download.clipgrab.org/${name}.tar.gz"; }; diff --git a/pkgs/applications/window-managers/sway/beta.nix b/pkgs/applications/window-managers/sway/beta.nix new file mode 100644 index 000000000000..5aebb7ed8dd1 --- /dev/null +++ b/pkgs/applications/window-managers/sway/beta.nix @@ -0,0 +1,43 @@ +{ stdenv, fetchFromGitHub +, meson, ninja +, pkgconfig, scdoc +, wayland, libxkbcommon, pcre, json_c, dbus +, pango, cairo, libinput, libcap, pam, gdk_pixbuf +, wlroots, wayland-protocols +, buildDocs ? true +}: + +stdenv.mkDerivation rec { + name = "${pname}-${version}"; + pname = "sway"; + version = "1.0-beta.1"; + + src = fetchFromGitHub { + owner = "swaywm"; + repo = "sway"; + rev = version; + sha256 = "0h9kgrg9mh2acks63z72bw3lwff32pf2nb4i7i5xhd9i6l4gfnqa"; + }; + + nativeBuildInputs = [ + pkgconfig meson ninja + ] ++ stdenv.lib.optional buildDocs scdoc; + + buildInputs = [ + wayland libxkbcommon pcre json_c dbus + pango cairo libinput libcap pam gdk_pixbuf + wlroots wayland-protocols + ]; + + enableParallelBuilding = true; + + mesonFlags = "-Dsway-version=${version}"; + + meta = with stdenv.lib; { + description = "i3-compatible window manager for Wayland"; + homepage = https://swaywm.org; + license = licenses.mit; + platforms = platforms.linux; + maintainers = with maintainers; [ primeos synthetica ]; # Trying to keep it up-to-date. + }; +} diff --git a/pkgs/applications/window-managers/sway/default.nix b/pkgs/applications/window-managers/sway/default.nix index 50614534f8e7..fb30f0073bfd 100644 --- a/pkgs/applications/window-managers/sway/default.nix +++ b/pkgs/applications/window-managers/sway/default.nix @@ -32,7 +32,7 @@ stdenv.mkDerivation rec { meta = with stdenv.lib; { description = "i3-compatible window manager for Wayland"; - homepage = http://swaywm.org; + homepage = https://swaywm.org; license = licenses.mit; platforms = platforms.linux; maintainers = with maintainers; [ primeos ]; # Trying to keep it up-to-date. |