0
0
Fork 0
mirror of https://github.com/NixOS/nixpkgs.git synced 2025-07-13 21:50:33 +03:00

Merge branch 'master' into staging-next

Hydra nixpkgs: ?compare=1525828
This commit is contained in:
Vladimír Čunát 2019-06-18 09:41:36 +02:00
commit 0aa9f35a99
No known key found for this signature in database
GPG key ID: E747DF1F9575A3AA
855 changed files with 1664 additions and 1409 deletions

View file

@ -31,9 +31,28 @@ stdenv.mkDerivation {
separate Nix expression from <filename>pkgs/all-packages.nix</filename>, you separate Nix expression from <filename>pkgs/all-packages.nix</filename>, you
need to pass it as a function argument.) Specifying a need to pass it as a function argument.) Specifying a
<varname>name</varname> and a <varname>src</varname> is the absolute minimum <varname>name</varname> and a <varname>src</varname> is the absolute minimum
you need to do. Many packages have dependencies that are not provided in the Nix requires. For convenience, you can also use <varname>pname</varname> and
standard environment. Its usually sufficient to specify those <varname>version</varname> attributes and <literal>mkDerivation</literal>
dependencies in the <varname>buildInputs</varname> attribute: will automatically set <varname>name</varname> to
<literal>"${pname}-${version}"</literal> by default. Since
<link xlink:href="https://github.com/NixOS/rfcs/pull/35">RFC 0035</link>,
this is preferred for packages in Nixpkgs, as it allows us to reuse the
version easily:
<programlisting>
stdenv.mkDerivation rec {
pname = "libfoo";
version = "1.2.3";
src = fetchurl {
url = "http://example.org/libfoo-source-${version}.tar.bz2";
sha256 = "0x2g1jqygyr5wiwg4ma1nd7w4ydpy82z9gkcv8vh2v8dn3y58v5m";
};
}</programlisting>
</para>
<para>
Many packages have dependencies that are not provided in the standard
environment. Its usually sufficient to specify those dependencies in the
<varname>buildInputs</varname> attribute:
<programlisting> <programlisting>
stdenv.mkDerivation { stdenv.mkDerivation {
name = "libfoo-1.2.3"; name = "libfoo-1.2.3";

View file

@ -428,7 +428,7 @@ rec {
mkSystemFromString = s: mkSystemFromSkeleton (mkSkeletonFromList (lib.splitString "-" s)); mkSystemFromString = s: mkSystemFromSkeleton (mkSkeletonFromList (lib.splitString "-" s));
doubleFromSystem = { cpu, vendor, kernel, abi, ... }: doubleFromSystem = { cpu, kernel, abi, ... }:
/**/ if abi == abis.cygnus then "${cpu.name}-cygwin" /**/ if abi == abis.cygnus then "${cpu.name}-cygwin"
else if kernel.families ? darwin then "${cpu.name}-darwin" else if kernel.families ? darwin then "${cpu.name}-darwin"
else "${cpu.name}-${kernel.name}"; else "${cpu.name}-${kernel.name}";

View file

@ -4443,6 +4443,10 @@
email = "robert@rycee.net"; email = "robert@rycee.net";
github = "rycee"; github = "rycee";
name = "Robert Helgesson"; name = "Robert Helgesson";
keys = [{
longkeyid = "rsa4096/0x3573356C25C424D4";
fingerprint = "36CA CF52 D098 CC0E 78FB 0CB1 3573 356C 25C4 24D4";
}];
}; };
ryneeverett = { ryneeverett = {
email = "ryneeverett@gmail.com"; email = "ryneeverett@gmail.com";

View file

@ -1,6 +1,6 @@
# This module provides the proprietary NVIDIA X11 / OpenGL drivers. # This module provides the proprietary NVIDIA X11 / OpenGL drivers.
{ stdenv, config, lib, pkgs, ... }: { config, lib, pkgs, ... }:
with lib; with lib;

View file

@ -1,7 +1,7 @@
# This module contains the basic configuration for building a graphical NixOS # This module contains the basic configuration for building a graphical NixOS
# installation CD. # installation CD.
{ config, lib, pkgs, ... }: { lib, pkgs, ... }:
with lib; with lib;

View file

@ -1,7 +1,7 @@
# This module defines a NixOS installation CD that contains X11 and # This module defines a NixOS installation CD that contains X11 and
# GNOME 3. # GNOME 3.
{ config, lib, pkgs, ... }: { lib, ... }:
with lib; with lib;

View file

@ -264,6 +264,11 @@ if (scalar @bcacheDevices > 0) {
push @initrdAvailableKernelModules, "bcache"; push @initrdAvailableKernelModules, "bcache";
} }
# Prevent unbootable systems if LVM snapshots are present at boot time.
if (`lsblk -o TYPE` =~ "lvm") {
push @initrdKernelModules, "dm-snapshot";
}
my $virt = `systemd-detect-virt`; my $virt = `systemd-detect-virt`;
chomp $virt; chomp $virt;
@ -324,10 +329,19 @@ my @swapDevices;
if (@swaps) { if (@swaps) {
shift @swaps; shift @swaps;
foreach my $swap (@swaps) { foreach my $swap (@swaps) {
$swap =~ /^(\S+)\s/; my @fields = split ' ', $swap;
next unless -e $1; my $swapFilename = $fields[0];
my $dev = findStableDevPath $1; my $swapType = $fields[1];
push @swapDevices, "{ device = \"$dev\"; }"; next unless -e $swapFilename;
my $dev = findStableDevPath $swapFilename;
if ($swapType =~ "partition") {
push @swapDevices, "{ device = \"$dev\"; }";
} elsif ($swapType =~ "file") {
# swap *files* are more likely specified in configuration.nix, so
# ignore them here.
} else {
die "Unsupported swap type: $swapType\n";
}
} }
} }
@ -427,6 +441,10 @@ EOF
} }
} }
# Don't emit tmpfs entry for /tmp, because it most likely comes from the
# boot.tmpOnTmpfs option in configuration.nix (managed declaratively).
next if ($mountPoint eq "/tmp" && $fsType eq "tmpfs");
# Emit the filesystem. # Emit the filesystem.
$fileSystems .= <<EOF; $fileSystems .= <<EOF;
fileSystems.\"$mountPoint\" = fileSystems.\"$mountPoint\" =
@ -517,6 +535,7 @@ sub multiLineList {
} }
my $initrdAvailableKernelModules = toNixStringList(uniq @initrdAvailableKernelModules); my $initrdAvailableKernelModules = toNixStringList(uniq @initrdAvailableKernelModules);
my $initrdKernelModules = toNixStringList(uniq @initrdKernelModules);
my $kernelModules = toNixStringList(uniq @kernelModules); my $kernelModules = toNixStringList(uniq @kernelModules);
my $modulePackages = toNixList(uniq @modulePackages); my $modulePackages = toNixList(uniq @modulePackages);
@ -536,6 +555,7 @@ my $hwConfig = <<EOF;
imports =${\multiLineList(" ", @imports)}; imports =${\multiLineList(" ", @imports)};
boot.initrd.availableKernelModules = [$initrdAvailableKernelModules ]; boot.initrd.availableKernelModules = [$initrdAvailableKernelModules ];
boot.initrd.kernelModules = [$initrdKernelModules ];
boot.kernelModules = [$kernelModules ]; boot.kernelModules = [$kernelModules ];
boot.extraModulePackages = [$modulePackages ]; boot.extraModulePackages = [$modulePackages ];
$fsAndSwap $fsAndSwap

View file

@ -1,7 +1,6 @@
{ config, options, lib, ... }: { config, options, lib, ... }:
let let
path = [ "deployment" "autoLuks" ]; path = [ "deployment" "autoLuks" ];
hasAutoLuksOption = lib.hasAttrByPath path options;
hasAutoLuksConfig = lib.hasAttrByPath path config && (lib.attrByPath path {} config) != {}; hasAutoLuksConfig = lib.hasAttrByPath path config && (lib.attrByPath path {} config) != {};
inherit (config.nixops) enableDeprecatedAutoLuks; inherit (config.nixops) enableDeprecatedAutoLuks;

View file

@ -1,4 +1,4 @@
{ options, config, lib, pkgs, ... }: { config, lib, pkgs, ... }:
with lib; with lib;

View file

@ -4,7 +4,6 @@ with lib;
let let
package = "snapcast";
name = "snapserver"; name = "snapserver";
cfg = config.services.snapserver; cfg = config.services.snapserver;

View file

@ -72,13 +72,6 @@ let
default = null; default = null;
}; };
}; };
kubeConfigDefaults = {
server = mkDefault cfg.kubeconfig.server;
caFile = mkDefault cfg.kubeconfig.caFile;
certFile = mkDefault cfg.kubeconfig.certFile;
keyFile = mkDefault cfg.kubeconfig.keyFile;
};
in { in {
###### interface ###### interface

View file

@ -28,13 +28,6 @@ let
kubeconfig = top.lib.mkKubeConfig "kubelet" cfg.kubeconfig; kubeconfig = top.lib.mkKubeConfig "kubelet" cfg.kubeconfig;
manifests = pkgs.buildEnv {
name = "kubernetes-manifests";
paths = mapAttrsToList (name: manifest:
pkgs.writeTextDir "${name}.json" (builtins.toJSON manifest)
) cfg.manifests;
};
manifestPath = "kubernetes/manifests"; manifestPath = "kubernetes/manifests";
taintOptions = with lib.types; { name, ... }: { taintOptions = with lib.types; { name, ... }: {

View file

@ -118,7 +118,6 @@ in
cfsslCertPathPrefix = "${config.services.cfssl.dataDir}/cfssl"; cfsslCertPathPrefix = "${config.services.cfssl.dataDir}/cfssl";
cfsslCert = "${cfsslCertPathPrefix}.pem"; cfsslCert = "${cfsslCertPathPrefix}.pem";
cfsslKey = "${cfsslCertPathPrefix}-key.pem"; cfsslKey = "${cfsslCertPathPrefix}-key.pem";
cfsslPort = toString config.services.cfssl.port;
certmgrPaths = [ certmgrPaths = [
top.caFile top.caFile

View file

@ -17,7 +17,7 @@ let
${cfg.extraConfig} ${cfg.extraConfig}
''; '';
bindingCfg = { config, ... }: { bindingCfg = { ... }: {
options = { options = {
keys = mkOption { keys = mkOption {

View file

@ -5,7 +5,6 @@ with lib;
let let
cfg = config.services.rspamd; cfg = config.services.rspamd;
opts = options.services.rspamd;
postfixCfg = config.services.postfix; postfixCfg = config.services.postfix;
bindSocketOpts = {options, config, ... }: { bindSocketOpts = {options, config, ... }: {

View file

@ -1,4 +1,4 @@
{ options, config, lib, pkgs, ... }: { config, lib, pkgs, ... }:
with lib; with lib;

View file

@ -1,4 +1,4 @@
{ options, config, lib, pkgs, ... }: { config, lib, pkgs, ... }:
with lib; with lib;

View file

@ -1,4 +1,4 @@
{ options, config, lib, pkgs, ... }: { config, lib, pkgs, ... }:
with lib; with lib;

View file

@ -28,7 +28,7 @@ let
"-datadir=${cfg.dataDir}" "-datadir=${cfg.dataDir}"
"-pid=${pidFile}" "-pid=${pidFile}"
]; ];
hexStr = types.strMatching "[0-9a-f]+";
rpcUserOpts = { name, ... }: { rpcUserOpts = { name, ... }: {
options = { options = {
name = mkOption { name = mkOption {

View file

@ -1,4 +1,4 @@
{pkgs, config, lib, ...}: {config, lib, ...}:
let let
inherit (lib) mkOption mkIf types length attrNames; inherit (lib) mkOption mkIf types length attrNames;

View file

@ -2,7 +2,7 @@
let let
inherit (lib) mkIf concatStringsSep concatMapStrings toList mapAttrs inherit (lib) mkIf concatStringsSep concatMapStrings toList mapAttrs
mapAttrsToList attrValues; mapAttrsToList;
cfg = config.services.kerberos_server; cfg = config.services.kerberos_server;
kerberos = config.krb5.kerberos; kerberos = config.krb5.kerberos;
stateDir = "/var/heimdal"; stateDir = "/var/heimdal";

View file

@ -2,7 +2,7 @@
let let
inherit (lib) mkIf concatStrings concatStringsSep concatMapStrings toList inherit (lib) mkIf concatStrings concatStringsSep concatMapStrings toList
mapAttrs mapAttrsToList attrValues; mapAttrs mapAttrsToList;
cfg = config.services.kerberos_server; cfg = config.services.kerberos_server;
kerberos = config.krb5.kerberos; kerberos = config.krb5.kerberos;
stateDir = "/var/lib/krb5kdc"; stateDir = "/var/lib/krb5kdc";

View file

@ -2,7 +2,7 @@
let let
inherit (lib) mkDefault mkEnableOption mkForce mkIf mkMerge mkOption; inherit (lib) mkDefault mkEnableOption mkForce mkIf mkOption;
inherit (lib) mapAttrs optional optionalString types; inherit (lib) mapAttrs optional optionalString types;
cfg = config.services.limesurvey; cfg = config.services.limesurvey;

View file

@ -1,4 +1,4 @@
{ config, lib, pkgs, ... }@args: { config, lib, pkgs, ... }:
with lib; with lib;

View file

@ -15,7 +15,6 @@ let
else cfg.database.port; else cfg.database.port;
poolName = "tt-rss"; poolName = "tt-rss";
phpfpmSocketName = "/run/phpfpm/${poolName}.sock";
tt-rss-config = pkgs.writeText "config.php" '' tt-rss-config = pkgs.writeText "config.php" ''
<?php <?php

View file

@ -269,17 +269,6 @@ let
${optionalString (config.proxyPass != null && cfg.recommendedProxySettings) "include ${recommendedProxyConfig};"} ${optionalString (config.proxyPass != null && cfg.recommendedProxySettings) "include ${recommendedProxyConfig};"}
} }
'') (sortProperties (mapAttrsToList (k: v: v // { location = k; }) locations))); '') (sortProperties (mapAttrsToList (k: v: v // { location = k; }) locations)));
mkBasicAuth = vhostName: authDef: let
htpasswdFile = pkgs.writeText "${vhostName}.htpasswd" (
concatStringsSep "\n" (mapAttrsToList (user: password: ''
${user}:{PLAIN}${password}
'') authDef)
);
in ''
auth_basic secured;
auth_basic_user_file ${htpasswdFile};
'';
mkHtpasswd = vhostName: authDef: pkgs.writeText "${vhostName}.htpasswd" ( mkHtpasswd = vhostName: authDef: pkgs.writeText "${vhostName}.htpasswd" (
concatStringsSep "\n" (mapAttrsToList (user: password: '' concatStringsSep "\n" (mapAttrsToList (user: password: ''
${user}:{PLAIN}${password} ${user}:{PLAIN}${password}

View file

@ -4,8 +4,6 @@ with lib;
let let
kernelPackages = config.boot.kernelPackages;
# Abbreviations. # Abbreviations.
cfg = config.services.xserver; cfg = config.services.xserver;
xorg = pkgs.xorg; xorg = pkgs.xorg;

View file

@ -9,7 +9,6 @@ let
mergeAnswer = winners: locs: defs: mergeAnswer = winners: locs: defs:
let let
values = map (x: x.value) defs; values = map (x: x.value) defs;
freeformAnswer = intersectLists values winners;
inter = intersectLists values winners; inter = intersectLists values winners;
winner = head winners; winner = head winners;
in in

View file

@ -100,12 +100,7 @@ in
wantedBy = [ "multi-user.target" ]; wantedBy = [ "multi-user.target" ];
after = [ "systemd-udev-settle.service" ]; after = [ "systemd-udev-settle.service" ];
preStart = let preStart = let
initsh = let initsh = pkgs.writeText "nixos-init" (''
ip = cfg.ipv4.container.address;
gw = cfg.ipv4.gateway.address;
dns = cfg.ipv4.dns;
in
pkgs.writeText "nixos-init" (''
#!/system/bin/sh #!/system/bin/sh
setprop nixos.version ${config.system.nixos.version} setprop nixos.version ${config.system.nixos.version}

View file

@ -1,4 +1,4 @@
{ config, lib, pkgs, ... }: { lib, pkgs, ... }:
with lib; with lib;

View file

@ -5,7 +5,7 @@ let
cfg = config.docker-containers; cfg = config.docker-containers;
dockerContainer = dockerContainer =
{ name, config, ... }: { { ... }: {
options = { options = {

View file

@ -2,7 +2,6 @@
with lib; with lib;
let let
gce = pkgs.google-compute-engine; gce = pkgs.google-compute-engine;
cfg = config.virtualisation.googleComputeImage;
in in
{ {
imports = [ imports = [

View file

@ -46,22 +46,24 @@ in {
message = "KVMGT is not properly supported for kernels older than 4.16"; message = "KVMGT is not properly supported for kernels older than 4.16";
}; };
boot.kernelParams = [ "i915.enable_gvt=1" ]; boot.kernelParams = [ "i915.enable_gvt=1" ];
systemd.paths = mapAttrs' (name: value:
nameValuePair "kvmgt-${name}" {
description = "KVMGT VGPU ${name} path";
wantedBy = [ "multi-user.target" ];
pathConfig = {
PathExists = "/sys/bus/pci/devices/${cfg.device}/mdev_supported_types/${name}/create";
};
}
) cfg.vgpus;
systemd.services = mapAttrs' (name: value: systemd.services = mapAttrs' (name: value:
nameValuePair "kvmgt-${name}" { nameValuePair "kvmgt-${name}" {
description = "KVMGT VGPU ${name}"; description = "KVMGT VGPU ${name}";
serviceConfig = { serviceConfig = {
Type = "forking"; Type = "oneshot";
RemainAfterExit = true; RemainAfterExit = true;
Restart = "on-failure";
RestartSec = 5;
ExecStart = "${pkgs.runtimeShell} -c 'echo ${value.uuid} > /sys/bus/pci/devices/${cfg.device}/mdev_supported_types/${name}/create'"; ExecStart = "${pkgs.runtimeShell} -c 'echo ${value.uuid} > /sys/bus/pci/devices/${cfg.device}/mdev_supported_types/${name}/create'";
ExecStop = "${pkgs.runtimeShell} -c 'echo 1 > /sys/bus/pci/devices/${cfg.device}/${value.uuid}/remove'"; ExecStop = "${pkgs.runtimeShell} -c 'echo 1 > /sys/bus/pci/devices/${cfg.device}/${value.uuid}/remove'";
}; };
unitConfig = {
StartLimitBurst = 5;
StartLimitIntervalSec = 30;
};
wantedBy = [ "multi-user.target" ];
} }
) cfg.vgpus; ) cfg.vgpus;
}; };

View file

@ -1,5 +1,5 @@
{ stdenv, fetchurl, pkgconfig, autoreconfHook, hexdump, openssl, db48 { stdenv, fetchurl, pkgconfig, autoreconfHook, hexdump, openssl, db48
, boost, zlib, miniupnpc, qt4, utillinux, protobuf, qrencode, libevent , boost, zlib, miniupnpc, qt4, protobuf, qrencode, libevent
, AppKit , AppKit
, withGui ? !stdenv.isDarwin , withGui ? !stdenv.isDarwin
}: }:

View file

@ -1,4 +1,4 @@
{ callPackage, boost155, boost165, openssl_1_1, haskellPackages, darwin, libsForQt5, libsForQt59, miniupnpc_2, python3, buildGo110Package }: { callPackage, boost155, boost165, openssl_1_1, darwin, libsForQt5, libsForQt59, miniupnpc_2, python3, buildGo110Package }:
rec { rec {

View file

@ -1,4 +1,4 @@
{ stdenv, lib, makeWrapper, fetchurl, unzip, glib, systemd, nss, nspr, gtk3-x11, gnome2, { stdenv, lib, fetchurl, unzip, glib, systemd, nss, nspr, gtk3-x11, gnome2,
atk, cairo, gdk_pixbuf, xorg, xorg_sys_opengl, utillinux, alsaLib, dbus, at-spi2-atk, atk, cairo, gdk_pixbuf, xorg, xorg_sys_opengl, utillinux, alsaLib, dbus, at-spi2-atk,
cups, vivaldi-ffmpeg-codecs, libpulseaudio }: cups, vivaldi-ffmpeg-codecs, libpulseaudio }:

View file

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, cairo, fftw, gtkmm2, lv2, lvtk, pkgconfig, python3 { stdenv, fetchFromGitHub, cairo, fftw, gtkmm2, lv2, lvtk, pkgconfig
, wafHook }: , wafHook }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {

View file

@ -1,5 +1,5 @@
{ stdenv, fetchurl, bitwig-studio1, { fetchurl, bitwig-studio1,
xdg_utils, zenity, ffmpeg, pulseaudio }: pulseaudio }:
bitwig-studio1.overrideAttrs (oldAttrs: rec { bitwig-studio1.overrideAttrs (oldAttrs: rec {
name = "bitwig-studio-${version}"; name = "bitwig-studio-${version}";

View file

@ -3,9 +3,7 @@
, pkgconfig , pkgconfig
, qtbase , qtbase
, makeWrapper , makeWrapper
, jack2Full
, python3Packages , python3Packages
, a2jmidid
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, fetchpatch, cairo, expat, fftwSinglePrec, fluidsynth, glib { stdenv, fetchurl, cairo, expat, fftwSinglePrec, fluidsynth, glib
, gtk2, libjack2, ladspaH , libglade, lv2, pkgconfig }: , gtk2, libjack2, ladspaH , libglade, lv2, pkgconfig }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {

View file

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, fetchpatch, cmake, pkgconfig, vlc { stdenv, fetchFromGitHub, cmake, pkgconfig, vlc
, qtbase, qtmultimedia, qtsvg, qttools , qtbase, qtmultimedia, qtsvg, qttools
# Cantata doesn't build with cdparanoia enabled so we disable that # Cantata doesn't build with cdparanoia enabled so we disable that

View file

@ -1,5 +1,5 @@
{ stdenv, fetchFromGitHub, alsaLib, file, fluidsynth, ffmpeg, fftw, jack2, { stdenv, fetchFromGitHub, alsaLib, file, fluidsynth, ffmpeg, jack2,
liblo, libpulseaudio, libsndfile, makeWrapper, pkgconfig, python3Packages, liblo, libpulseaudio, libsndfile, pkgconfig, python3Packages,
which, withFrontend ? true, which, withFrontend ? true,
withQt ? true, qtbase ? null, withQt ? true, qtbase ? null,
withGtk2 ? true, gtk2 ? null, withGtk2 ? true, gtk2 ? null,

View file

@ -1,6 +1,5 @@
{ stdenv, lib, fetchurl, alsaLib, bison, flex, libsndfile, which { stdenv, lib, fetchurl, alsaLib, bison, flex, libsndfile, which
, AppKit, Carbon, CoreAudio, CoreMIDI, CoreServices, Kernel , AppKit, Carbon, CoreAudio, CoreMIDI, CoreServices, Kernel
, xcbuild
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {

View file

@ -1,6 +1,5 @@
{ stdenv, fetchFromGitHub { stdenv, fetchFromGitHub
, ninja , ninja
, boost
, meson , meson
, pkgconfig , pkgconfig
, wrapGAppsHook , wrapGAppsHook
@ -12,7 +11,6 @@
, python3Packages , python3Packages
, file , file
, cairo , cairo
, sqlite
, gettext , gettext
, gnome3 , gnome3
}: }:

View file

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "drumkv1-${version}"; name = "drumkv1-${version}";
version = "0.9.7"; version = "0.9.8";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/drumkv1/${name}.tar.gz"; url = "mirror://sourceforge/drumkv1/${name}.tar.gz";
sha256 = "1361dqdasrc98q9hcjdwsjx6agfimwnay430887fryi3pslkyd81"; sha256 = "010p8nwnmqgj5mw324psig3hxi1g2gylxrigd6sj6sgcpy3kdm23";
}; };
buildInputs = [ libjack2 alsaLib libsndfile liblo lv2 qt5.qtbase qt5.qttools ]; buildInputs = [ libjack2 alsaLib libsndfile liblo lv2 qt5.qtbase qt5.qttools ];

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, fetchpatch, fetchFromGitLab, meson, ninja, gettext, cargo, rustc, python3, rustPlatform, pkgconfig, gnome3 { stdenv, fetchurl, fetchpatch, meson, ninja, gettext, cargo, rustc, python3, pkgconfig, gnome3
, glib, libhandy, gtk3, dbus, openssl, sqlite, gst_all_1, wrapGAppsHook }: , glib, libhandy, gtk3, dbus, openssl, sqlite, gst_all_1, wrapGAppsHook }:
# TODO: build from git for easier updates # TODO: build from git for easier updates

View file

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, makeWrapper, chromaprint, fetchpatch { stdenv, fetchFromGitHub, makeWrapper, chromaprint
, fftw, flac, faad2, glibcLocales, mp4v2 , fftw, flac, faad2, glibcLocales, mp4v2
, libid3tag, libmad, libopus, libshout, libsndfile, libusb1, libvorbis , libid3tag, libmad, libopus, libshout, libsndfile, libusb1, libvorbis
, libGLU, libxcb, lilv, lv2, opusfile , libGLU, libxcb, lilv, lv2, opusfile

View file

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, pkgconfig, meson, gtk3, at-spi2-core, dbus, gst_all_1, sphinxbase, pocketsphinx, ninja, gettext, appstream-glib, python3, glib, gobject-introspection, gsettings-desktop-schemas, itstool, wrapGAppsHook, makeWrapper, hicolor-icon-theme }: { stdenv, fetchFromGitHub, pkgconfig, meson, gtk3, at-spi2-core, dbus, gst_all_1, sphinxbase, pocketsphinx, ninja, gettext, appstream-glib, python3, glib, gobject-introspection, gsettings-desktop-schemas, itstool, wrapGAppsHook, hicolor-icon-theme }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "parlatype"; pname = "parlatype";

View file

@ -3,7 +3,6 @@
, fetchPypi , fetchPypi
, ifaddr , ifaddr
, typing , typing
, isPy27
, pythonOlder , pythonOlder
, netifaces , netifaces
, six , six

View file

@ -47,13 +47,13 @@ let
]; ];
in stdenv.mkDerivation rec { in stdenv.mkDerivation rec {
pname = "pulseeffects"; pname = "pulseeffects";
version = "4.6.2"; version = "4.6.3";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "wwmm"; owner = "wwmm";
repo = "pulseeffects"; repo = "pulseeffects";
rev = "v${version}"; rev = "v${version}";
sha256 = "042qc48h1h8kr4arlbk1psqw6s0cvhspzfi8ih2xqqyifwl1i93g"; sha256 = "1gp23hpsnbiymbbhn6hp8sg1pnysgf04bj9k4h9dfinbgshlq6m7";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View file

@ -1,6 +1,6 @@
{ stdenv, fetchurl, autoPatchelfHook, makeWrapper { stdenv, fetchurl, autoPatchelfHook, makeWrapper
, alsaLib, xorg , alsaLib, xorg
, gnome3, gtk3, pango, gdk_pixbuf, cairo, glib, freetype , gtk3, pango, gdk_pixbuf, cairo, glib, freetype
, libpulseaudio, xdg_utils , libpulseaudio, xdg_utils
}: }:

View file

@ -14,7 +14,6 @@
, libnotify , libnotify
, sqlite , sqlite
, gst_all_1 , gst_all_1
, libsoup
, json-glib , json-glib
, libgee , libgee
, wrapGAppsHook , wrapGAppsHook

View file

@ -1,4 +1,4 @@
{ stdenv, callPackage, makeFontsConf, gnome2 }: { callPackage, makeFontsConf, gnome2 }:
let let
mkStudio = opts: callPackage (import ./common.nix opts) { mkStudio = opts: callPackage (import ./common.nix opts) {

View file

@ -1,4 +1,4 @@
{ stdenv, pkgs, fetchurl, makeWrapper, wrapGAppsHook, gvfs, gtk3, atomEnv }: { stdenv, pkgs, fetchurl, wrapGAppsHook, gvfs, gtk3, atomEnv }:
let let
versions = { versions = {

View file

@ -392,29 +392,6 @@ rec {
}; };
}; };
emacsplus = buildEclipsePlugin rec {
name = "emacsplus-${version}";
version = "4.2.0";
srcFeature = fetchurl {
url = "http://www.mulgasoft.com/emacsplus/e4/update-site/features/com.mulgasoft.emacsplus.feature_${version}.jar";
sha256 = "0wja3cd7gq8w25797fxnafvcncjnmlv8qkl5iwqj7zja2f45vka8";
};
srcPlugin = fetchurl {
url = "http://www.mulgasoft.com/emacsplus/e4/update-site/plugins/com.mulgasoft.emacsplus_${version}.jar";
sha256 = "08yw45nr90mlpdzim74vsvdaxj41sgpxcrqk5ia6l2dzvrqlsjs1";
};
meta = with stdenv.lib; {
homepage = http://www.mulgasoft.com/emacsplus/;
description = "Provides a more Emacs-like experience in the Eclipse text editors";
license = licenses.epl10;
platforms = platforms.all;
maintainers = [ maintainers.rycee ];
};
};
findbugs = buildEclipsePlugin rec { findbugs = buildEclipsePlugin rec {
name = "findbugs-${version}"; name = "findbugs-${version}";
version = "3.0.1.20150306-5afe4d1"; version = "3.0.1.20150306-5afe4d1";

View file

@ -12,7 +12,7 @@ To update the list of packages from MELPA,
*/ */
{ fetchurl, lib, stdenv, texinfo }: { lib, stdenv, texinfo }:
self: self:

View file

@ -1,4 +1,4 @@
{ stdenv, lib, fetchpatch, fetchurl, ncurses, xlibsWrapper, libXaw, libXpm { stdenv, lib, fetchurl, ncurses, xlibsWrapper, libXaw, libXpm
, Xaw3d, libXcursor, pkgconfig, gettext, libXft, dbus, libpng, libjpeg, libungif , Xaw3d, libXcursor, pkgconfig, gettext, libXft, dbus, libpng, libjpeg, libungif
, libtiff, librsvg, gconf, libxml2, imagemagick, gnutls, libselinux , libtiff, librsvg, gconf, libxml2, imagemagick, gnutls, libselinux
, alsaLib, cairo, acl, gpm, cf-private, AppKit, GSS, ImageIO, m17n_lib, libotf , alsaLib, cairo, acl, gpm, cf-private, AppKit, GSS, ImageIO, m17n_lib, libotf
@ -7,7 +7,7 @@
, withNS ? stdenv.isDarwin , withNS ? stdenv.isDarwin
, withGTK2 ? false, gtk2-x11 ? null , withGTK2 ? false, gtk2-x11 ? null
, withGTK3 ? true, gtk3-x11 ? null, gsettings-desktop-schemas ? null , withGTK3 ? true, gtk3-x11 ? null, gsettings-desktop-schemas ? null
, withXwidgets ? false, webkitgtk ? null, wrapGAppsHook ? null, glib-networking ? null , withXwidgets ? false, webkitgtk ? null, wrapGAppsHook ? null
, withCsrc ? true , withCsrc ? true
, srcRepo ? false, autoconf ? null, automake ? null, texinfo ? null , srcRepo ? false, autoconf ? null, automake ? null, texinfo ? null
, siteStart ? ./site-start.el , siteStart ? ./site-start.el

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, pkgconfig, qt5, fetchFromGitHub }: { stdenv, pkgconfig, qt5, fetchFromGitHub }:
with qt5; with qt5;

View file

@ -1,5 +1,5 @@
{ avahiSupport ? false # build support for Avahi in libinfinity { avahiSupport ? false # build support for Avahi in libinfinity
, stdenv, fetchurl, fetchFromGitHub, autoconf, automake, pkgconfig, wrapGAppsHook , stdenv, fetchFromGitHub, autoconf, automake, pkgconfig, wrapGAppsHook
, gtkmm3, gsasl, gtksourceview3, libxmlxx, libinfinity, intltool, itstool, gnome3 }: , gtkmm3, gsasl, gtksourceview3, libxmlxx, libinfinity, intltool, itstool, gnome3 }:
let let

View file

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, fetchpatch, pkgconfig, meson, ninja, python3 { stdenv, fetchFromGitHub, pkgconfig, meson, ninja, python3
, gtk3, desktop-file-utils, gtksourceview, webkitgtk, gtkspell3, pantheon , gtk3, desktop-file-utils, gtksourceview, webkitgtk, gtkspell3, pantheon
, libgee, discount, wrapGAppsHook }: , libgee, discount, wrapGAppsHook }:

View file

@ -1,4 +1,4 @@
{ lib, stdenv, python3, fetchFromGitHub, makeWrapper, buildEnv, aspellDicts { stdenv, python3, fetchFromGitHub, makeWrapper, buildEnv, aspellDicts
# Use `lib.collect lib.isDerivation aspellDicts;` to make all dictionaries # Use `lib.collect lib.isDerivation aspellDicts;` to make all dictionaries
# available. # available.
, enchantAspellDicts ? with aspellDicts; [ en en-computers en-science ] , enchantAspellDicts ? with aspellDicts; [ en en-computers en-science ]

View file

@ -1,5 +1,5 @@
{ stdenv, callPackage, { stdenv, callPackage,
fetchurl, guile_1_8, qt4, zlib, xmodmap, which, makeWrapper, freetype, fetchurl, guile_1_8, qt4, xmodmap, which, makeWrapper, freetype,
tex ? null, tex ? null,
aspell ? null, aspell ? null,
ghostscriptX ? null, ghostscriptX ? null,

View file

@ -1,6 +1,6 @@
# TODO tidy up eg The patchelf code is patching gvim even if you don't build it.. # TODO tidy up eg The patchelf code is patching gvim even if you don't build it..
# but I have gvim with python support now :) - Marc # but I have gvim with python support now :) - Marc
{ source ? "default", callPackage, fetchurl, stdenv, ncurses, pkgconfig, gettext { source ? "default", callPackage, stdenv, ncurses, pkgconfig, gettext
, writeText, config, glib, gtk2-x11, gtk3-x11, lua, python, perl, tcl, ruby , writeText, config, glib, gtk2-x11, gtk3-x11, lua, python, perl, tcl, ruby
, libX11, libXext, libSM, libXpm, libXt, libXaw, libXau, libXmu , libX11, libXext, libSM, libXpm, libXt, libXaw, libXau, libXmu
, libICE , libICE

View file

@ -0,0 +1,106 @@
diff --git a/src/MacVim/English.lproj/MainMenu.nib/designable.nib b/src/MacVim/English.lproj/MainMenu.nib/designable.nib
index bdbcfdb9e..5efc78ab6 100644
--- a/src/MacVim/English.lproj/MainMenu.nib/designable.nib
+++ b/src/MacVim/English.lproj/MainMenu.nib/designable.nib
@@ -24,11 +24,6 @@
<action selector="orderFrontStandardAboutPanel:" target="-2" id="142"/>
</connections>
</menuItem>
- <menuItem title="Check for Updates…" id="255">
- <connections>
- <action selector="checkForUpdates:" target="Jqk-qh-n0J" id="Wau-rL-cbn"/>
- </connections>
- </menuItem>
<menuItem isSeparatorItem="YES" id="196">
<modifierMask key="keyEquivalentModifierMask" command="YES"/>
</menuItem>
@@ -206,6 +201,5 @@
</menuItem>
</items>
</menu>
- <customObject id="Jqk-qh-n0J" customClass="SUUpdater"/>
</objects>
</document>
diff --git a/src/MacVim/English.lproj/Preferences.nib/designable.nib b/src/MacVim/English.lproj/Preferences.nib/designable.nib
index 889450913..38afc3416 100644
--- a/src/MacVim/English.lproj/Preferences.nib/designable.nib
+++ b/src/MacVim/English.lproj/Preferences.nib/designable.nib
@@ -88,14 +88,10 @@
<rect key="frame" x="207" y="208" width="258" height="18"/>
<autoresizingMask key="autoresizingMask" flexibleMinY="YES"/>
<string key="toolTip">Checks for updates and presents a dialog box showing the release notes and prompt for whether you want to install the new version.</string>
- <buttonCell key="cell" type="check" title="Check for updates" bezelStyle="regularSquare" imagePosition="left" alignment="left" inset="2" id="975">
+ <buttonCell key="cell" type="check" title="Check for updates" bezelStyle="regularSquare" imagePosition="left" alignment="left" enabled="NO" inset="2" id="975">
<behavior key="behavior" changeContents="YES" doesNotDimImage="YES" lightByContents="YES"/>
<font key="font" metaFont="system"/>
</buttonCell>
- <connections>
- <action selector="checkForUpdatesChanged:" target="-2" id="YjS-ig-M1j"/>
- <binding destination="58" name="value" keyPath="values.SUCheckAtStartup" id="169"/>
- </connections>
</button>
<textField verticalHuggingPriority="750" id="121">
<rect key="frame" x="209" y="50" width="243" height="58"/>
@@ -186,16 +182,13 @@
<rect key="frame" x="221" y="188" width="244" height="18"/>
<autoresizingMask key="autoresizingMask" flexibleMinY="YES"/>
<string key="toolTip">MacVim will automatically download and install updates without prompting. The updated version will be used the next time MacVim starts.</string>
- <buttonCell key="cell" type="check" title="Automatically install updates" bezelStyle="regularSquare" imagePosition="left" alignment="left" inset="2" id="GfP-vg-mec">
+ <buttonCell key="cell" type="check" title="Automatically install updates" bezelStyle="regularSquare" imagePosition="left" alignment="left" enabled="NO" inset="2" id="GfP-vg-mec">
<behavior key="behavior" changeContents="YES" doesNotDimImage="YES" lightByContents="YES"/>
<font key="font" metaFont="system"/>
<connections>
<binding destination="58" name="enabled" keyPath="values.SUCheckAtStartup" id="5oY-Gf-XJN"/>
</connections>
</buttonCell>
- <connections>
- <binding destination="58" name="value" keyPath="values.SUAutomaticallyUpdate" id="kyZ-ah-zKf"/>
- </connections>
</button>
</subviews>
<point key="canvasLocation" x="137.5" y="382"/>
diff --git a/src/MacVim/MacVim.xcodeproj/project.pbxproj b/src/MacVim/MacVim.xcodeproj/project.pbxproj
index 648c4290d..c7dd99d1e 100644
--- a/src/MacVim/MacVim.xcodeproj/project.pbxproj
+++ b/src/MacVim/MacVim.xcodeproj/project.pbxproj
@@ -66,8 +66,6 @@
1DFE25A50C527BC4003000F7 /* PSMTabBarControl.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D493DB90C52533B00AB718C /* PSMTabBarControl.framework */; };
52818B031C1C08CE00F59085 /* QLStephen.qlgenerator in Copy QuickLookPlugin */ = {isa = PBXBuildFile; fileRef = 52818AFF1C1C075300F59085 /* QLStephen.qlgenerator */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; };
528DA66A1426D4F9003380F1 /* macvim-askpass in Copy Scripts */ = {isa = PBXBuildFile; fileRef = 528DA6691426D4EB003380F1 /* macvim-askpass */; };
- 52A364731C4A5789005757EC /* Sparkle.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 52A364721C4A5789005757EC /* Sparkle.framework */; };
- 52A364761C4A57C1005757EC /* Sparkle.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = 52A364721C4A5789005757EC /* Sparkle.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
52B7ED9B1C4A4D6900AFFF15 /* dsa_pub.pem in Resources */ = {isa = PBXBuildFile; fileRef = 52B7ED9A1C4A4D6900AFFF15 /* dsa_pub.pem */; };
8D11072A0486CEB800E47090 /* MainMenu.nib in Resources */ = {isa = PBXBuildFile; fileRef = 29B97318FDCFA39411CA2CEA /* MainMenu.nib */; };
8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */; };
@@ -124,7 +122,6 @@
dstPath = "";
dstSubfolderSpec = 10;
files = (
- 52A364761C4A57C1005757EC /* Sparkle.framework in Copy Frameworks */,
1D493DBA0C52534300AB718C /* PSMTabBarControl.framework in Copy Frameworks */,
);
name = "Copy Frameworks";
@@ -250,7 +247,6 @@
32CA4F630368D1EE00C91783 /* MacVim_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MacVim_Prefix.pch; sourceTree = "<group>"; };
52818AFA1C1C075300F59085 /* QuickLookStephen.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = QuickLookStephen.xcodeproj; path = qlstephen/QuickLookStephen.xcodeproj; sourceTree = "<group>"; };
528DA6691426D4EB003380F1 /* macvim-askpass */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = "macvim-askpass"; sourceTree = "<group>"; };
- 52A364721C4A5789005757EC /* Sparkle.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Sparkle.framework; sourceTree = "<group>"; };
52B7ED9A1C4A4D6900AFFF15 /* dsa_pub.pem */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = dsa_pub.pem; sourceTree = "<group>"; };
8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; };
8D1107320486CEB800E47090 /* MacVim.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = MacVim.app; sourceTree = BUILT_PRODUCTS_DIR; };
@@ -264,7 +260,6 @@
1DFE25A50C527BC4003000F7 /* PSMTabBarControl.framework in Frameworks */,
8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */,
1D8B5A53104AF9FF002E59D5 /* Carbon.framework in Frameworks */,
- 52A364731C4A5789005757EC /* Sparkle.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -443,7 +438,6 @@
29B97323FDCFA39411CA2CEA /* Frameworks */ = {
isa = PBXGroup;
children = (
- 52A364721C4A5789005757EC /* Sparkle.framework */,
1D8B5A52104AF9FF002E59D5 /* Carbon.framework */,
1D493DB30C52533B00AB718C /* PSMTabBarControl.xcodeproj */,
1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */,

View file

@ -1,55 +1,73 @@
{ stdenv, fetchFromGitHub, ncurses, gettext { stdenv, fetchFromGitHub, runCommand, ncurses, gettext
, pkgconfig, python, ruby, tcl, perl, luajit , pkgconfig, cscope, ruby, tcl, perl, luajit
, darwin , darwin
, usePython27 ? false
, python27 ? null, python37 ? null
}: }:
let
python = if usePython27
then { pkg = python27; name = "python"; }
else { pkg = python37; name = "python3"; };
in
assert python.pkg != null;
let
# Building requires a few system tools to be in PATH.
# Some of these we could patch into the relevant source files (such as xcodebuild and
# qlmanage) but some are used by Xcode itself and we have no choice but to put them in PATH.
# Symlinking them in this way is better than just putting all of /usr/bin in there.
buildSymlinks = runCommand "macvim-build-symlinks" {} ''
mkdir -p $out/bin
ln -s /usr/bin/xcrun /usr/bin/xcodebuild /usr/bin/tiffutil /usr/bin/qlmanage $out/bin
'';
in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "macvim-${version}"; name = "macvim-${version}";
version = "7.4.909"; version = "8.1.1517";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "macvim-dev"; owner = "macvim-dev";
repo = "macvim"; repo = "macvim";
rev = "75aa7774645adb586ab9010803773bd80e659254"; rev = "snapshot-156";
sha256 = "0k04jimbms6zffh8i8fjm2y51q01m5kga2n4djipd3pxij1qy89y"; sha256 = "17plmqcn49gqwr1km77mkxflrg0f4sn06r3n0fbxa8zcz9zmb1q2";
}; };
enableParallelBuilding = true; enableParallelBuilding = true;
nativeBuildInputs = [ pkgconfig ]; nativeBuildInputs = [ pkgconfig buildSymlinks ];
buildInputs = [ buildInputs = [
gettext ncurses luajit ruby tcl perl python gettext ncurses cscope luajit ruby tcl perl python.pkg
]; ];
patches = [ ./macvim.patch ]; patches = [ ./macvim.patch ./macvim-sparkle.patch ];
# The sparkle patch modified the nibs, so we have to recompile them
postPatch = '' postPatch = ''
substituteInPlace src/MacVim/mvim --replace "# VIM_APP_DIR=/Applications" "VIM_APP_DIR=$out/Applications" for nib in MainMenu Preferences; do
/usr/bin/ibtool --compile src/MacVim/English.lproj/$nib.nib/keyedobjects.nib src/MacVim/English.lproj/$nib.nib
# Don't create custom icons. done
substituteInPlace src/MacVim/icons/Makefile --replace '$(MAKE) -C makeicns' ""
substituteInPlace src/MacVim/icons/make_icons.py --replace "dont_create = False" "dont_create = True"
# Full path to xcodebuild
substituteInPlace src/Makefile --replace "xcodebuild" "/usr/bin/xcodebuild"
''; '';
configureFlags = [ configureFlags = [
#"--enable-cscope" # TODO: cscope doesn't build on Darwin yet "--enable-cscope"
"--enable-fail-if-missing" "--enable-fail-if-missing"
"--with-features=huge" "--with-features=huge"
"--enable-gui=macvim" "--enable-gui=macvim"
"--enable-multibyte" "--enable-multibyte"
"--enable-nls" "--enable-nls"
"--enable-luainterp=dynamic" "--enable-luainterp=dynamic"
"--enable-pythoninterp=dynamic" "--enable-${python.name}interp=dynamic"
"--enable-perlinterp=dynamic" "--enable-perlinterp=dynamic"
"--enable-rubyinterp=dynamic" "--enable-rubyinterp=dynamic"
"--enable-tclinterp=yes" "--enable-tclinterp=yes"
"--without-local-dir" "--without-local-dir"
"--with-luajit" "--with-luajit"
"--with-lua-prefix=${luajit}" "--with-lua-prefix=${luajit}"
"--with-${python.name}-command=${python.pkg}/bin/${python.name}"
"--with-ruby-command=${ruby}/bin/ruby" "--with-ruby-command=${ruby}/bin/ruby"
"--with-tclsh=${tcl}/bin/tclsh" "--with-tclsh=${tcl}/bin/tclsh"
"--with-tlib=ncurses" "--with-tlib=ncurses"
@ -58,8 +76,8 @@ stdenv.mkDerivation rec {
makeFlags = ''PREFIX=$(out) CPPFLAGS="-Wno-error"''; makeFlags = ''PREFIX=$(out) CPPFLAGS="-Wno-error"'';
# This is unfortunate, but we need to use the same compiler as XCode, # This is unfortunate, but we need to use the same compiler as Xcode,
# but XCode doesn't provide a way to configure the compiler. # but Xcode doesn't provide a way to configure the compiler.
# #
# If you're willing to modify the system files, you can do this: # If you're willing to modify the system files, you can do this:
# http://hamelot.co.uk/programming/add-gcc-compiler-to-xcode-6/ # http://hamelot.co.uk/programming/add-gcc-compiler-to-xcode-6/
@ -72,10 +90,18 @@ stdenv.mkDerivation rec {
configureFlagsArray+=( configureFlagsArray+=(
"--with-developer-dir=$DEV_DIR" "--with-developer-dir=$DEV_DIR"
) )
''; ''
# For some reason having LD defined causes PSMTabBarControl to fail at link-time as it
# passes arguments to ld that it meant for clang.
+ ''
unset LD
''
;
postConfigure = '' postConfigure = ''
substituteInPlace src/auto/config.mk --replace "PERL_CFLAGS =" "PERL_CFLAGS = -I${darwin.libutil}/include" substituteInPlace src/auto/config.mk --replace "PERL_CFLAGS =" "PERL_CFLAGS = -I${darwin.libutil}/include"
substituteInPlace src/MacVim/vimrc --subst-var-by CSCOPE ${cscope}/bin/cscope
''; '';
postInstall = '' postInstall = ''
@ -83,13 +109,11 @@ stdenv.mkDerivation rec {
cp -r src/MacVim/build/Release/MacVim.app $out/Applications cp -r src/MacVim/build/Release/MacVim.app $out/Applications
rm -rf $out/MacVim.app rm -rf $out/MacVim.app
rm $out/bin/{Vimdiff,Vimtutor,Vim,ex,rVim,rview,view} rm $out/bin/*
cp src/MacVim/mvim $out/bin
cp src/vimtutor $out/bin cp src/vimtutor $out/bin
for prog in mvim ex vi vim vimdiff view rvim rvimdiff rview; do
for prog in "vimdiff" "vi" "vim" "ex" "rvim" "rview" "view"; do ln -s $out/Applications/MacVim.app/Contents/bin/mvim $out/bin/$prog
ln -s $out/bin/mvim $out/bin/$prog
done done
# Fix rpaths # Fix rpaths
@ -97,17 +121,19 @@ stdenv.mkDerivation rec {
libperl=$(dirname $(find ${perl} -name "libperl.dylib")) libperl=$(dirname $(find ${perl} -name "libperl.dylib"))
install_name_tool -add_rpath ${luajit}/lib $exe install_name_tool -add_rpath ${luajit}/lib $exe
install_name_tool -add_rpath ${tcl}/lib $exe install_name_tool -add_rpath ${tcl}/lib $exe
install_name_tool -add_rpath ${python}/lib $exe install_name_tool -add_rpath ${python.pkg}/lib $exe
install_name_tool -add_rpath $libperl $exe install_name_tool -add_rpath $libperl $exe
install_name_tool -add_rpath ${ruby}/lib $exe install_name_tool -add_rpath ${ruby}/lib $exe
# Remove manpages from tools we aren't providing
find $out/share/man \( -name eVim.1 -or -name xxd.1 \) -delete
''; '';
meta = with stdenv.lib; { meta = with stdenv.lib; {
broken = true; # needs ruby 2.2
description = "Vim - the text editor - for macOS"; description = "Vim - the text editor - for macOS";
homepage = https://github.com/b4winckler/macvim; homepage = https://github.com/macvim-dev/macvim;
license = licenses.vim; license = licenses.vim;
maintainers = with maintainers; [ cstrahan ]; maintainers = with maintainers; [ cstrahan lilyball ];
platforms = platforms.darwin; platforms = platforms.darwin;
}; };
} }

View file

@ -1,65 +1,98 @@
diff --git a/src/MacVim/MacVim.xcodeproj/project.pbxproj b/src/MacVim/MacVim.xcodeproj/project.pbxproj diff --git a/src/MacVim/MacVim.xcodeproj/project.pbxproj b/src/MacVim/MacVim.xcodeproj/project.pbxproj
index c384bf7..bf1ce96 100644 index e519018de..556a4127d 100644
--- a/src/MacVim/MacVim.xcodeproj/project.pbxproj --- a/src/MacVim/MacVim.xcodeproj/project.pbxproj
+++ b/src/MacVim/MacVim.xcodeproj/project.pbxproj +++ b/src/MacVim/MacVim.xcodeproj/project.pbxproj
@@ -437,6 +437,8 @@ @@ -1007,6 +1007,7 @@
/* Begin PBXProject section */ LD_RUNPATH_SEARCH_PATHS = "@loader_path/../Frameworks";
29B97313FDCFA39411CA2CEA /* Project object */ = {
isa = PBXProject;
+ attributes = {
+ };
buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "MacVim" */;
compatibilityVersion = "Xcode 2.4";
developmentRegion = English;
@@ -632,6 +634,7 @@
INSTALL_PATH = "$(HOME)/Applications";
MACOSX_DEPLOYMENT_TARGET = ""; MACOSX_DEPLOYMENT_TARGET = "";
ONLY_ACTIVE_ARCH = YES; ONLY_ACTIVE_ARCH = YES;
+ OTHER_LDFLAGS = "-headerpad_max_install_names"; + OTHER_LDFLAGS = "-headerpad_max_install_names";
PRODUCT_BUNDLE_IDENTIFIER = org.vim.MacVim;
PRODUCT_NAME = MacVim; PRODUCT_NAME = MacVim;
VERSIONING_SYSTEM = "apple-generic"; VERSIONING_SYSTEM = "apple-generic";
WARNING_CFLAGS = "-Wall"; @@ -1039,6 +1040,7 @@
@@ -662,6 +665,7 @@ LD_RUNPATH_SEARCH_PATHS = "@loader_path/../Frameworks";
INSTALL_PATH = "$(HOME)/Applications";
MACOSX_DEPLOYMENT_TARGET = ""; MACOSX_DEPLOYMENT_TARGET = "";
ONLY_ACTIVE_ARCH = YES; ONLY_ACTIVE_ARCH = YES;
+ OTHER_LDFLAGS = "-headerpad_max_install_names"; + OTHER_LDFLAGS = "-headerpad_max_install_names";
PRODUCT_BUNDLE_IDENTIFIER = org.vim.MacVim;
PRODUCT_NAME = MacVim; PRODUCT_NAME = MacVim;
VERSIONING_SYSTEM = "apple-generic"; VERSIONING_SYSTEM = "apple-generic";
WRAPPER_EXTENSION = app; diff --git a/src/MacVim/vimrc b/src/MacVim/vimrc
index 23a06bf37..dfb10fe94 100644
--- a/src/MacVim/vimrc
+++ b/src/MacVim/vimrc
@@ -14,35 +14,5 @@ set backspace+=indent,eol,start
" translated to English).
set langmenu=none
-" Python2
-" MacVim is configured by default to use the pre-installed System python2
-" version. However, following code tries to find a Homebrew, MacPorts or
-" an installation from python.org:
-if exists("&pythondll") && exists("&pythonhome")
- if filereadable("/usr/local/Frameworks/Python.framework/Versions/2.7/Python")
- " Homebrew python 2.7
- set pythondll=/usr/local/Frameworks/Python.framework/Versions/2.7/Python
- elseif filereadable("/opt/local/Library/Frameworks/Python.framework/Versions/2.7/Python")
- " MacPorts python 2.7
- set pythondll=/opt/local/Library/Frameworks/Python.framework/Versions/2.7/Python
- elseif filereadable("/Library/Frameworks/Python.framework/Versions/2.7/Python")
- " https://www.python.org/downloads/mac-osx/
- set pythondll=/Library/Frameworks/Python.framework/Versions/2.7/Python
- endif
-endif
-
-" Python3
-" MacVim is configured by default to use Homebrew python3 version
-" If this cannot be found, following code tries to find a MacPorts
-" or an installation from python.org:
-if exists("&pythonthreedll") && exists("&pythonthreehome") &&
- \ !filereadable(&pythonthreedll)
- if filereadable("/opt/local/Library/Frameworks/Python.framework/Versions/3.7/Python")
- " MacPorts python 3.7
- set pythonthreedll=/opt/local/Library/Frameworks/Python.framework/Versions/3.7/Python
- elseif filereadable("/Library/Frameworks/Python.framework/Versions/3.7/Python")
- " https://www.python.org/downloads/mac-osx/
- set pythonthreedll=/Library/Frameworks/Python.framework/Versions/3.7/Python
- endif
-endif
-
+" Default cscopeprg to the Nix-installed path
+set cscopeprg=@CSCOPE@
diff --git a/src/Makefile b/src/Makefile diff --git a/src/Makefile b/src/Makefile
index 84a93f7..e23196d 100644 index 32810d0a7..13a05f349 100644
--- a/src/Makefile --- a/src/Makefile
+++ b/src/Makefile +++ b/src/Makefile
@@ -1306,7 +1306,7 @@ MACVIMGUI_SRC = gui.c gui_beval.c MacVim/gui_macvim.m MacVim/MMBackend.m \ @@ -1385,7 +1385,7 @@ MACVIMGUI_SRC = gui.c gui_beval.c MacVim/gui_macvim.m MacVim/MMBackend.m \
MacVim/MacVim.m MacVim/MacVim.m
MACVIMGUI_OBJ = objects/gui.o objects/gui_beval.o objects/pty.o \ MACVIMGUI_OBJ = objects/gui.o objects/gui_beval.o \
objects/gui_macvim.o objects/MMBackend.o objects/MacVim.o objects/gui_macvim.o objects/MMBackend.o objects/MacVim.o
-MACVIMGUI_DEFS = -DFEAT_GUI_MACVIM -Wall -Wno-unknown-pragmas -pipe -MACVIMGUI_DEFS = -DFEAT_GUI_MACVIM -Wall -Wno-unknown-pragmas -pipe
+MACVIMGUI_DEFS = -DMACOS_X_UNIX -DFEAT_GUI_MACVIM -Wall -Wno-unknown-pragmas -pipe +MACVIMGUI_DEFS = -DMACOS_X_DARWIN -DFEAT_GUI_MACVIM -Wall -Wno-unknown-pragmas -pipe
MACVIMGUI_IPATH = MACVIMGUI_IPATH =
MACVIMGUI_LIBS_DIR = MACVIMGUI_LIBS_DIR =
MACVIMGUI_LIBS1 = -framework Cocoa -framework Carbon MACVIMGUI_LIBS1 = -framework Cocoa -framework Carbon
diff --git a/src/auto/configure b/src/auto/configure diff --git a/src/auto/configure b/src/auto/configure
index cdc0819..8e2fd16 100755 index 9e6a82f4a..3c6d1a89b 100755
--- a/src/auto/configure --- a/src/auto/configure
+++ b/src/auto/configure +++ b/src/auto/configure
@@ -5383,10 +5383,7 @@ $as_echo "no" >&6; } @@ -5829,10 +5829,7 @@ $as_echo "not found" >&6; }
for path in "${vi_cv_path_mzscheme_pfx}/lib" "${SCHEME_LIB}"; do
if test "X$path" != "X"; then
- if test "x$MACOS_X" = "xyes"; then
- MZSCHEME_LIBS="-framework Racket"
- MZSCHEME_CFLAGS="-DMZ_PRECISE_GC"
- elif test -f "${path}/libmzscheme3m.a"; then
+ if test -f "${path}/libmzscheme3m.a"; then
MZSCHEME_LIBS="${path}/libmzscheme3m.a"
MZSCHEME_CFLAGS="-DMZ_PRECISE_GC"
elif test -f "${path}/libracket3m.a"; then
@@ -6217,23 +6214,6 @@ $as_echo ">>> too old; need Perl version 5.003_01 or later <<<" >&6; }
fi fi
if test "X$vi_cv_path_mzscheme_pfx" != "X"; then if test "x$MACOS_X" = "xyes"; then
- if test "x$MACOSX" = "xyes"; then
- MZSCHEME_LIBS="-framework Racket"
- MZSCHEME_CFLAGS="-DMZ_PRECISE_GC"
- elif test -f "${vi_cv_path_mzscheme_pfx}/lib/libmzscheme3m.a"; then
+ if test -f "${vi_cv_path_mzscheme_pfx}/lib/libmzscheme3m.a"; then
MZSCHEME_LIBS="${vi_cv_path_mzscheme_pfx}/lib/libmzscheme3m.a"
MZSCHEME_CFLAGS="-DMZ_PRECISE_GC"
elif test -f "${vi_cv_path_mzscheme_pfx}/lib/libracket3m.a"; then
@@ -5731,23 +5728,6 @@ $as_echo ">>> too old; need Perl version 5.003_01 or later <<<" >&6; }
fi
if test "x$MACOSX" = "xyes"; then
- dir=/System/Library/Perl - dir=/System/Library/Perl
- darwindir=$dir/darwin - darwindir=$dir/darwin
- if test -d $darwindir; then - if test -d $darwindir; then
@ -80,21 +113,22 @@ index cdc0819..8e2fd16 100755
PERL_LIBS=`echo "$PERL_LIBS" | sed -e 's/-arch\ ppc//' -e 's/-arch\ i386//' -e 's/-arch\ x86_64//'` PERL_LIBS=`echo "$PERL_LIBS" | sed -e 's/-arch\ ppc//' -e 's/-arch\ i386//' -e 's/-arch\ x86_64//'`
PERL_CFLAGS=`echo "$PERL_CFLAGS" | sed -e 's/-arch\ ppc//' -e 's/-arch\ i386//' -e 's/-arch\ x86_64//'` PERL_CFLAGS=`echo "$PERL_CFLAGS" | sed -e 's/-arch\ ppc//' -e 's/-arch\ i386//' -e 's/-arch\ x86_64//'`
fi fi
@@ -5954,13 +5934,6 @@ __: @@ -6456,13 +6436,7 @@ __:
eof eof
eval "`cd ${PYTHON_CONFDIR} && make -f "${tmp_mkf}" __ | sed '/ directory /d'`" eval "`cd ${PYTHON_CONFDIR} && make -f "${tmp_mkf}" __ | sed '/ directory /d'`"
rm -f -- "${tmp_mkf}" rm -f -- "${tmp_mkf}"
- if test "x$MACOSX" = "xyes" && ${vi_cv_path_python} -c \ - if test "x$MACOS_X" = "xyes" && test -n "${python_PYTHONFRAMEWORK}" && ${vi_cv_path_python} -c \
- "import sys; sys.exit(${vi_cv_var_python_version} < 2.3)"; then - "import sys; sys.exit(${vi_cv_var_python_version} < 2.3)"; then
- vi_cv_path_python_plibs="-framework Python" - vi_cv_path_python_plibs="-framework Python"
- if test "x${vi_cv_path_python}" != "x/usr/bin/python" && test -n "${python_PYTHONFRAMEWORKPREFIX}"; then - if test "x${vi_cv_path_python}" != "x/usr/bin/python" && test -n "${python_PYTHONFRAMEWORKPREFIX}"; then
- vi_cv_path_python_plibs="-F${python_PYTHONFRAMEWORKPREFIX} -framework Python" - vi_cv_path_python_plibs="-F${python_PYTHONFRAMEWORKPREFIX} -framework Python"
- fi - fi
- else - else
if test "${vi_cv_var_python_version}" = "1.4"; then +
vi_cv_path_python_plibs="${PYTHON_CONFDIR}/libModules.a ${PYTHON_CONFDIR}/libPython.a ${PYTHON_CONFDIR}/libObjects.a ${PYTHON_CONFDIR}/libParser.a" vi_cv_path_python_plibs="-L${PYTHON_CONFDIR} -lpython${vi_cv_var_python_version}"
else if test -n "${python_LINKFORSHARED}" && test -n "${python_PYTHONFRAMEWORKPREFIX}"; then
@@ -5979,7 +5952,6 @@ eof python_link_symbol=`echo ${python_LINKFORSHARED} | sed 's/\([^ \t][^ \t]*[ \t][ \t]*[^ \t][^ \t]*\)[ \t].*/\1/'`
@@ -6477,7 +6451,6 @@ eof
fi fi
vi_cv_path_python_plibs="${vi_cv_path_python_plibs} ${python_BASEMODLIBS} ${python_LIBS} ${python_SYSLIBS} ${python_LINKFORSHARED}" vi_cv_path_python_plibs="${vi_cv_path_python_plibs} ${python_BASEMODLIBS} ${python_LIBS} ${python_SYSLIBS} ${python_LINKFORSHARED}"
vi_cv_path_python_plibs=`echo $vi_cv_path_python_plibs | sed s/-ltermcap//` vi_cv_path_python_plibs=`echo $vi_cv_path_python_plibs | sed s/-ltermcap//`
@ -102,7 +136,7 @@ index cdc0819..8e2fd16 100755
fi fi
@@ -6055,13 +6027,6 @@ rm -f core conftest.err conftest.$ac_objext \ @@ -6556,13 +6529,6 @@ rm -f core conftest.err conftest.$ac_objext \
$as_echo "no" >&6; } $as_echo "no" >&6; }
fi fi
@ -116,11 +150,11 @@ index cdc0819..8e2fd16 100755
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if compile and link flags for Python are sane" >&5 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compile and link flags for Python are sane" >&5
$as_echo_n "checking if compile and link flags for Python are sane... " >&6; } $as_echo_n "checking if compile and link flags for Python are sane... " >&6; }
cflags_save=$CFLAGS cflags_save=$CFLAGS
@@ -6919,11 +6884,7 @@ $as_echo "$tclver - OK" >&6; }; @@ -7456,11 +7422,7 @@ $as_echo "$tclver - OK" >&6; };
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for location of Tcl include" >&5 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for location of Tcl include" >&5
$as_echo_n "checking for location of Tcl include... " >&6; } $as_echo_n "checking for location of Tcl include... " >&6; }
- if test "x$MACOSX" != "xyes"; then - if test "x$MACOS_X" != "xyes"; then
tclinc="$tclloc/include $tclloc/include/tcl $tclloc/include/tcl$tclver /usr/local/include /usr/local/include/tcl$tclver /usr/include /usr/include/tcl$tclver" tclinc="$tclloc/include $tclloc/include/tcl $tclloc/include/tcl$tclver /usr/local/include /usr/local/include/tcl$tclver /usr/include /usr/include/tcl$tclver"
- else - else
- tclinc="/System/Library/Frameworks/Tcl.framework/Headers" - tclinc="/System/Library/Frameworks/Tcl.framework/Headers"
@ -128,104 +162,63 @@ index cdc0819..8e2fd16 100755
TCL_INC= TCL_INC=
for try in $tclinc; do for try in $tclinc; do
if test -f "$try/tcl.h"; then if test -f "$try/tcl.h"; then
@@ -6941,12 +6902,8 @@ $as_echo "<not found>" >&6; } @@ -7478,12 +7440,8 @@ $as_echo "<not found>" >&6; }
if test -z "$SKIP_TCL"; then if test -z "$SKIP_TCL"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for location of tclConfig.sh script" >&5 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for location of tclConfig.sh script" >&5
$as_echo_n "checking for location of tclConfig.sh script... " >&6; } $as_echo_n "checking for location of tclConfig.sh script... " >&6; }
- if test "x$MACOSX" != "xyes"; then - if test "x$MACOS_X" != "xyes"; then
tclcnf=`echo $tclinc | sed s/include/lib/g` tclcnf=`echo $tclinc | sed s/include/lib/g`
tclcnf="$tclcnf `echo $tclinc | sed s/include/lib64/g`" tclcnf="$tclcnf `echo $tclinc | sed s/include/lib64/g`"
- else - else
- tclcnf="/System/Library/Frameworks/Tcl.framework" - tclcnf="/System/Library/Frameworks/Tcl.framework"
- fi - fi
for try in $tclcnf; do for try in $tclcnf; do
if test -f $try/tclConfig.sh; then if test -f "$try/tclConfig.sh"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $try/tclConfig.sh" >&5 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $try/tclConfig.sh" >&5
@@ -7120,10 +7077,6 @@ $as_echo "$rubyhdrdir" >&6; } @@ -7673,10 +7631,6 @@ $as_echo "$rubyhdrdir" >&6; }
if test -f "$rubylibdir/$librubya"; then if test -f "$rubylibdir/$librubya"; then
librubyarg="$librubyarg" librubyarg="$librubyarg"
RUBY_LIBS="$RUBY_LIBS -L$rubylibdir" RUBY_LIBS="$RUBY_LIBS -L$rubylibdir"
- elif test -d "/System/Library/Frameworks/Ruby.framework"; then - elif test "$vi_cv_path_ruby" = "/usr/bin/ruby" -a -d "/System/Library/Frameworks/Ruby.framework"; then
- RUBY_LIBS="-framework Ruby" - RUBY_LIBS="-framework Ruby"
- RUBY_CFLAGS="-DRUBY_VERSION=$rubyversion" - RUBY_CFLAGS="$RUBY_CFLAGS -DRUBY_VERSION=$rubyversion"
- librubyarg= - librubyarg=
fi fi
if test "X$librubyarg" != "X"; then if test "X$librubyarg" != "X"; then
diff --git a/src/if_python.c b/src/if_python.c
index 1d87cac..9d28df0 100644
--- a/src/if_python.c
+++ b/src/if_python.c
@@ -55,11 +55,7 @@
#define PY_SSIZE_T_CLEAN
-#ifdef FEAT_GUI_MACVIM
-# include <Python/Python.h>
-#else
-# include <Python.h>
-#endif
+#include <Python.h>
#if !defined(PY_VERSION_HEX) || PY_VERSION_HEX < 0x02050000
# undef PY_SSIZE_T_CLEAN
diff --git a/src/if_ruby.c b/src/if_ruby.c
index 1deb83e..ac23878 100644
--- a/src/if_ruby.c
+++ b/src/if_ruby.c
@@ -106,17 +106,9 @@
# define rb_check_type rb_check_type_stub
#endif
-#ifdef FEAT_GUI_MACVIM
-# include <Ruby/ruby.h>
-#else
-# include <ruby.h>
-#endif
+#include <ruby.h>
#ifdef RUBY19_OR_LATER
-# ifdef FEAT_GUI_MACVIM
-# include <Ruby/ruby/encoding.h>
-# else
-# include <ruby/encoding.h>
-# endif
+# include <ruby/encoding.h>
#endif
#undef off_t /* ruby defines off_t as _int64, Mingw uses long */
diff --git a/src/vim.h b/src/vim.h diff --git a/src/vim.h b/src/vim.h
index 4c93908..edc6bd7 100644 index cb5be6c97..b703b31cd 100644
--- a/src/vim.h --- a/src/vim.h
+++ b/src/vim.h +++ b/src/vim.h
@@ -308,18 +308,6 @@ @@ -241,18 +241,6 @@
# define UNUSED # define SUN_SYSTEM
#endif #endif
-/* if we're compiling in C++ (currently only KVim), the system -/* If we're compiling in C++ (currently only KVim), the system
- * headers must have the correct prototypes or nothing will build. - * headers must have the correct prototypes or nothing will build.
- * conversely, our prototypes might clash due to throw() specifiers and - * Conversely, our prototypes might clash due to throw() specifiers and
- * cause compilation failures even though the headers are correct. For - * cause compilation failures even though the headers are correct. For
- * a concrete example, gcc-3.2 enforces exception specifications, and - * a concrete example, gcc-3.2 enforces exception specifications, and
- * glibc-2.2.5 has them in their system headers. - * glibc-2.2.5 has them in their system headers.
- */ - */
-#if !defined(__cplusplus) && defined(UNIX) \ -#if !defined(__cplusplus) && defined(UNIX) \
- && !defined(MACOS_X) /* MACOS_X doesn't yet support osdef.h */ - && !defined(MACOS_X) /* MACOS_X doesn't yet support osdef.h */
-# include "auto/osdef.h" /* bring missing declarations in */ -# include "auto/osdef.h" /* bring missing declarations in */
-#endif -#endif
- -
#ifdef __EMX__ #ifdef AMIGA
# define getcwd _getcwd2 # include "os_amiga.h"
# define chdir _chdir2 #endif
diff --git a/src/vimtutor b/src/vimtutor diff --git a/src/vimtutor b/src/vimtutor
index 70d9ec7..b565a1a 100755 index 1e8769b25..47078b0e7 100755
--- a/src/vimtutor --- a/src/vimtutor
+++ b/src/vimtutor +++ b/src/vimtutor
@@ -16,7 +16,7 @@ seq="vim vim8 vim75 vim74 vim73 vim72 vim71 vim70 vim7 vim6 vi" @@ -16,7 +16,7 @@ seq="vim vim81 vim80 vim8 vim74 vim73 vim72 vim71 vim70 vim7 vim6 vi"
if test "$1" = "-g"; then if test "$1" = "-g"; then
# Try to use the GUI version of Vim if possible, it will fall back # Try to use the GUI version of Vim if possible, it will fall back
# on Vim if Gvim is not installed. # on Vim if Gvim is not installed.
- seq="gvim gvim8 gvim75 gvim74 gvim73 gvim72 gvim71 gvim70 gvim7 gvim6 $seq" - seq="gvim gvim81 gvim80 gvim8 gvim74 gvim73 gvim72 gvim71 gvim70 gvim7 gvim6 $seq"
+ seq="mvim gvim gvim8 gvim75 gvim74 gvim73 gvim72 gvim71 gvim70 gvim7 gvim6 $seq" + seq="mvim gvim gvim81 gvim80 gvim8 gvim74 gvim73 gvim72 gvim71 gvim70 gvim7 gvim6 $seq"
shift shift
fi fi

View file

@ -1,4 +1,4 @@
{ stdenv, lib, fetchurl, makeDesktopItem { stdenv, lib, makeDesktopItem
, unzip, libsecret, libXScrnSaver, wrapGAppsHook , unzip, libsecret, libXScrnSaver, wrapGAppsHook
, gtk2, atomEnv, at-spi2-atk, autoPatchelfHook , gtk2, atomEnv, at-spi2-atk, autoPatchelfHook
, systemd, fontconfig , systemd, fontconfig

View file

@ -1,4 +1,4 @@
{ stdenv, lib, callPackage, fetchurl, fetchpatch, isInsiders ? false }: { stdenv, lib, callPackage, fetchurl, isInsiders ? false }:
let let
inherit (stdenv.hostPlatform) system; inherit (stdenv.hostPlatform) system;

View file

@ -1,4 +1,4 @@
{ stdenv, lib, callPackage, fetchurl, fetchpatch }: { stdenv, callPackage, fetchurl }:
let let
inherit (stdenv.hostPlatform) system; inherit (stdenv.hostPlatform) system;

View file

@ -1,4 +1,4 @@
{ stdenv, lib, runCommand, buildEnv, vscode, makeWrapper { lib, runCommand, buildEnv, vscode, makeWrapper
, vscodeExtensions ? [] }: , vscodeExtensions ? [] }:
/* /*

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, aspell, boost, expat, expect, intltool, libxml2, libxslt, pcre, wxGTK, xercesc }: { stdenv, fetchurl, aspell, boost, expat, intltool, libxml2, libxslt, pcre, wxGTK, xercesc }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "xmlcopyeditor-${version}"; name = "xmlcopyeditor-${version}";

View file

@ -1,4 +1,4 @@
{ stdenv, lib, makeWrapper, symlinkJoin { lib, makeWrapper, symlinkJoin
, qgis-unwrapped, extraPythonPackages ? (ps: [ ]) , qgis-unwrapped, extraPythonPackages ? (ps: [ ])
}: }:
with lib; with lib;

View file

@ -1,4 +1,4 @@
{ stdenv, lib, fetchurl, cmake, qt4, file, gcc }: { stdenv, lib, fetchurl, cmake, qt4, file }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "animbar"; pname = "animbar";

View file

@ -1,6 +1,6 @@
{ stdenv, fetchurl, cmake, coin3d, xercesc, ode, eigen, qt4, opencascade, gts { stdenv, fetchurl, cmake, coin3d, xercesc, ode, eigen, qt4, opencascade, gts
, hdf5, vtk, medfile, zlib, python27Packages, swig, gfortran, fetchpatch , hdf5, vtk, medfile, zlib, python27Packages, swig, gfortran
, soqt, libf2c, makeWrapper, makeDesktopItem , soqt, libf2c, makeWrapper
, mpi ? null }: , mpi ? null }:
assert mpi != null; assert mpi != null;

View file

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitLab, gnome3, meson, ninja, gettext, pkgconfig, libxml2, gtk3, hicolor-icon-theme, wrapGAppsHook }: { stdenv, fetchFromGitLab, meson, ninja, gettext, pkgconfig, libxml2, gtk3, hicolor-icon-theme, wrapGAppsHook }:
let let
version = "2.3.1"; version = "2.3.1";

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, perlPackages, makeWrapper, wrapGAppsHook, { stdenv, fetchurl, perlPackages, wrapGAppsHook,
librsvg, sane-backends, sane-frontends, librsvg, sane-backends, sane-frontends,
imagemagick, libtiff, djvulibre, poppler_utils, ghostscript, unpaper, imagemagick, libtiff, djvulibre, poppler_utils, ghostscript, unpaper,
xvfb_run, hicolor-icon-theme, liberation_ttf, file, pdftk }: xvfb_run, hicolor-icon-theme, liberation_ttf, file, pdftk }:

View file

@ -1,32 +1,93 @@
{ stdenv, fetchurl, gnome3, itstool, libxml2, pkgconfig, intltool, { stdenv
exiv2, libjpeg, libtiff, gst_all_1, libraw, libsoup, libsecret, , fetchurl
glib, gtk3, gsettings-desktop-schemas, , fetchpatch
libchamplain, librsvg, libwebp, json-glib, webkitgtk, lcms2, bison, , gnome3
flex, wrapGAppsHook, shared-mime-info }: , pkgconfig
, meson
, ninja
, exiv2
, libjpeg
, libtiff
, gst_all_1
, libraw
, libsoup
, libsecret
, glib
, gtk3
, gsettings-desktop-schemas
, libchamplain
, librsvg
, libwebp
, json-glib
, webkitgtk
, lcms2
, bison
, flex
, clutter-gtk
, wrapGAppsHook
, shared-mime-info
, python3
, desktop-file-utils
, itstool
}:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "gthumb"; pname = "gthumb";
version = "3.6.2"; version = "3.8.0";
src = fetchurl { src = fetchurl {
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "0rjb0bsjhn7nyl5jyjgrypvr6qdr9dc2g586j3lzan96a2vnpgy9"; sha256 = "1l2s1facq1r6yvqjqc34aqfzlvb3nhkhn79xisxbbdlgrrxdq52f";
}; };
nativeBuildInputs = [ itstool libxml2 intltool pkgconfig bison flex wrapGAppsHook ]; nativeBuildInputs = [
bison
desktop-file-utils
flex
itstool
meson
ninja
pkgconfig
python3
wrapGAppsHook
];
buildInputs = [ buildInputs = [
glib gtk3 gsettings-desktop-schemas gst_all_1.gstreamer gst_all_1.gst-plugins-base clutter-gtk
exiv2 libjpeg libtiff libraw libsoup libsecret libchamplain exiv2
librsvg libwebp json-glib webkitgtk lcms2 gnome3.adwaita-icon-theme glib
gnome3.adwaita-icon-theme
gsettings-desktop-schemas
gst_all_1.gst-plugins-base
gst_all_1.gstreamer
gtk3
json-glib
lcms2
libchamplain
libjpeg
libraw
librsvg
libsecret
libsoup
libtiff
libwebp
webkitgtk
]; ];
enableParallelBuilding = true; mesonFlags = [
"-Dlibchamplain=true"
configureFlags = [
"--enable-libchamplain"
]; ];
postPatch = ''
chmod +x gthumb/make-gthumb-h.py
patchShebangs data/gschemas/make-enums.py \
gthumb/make-gthumb-h.py \
po/make-potfiles-in.py \
postinstall.py \
gthumb/make-authors-tab.py
'';
preFixup = '' preFixup = ''
gappsWrapperArgs+=(--prefix XDG_DATA_DIRS : "${shared-mime-info}/share") gappsWrapperArgs+=(--prefix XDG_DATA_DIRS : "${shared-mime-info}/share")
''; '';
@ -41,7 +102,7 @@ stdenv.mkDerivation rec {
homepage = "https://wiki.gnome.org/Apps/Gthumb"; homepage = "https://wiki.gnome.org/Apps/Gthumb";
description = "Image browser and viewer for GNOME"; description = "Image browser and viewer for GNOME";
platforms = platforms.linux; platforms = platforms.linux;
license = licenses.gpl2; license = licenses.gpl2Plus;
maintainers = [ maintainers.mimadrid ]; maintainers = [ maintainers.mimadrid ];
}; };
} }

View file

@ -1,4 +1,4 @@
{ lib, bundlerApp, fetchurl, ruby, makeWrapper, { lib, bundlerApp, ruby, makeWrapper,
withPngcrush ? true, pngcrush ? null, withPngcrush ? true, pngcrush ? null,
withPngout ? true, pngout ? null, withPngout ? true, pngout ? null,
withAdvpng ? true, advancecomp ? null, withAdvpng ? true, advancecomp ? null,

View file

@ -1,4 +1,4 @@
{ lib, stdenv, fetchFromGitHub, mozjpeg, makeWrapper, coreutils, parallel, findutils }: { stdenv, fetchFromGitHub, mozjpeg, makeWrapper, coreutils, parallel, findutils }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "jpeg-archive-${version}"; name = "jpeg-archive-${version}";

View file

@ -12,7 +12,6 @@ let
major = "4.2"; major = "4.2";
minor = "1"; minor = "1";
patch = null;
in in

View file

@ -1,6 +1,5 @@
{ stdenv { stdenv
, fetchurl , fetchurl
, fetchpatch
, meson , meson
, ninja , ninja
, gtk3 , gtk3

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, fetchFromGitHub, autoreconfHook, pkgconfig { stdenv, fetchFromGitHub, autoreconfHook, pkgconfig
, leptonica, libpng, libtiff, icu, pango, opencl-headers }: , leptonica, libpng, libtiff, icu, pango, opencl-headers }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {

View file

@ -1,5 +1,5 @@
{ {
mkDerivation, lib, mkDerivation,
extra-cmake-modules, kdoctools, extra-cmake-modules, kdoctools,
kcompletion, kconfig, kconfigwidgets, kcoreaddons, kcrash, kcompletion, kconfig, kconfigwidgets, kcoreaddons, kcrash,
kdbusaddons, kdnssd, kglobalaccel, kiconthemes, kitemmodels, kdbusaddons, kdnssd, kglobalaccel, kiconthemes, kitemmodels,

View file

@ -2,23 +2,27 @@
lib, lib,
fetchFromGitHub, fetchFromGitHub,
rustPlatform, rustPlatform,
cmake, cmake,
gzip,
makeWrapper, makeWrapper,
ncurses, ncurses,
expat,
pkgconfig, pkgconfig,
freetype, python3,
expat,
fontconfig, fontconfig,
freetype,
libGL,
libX11, libX11,
gzip,
libXcursor, libXcursor,
libXxf86vm,
libXi, libXi,
libXrandr, libXrandr,
libGL, libXxf86vm,
xclip, libxcb,
wayland,
libxkbcommon, libxkbcommon,
wayland,
# Darwin Frameworks # Darwin Frameworks
cf-private, cf-private,
AppKit, AppKit,
@ -34,37 +38,39 @@ with rustPlatform;
let let
rpathLibs = [ rpathLibs = [
expat expat
freetype
fontconfig fontconfig
freetype
libGL
libX11 libX11
libXcursor libXcursor
libXxf86vm
libXrandr
libGL
libXi libXi
libXrandr
libXxf86vm
libxcb
] ++ lib.optionals stdenv.isLinux [ ] ++ lib.optionals stdenv.isLinux [
wayland
libxkbcommon libxkbcommon
wayland
]; ];
in buildRustPackage rec { in buildRustPackage rec {
pname = "alacritty"; pname = "alacritty";
version = "0.3.2"; version = "0.3.3";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "jwilm"; owner = "jwilm";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "16lhxfpwysd5ngw8yq76vbzjdmfzs9plsvairf768hnl290jcpbh"; sha256 = "1h9zid7bi19qga3a8a2d4x3ma9wf1njmj74s4xnw7nzqqf3dh750";
}; };
cargoSha256 = "02q5kkr0zygpm9i2hd1sr246f18pyia1lq9dwjagqk7d2x3xlc7p"; cargoSha256 = "1rxb5ljgvn881jkxm8772kf815mmp08ci7sqmn2x1jwdcrphhxr1";
nativeBuildInputs = [ nativeBuildInputs = [
cmake cmake
makeWrapper
pkgconfig
ncurses
gzip gzip
makeWrapper
ncurses
pkgconfig
python3
]; ];
buildInputs = rpathLibs buildInputs = rpathLibs
@ -76,11 +82,6 @@ in buildRustPackage rec {
outputs = [ "out" "terminfo" ]; outputs = [ "out" "terminfo" ];
postPatch = ''
substituteInPlace copypasta/src/x11.rs \
--replace Command::new\(\"xclip\"\) Command::new\(\"${xclip}/bin/xclip\"\)
'';
postBuild = lib.optionalString stdenv.isDarwin "make app"; postBuild = lib.optionalString stdenv.isDarwin "make app";
installPhase = '' installPhase = ''

View file

@ -1,4 +1,4 @@
{ stdenv, python3, fetchFromGitHub, fetchpatch }: { stdenv, python3, fetchFromGitHub }:
with python3.pkgs; buildPythonApplication rec { with python3.pkgs; buildPythonApplication rec {
version = "4.2.2"; version = "4.2.2";

View file

@ -1,4 +1,4 @@
{ stdenv, lib, fetchFromGitHub, pkgconfig, autoreconfHook, { stdenv, fetchFromGitHub, pkgconfig, autoreconfHook,
glib, gtk3, pcsclite, lua5_2, curl, readline }: glib, gtk3, pcsclite, lua5_2, curl, readline }:
let let
version = "0.8.4"; version = "0.8.4";

View file

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, fetchpatch, cmake, libarcus, stb, protobuf }: { stdenv, fetchFromGitHub, cmake, libarcus, stb, protobuf }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "curaengine-${version}"; name = "curaengine-${version}";

View file

@ -7,7 +7,7 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "dbeaver-ce-${version}"; name = "dbeaver-ce-${version}";
version = "6.0.5"; version = "6.1.0";
desktopItem = makeDesktopItem { desktopItem = makeDesktopItem {
name = "dbeaver"; name = "dbeaver";
@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
src = fetchurl { src = fetchurl {
url = "https://dbeaver.io/files/${version}/dbeaver-ce-${version}-linux.gtk.x86_64.tar.gz"; url = "https://dbeaver.io/files/${version}/dbeaver-ce-${version}-linux.gtk.x86_64.tar.gz";
sha256 = "19gn6vkjl8dpmqpn26llhvc3yahjwj00wqvvimfsrqd32wgj2and"; sha256 = "0ngfv5pcj8hs7zcddwk0jw0l7hnm768wp76yrfyk38wkijk9f412";
}; };
installPhase = '' installPhase = ''

View file

@ -1,4 +1,4 @@
{stdenv, fetchpatch, fetchFromGitHub, python3}: {stdenv, fetchFromGitHub, python3}:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "1.6"; version = "1.6";

View file

@ -3,7 +3,6 @@
, curl , curl
, fetchFromGitHub , fetchFromGitHub
, git , git
, libcap
, libevent , libevent
, libtool , libtool
, qrencode , qrencode

View file

@ -1,11 +1,5 @@
{ lib, fetchurl, python3Packages, qtbase, makeWrapper }: { lib, fetchurl, python3Packages, qtbase, makeWrapper }:
let
python = python3Packages.python;
in
python3Packages.buildPythonApplication rec { python3Packages.buildPythonApplication rec {
pname = "electron-cash"; pname = "electron-cash";
version = "4.0.2"; version = "4.0.2";

View file

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, meson, ninja, gettext, python3, fetchpatch, { stdenv, fetchFromGitHub, meson, ninja, gettext, python3,
pkgconfig, libxml2, json-glib , sqlite, itstool, librsvg, pkgconfig, libxml2, json-glib , sqlite, itstool, librsvg,
vala, gtk3, gnome3, desktop-file-utils, wrapGAppsHook, gobject-introspection vala, gtk3, gnome3, desktop-file-utils, wrapGAppsHook, gobject-introspection
}: }:

View file

@ -6,8 +6,8 @@
# Gtk deps # Gtk deps
# upstream gImagereader supports Qt too # upstream gImagereader supports Qt too
, gtk3, gobject-introspection, wrapGAppsHook , gobject-introspection, wrapGAppsHook
, gnome3, gtkmm3, gtksourceview3, gtksourceviewmm, gtkspell3, gtkspellmm, cairomm , gtkmm3, gtksourceview3, gtksourceviewmm, gtkspell3, gtkspellmm, cairomm
}: }:
let let

View file

@ -1,4 +1,4 @@
{ stdenv, lib, fetchzip, makeDesktopItem, makeWrapper { stdenv, fetchzip, makeDesktopItem, makeWrapper
, jre , jre
}: }:

View file

@ -1,4 +1,4 @@
{ pkgs, fetchzip, stdenv, makeWrapper, openjdk }: { fetchzip, stdenv, makeWrapper, openjdk }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "gremlin-console-${version}"; name = "gremlin-console-${version}";

View file

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "josm-${version}"; name = "josm-${version}";
version = "15031"; version = "15155";
src = fetchurl { src = fetchurl {
url = "https://josm.openstreetmap.de/download/josm-snapshot-${version}.jar"; url = "https://josm.openstreetmap.de/download/josm-snapshot-${version}.jar";
sha256 = "19qw1s5v0dha329a7rfnhby0rq5d109b3f1ln2w1dfkmirbl75ir"; sha256 = "0qws5bgv7mm1iynsdrn7cdi16rd8k4139iia3bnjpm04xn69i5im";
}; };
buildInputs = [ jdk11 makeWrapper ]; buildInputs = [ jdk11 makeWrapper ];

View file

@ -1,5 +1,5 @@
{ stdenv, fetchzip, fetchurl, fetchpatch, cmake, pkgconfig { stdenv, fetchzip, fetchurl, fetchpatch, cmake, pkgconfig
, zlib, libpng, openjpeg , zlib, libpng
, enableGSL ? true, gsl , enableGSL ? true, gsl
, enableGhostScript ? true, ghostscript , enableGhostScript ? true, ghostscript
, enableMuPDF ? true, mupdf , enableMuPDF ? true, mupdf

View file

@ -2,7 +2,7 @@
harfbuzz, fontconfig, pkgconfig, ncurses, imagemagick, xsel, harfbuzz, fontconfig, pkgconfig, ncurses, imagemagick, xsel,
libstartup_notification, libX11, libXrandr, libXinerama, libXcursor, libstartup_notification, libX11, libXrandr, libXinerama, libXcursor,
libxkbcommon, libXi, libXext, wayland-protocols, wayland, libxkbcommon, libXi, libXext, wayland-protocols, wayland,
which, dbus, fetchpatch, which, dbus,
Cocoa, Cocoa,
CoreGraphics, CoreGraphics,
Foundation, Foundation,

View file

@ -1,5 +1,5 @@
{ stdenv, pkgs, buildFHSUserEnv, makeDesktopItem, fetchFromGitHub, fetchpatch { stdenv, pkgs, buildFHSUserEnv, makeDesktopItem, fetchFromGitHub
, wrapGAppsHook, python2Packages, python3Packages }: , wrapGAppsHook, python3Packages }:
let let
qt5Deps = with pkgs; with qt5; [ qtbase qtmultimedia ]; qt5Deps = with pkgs; with qt5; [ qtbase qtmultimedia ];

View file

@ -1,4 +1,4 @@
{ haskell, lib, haskellPackages, fetchFromGitHub }: { lib, haskellPackages, fetchFromGitHub }:
let let
version = "1.4.3"; version = "1.4.3";

Some files were not shown because too many files have changed in this diff Show more