Merge master into staging-next

This commit is contained in:
Frederik Rietdijk 2019-08-17 09:30:16 +02:00
commit c68f58d95c
174 changed files with 4836 additions and 1996 deletions

View File

@ -312,7 +312,23 @@ hello latest de2bf4786de6 About a minute ago 25.2MB
Maximum number of layers to create. Maximum number of layers to create.
</para> </para>
<para> <para>
<emphasis>Default:</emphasis> <literal>24</literal> <emphasis>Default:</emphasis> <literal>100</literal>
</para>
<para>
<emphasis>Maximum:</emphasis> <literal>125</literal>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<varname>extraCommands</varname> <emphasis>optional</emphasis>
</term>
<listitem>
<para>
Shell commands to run while building the final layer, without access
to most of the layer contents. Changes to this layer are "on top"
of all the other layers, so can create additional directories
and files.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>

View File

@ -1484,6 +1484,11 @@
github = "eadwu"; github = "eadwu";
name = "Edmund Wu"; name = "Edmund Wu";
}; };
ealasu = {
email = "emanuel.alasu@gmail.com";
github = "ealasu";
name = "Emanuel Alasu";
};
eamsden = { eamsden = {
email = "edward@blackriversoft.com"; email = "edward@blackriversoft.com";
github = "eamsden"; github = "eamsden";

View File

@ -29,13 +29,14 @@
</para> </para>
<para> <para>
You are logged-in automatically as <literal>root</literal>. (The You are logged-in automatically as <literal>nixos</literal>.
<literal>root</literal> user account has an empty password.) The <literal>nixos</literal> user account has an empty password so you
can use <command>sudo</command> without a password.
</para> </para>
<para> <para>
If you downloaded the graphical ISO image, you can run <command>systemctl If you downloaded the graphical ISO image, you can run <command>systemctl
start display-manager</command> to start KDE. If you want to continue on the start display-manager</command> to start the desktop environment. If you want to continue on the
terminal, you can use <command>loadkeys</command> to switch to your terminal, you can use <command>loadkeys</command> to switch to your
preferred keyboard layout. (We even provide neo2 via <command>loadkeys de preferred keyboard layout. (We even provide neo2 via <command>loadkeys de
neo</command>!) neo</command>!)
@ -65,9 +66,9 @@
<para> <para>
If you would like to continue the installation from a different machine you If you would like to continue the installation from a different machine you
need to activate the SSH daemon via <literal>systemctl start need to activate the SSH daemon via <command>systemctl start
sshd</literal>. In order to be able to login you also need to set a sshd</command>. You then must set a password for either <literal>root</literal> or
password for <literal>root</literal> using <literal>passwd</literal>. <literal>nixos</literal> with <command>passwd></command> to be able to login.
</para> </para>
</section> </section>
</section> </section>

View File

@ -35,6 +35,12 @@
<replaceable>shell-command</replaceable> <replaceable>shell-command</replaceable>
</arg> </arg>
<arg>
<arg choice='plain'>
<option>--silent</option>
</arg>
</arg>
<arg> <arg>
<arg choice='plain'> <arg choice='plain'>
<option>--help</option> <option>--help</option>
@ -100,6 +106,16 @@
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry>
<term>
<option>--silent</option>
</term>
<listitem>
<para>
Suppresses all output from the activation script of the target system.
</para>
</listitem>
</varlistentry>
<varlistentry> <varlistentry>
<term> <term>
<option>--</option> <option>--</option>

View File

@ -42,6 +42,12 @@
set up binfmt interpreters for each of those listed systems. set up binfmt interpreters for each of those listed systems.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
The installer now uses a less privileged <literal>nixos</literal> user whereas before we logged in as root.
To gain root privileges use <literal>sudo -i</literal> without a password.
</para>
</listitem>
</itemizedlist> </itemizedlist>
</section> </section>
@ -248,6 +254,15 @@
If IBus support in Qt 4.x applications is required, add the <literal>ibus-qt</literal> package to your <xref linkend="opt-environment.systemPackages" /> manually. If IBus support in Qt 4.x applications is required, add the <literal>ibus-qt</literal> package to your <xref linkend="opt-environment.systemPackages" /> manually.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
The CUPS Printing service now uses socket-based activation by
default, only starting when needed. The previous behavior can
be restored by setting
<option>services.cups.startWhenNeeded</option> to
<literal>false</literal>.
</para>
</listitem>
</itemizedlist> </itemizedlist>
</section> </section>

View File

@ -0,0 +1,56 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.hardware.deviceTree;
in {
options = {
hardware.deviceTree = {
enable = mkOption {
default = pkgs.stdenv.hostPlatform.platform.kernelDTB or false;
type = types.bool;
description = ''
Build device tree files. These are used to describe the
non-discoverable hardware of a system.
'';
};
base = mkOption {
default = "${config.boot.kernelPackages.kernel}/dtbs";
defaultText = "\${config.boot.kernelPackages.kernel}/dtbs";
example = literalExample "pkgs.deviceTree_rpi";
type = types.path;
description = ''
The package containing the base device-tree (.dtb) to boot. Contains
device trees bundled with the Linux kernel by default.
'';
};
overlays = mkOption {
default = [];
example = literalExample
"[\"\${pkgs.deviceTree_rpi.overlays}/w1-gpio.dtbo\"]";
type = types.listOf types.path;
description = ''
A path containing device tree overlays (.dtbo) to be applied to all
base device-trees.
'';
};
package = mkOption {
default = null;
type = types.nullOr types.path;
internal = true;
description = ''
A path containing the result of applying `overlays` to `base`.
'';
};
};
};
config = mkIf (cfg.enable) {
hardware.deviceTree.package = if (cfg.overlays != [])
then pkgs.deviceTree.applyOverlays cfg.base cfg.overlays else cfg.base;
};
}

View File

@ -8,16 +8,30 @@ with lib;
{ {
imports = [ ./installation-cd-base.nix ]; imports = [ ./installation-cd-base.nix ];
# Whitelist wheel users to do anything
# This is useful for things like pkexec
#
# WARNING: this is dangerous for systems
# outside the installation-cd and shouldn't
# be used anywhere else.
security.polkit.extraConfig = ''
polkit.addRule(function(action, subject) {
if (subject.isInGroup("wheel")) {
return polkit.Result.YES;
}
});
'';
services.xserver = { services.xserver = {
enable = true; enable = true;
# Don't start the X server by default. # Don't start the X server by default.
autorun = mkForce false; autorun = mkForce false;
# Automatically login as root. # Automatically login as nixos.
displayManager.slim = { displayManager.slim = {
enable = true; enable = true;
defaultUser = "root"; defaultUser = "nixos";
autoLogin = true; autoLogin = true;
}; };
@ -33,7 +47,6 @@ with lib;
# Enable sound in graphical iso's. # Enable sound in graphical iso's.
hardware.pulseaudio.enable = true; hardware.pulseaudio.enable = true;
hardware.pulseaudio.systemWide = true; # Needed since we run plasma as root.
environment.systemPackages = [ environment.systemPackages = [
# Include gparted for partitioning disks. # Include gparted for partitioning disks.

View File

@ -1,5 +1,5 @@
# This module defines a NixOS installation CD that contains X11 and # This module defines a NixOS installation CD that contains X11 and
# Plasma5. # Plasma 5.
{ config, lib, pkgs, ... }: { config, lib, pkgs, ... }:
@ -30,15 +30,20 @@ with lib;
Version=1.0 Version=1.0
Type=Application Type=Application
Name=NixOS Manual Name=NixOS Manual
Exec=firefox ${config.system.build.manual.manualHTMLIndex} Exec=firefox ${config.system.build.manual.manual}/share/doc/nixos/index.html
Icon=text-html Icon=text-html
''; '';
homeDir = "/home/nixos/";
desktopDir = homeDir + "Desktop/";
in '' in ''
mkdir -p /root/Desktop mkdir -p ${desktopDir}
ln -sfT ${manualDesktopFile} /root/Desktop/nixos-manual.desktop chown nixos ${homeDir} ${desktopDir}
ln -sfT ${pkgs.konsole}/share/applications/org.kde.konsole.desktop /root/Desktop/org.kde.konsole.desktop
ln -sfT ${pkgs.gparted}/share/applications/gparted.desktop /root/Desktop/gparted.desktop ln -sfT ${manualDesktopFile} ${desktopDir + "nixos-manual.desktop"}
ln -sfT ${pkgs.gparted}/share/applications/gparted.desktop ${desktopDir + "gparted.desktop"}
ln -sfT ${pkgs.konsole}/share/applications/org.kde.konsole.desktop ${desktopDir + "org.kde.konsole.desktop"}
''; '';
} }

View File

@ -16,7 +16,8 @@ fi
mountPoint=/mnt mountPoint=/mnt
system=/nix/var/nix/profiles/system system=/nix/var/nix/profiles/system
command=($system/sw/bin/bash "--login") command=("$system/sw/bin/bash" "--login")
silent=0
while [ "$#" -gt 0 ]; do while [ "$#" -gt 0 ]; do
i="$1"; shift 1 i="$1"; shift 1
@ -32,9 +33,12 @@ while [ "$#" -gt 0 ]; do
exit 1 exit 1
;; ;;
--command|-c) --command|-c)
command=($system/sw/bin/bash "-c" "$1") command=("$system/sw/bin/bash" "-c" "$1")
shift 1 shift 1
;; ;;
--silent)
silent=1
;;
--) --)
command=("$@") command=("$@")
break break
@ -51,11 +55,20 @@ if [[ ! -e $mountPoint/etc/NIXOS ]]; then
exit 126 exit 126
fi fi
mkdir -m 0755 -p "$mountPoint/dev" "$mountPoint/sys" mkdir -p "$mountPoint/dev" "$mountPoint/sys"
chmod 0755 "$mountPoint/dev" "$mountPoint/sys"
mount --rbind /dev "$mountPoint/dev" mount --rbind /dev "$mountPoint/dev"
mount --rbind /sys "$mountPoint/sys" mount --rbind /sys "$mountPoint/sys"
# If silent, write both stdout and stderr of activation script to /dev/null
# otherwise, write both streams to stderr of this process
if [ "$silent" -eq 0 ]; then
PIPE_TARGET="/dev/stderr"
else
PIPE_TARGET="/dev/null"
fi
# Run the activation script. Set $LOCALE_ARCHIVE to supress some Perl locale warnings. # Run the activation script. Set $LOCALE_ARCHIVE to supress some Perl locale warnings.
LOCALE_ARCHIVE=$system/sw/lib/locale/locale-archive chroot "$mountPoint" "$system/activate" >&2 || true LOCALE_ARCHIVE="$system/sw/lib/locale/locale-archive" chroot "$mountPoint" "$system/activate" >>$PIPE_TARGET 2>&1 || true
exec chroot "$mountPoint" "${command[@]}" exec chroot "$mountPoint" "${command[@]}"

View File

@ -46,6 +46,7 @@
./hardware/cpu/amd-microcode.nix ./hardware/cpu/amd-microcode.nix
./hardware/cpu/intel-microcode.nix ./hardware/cpu/intel-microcode.nix
./hardware/digitalbitbox.nix ./hardware/digitalbitbox.nix
./hardware/device-tree.nix
./hardware/sensor/iio.nix ./hardware/sensor/iio.nix
./hardware/ksm.nix ./hardware/ksm.nix
./hardware/ledger.nix ./hardware/ledger.nix
@ -111,6 +112,7 @@
./programs/firejail.nix ./programs/firejail.nix
./programs/fish.nix ./programs/fish.nix
./programs/freetds.nix ./programs/freetds.nix
./programs/fuse.nix
./programs/gnome-disks.nix ./programs/gnome-disks.nix
./programs/gnome-documents.nix ./programs/gnome-documents.nix
./programs/gpaste.nix ./programs/gpaste.nix

View File

@ -44,6 +44,9 @@ with lib;
# Disable legacy virtual syscalls # Disable legacy virtual syscalls
"vsyscall=none" "vsyscall=none"
# Enable page allocator randomization
"page_alloc.shuffle=1"
]; ];
boot.blacklistedKernelModules = [ boot.blacklistedKernelModules = [
@ -121,4 +124,7 @@ with lib;
# Ignore outgoing ICMP redirects (this is ipv4 only) # Ignore outgoing ICMP redirects (this is ipv4 only)
boot.kernel.sysctl."net.ipv4.conf.all.send_redirects" = mkDefault false; boot.kernel.sysctl."net.ipv4.conf.all.send_redirects" = mkDefault false;
boot.kernel.sysctl."net.ipv4.conf.default.send_redirects" = mkDefault false; boot.kernel.sysctl."net.ipv4.conf.default.send_redirects" = mkDefault false;
# Restrict userfaultfd syscalls to processes with the SYS_PTRACE capability
boot.kernel.sysctl."vm.unprivileged_userfaultfd" = mkDefault false;
} }

View File

@ -32,19 +32,35 @@ with lib;
#services.rogue.enable = true; #services.rogue.enable = true;
# Disable some other stuff we don't need. # Disable some other stuff we don't need.
security.sudo.enable = mkDefault false;
services.udisks2.enable = mkDefault false; services.udisks2.enable = mkDefault false;
# Use less privileged nixos user
users.users.nixos = {
isNormalUser = true;
extraGroups = [ "wheel" "networkmanager" "video" ];
# Allow the graphical user to login without password
initialHashedPassword = "";
};
# Allow the user to log in as root without a password.
users.users.root.initialHashedPassword = "";
# Allow passwordless sudo from nixos user
security.sudo = {
enable = mkDefault true;
wheelNeedsPassword = mkForce false;
};
# Automatically log in at the virtual consoles. # Automatically log in at the virtual consoles.
services.mingetty.autologinUser = "root"; services.mingetty.autologinUser = "nixos";
# Some more help text. # Some more help text.
services.mingetty.helpLine = services.mingetty.helpLine =
'' ''
The "root" account has an empty password. ${ The "nixos" and "root" account have empty passwords. ${
optionalString config.services.xserver.enable optionalString config.services.xserver.enable
"Type `systemctl start display-manager' to\nstart the graphical user interface."} "Type `sudo systemctl start display-manager' to\nstart the graphical user interface."}
''; '';
# Allow sshd to be started manually through "systemctl start sshd". # Allow sshd to be started manually through "systemctl start sshd".
@ -86,8 +102,5 @@ with lib;
# because we have the firewall enabled. This makes installs from the # because we have the firewall enabled. This makes installs from the
# console less cumbersome if the machine has a public IP. # console less cumbersome if the machine has a public IP.
networking.firewall.logRefusedConnections = mkDefault false; networking.firewall.logRefusedConnections = mkDefault false;
# Allow the user to log in as root without a password.
users.users.root.initialHashedPassword = "";
}; };
} }

View File

@ -0,0 +1,37 @@
{ config, lib, ... }:
with lib;
let
cfg = config.programs.fuse;
in {
meta.maintainers = with maintainers; [ primeos ];
options.programs.fuse = {
mountMax = mkOption {
# In the C code it's an "int" (i.e. signed and at least 16 bit), but
# negative numbers obviously make no sense:
type = types.ints.between 0 32767; # 2^15 - 1
default = 1000;
description = ''
Set the maximum number of FUSE mounts allowed to non-root users.
'';
};
userAllowOther = mkOption {
type = types.bool;
default = false;
description = ''
Allow non-root users to specify the allow_other or allow_root mount
options, see mount.fuse3(8).
'';
};
};
config = {
environment.etc."fuse.conf".text = ''
${optionalString (!cfg.userAllowOther) "#"}user_allow_other
mount_max = ${toString cfg.mountMax}
'';
};
}

View File

@ -208,9 +208,9 @@ in {
config = mkIf cfg.enable { config = mkIf cfg.enable {
environment.systemPackages = [ wrapped ]; environment.systemPackages = [ wrapped ];
environment.etc."fuse.conf" = mkIf cfg.autoMount { text = '' programs.fuse = mkIf cfg.autoMount {
user_allow_other userAllowOther = true;
''; }; };
users.users = mkIf (cfg.user == "ipfs") { users.users = mkIf (cfg.user == "ipfs") {
ipfs = { ipfs = {

View File

@ -127,7 +127,7 @@ in
startWhenNeeded = mkOption { startWhenNeeded = mkOption {
type = types.bool; type = types.bool;
default = false; default = true;
description = '' description = ''
If set, CUPS is socket-activated; that is, If set, CUPS is socket-activated; that is,
instead of having it permanently running as a daemon, instead of having it permanently running as a daemon,
@ -296,11 +296,16 @@ in
# gets loaded, and then cups cannot access the printers. # gets loaded, and then cups cannot access the printers.
boot.blacklistedKernelModules = [ "usblp" ]; boot.blacklistedKernelModules = [ "usblp" ];
# Some programs like print-manager rely on this value to get
# printer test pages.
environment.sessionVariables.CUPS_DATADIR = "${bindir}/share/cups";
systemd.packages = [ cups.out ]; systemd.packages = [ cups.out ];
systemd.sockets.cups = mkIf cfg.startWhenNeeded { systemd.sockets.cups = mkIf cfg.startWhenNeeded {
wantedBy = [ "sockets.target" ]; wantedBy = [ "sockets.target" ];
listenStreams = map (x: replaceStrings ["localhost"] ["127.0.0.1"] (removePrefix "*:" x)) cfg.listenAddresses; listenStreams = [ "/run/cups/cups.sock" ]
++ map (x: replaceStrings ["localhost"] ["127.0.0.1"] (removePrefix "*:" x)) cfg.listenAddresses;
}; };
systemd.services.cups = systemd.services.cups =
@ -362,10 +367,10 @@ in
{ description = "CUPS Remote Printer Discovery"; { description = "CUPS Remote Printer Discovery";
wantedBy = [ "multi-user.target" ]; wantedBy = [ "multi-user.target" ];
wants = [ "cups.service" "avahi-daemon.service" ]; wants = [ "avahi-daemon.service" ] ++ optional (!cfg.startWhenNeeded) "cups.service";
bindsTo = [ "cups.service" "avahi-daemon.service" ]; bindsTo = [ "avahi-daemon.service" ] ++ optional (!cfg.startWhenNeeded) "cups.service";
partOf = [ "cups.service" "avahi-daemon.service" ]; partOf = [ "avahi-daemon.service" ] ++ optional (!cfg.startWhenNeeded) "cups.service";
after = [ "cups.service" "avahi-daemon.service" ]; after = [ "avahi-daemon.service" ] ++ optional (!cfg.startWhenNeeded) "cups.service";
path = [ cups ]; path = [ cups ];
@ -421,4 +426,7 @@ in
security.pam.services.cups = {}; security.pam.services.cups = {};
}; };
meta.maintainers = with lib.maintainers; [ matthewbauer ];
} }

View File

@ -15,12 +15,16 @@ let
''; '';
}; };
nixos-gsettings-desktop-schemas = pkgs.runCommand "nixos-gsettings-desktop-schemas" { preferLocalBuild = true; } nixos-gsettings-desktop-schemas = let
defaultPackages = with pkgs; [ gsettings-desktop-schemas gnome3.gnome-shell ];
in
pkgs.runCommand "nixos-gsettings-desktop-schemas" { preferLocalBuild = true; }
'' ''
mkdir -p $out/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas mkdir -p $out/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas
cp -rf ${pkgs.gsettings-desktop-schemas}/share/gsettings-schemas/gsettings-desktop-schemas*/glib-2.0/schemas/*.xml $out/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas
${concatMapStrings (pkg: "cp -rf ${pkg}/share/gsettings-schemas/*/glib-2.0/schemas/*.xml $out/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas\n") cfg.extraGSettingsOverridePackages} ${concatMapStrings
(pkg: "cp -rf ${pkg}/share/gsettings-schemas/*/glib-2.0/schemas/*.xml $out/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas\n")
(defaultPackages ++ cfg.extraGSettingsOverridePackages)}
chmod -R a+w $out/share/gsettings-schemas/nixos-gsettings-overrides chmod -R a+w $out/share/gsettings-schemas/nixos-gsettings-overrides
cat - > $out/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas/nixos-defaults.gschema.override <<- EOF cat - > $out/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas/nixos-defaults.gschema.override <<- EOF
@ -30,6 +34,9 @@ let
[org.gnome.desktop.screensaver] [org.gnome.desktop.screensaver]
picture-uri='${pkgs.nixos-artwork.wallpapers.simple-dark-gray-bottom}/share/artwork/gnome/nix-wallpaper-simple-dark-gray_bottom.png' picture-uri='${pkgs.nixos-artwork.wallpapers.simple-dark-gray-bottom}/share/artwork/gnome/nix-wallpaper-simple-dark-gray_bottom.png'
[org.gnome.shell]
favorite-apps=[ 'org.gnome.Epiphany.desktop', 'evolution.desktop', 'org.gnome.Music.desktop', 'org.gnome.Photos.desktop', 'org.gnome.Nautilus.desktop', 'org.gnome.Software.desktop' ]
${cfg.extraGSettingsOverrides} ${cfg.extraGSettingsOverrides}
EOF EOF

View File

@ -714,7 +714,7 @@ in
nativeBuildInputs = [ pkgs.xkbvalidate ]; nativeBuildInputs = [ pkgs.xkbvalidate ];
preferLocalBuild = true; preferLocalBuild = true;
} '' } ''
validate "$xkbModel" "$layout" "$xkbVariant" "$xkbOptions" xkbvalidate "$xkbModel" "$layout" "$xkbVariant" "$xkbOptions"
touch "$out" touch "$out"
''); '');

View File

@ -46,8 +46,8 @@ let
ln -s ${kernelPath} $out/kernel ln -s ${kernelPath} $out/kernel
ln -s ${config.system.modulesTree} $out/kernel-modules ln -s ${config.system.modulesTree} $out/kernel-modules
${optionalString (pkgs.stdenv.hostPlatform.platform.kernelDTB or false) '' ${optionalString (config.hardware.deviceTree.package != null) ''
ln -s ${config.boot.kernelPackages.kernel}/dtbs $out/dtbs ln -s ${config.hardware.deviceTree.package} $out/dtbs
''} ''}
echo -n "$kernelParams" > $out/kernel-params echo -n "$kernelParams" > $out/kernel-params

View File

@ -75,9 +75,8 @@ addEntry() {
copyToKernelsDir "$path/kernel"; kernel=$result copyToKernelsDir "$path/kernel"; kernel=$result
copyToKernelsDir "$path/initrd"; initrd=$result copyToKernelsDir "$path/initrd"; initrd=$result
# XXX UGLY: maybe the system config should have a top-level "dtbs" entry? dtbDir=$(readlink -m "$path/dtbs")
dtbDir=$(readlink -m "$path/kernel/../dtbs") if [ -e "$dtbDir" ]; then
if [ -d "$dtbDir" ]; then
copyToKernelsDir "$dtbDir"; dtbs=$result copyToKernelsDir "$dtbDir"; dtbs=$result
fi fi

View File

@ -10,7 +10,7 @@ let
checkLink = checkUnitConfig "Link" [ checkLink = checkUnitConfig "Link" [
(assertOnlyFields [ (assertOnlyFields [
"Description" "Alias" "MACAddressPolicy" "MACAddress" "NamePolicy" "Name" "Description" "Alias" "MACAddressPolicy" "MACAddress" "NamePolicy" "OriginalName"
"MTUBytes" "BitsPerSecond" "Duplex" "AutoNegotiation" "WakeOnLan" "Port" "MTUBytes" "BitsPerSecond" "Duplex" "AutoNegotiation" "WakeOnLan" "Port"
"TCPSegmentationOffload" "TCP6SegmentationOffload" "GenericSegmentationOffload" "TCPSegmentationOffload" "TCP6SegmentationOffload" "GenericSegmentationOffload"
"GenericReceiveOffload" "LargeReceiveOffload" "RxChannels" "TxChannels" "GenericReceiveOffload" "LargeReceiveOffload" "RxChannels" "TxChannels"

View File

@ -35,8 +35,7 @@ in
autoResize = true; autoResize = true;
}; };
boot.extraModulePackages = boot.extraModulePackages = [
[ config.boot.kernelPackages.ixgbevf
config.boot.kernelPackages.ena config.boot.kernelPackages.ena
]; ];
boot.initrd.kernelModules = [ "xen-blkfront" "xen-netfront" ]; boot.initrd.kernelModules = [ "xen-blkfront" "xen-netfront" ];

View File

@ -3,7 +3,7 @@
import ./make-test.nix ({pkgs, ... }: { import ./make-test.nix ({pkgs, ... }: {
name = "printing"; name = "printing";
meta = with pkgs.stdenv.lib.maintainers; { meta = with pkgs.stdenv.lib.maintainers; {
maintainers = [ domenkozar eelco ]; maintainers = [ domenkozar eelco matthewbauer ];
}; };
nodes = { nodes = {
@ -34,10 +34,6 @@ import ./make-test.nix ({pkgs, ... }: {
'' ''
startAll; startAll;
# Make sure that cups is up on both sides.
$server->waitForUnit("cups.service");
$client->waitForUnit("cups.service");
$client->sleep(10); # wait until cups is fully initialized
$client->succeed("lpstat -r") =~ /scheduler is running/ or die; $client->succeed("lpstat -r") =~ /scheduler is running/ or die;
# check local encrypted connections work without error # check local encrypted connections work without error
$client->succeed("lpstat -E -r") =~ /scheduler is running/ or die; $client->succeed("lpstat -E -r") =~ /scheduler is running/ or die;

View File

@ -5,13 +5,13 @@
with stdenv.lib; with stdenv.lib;
stdenv.mkDerivation rec{ stdenv.mkDerivation rec{
name = "bitcoin" + (toString (optional (!withGui) "d")) + "-" + version; name = "bitcoin" + (toString (optional (!withGui) "d")) + "-" + version;
version = "0.18.0"; version = "0.18.1";
src = fetchurl { src = fetchurl {
urls = [ "https://bitcoincore.org/bin/bitcoin-core-${version}/bitcoin-${version}.tar.gz" urls = [ "https://bitcoincore.org/bin/bitcoin-core-${version}/bitcoin-${version}.tar.gz"
"https://bitcoin.org/bin/bitcoin-core-${version}/bitcoin-${version}.tar.gz" "https://bitcoin.org/bin/bitcoin-core-${version}/bitcoin-${version}.tar.gz"
]; ];
sha256 = "5e4e6890e07b620a93fdb24605dae2bb53e8435b2a93d37558e1db1913df405f"; sha256 = "5c7d93f15579e37aa2d1dc79e8f5ac675f59045fceddf604ae0f1550eb03bf96";
}; };
nativeBuildInputs = nativeBuildInputs =

View File

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, fftw, qtbase, qtmultimedia, qmake { stdenv, mkDerivation, fetchFromGitHub, fftw, qtbase, qtmultimedia, qmake, itstool, wrapQtAppsHook
, alsaSupport ? true, alsaLib ? null , alsaSupport ? true, alsaLib ? null
, jackSupport ? false, libjack2 ? null , jackSupport ? false, libjack2 ? null
, portaudioSupport ? false, portaudio ? null }: , portaudioSupport ? false, portaudio ? null }:
@ -9,18 +9,18 @@ assert portaudioSupport -> portaudio != null;
with stdenv.lib; with stdenv.lib;
stdenv.mkDerivation rec { mkDerivation rec {
name = "fmit-${version}"; pname = "fmit";
version = "1.1.14"; version = "1.2.6";
src = fetchFromGitHub { src = fetchFromGitHub {
sha256 = "18gvl8smcnigzldy1acs5h8rscf287b39xi4y2cl5armqbj0y38x";
rev = "v${version}";
repo = "fmit";
owner = "gillesdegottex"; owner = "gillesdegottex";
repo = "fmit";
rev = "v${version}";
sha256 = "03nzkig5mw2rqwhwmg0qvc5cnk9bwh2wp13jh0mdrr935w0587mz";
}; };
nativeBuildInputs = [ qmake ]; nativeBuildInputs = [ qmake itstool wrapQtAppsHook ];
buildInputs = [ fftw qtbase qtmultimedia ] buildInputs = [ fftw qtbase qtmultimedia ]
++ optionals alsaSupport [ alsaLib ] ++ optionals alsaSupport [ alsaLib ]
++ optionals jackSupport [ libjack2 ] ++ optionals jackSupport [ libjack2 ]

View File

@ -15,13 +15,12 @@
, gobject-introspection , gobject-introspection
, wrapGAppsHook , wrapGAppsHook
, lastFMSupport ? true , lastFMSupport ? true
, wikipediaSupport ? true , youtubeSupport ? true
, youtubeSupport ? true, youtube-dl
}: }:
python3.pkgs.buildPythonApplication rec { python3.pkgs.buildPythonApplication rec {
pname = "lollypop"; pname = "lollypop";
version = "1.1.4.2"; version = "1.1.4.14";
format = "other"; format = "other";
doCheck = false; doCheck = false;
@ -30,7 +29,7 @@ python3.pkgs.buildPythonApplication rec {
url = "https://gitlab.gnome.org/World/lollypop"; url = "https://gitlab.gnome.org/World/lollypop";
rev = "refs/tags/${version}"; rev = "refs/tags/${version}";
fetchSubmodules = true; fetchSubmodules = true;
sha256 = "0rn3q7xslqq5hw4wb739ywg5dr99xpkbmyw80y84rsg0wfrwbjlc"; sha256 = "004cwbnxss6vmdsc6i0y83h3xbc2bzc0ra4z99pkizkky2mz6swj";
}; };
nativeBuildInputs = [ nativeBuildInputs = [
@ -64,7 +63,6 @@ python3.pkgs.buildPythonApplication rec {
pygobject3 pygobject3
] ]
++ lib.optional lastFMSupport pylast ++ lib.optional lastFMSupport pylast
++ lib.optional wikipediaSupport wikipedia
++ lib.optional youtubeSupport youtube-dl ++ lib.optional youtubeSupport youtube-dl
; ;

View File

@ -1,27 +1,20 @@
{ stdenv, fetchFromGitHub, fetchpatch, boost, libpulseaudio }: { stdenv, fetchFromGitHub, fetchpatch, boost, libpulseaudio }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "pamixer-${version}"; pname = "pamixer";
version = "1.3.1"; version = "1.4";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "cdemoulins"; owner = "cdemoulins";
repo = "pamixer"; repo = "pamixer";
rev = version; rev = version;
sha256 = "15zs2x4hnrpxphqn542b6qqm4ymvhkvbcfyffy69d6cki51chzzw"; sha256 = "1i14550n8paijwwnhksv5izgfqm3s5q2773bdfp6vyqybkll55f7";
}; };
# Remove after https://github.com/cdemoulins/pamixer/pull/16 gets fixed
patches = [(fetchpatch {
url = "https://github.com/oxij/pamixer/commit/dea1cd967aa837940e5c0b04ef7ebc47a7a93d63.patch";
sha256 = "0s77xmsiwywyyp6f4bjxg1sqdgms1k5fiy7na6ws0aswshfnzfjb";
})];
buildInputs = [ boost libpulseaudio ]; buildInputs = [ boost libpulseaudio ];
installPhase = '' installPhase = ''
mkdir -p $out/bin install -Dm755 pamixer -t $out/bin
cp pamixer $out/bin
''; '';
meta = with stdenv.lib; { meta = with stdenv.lib; {

View File

@ -73,6 +73,23 @@ env NIXPKGS_ALLOW_BROKEN=1 nix-instantiate --show-trace ../../../../ -A emacsPac
propagatedUserEnvPkgs = old.propagatedUserEnvPkgs ++ [ external.elpy ]; propagatedUserEnvPkgs = old.propagatedUserEnvPkgs ++ [ external.elpy ];
}); });
emacsql-sqlite = super.emacsql-sqlite.overrideAttrs(old: {
buildInputs = old.buildInputs ++ [ pkgs.sqlite ];
postBuild = ''
cd source/sqlite
make
cd -
'';
postInstall = ''
install -m=755 -D source/sqlite/emacsql-sqlite \
$out/share/emacs/site-lisp/elpa/emacsql-sqlite-${old.version}/sqlite/emacsql-sqlite
'';
stripDebugList = [ "share" ];
});
evil-magit = super.evil-magit.overrideAttrs (attrs: { evil-magit = super.evil-magit.overrideAttrs (attrs: {
# searches for Git at build time # searches for Git at build time
nativeBuildInputs = nativeBuildInputs =

View File

@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
sha256 = "19x000m3jwnkqgi6ic81lkzyjvvxcfacw2j0vcfcaknvvagzhyhb"; sha256 = "19x000m3jwnkqgi6ic81lkzyjvvxcfacw2j0vcfcaknvvagzhyhb";
}; };
hunspellDictionaries = with stdenv.lib; filter isDerivation (attrValues hunspellDicts); hunspellDictionaries = with stdenv.lib; filter isDerivation (unique (attrValues hunspellDicts));
mathJaxSrc = fetchurl { mathJaxSrc = fetchurl {
url = https://s3.amazonaws.com/rstudio-buildtools/mathjax-26.zip; url = https://s3.amazonaws.com/rstudio-buildtools/mathjax-26.zip;

View File

@ -27,13 +27,13 @@ in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "macvim-${version}"; name = "macvim-${version}";
version = "8.1.1517"; version = "8.1.1722";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "macvim-dev"; owner = "macvim-dev";
repo = "macvim"; repo = "macvim";
rev = "snapshot-156"; rev = "snapshot-157";
sha256 = "17plmqcn49gqwr1km77mkxflrg0f4sn06r3n0fbxa8zcz9zmb1q2"; sha256 = "1gmgc4pwaqy78gj4p7iib94n7j52ir0aa03ks595h3vy1hkcwwky";
}; };
enableParallelBuilding = true; enableParallelBuilding = true;

View File

@ -11,11 +11,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "drawio"; pname = "drawio";
version = "11.1.1"; version = "11.1.4";
src = fetchurl { src = fetchurl {
url = "https://github.com/jgraph/drawio-desktop/releases/download/v${version}/draw.io-x86_64-${version}.rpm"; url = "https://github.com/jgraph/drawio-desktop/releases/download/v${version}/draw.io-x86_64-${version}.rpm";
sha256 = "1jibkxx00rma641c3xr7720qj9slqsvhbpi7nawi6f2f91gzyc10"; sha256 = "0ca8wkkdr7kbb8il84nq05qgd5ykjq15fdv9432wr5p9xmqixz1q";
}; };
nativeBuildInputs = [ nativeBuildInputs = [
@ -70,18 +70,18 @@ stdenv.mkDerivation rec {
# Application icon # Application icon
mkdir -p $out/share/icons/hicolor mkdir -p $out/share/icons/hicolor
cp -r usr/share/icons/hicolor/0x0 $out/share/icons/hicolor/1024x1024 cp -r usr/share/icons/hicolor/* $out/share/icons/hicolor/
# XDG desktop item # XDG desktop item
cp -r usr/share/applications $out/share/applications cp -r usr/share/applications $out/share/applications
# Symlink wrapper # Symlink wrapper
mkdir -p $out/bin mkdir -p $out/bin
ln -s $out/share/draw.io/draw.io $out/bin/draw.io ln -s $out/share/draw.io/drawio $out/bin/drawio
# Update binary path # Update binary path
substituteInPlace $out/share/applications/draw.io.desktop \ substituteInPlace $out/share/applications/drawio.desktop \
--replace /opt/draw.io/draw.io $out/bin/draw.io --replace /opt/draw.io/drawio $out/bin/drawio
''; '';
meta = with stdenv.lib; { meta = with stdenv.lib; {

View File

@ -1,20 +1,29 @@
{ buildGoPackage { buildGoModule
, fetchFromGitHub , fetchFromGitHub
, lib , lib
}: }:
buildGoPackage rec { buildGoModule rec {
pname = "wtf"; pname = "wtf";
version = "0.17.1"; version = "0.19.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "wtfutil"; owner = "wtfutil";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "1qiwl6z5rraspjqry8dwnx8fgl9vv70sn5kgvh8074vl651yjq8c"; sha256 = "19qzg5blqm5p7rrnaqh4f9aj53i743mawjnd1h9lfahbgmil1d24";
}; };
goPackagePath = "github.com/wtfutil/wtf"; modSha256 = "1q21pc4yyiq4dihsb9n7261ssj52nnik8dq6fg4gvlnnpgcjp570";
# As per https://github.com/wtfutil/wtf/issues/501, one of the
# dependencies can't be fetched, so vendored dependencies should
# be used instead
modBuildPhase = ''
runHook preBuild
make build -mod=vendor
runHook postBuild
'';
meta = with lib; { meta = with lib; {
description = "The personal information dashboard for your terminal"; description = "The personal information dashboard for your terminal";

View File

@ -13,7 +13,7 @@
, bison, gperf , bison, gperf
, glib, gtk3, dbus-glib , glib, gtk3, dbus-glib
, glibc , glibc
, libXScrnSaver, libXcursor, libXtst, libGLU_combined , libXScrnSaver, libXcursor, libXtst, libGLU_combined, libGL
, protobuf, speechd, libXdamage, cups , protobuf, speechd, libXdamage, cups
, ffmpeg, libxslt, libxml2, at-spi2-core , ffmpeg, libxslt, libxml2, at-spi2-core
, jdk , jdk
@ -309,6 +309,13 @@ let
targets = extraAttrs.buildTargets or []; targets = extraAttrs.buildTargets or [];
commands = map buildCommand targets; commands = map buildCommand targets;
in concatStringsSep "\n" commands; in concatStringsSep "\n" commands;
postFixup = ''
# Make sure that libGLESv2 is found by dlopen (if using EGL).
chromiumBinary="$libExecPath/$packageName"
origRpath="$(patchelf --print-rpath "$chromiumBinary")"
patchelf --set-rpath "${libGL}/lib:$origRpath" "$chromiumBinary"
'';
}; };
# Remove some extraAttrs we supplied to the base attributes already. # Remove some extraAttrs we supplied to the base attributes already.

View File

@ -17,10 +17,10 @@ rec {
firefox = common rec { firefox = common rec {
pname = "firefox"; pname = "firefox";
ffversion = "68.0.1"; ffversion = "68.0.2";
src = fetchurl { src = fetchurl {
url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz"; url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz";
sha512 = "20rqfa5sdaagryk00iywnbap0bmhq1c74pfbxi3pq1cs52qs5nhjqn3xm6910zwcn5nw08i9qd5jkg5blvqrjzw780nh8qbrwsm3d4n"; sha512 = "2xzakpb6mp9hjqkim353afv059i4zfpmhflhv3l3qzajgjz36cacbmp4bkn4cghinm8krhp8z02264ww0bcraryjjwn5q0dzljrha2w";
}; };
patches = [ patches = [
@ -99,10 +99,10 @@ rec {
firefox-esr-68 = common rec { firefox-esr-68 = common rec {
pname = "firefox-esr"; pname = "firefox-esr";
ffversion = "68.0.1esr"; ffversion = "68.0.2esr";
src = fetchurl { src = fetchurl {
url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz"; url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz";
sha512 = "27ncapq18rdlrf0kp5r09spcqazi0g8nbzbfxijs9pi3cvlkayagi3fbbzzq5jkn0n3j580vadc6v1v3zibvdwb5s3c6bz559a7nra2"; sha512 = "0dyjayrbcq6dg8vmzbf7303aixnhpd6r777chxpdvqq892rgvw5q4f8yfb6pr8j978hahn4dz968vzmi6sp40y3hf62hnzdqpzd2bx1";
}; };
patches = [ patches = [

View File

@ -300,7 +300,8 @@ stdenv.mkDerivation rec {
# Clear out some files that tend to capture store references but are # Clear out some files that tend to capture store references but are
# easily generated by firefox at startup. # easily generated by firefox at startup.
rm -f "\$HOME/TorBrowser/Data/Browser/profile.default"/{compatibility.ini,extensions.ini,extensions.json} rm -f "\$HOME/TorBrowser/Data/Browser/profile.default"/{addonStartup.json.lz4,compatibility.ini,extensions.ini,extensions.json}
rm -f "\$HOME/TorBrowser/Data/Browser/profile.default"/startupCache/*
# XDG # XDG
: "\''${XDG_RUNTIME_DIR:=/run/user/\$(id -u)}" : "\''${XDG_RUNTIME_DIR:=/run/user/\$(id -u)}"

View File

@ -17,11 +17,11 @@ let
vivaldiName = if isSnapshot then "vivaldi-snapshot" else "vivaldi"; vivaldiName = if isSnapshot then "vivaldi-snapshot" else "vivaldi";
in stdenv.mkDerivation rec { in stdenv.mkDerivation rec {
pname = "vivaldi"; pname = "vivaldi";
version = "2.6.1566.49-1"; version = "2.6.1566.51-1";
src = fetchurl { src = fetchurl {
url = "https://downloads.vivaldi.com/${branch}/vivaldi-${branch}_${version}_amd64.deb"; url = "https://downloads.vivaldi.com/${branch}/vivaldi-${branch}_${version}_amd64.deb";
sha256 = "1hl7aqq3i6mkkg7sdcax26kn08p8mqwlq4xpg4v05ivdvyh5ac9d"; sha256 = "0582f16saldgn482806f9igb97is4p3ayvh99j0wx9plxnyq5xmm";
}; };
unpackPhase = '' unpackPhase = ''

View File

@ -0,0 +1,22 @@
From b0ab95b9664916618ebf5fe637b1bc4de4ba9a6e Mon Sep 17 00:00:00 2001
From: "Wael M. Nasreddine" <wael.nasreddine@gmail.com>
Date: Wed, 14 Aug 2019 23:07:51 -0700
Subject: [PATCH] fix the hash of gomodules.xyz/jsonpatch/v2
---
go.sum | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/go.sum b/go.sum
index 6bb130b4d9b..b3f48a85d4a 100644
--- a/go.sum
+++ b/go.sum
@@ -452,7 +452,7 @@ golang.org/x/tools v0.0.0-20190312170243-e65039ee4138 h1:H3uGjxCR/6Ds0Mjgyp7LMK8
golang.org/x/tools v0.0.0-20190312170243-e65039ee4138/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
golang.org/x/tools v0.0.0-20190404132500-923d25813098 h1:MtqjsZmyGRgMmLUgxnmMJ6RYdvd2ib8ipiayHhqSxs4=
golang.org/x/tools v0.0.0-20190404132500-923d25813098/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
-gomodules.xyz/jsonpatch/v2 v2.0.0 h1:lHNQverf0+Gm1TbSbVIDWVXOhZ2FpZopxRqpr2uIjs4=
+gomodules.xyz/jsonpatch/v2 v2.0.0 h1:OyHbl+7IOECpPKfVK42oFr6N7+Y2dR+Jsb/IiDV3hOo=
gomodules.xyz/jsonpatch/v2 v2.0.0/go.mod h1:IhYNNY4jnS53ZnfE4PAmpKtDpTCj1JFXc+3mwe7XcUU=
google.golang.org/api v0.0.0-20180910000450-7ca32eb868bf/go.mod h1:4mhQ8q/RsB7i+udVvVy5NUi08OU8ZlA0gRVgrF7VFY0=
google.golang.org/api v0.0.0-20181021000519-a2651947f503/go.mod h1:4mhQ8q/RsB7i+udVvVy5NUi08OU8ZlA0gRVgrF7VFY0=

View File

@ -0,0 +1,71 @@
{ buildGoModule, fetchFromGitHub, lib }:
buildGoModule rec {
pname = "prow-unstable";
version = "2019-08-14";
rev = "35a7744f5737bbc1c4e1256a9c9c5ad135c650e4";
src = fetchFromGitHub {
inherit rev;
owner = "kubernetes";
repo = "test-infra";
sha256 = "07kdlzrj59xyaa73vlx4s50fpg0brrkb0h0cyjgx81a0hsc7s03k";
};
patches = [
# https://github.com/kubernetes/test-infra/pull/13918
./13918-fix-go-sum.patch
];
modSha256 = "06q1zvhm78k64aj475k1xl38h7nk83mysd0bja0wknja048ymgsq";
subPackages = [
"./prow/cmd/admission"
"./prow/cmd/artifact-uploader"
"./prow/cmd/branchprotector"
"./prow/cmd/build"
"./prow/cmd/checkconfig"
"./prow/cmd/clonerefs"
"./prow/cmd/config-bootstrapper"
"./prow/cmd/crier"
"./prow/cmd/deck"
"./prow/cmd/entrypoint"
"./prow/cmd/gcsupload"
"./prow/cmd/gerrit"
"./prow/cmd/hook"
"./prow/cmd/horologium"
"./prow/cmd/initupload"
"./prow/cmd/jenkins-operator"
"./prow/cmd/mkbuild-cluster"
"./prow/cmd/mkpj"
"./prow/cmd/mkpod"
"./prow/cmd/peribolos"
"./prow/cmd/phaino"
"./prow/cmd/phony"
"./prow/cmd/pipeline"
"./prow/cmd/plank"
"./prow/cmd/sidecar"
"./prow/cmd/sinker"
"./prow/cmd/status-reconciler"
"./prow/cmd/sub"
"./prow/cmd/tackle"
"./prow/cmd/tide"
"./prow/cmd/tot"
];
meta = with lib; {
description = "Prow is a Kubernetes based CI/CD system";
longDescription = ''
Prow is a Kubernetes based CI/CD system. Jobs can be triggered by various
types of events and report their status to many different services. In
addition to job execution, Prow provides GitHub automation in the form of
policy enforcement, chat-ops via /foo style commands, and automatic PR
merging.
'';
homepage = "https://github.com/kubernetes/test-infra/tree/master/prow";
license = licenses.asl20;
maintainers = with maintainers; [ kalbasit ];
platforms = platforms.linux ++ platforms.darwin;
};
}

View File

@ -57,11 +57,11 @@ let
in stdenv.mkDerivation rec { in stdenv.mkDerivation rec {
name = "signal-desktop-${version}"; name = "signal-desktop-${version}";
version = "1.26.0"; version = "1.26.1";
src = fetchurl { src = fetchurl {
url = "https://updates.signal.org/desktop/apt/pool/main/s/signal-desktop/signal-desktop_${version}_amd64.deb"; url = "https://updates.signal.org/desktop/apt/pool/main/s/signal-desktop/signal-desktop_${version}_amd64.deb";
sha256 = "17g5yxr6ydc4rlbqc3r3876jis1x7mw496skc098n4q4f0m2ih24"; sha256 = "1s48mgya1gvidk0fmm7pifhqj2k0dc9xdq3h5ifz9kivjp7h0z09";
}; };
phases = [ "unpackPhase" "installPhase" ]; phases = [ "unpackPhase" "installPhase" ];

View File

@ -1,12 +1,12 @@
{ stdenv, fetchurl, which, gfortran, libGLU, xorg } : { stdenv, fetchurl, which, gfortran, libGLU, xorg } :
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "6.1"; version = "6.2";
name = "molden-${version}"; name = "molden-${version}";
src = fetchurl { src = fetchurl {
url = "ftp://ftp.cmbi.ru.nl/pub/molgraph/molden/molden${version}.tar.gz"; url = "ftp://ftp.cmbi.ru.nl/pub/molgraph/molden/molden${version}.tar.gz";
sha256 = "0swbjnqlkwhy8lvjkbx8yklqj4zfphwdg6s3haawxi3dd65ij539"; sha256 = "01m5p7v5pz1fi77var50sp1bzlvdckwr6kn4wanvic2jmvgp9q5n";
}; };
nativeBuildInputs = [ which ]; nativeBuildInputs = [ which ];

View File

@ -15,7 +15,6 @@ stdenv.mkDerivation rec {
patchPhase = '' patchPhase = ''
substituteInPlace Makefile \ substituteInPlace Makefile \
--replace 'all: check_include' 'all:' \
--replace '-install_name ''${LIBDIR}/libcalc''${LIB_EXT_VERSION}' '-install_name ''${T}''${LIBDIR}/libcalc''${LIB_EXT_VERSION}' \ --replace '-install_name ''${LIBDIR}/libcalc''${LIB_EXT_VERSION}' '-install_name ''${T}''${LIBDIR}/libcalc''${LIB_EXT_VERSION}' \
--replace '-install_name ''${LIBDIR}/libcustcalc''${LIB_EXT_VERSION}' '-install_name ''${T}''${LIBDIR}/libcustcalc''${LIB_EXT_VERSION}' --replace '-install_name ''${LIBDIR}/libcustcalc''${LIB_EXT_VERSION}' '-install_name ''${T}''${LIBDIR}/libcustcalc''${LIB_EXT_VERSION}'
''; '';
@ -25,7 +24,7 @@ stdenv.mkDerivation rec {
makeFlags = [ makeFlags = [
"T=$(out)" "T=$(out)"
"INCDIR=${lib.getDev stdenv.cc.libc}/include" "INCDIR="
"BINDIR=/bin" "BINDIR=/bin"
"LIBDIR=/lib" "LIBDIR=/lib"
"CALC_SHAREDIR=/share/calc" "CALC_SHAREDIR=/share/calc"

View File

@ -0,0 +1,31 @@
diff --git a/ccx_2.15/src/Makefile b/ccx_2.15/src/Makefile
index 9cab2fc..6e977b8 100755
--- a/ccx_2.15/src/Makefile
+++ b/ccx_2.15/src/Makefile
@@ -1,6 +1,6 @@
CFLAGS = -Wall -O3 -I ../../../SPOOLES.2.2 -DARCH="Linux" -DSPOOLES -DARPACK -DMATRIXSTORAGE -DNETWORKOUT
-FFLAGS = -Wall -O3
+FFLAGS = -Wall -O3
CC=cc
FC=gfortran
@@ -18,15 +18,10 @@ OCCXF = $(SCCXF:.f=.o)
OCCXC = $(SCCXC:.c=.o)
OCCXMAIN = $(SCCXMAIN:.c=.o)
-DIR=../../../SPOOLES.2.2
+LIBS = -lpthread -lm -lc -lspooles -larpack -lopenblas
-LIBS = \
- $(DIR)/spooles.a \
- ../../../ARPACK/libarpack_INTEL.a \
- -lpthread -lm -lc
-
-ccx_2.15: $(OCCXMAIN) ccx_2.15.a $(LIBS)
- ./date.pl; $(CC) $(CFLAGS) -c ccx_2.15.c; $(FC) -Wall -O3 -o $@ $(OCCXMAIN) ccx_2.15.a $(LIBS)
+ccx_2.15: $(OCCXMAIN) ccx_2.15.a
+ $(CC) $(CFLAGS) -c ccx_2.15.c; $(FC) -Wall -O3 -o $@ $(OCCXMAIN) ccx_2.15.a $(LIBS)
ccx_2.15.a: $(OCCXF) $(OCCXC)
ar vr $@ $?

View File

@ -0,0 +1,39 @@
{ stdenv, fetchurl, gfortran, arpack, spooles, openblas }:
stdenv.mkDerivation rec {
pname = "calculix";
version = "2.15";
src = fetchurl {
url = "http://www.dhondt.de/ccx_${version}.src.tar.bz2";
sha256 = "0d4axfxgm3ag4p2vx9rjcky7c122k99a2nhv1jv53brm35rblzdw";
};
nativeBuildInputs = [ gfortran ];
buildInputs = [ arpack spooles openblas ];
NIX_CFLAGS_COMPILE = [
"-I${spooles}/include/spooles"
];
patches = [
./calculix.patch
];
postPatch = ''
cd ccx*/src
'';
installPhase = ''
install -Dm0755 ccx_${version} $out/bin/ccx
'';
meta = with stdenv.lib; {
homepage = "http://www.calculix.de/";
description = "Three-dimensional structural finite element program";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ gebner ];
platforms = platforms.unix;
};
}

View File

@ -1,10 +1,9 @@
{ stdenv, fetchurl, cmake, openblasCompat, gfortran, gmm, fltk, libjpeg { stdenv, fetchurl, cmake, openblasCompat, gfortran, gmm, fltk, libjpeg
, zlib, libGLU_combined, libGLU, xorg }: , zlib, libGLU_combined, libGLU, xorg, opencascade-occt }:
let version = "4.4.1"; in stdenv.mkDerivation rec {
pname = "gmsh";
stdenv.mkDerivation { version = "4.4.1";
name = "gmsh-${version}";
src = fetchurl { src = fetchurl {
url = "http://gmsh.info/src/gmsh-${version}-source.tgz"; url = "http://gmsh.info/src/gmsh-${version}-source.tgz";
@ -14,15 +13,14 @@ stdenv.mkDerivation {
buildInputs = [ openblasCompat gmm fltk libjpeg zlib libGLU_combined buildInputs = [ openblasCompat gmm fltk libjpeg zlib libGLU_combined
libGLU xorg.libXrender xorg.libXcursor xorg.libXfixes xorg.libXext libGLU xorg.libXrender xorg.libXcursor xorg.libXfixes xorg.libXext
xorg.libXft xorg.libXinerama xorg.libX11 xorg.libSM xorg.libICE xorg.libXft xorg.libXinerama xorg.libX11 xorg.libSM xorg.libICE
opencascade-occt
]; ];
nativeBuildInputs = [ cmake gfortran ]; nativeBuildInputs = [ cmake gfortran ];
enableParallelBuilding = true;
meta = { meta = {
description = "A three-dimensional finite element mesh generator"; description = "A three-dimensional finite element mesh generator";
homepage = http://gmsh.info/; homepage = "http://gmsh.info/";
platforms = [ "x86_64-linux" ]; platforms = [ "x86_64-linux" ];
license = stdenv.lib.licenses.gpl2Plus; license = stdenv.lib.licenses.gpl2Plus;
}; };

View File

@ -0,0 +1,17 @@
# Lists past failures and files associated with it. The intention is to build
# up a subset of a testsuite that catches 95% of failures that are relevant for
# distributions while only taking ~5m to run. This in turn makes it more
# reasonable to re-test sage on dependency changes and makes it easier for
# users to override the sage derivation.
# This is an experiment for now. If it turns out that there really is a small
# subset of files responsible for the vast majority of packaging tests, we can
# think about moving this upstream.
[
"src/sage/env.py" # [1]
"src/sage/misc/persist.pyx" # [1]
"src/sage/misc/inline_fortran.py" # [1]
"src/sage/repl/ipython_extension.py" # [1]
]
# Numbered list of past failures to annotate files with
# [1] PYTHONPATH related issue https://github.com/NixOS/nixpkgs/commit/ec7f569211091282410050e89e68832d4fe60528

View File

@ -0,0 +1,19 @@
diff --git a/src/sage/repl/configuration.py b/src/sage/repl/configuration.py
index 67d7d2accf..18279581e2 100644
--- a/src/sage/repl/configuration.py
+++ b/src/sage/repl/configuration.py
@@ -9,10 +9,11 @@ the IPython simple prompt is being used::
sage: cmd = 'print([sys.stdin.isatty(), sys.stdout.isatty()])'
sage: import pexpect
sage: output = pexpect.run(
- ....: 'bash -c \'echo "{0}" | sage\''.format(cmd),
+ ....: 'bash -c \'export SAGE_BANNER=no; echo "{0}" | sage\''.format(cmd),
....: ).decode('utf-8', 'surrogateescape')
- sage: 'sage: [False, True]' in output
- True
+ sage: print(output)
+ sage...[False, True]
+ sage...Exiting Sage ...
"""
#*****************************************************************************

View File

@ -61,7 +61,11 @@ stdenv.mkDerivation rec {
# Since sage unfortunately does not release bugfix releases, packagers must # Since sage unfortunately does not release bugfix releases, packagers must
# fix those bugs themselves. This is for critical bugfixes, where "critical" # fix those bugs themselves. This is for critical bugfixes, where "critical"
# == "causes (transient) doctest failures / somebody complained". # == "causes (transient) doctest failures / somebody complained".
bugfixPatches = [ ]; bugfixPatches = [
# To help debug the transient error in
# https://trac.sagemath.org/ticket/23087 when it next occurs.
./patches/configurationpy-error-verbose.patch
];
# Patches needed because of package updates. We could just pin the versions of # Patches needed because of package updates. We could just pin the versions of
# dependencies, but that would lead to rebuilds, confusion and the burdons of # dependencies, but that would lead to rebuilds, confusion and the burdons of

View File

@ -51,6 +51,10 @@ stdenv.mkDerivation rec {
export HOME="$TMPDIR/sage-home" export HOME="$TMPDIR/sage-home"
mkdir -p "$HOME" mkdir -p "$HOME"
# avoid running out of memory with many threads in subprocesses, see
# https://github.com/NixOS/nixpkgs/pull/65802
export GLIBC_TUNABLES=glibc.malloc.arena_max=4
echo "Running sage tests with arguments ${timeSpecifier} ${patienceSpecifier} ${testArgs}" echo "Running sage tests with arguments ${timeSpecifier} ${patienceSpecifier} ${testArgs}"
"sage" -t --nthreads "$NIX_BUILD_CORES" --optional=sage ${timeSpecifier} ${patienceSpecifier} ${testArgs} "sage" -t --nthreads "$NIX_BUILD_CORES" --optional=sage ${timeSpecifier} ${patienceSpecifier} ${testArgs}
''; '';

View File

@ -8,13 +8,13 @@ with stdenv.lib;
buildGoPackage rec { buildGoPackage rec {
pname = "gitea"; pname = "gitea";
version = "1.9.0"; version = "1.9.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "go-gitea"; owner = "go-gitea";
repo = "gitea"; repo = "gitea";
rev = "v${version}"; rev = "v${version}";
sha256 = "1z7rkhxkymv7rgc7blh9ps5sqrgl4sryf0rqcp16nh9n5snfm1rm"; sha256 = "0sk877rp6zhch1b9c7zbmk8pnlyqjp4nws2gzq24qvw5f4chlprw";
# Required to generate the same checksum on MacOS due to unicode encoding differences # Required to generate the same checksum on MacOS due to unicode encoding differences
# More information: https://github.com/NixOS/nixpkgs/pull/48128 # More information: https://github.com/NixOS/nixpkgs/pull/48128
extraPostFetch = '' extraPostFetch = ''

View File

@ -13,11 +13,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "smartgithg"; pname = "smartgithg";
version = "18.2.9"; version = "19.1.1";
src = fetchurl { src = fetchurl {
url = "https://www.syntevo.com/downloads/smartgit/smartgit-linux-${builtins.replaceStrings [ "." ] [ "_" ] version}.tar.gz"; url = "https://www.syntevo.com/downloads/smartgit/smartgit-linux-${builtins.replaceStrings [ "." ] [ "_" ] version}.tar.gz";
sha256 = "0d08awb2s3w1w8n8048abw2x4wnqhfx96sls9kdsnxj0xrszgz67"; sha256 = "0i0dvyy9d63f4hk8czlyk83ai0ywhqp7wbdkq3s87l7irwgs42jy";
}; };
nativeBuildInputs = [ wrapGAppsHook ]; nativeBuildInputs = [ wrapGAppsHook ];

View File

@ -0,0 +1,60 @@
{ stdenv, fetchgit, buildPythonPackage
, python
, buildGoModule
, srht, redis, celery, pyyaml, markdown }:
let
version = "0.45.13";
buildWorker = src: buildGoModule {
inherit src version;
pname = "builds-sr-ht-worker";
goPackagePath = "git.sr.ht/~sircmpwn/builds.sr.ht/worker";
modSha256 = "1jm259ncw8dgqp0fqbjn30c4y3v3vwqj41gfh99jx30bwlmpgfax";
};
in buildPythonPackage rec {
inherit version;
pname = "buildsrht";
src = fetchgit {
url = "https://git.sr.ht/~sircmpwn/builds.sr.ht";
rev = version;
sha256 = "002pcj2a98gbmv77a10449w1q6iqhqjz4fim8hm4qm7vn6bwp0hz";
};
patches = [
./use-srht-path.patch
];
nativeBuildInputs = srht.nativeBuildInputs;
propagatedBuildInputs = [
srht
redis
celery
pyyaml
markdown
];
preBuild = ''
export PKGVER=${version}
export SRHT_PATH=${srht}/${python.sitePackages}/srht
'';
postInstall = ''
mkdir -p $out/lib
mkdir -p $out/bin/builds.sr.ht
cp -r images $out/lib
cp contrib/submit_image_build $out/bin/builds.sr.ht
cp ${buildWorker "${src}/worker"}/bin/worker $out/bin/builds.sr.ht-worker
'';
meta = with stdenv.lib; {
homepage = https://git.sr.ht/~sircmpwn/builds.sr.ht;
description = "Continuous integration service for the sr.ht network";
license = licenses.agpl3;
maintainers = with maintainers; [ eadwu ];
};
}

View File

@ -0,0 +1,80 @@
{ stdenv, fetchgit, fetchNodeModules, buildPythonPackage
, pgpy, flask, bleach, misaka, humanize, markdown, psycopg2, pygments, requests
, sqlalchemy, flask_login, beautifulsoup4, sqlalchemy-utils, celery, alembic
, sassc, nodejs-11_x
, writeText }:
buildPythonPackage rec {
pname = "srht";
version = "0.52.13";
src = fetchgit {
url = "https://git.sr.ht/~sircmpwn/core.sr.ht";
rev = version;
sha256 = "0i7gd2rkq4y4lffxsgb3mql9ddmk3vqckan29w266imrqs6p8c0z";
};
node_modules = fetchNodeModules {
src = "${src}/srht";
nodejs = nodejs-11_x;
sha256 = "0axl50swhcw8llq8z2icwr4nkr5qsw2riih0a040f9wx4xiw4p6p";
};
patches = [
./disable-npm-install.patch
];
nativeBuildInputs = [
sassc
nodejs-11_x
];
propagatedBuildInputs = [
pgpy
flask
bleach
misaka
humanize
markdown
psycopg2
pygments
requests
sqlalchemy
flask_login
beautifulsoup4
sqlalchemy-utils
# Unofficial runtime dependencies?
celery
alembic
];
PKGVER = version;
preBuild = ''
cp -r ${node_modules} srht/node_modules
'';
# No actual? tests but seems like it needs this anyway
preCheck = let
config = writeText "config.ini" ''
[webhooks]
private-key=K6JupPpnr0HnBjelKTQUSm3Ro9SgzEA2T2Zv472OvzI=
[meta.sr.ht]
origin=http://meta.sr.ht.local
'';
in ''
# Validation needs config option(s)
# webhooks <- ( private-key )
# meta.sr.ht <- ( origin )
cp ${config} config.ini
'';
meta = with stdenv.lib; {
homepage = https://git.sr.ht/~sircmpwn/srht;
description = "Core modules for sr.ht";
license = licenses.bsd3;
maintainers = with maintainers; [ eadwu ];
};
}

View File

@ -0,0 +1,49 @@
{ python37, openssl_1_1
, callPackage }:
# To expose the *srht modules, they have to be a python module so we use `buildPythonModule`
# Then we expose them through all-packages.nix as an application through `toPythonApplication`
# https://github.com/NixOS/nixpkgs/pull/54425#discussion_r250688781
let
fetchNodeModules = callPackage ../../networking/instant-messengers/rambox/fetchNodeModules.nix { };
python = python37.override {
packageOverrides = self: super: {
srht = self.callPackage ./core.nix { inherit fetchNodeModules; };
buildsrht = self.callPackage ./builds.nix { };
dispatchsrht = self.callPackage ./dispatch.nix { };
gitsrht = self.callPackage ./git.nix { };
hgsrht = self.callPackage ./hg.nix { };
listssrht = self.callPackage ./lists.nix { };
mansrht = self.callPackage ./man.nix { };
metasrht = self.callPackage ./meta.nix { };
pastesrht = self.callPackage ./paste.nix { };
todosrht = self.callPackage ./todo.nix { };
scmsrht = self.callPackage ./scm.nix { };
# OVERRIDES
cryptography = super.cryptography.override {
openssl = openssl_1_1;
};
pyopenssl = super.pyopenssl.override {
openssl = openssl_1_1;
};
};
};
in with python.pkgs; {
inherit python;
buildsrht = toPythonApplication buildsrht;
dispatchsrht = toPythonApplication dispatchsrht;
gitsrht = toPythonApplication gitsrht;
hgsrht = toPythonApplication hgsrht;
listssrht = toPythonApplication listssrht;
mansrht = toPythonApplication mansrht;
metasrht = toPythonApplication metasrht;
pastesrht = toPythonApplication pastesrht;
todosrht = toPythonApplication todosrht;
}

View File

@ -0,0 +1,14 @@
diff --git a/setup.py b/setup.py
index d63bac8..e1d0c35 100755
--- a/setup.py
+++ b/setup.py
@@ -5,9 +5,6 @@ import glob
import os
import sys
-if subprocess.call(["npm", "i"], cwd="srht") != 0:
- sys.exit(1)
-
ver = os.environ.get("PKGVER") or subprocess.run(['git', 'describe', '--tags'],
stdout=subprocess.PIPE).stdout.decode().strip()

View File

@ -0,0 +1,39 @@
{ stdenv, fetchgit, buildPythonPackage
, python
, srht, pyyaml, PyGithub, cryptography }:
buildPythonPackage rec {
pname = "dispatchsrht";
version = "0.11.0";
src = fetchgit {
url = "https://git.sr.ht/~sircmpwn/dispatch.sr.ht";
rev = version;
sha256 = "1kahl2gy5a5li79djwkzkglkw2s7pl4d29bzqp8c53r0xvx4sqkz";
};
patches = [
./use-srht-path.patch
];
nativeBuildInputs = srht.nativeBuildInputs;
propagatedBuildInputs = [
srht
pyyaml
PyGithub
cryptography
];
preBuild = ''
export PKGVER=${version}
export SRHT_PATH=${srht}/${python.sitePackages}/srht
'';
meta = with stdenv.lib; {
homepage = https://dispatch.sr.ht/~sircmpwn/dispatch.sr.ht;
description = "Task dispatcher and service integration tool for the sr.ht network";
license = licenses.agpl3;
maintainers = with maintainers; [ eadwu ];
};
}

View File

@ -0,0 +1,55 @@
{ stdenv, fetchgit, buildPythonPackage
, python
, buildGoModule
, srht, pygit2, scmsrht }:
let
version = "0.32.3";
buildDispatcher = src: buildGoModule {
inherit src version;
pname = "git-sr-ht-dispatcher";
goPackagePath = "git.sr.ht/~sircmpwn/git.sr.ht/gitsrht-dispatch";
modSha256 = "1lmgmlin460g09dph2hw6yz25d4agqwjhrjv0qqsis7df9qpf3i1";
};
in buildPythonPackage rec {
inherit version;
pname = "gitsrht";
src = fetchgit {
url = "https://git.sr.ht/~sircmpwn/git.sr.ht";
rev = version;
sha256 = "0grycmblhm9dnhcf1kcmn6bclgb9znahk2026dan58m9j9pja5vw";
};
patches = [
./use-srht-path.patch
];
nativeBuildInputs = srht.nativeBuildInputs;
propagatedBuildInputs = [
srht
pygit2
scmsrht
];
preBuild = ''
export PKGVER=${version}
export SRHT_PATH=${srht}/${python.sitePackages}/srht
'';
# TODO: Remove redundant mkdir?
postInstall = ''
mkdir -p $out/bin
cp ${buildDispatcher "${src}/gitsrht-dispatch"}/bin/gitsrht-dispatch $out/bin/gitsrht-dispatch
'';
meta = with stdenv.lib; {
homepage = https://git.sr.ht/~sircmpwn/git.sr.ht;
description = "Git repository hosting service for the sr.ht network";
license = licenses.agpl3;
maintainers = with maintainers; [ eadwu ];
};
}

View File

@ -0,0 +1,39 @@
{ stdenv, fetchhg, buildPythonPackage
, python
, srht, hglib, scmsrht, unidiff }:
buildPythonPackage rec {
pname = "hgsrht";
version = "0.13.0";
src = fetchhg {
url = "https://hg.sr.ht/~sircmpwn/hg.sr.ht";
rev = version;
sha256 = "0qkknvja0pyk69fvzqafj3x8hi5miw22nmksvifbrjcqph8jknqg";
};
patches = [
./use-srht-path.patch
];
nativeBuildInputs = srht.nativeBuildInputs;
propagatedBuildInputs = [
srht
hglib
scmsrht
unidiff
];
preBuild = ''
export PKGVER=${version}
export SRHT_PATH=${srht}/${python.sitePackages}/srht
'';
meta = with stdenv.lib; {
homepage = https://git.sr.ht/~sircmpwn/hg.sr.ht;
description = "Mercurial repository hosting service for the sr.ht network";
license = licenses.agpl3;
maintainers = with maintainers; [ eadwu ];
};
}

View File

@ -0,0 +1,40 @@
{ stdenv, fetchgit, buildPythonPackage
, python
, srht, asyncpg, unidiff, aiosmtpd, emailthreads }:
buildPythonPackage rec {
pname = "listssrht";
version = "0.36.3";
src = fetchgit {
url = "https://git.sr.ht/~sircmpwn/lists.sr.ht";
rev = version;
sha256 = "1q2z2pjwz4zifsrkxab9b9jh1vzayjqych1cx3i4859f1swl2gwa";
};
patches = [
./use-srht-path.patch
];
nativeBuildInputs = srht.nativeBuildInputs;
propagatedBuildInputs = [
srht
asyncpg
unidiff
aiosmtpd
emailthreads
];
preBuild = ''
export PKGVER=${version}
export SRHT_PATH=${srht}/${python.sitePackages}/srht
'';
meta = with stdenv.lib; {
homepage = https://git.sr.ht/~sircmpwn/lists.sr.ht;
description = "Mailing list service for the sr.ht network";
license = licenses.agpl3;
maintainers = with maintainers; [ eadwu ];
};
}

View File

@ -0,0 +1,37 @@
{ stdenv, fetchgit, buildPythonPackage
, python
, srht, pygit2 }:
buildPythonPackage rec {
pname = "mansrht";
version = "0.12.4";
src = fetchgit {
url = "https://git.sr.ht/~sircmpwn/man.sr.ht";
rev = version;
sha256 = "1csnw71yh5zw7l17xmmxyskwiqbls0ynbbjrg45y5k1i3622mhiy";
};
patches = [
./use-srht-path.patch
];
nativeBuildInputs = srht.nativeBuildInputs;
propagatedBuildInputs = [
srht
pygit2
];
preBuild = ''
export PKGVER=${version}
export SRHT_PATH=${srht}/${python.sitePackages}/srht
'';
meta = with stdenv.lib; {
homepage = https://git.sr.ht/~sircmpwn/man.sr.ht;
description = "Wiki service for the sr.ht network";
license = licenses.agpl3;
maintainers = with maintainers; [ eadwu ];
};
}

View File

@ -0,0 +1,48 @@
{ stdenv, fetchgit, buildPythonPackage
, python
, pgpy, srht, redis, bcrypt, qrcode, stripe, zxcvbn, alembic, pystache
, sshpubkeys, weasyprint, prometheus_client }:
buildPythonPackage rec {
pname = "metasrht";
version = "0.34.3";
src = fetchgit {
url = "https://git.sr.ht/~sircmpwn/meta.sr.ht";
rev = version;
sha256 = "1yj3npw1vlqawzj6q1mh6qryx009dg5prja9fn6rasfmxjn2gr7v";
};
nativeBuildInputs = srht.nativeBuildInputs;
propagatedBuildInputs = [
pgpy
srht
redis
bcrypt
qrcode
stripe
zxcvbn
alembic
pystache
sshpubkeys
weasyprint
prometheus_client
];
patches = [
./use-srht-path.patch
];
preBuild = ''
export PKGVER=${version}
export SRHT_PATH=${srht}/${python.sitePackages}/srht
'';
meta = with stdenv.lib; {
homepage = https://git.sr.ht/~sircmpwn/meta.sr.ht;
description = "Account management service for the sr.ht network";
license = licenses.agpl3;
maintainers = with maintainers; [ eadwu ];
};
}

View File

@ -0,0 +1,37 @@
{ stdenv, fetchgit, buildPythonPackage
, python
, srht, pyyaml }:
buildPythonPackage rec {
pname = "pastesrht";
version = "0.5.1";
src = fetchgit {
url = "https://git.sr.ht/~sircmpwn/paste.sr.ht";
rev = version;
sha256 = "0bzw03hcwi1pw16kliqjsr7kphqq3qw0pbpdjqkcs7jdr0a59vny";
};
patches = [
./use-srht-path.patch
];
nativeBuildInputs = srht.nativeBuildInputs;
propagatedBuildInputs = [
srht
pyyaml
];
preBuild = ''
export PKGVER=${version}
export SRHT_PATH=${srht}/${python.sitePackages}/srht
'';
meta = with stdenv.lib; {
homepage = https://git.sr.ht/~sircmpwn/paste.sr.ht;
description = "Ad-hoc text file hosting service for the sr.ht network";
license = licenses.agpl3;
maintainers = with maintainers; [ eadwu ];
};
}

View File

@ -0,0 +1,55 @@
{ stdenv, fetchgit, buildPythonPackage
, srht, redis, pyyaml, buildsrht
, writeText }:
buildPythonPackage rec {
pname = "scmsrht";
version = "0.13.3";
src = fetchgit {
url = "https://git.sr.ht/~sircmpwn/scm.sr.ht";
rev = version;
sha256 = "0bapddgfqrs27y6prd6kwpz6jdlr33zdqr6ci6ixi584a7z8z7d6";
};
nativeBuildInputs = srht.nativeBuildInputs;
propagatedBuildInputs = [
srht
redis
pyyaml
buildsrht
];
preBuild = ''
export PKGVER=${version}
'';
# No actual? tests but seems like it needs this anyway
preCheck = let
config = writeText "config.ini" ''
[webhooks]
private-key=K6JupPpnr0HnBjelKTQUSm3Ro9SgzEA2T2Zv472OvzI=
[builds.sr.ht]
origin=http://builds.sr.ht.local
oauth-client-id=
[meta.sr.ht]
origin=http://meta.sr.ht.local
'';
in ''
# Validation needs config option(s)
# webhooks <- ( private-key )
# meta.sr.ht <- ( origin )
# builds.sr.ht <- ( origin, oauth-client-id )
cp ${config} config.ini
'';
meta = with stdenv.lib; {
homepage = https://git.sr.ht/~sircmpwn/git.sr.ht;
description = "Shared support code for sr.ht source control services.";
license = licenses.agpl3;
maintainers = with maintainers; [ eadwu ];
};
}

View File

@ -0,0 +1,42 @@
{ stdenv, fetchgit, buildPythonPackage
, python
, srht, redis, alembic, pystache }:
buildPythonPackage rec {
pname = "todosrht";
version = "0.46.8";
src = fetchgit {
url = "https://git.sr.ht/~sircmpwn/todo.sr.ht";
rev = version;
sha256 = "17nqqy81535jnkidjiqv8v2301w5wzbbvx4czib69aagw1l85gnn";
};
patches = [
./use-srht-path.patch
];
nativeBuildInputs = srht.nativeBuildInputs;
propagatedBuildInputs = [
srht
redis
alembic
pystache
];
preBuild = ''
export PKGVER=${version}
export SRHT_PATH=${srht}/${python.sitePackages}/srht
'';
# Tests require a network connection
doCheck = false;
meta = with stdenv.lib; {
homepage = https://todo.sr.ht/~sircmpwn/todo.sr.ht;
description = "Ticket tracking service for the sr.ht network";
license = licenses.agpl3;
maintainers = with maintainers; [ eadwu ];
};
}

View File

@ -0,0 +1,54 @@
#! /usr/bin/env nix-shell
#! nix-shell -i bash -p git mercurial common-updater-scripts
cd "$(dirname "${BASH_SOURCE[0]}")"
root=../../../..
default() {
(cd "$root" && nix-instantiate --eval --strict -A "sourcehut.python.pkgs.$1.meta.position" | sed -re 's/^"(.*):[0-9]+"$/\1/')
}
version() {
(cd "$root" && nix-instantiate --eval --strict -A "sourcehut.python.pkgs.$1.version" | tr -d '"')
}
src_url() {
(cd "$root" && nix-instantiate --eval --strict -A "sourcehut.python.pkgs.$1.src.drvAttrs.url" | tr -d '"')
}
get_latest_version() {
src="$(src_url "$1")"
tmp=$(mktemp -d)
if [ "$1" = "hgsrht" ]; then
hg clone "$src" "$tmp" &> /dev/null
printf "%s" "$(cd "$tmp" && hg log --limit 1 --template '{latesttag}')"
else
git clone "$src" "$tmp"
printf "%s" "$(cd "$tmp" && git describe $(git rev-list --tags --max-count=1))"
fi
}
update_version() {
default_nix="$(default "$1")"
version_old="$(version "$1")"
version="$(get_latest_version "$1")"
(cd "$root" && update-source-version "sourcehut.python.pkgs.$1" "$version")
git add "$default_nix"
git commit -m "$1: $version_old -> $version"
}
services=( "srht" "buildsrht" "dispatchsrht" "gitsrht" "hgsrht" "listssrht" "mansrht" "metasrht"
"pastesrht" "todosrht" "scmsrht" )
# Whether or not a specific service is requested
if [ -n "$1" ]; then
version="$(get_latest_version "$1")"
(cd "$root" && update-source-version "sourcehut.python.pkgs.$1" "$version")
else
for service in "${services[@]}"; do
update_version "$service"
done
fi

View File

@ -0,0 +1,43 @@
diff --git a/setup.py b/setup.py
index e6ecfb6..89fa92a 100755
--- a/setup.py
+++ b/setup.py
@@ -5,28 +5,16 @@ import os
import site
import sys
-if hasattr(site, 'getsitepackages'):
- pkg_dirs = site.getsitepackages()
- if site.getusersitepackages():
- pkg_dirs.append(site.getusersitepackages())
- for pkg_dir in pkg_dirs:
- srht_path = os.path.join(pkg_dir, "srht")
- if os.path.isdir(srht_path):
- break
- else:
- raise Exception("Can't find core srht module in your site packages "
- "directories. Please install it first.")
-else:
- srht_path = os.getenv("SRHT_PATH")
- if not srht_path:
- raise Exception("You're running inside a virtual environment. "
- "Due to virtualenv limitations, you need to set the "
- "$SRHT_PATH environment variable to the path of the "
- "core srht module.")
- elif not os.path.isdir(srht_path):
- raise Exception(
- "The $SRHT_PATH environment variable points to an invalid "
- "directory: {}".format(srht_path))
+srht_path = os.getenv("SRHT_PATH")
+if not srht_path:
+ raise Exception("You're running inside a virtual environment. "
+ "Due to virtualenv limitations, you need to set the "
+ "$SRHT_PATH environment variable to the path of the "
+ "core srht module.")
+elif not os.path.isdir(srht_path):
+ raise Exception(
+ "The $SRHT_PATH environment variable points to an invalid "
+ "directory: {}".format(srht_path))
subp = subprocess.run(["make", "SRHT_PATH=" + srht_path])
if subp.returncode != 0:

View File

@ -1,6 +1,6 @@
{ stdenv, fetchurl, qmake, qtscript }: { lib, mkDerivation, fetchurl, qmake, qtscript }:
stdenv.mkDerivation rec { mkDerivation rec {
name = "smplayer-19.5.0"; name = "smplayer-19.5.0";
src = fetchurl { src = fetchurl {
@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
meta = { meta = {
description = "A complete front-end for MPlayer"; description = "A complete front-end for MPlayer";
homepage = http://smplayer.sourceforge.net/; homepage = http://smplayer.sourceforge.net/;
license = stdenv.lib.licenses.gpl3Plus; license = lib.licenses.gpl3Plus;
platforms = stdenv.lib.platforms.linux; platforms = lib.platforms.linux;
}; };
} }

View File

@ -1,6 +1,6 @@
{ stdenv, fetchurl, qmake, qtscript, qtwebkit }: { lib, mkDerivation, fetchurl, qmake, qtscript, qtwebkit }:
stdenv.mkDerivation rec { mkDerivation rec {
version = "19.6.0"; version = "19.6.0";
name = "smtube-${version}"; name = "smtube-${version}";
@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ qmake ]; nativeBuildInputs = [ qmake ];
buildInputs = [ qtscript qtwebkit ]; buildInputs = [ qtscript qtwebkit ];
meta = with stdenv.lib; { meta = with lib; {
description = "Play and download Youtube videos"; description = "Play and download Youtube videos";
homepage = http://smplayer.sourceforge.net/smtube.php; homepage = http://smplayer.sourceforge.net/smtube.php;
license = licenses.gpl2Plus; license = licenses.gpl2Plus;

View File

@ -5,13 +5,13 @@
buildGoPackage rec { buildGoPackage rec {
name = "podman-${version}"; name = "podman-${version}";
version = "1.4.4"; version = "1.5.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "containers"; owner = "containers";
repo = "libpod"; repo = "libpod";
rev = "v${version}"; rev = "v${version}";
sha256 = "13qgrvqawrrz4apdcds4amkljyjzx056545962wk8p0d291hqv5a"; sha256 = "1jg7fdshqz0x71339i0wndskb17x1k5rwpkjiwd463f96fnbfp4x";
}; };
goPackagePath = "github.com/containers/libpod"; goPackagePath = "github.com/containers/libpod";

View File

@ -291,9 +291,10 @@ rec {
# Files to add to the layer. # Files to add to the layer.
closure, closure,
configJson, configJson,
# Docker has a 42-layer maximum, we pick 24 to ensure there is plenty # Docker has a 125-layer maximum, we pick 100 to ensure there is
# of room for extension # plenty of room for extension.
maxLayers ? 24 # https://github.com/moby/moby/blob/b3e9f7b13b0f0c414fa6253e1f17a86b2cff68b5/layer/layer_store.go#L23-L26
maxLayers ? 100
}: }:
let let
storePathToLayer = substituteAll storePathToLayer = substituteAll

View File

@ -1,4 +1,4 @@
{ stdenv, cacert, git, cargo, rustc, fetchcargo, buildPackages }: { stdenv, cacert, git, cargo, rustc, fetchcargo, buildPackages, windows }:
{ name ? "${args.pname}-${args.version}" { name ? "${args.pname}-${args.version}"
, cargoSha256 ? "unset" , cargoSha256 ? "unset"
@ -41,18 +41,26 @@ let
cargoDepsCopy="$sourceRoot/${cargoVendorDir}" cargoDepsCopy="$sourceRoot/${cargoVendorDir}"
''; '';
hostConfig = stdenv.hostPlatform.config;
rustHostConfig = {
"x86_64-pc-mingw32" = "x86_64-pc-windows-gnu";
}."${hostConfig}" or hostConfig;
ccForBuild="${buildPackages.stdenv.cc}/bin/${buildPackages.stdenv.cc.targetPrefix}cc"; ccForBuild="${buildPackages.stdenv.cc}/bin/${buildPackages.stdenv.cc.targetPrefix}cc";
cxxForBuild="${buildPackages.stdenv.cc}/bin/${buildPackages.stdenv.cc.targetPrefix}c++"; cxxForBuild="${buildPackages.stdenv.cc}/bin/${buildPackages.stdenv.cc.targetPrefix}c++";
ccForHost="${stdenv.cc}/bin/${stdenv.cc.targetPrefix}cc"; ccForHost="${stdenv.cc}/bin/${stdenv.cc.targetPrefix}cc";
cxxForHost="${stdenv.cc}/bin/${stdenv.cc.targetPrefix}c++"; cxxForHost="${stdenv.cc}/bin/${stdenv.cc.targetPrefix}c++";
releaseDir = "target/${stdenv.hostPlatform.config}/${buildType}"; releaseDir = "target/${rustHostConfig}/${buildType}";
in stdenv.mkDerivation (args // { in
stdenv.mkDerivation (args // {
inherit cargoDeps; inherit cargoDeps;
patchRegistryDeps = ./patch-registry-deps; patchRegistryDeps = ./patch-registry-deps;
nativeBuildInputs = [ cargo rustc git cacert ] ++ nativeBuildInputs; nativeBuildInputs = nativeBuildInputs ++ [ cacert git cargo rustc ];
inherit buildInputs; buildInputs = buildInputs ++ stdenv.lib.optional stdenv.hostPlatform.isMinGW windows.pthreads;
patches = cargoPatches ++ patches; patches = cargoPatches ++ patches;
@ -76,7 +84,7 @@ in stdenv.mkDerivation (args // {
[target."${stdenv.buildPlatform.config}"] [target."${stdenv.buildPlatform.config}"]
"linker" = "${ccForBuild}" "linker" = "${ccForBuild}"
${stdenv.lib.optionalString (stdenv.buildPlatform.config != stdenv.hostPlatform.config) '' ${stdenv.lib.optionalString (stdenv.buildPlatform.config != stdenv.hostPlatform.config) ''
[target."${stdenv.hostPlatform.config}"] [target."${rustHostConfig}"]
"linker" = "${ccForHost}" "linker" = "${ccForHost}"
''} ''}
EOF EOF
@ -102,7 +110,7 @@ in stdenv.mkDerivation (args // {
"CXX_${stdenv.hostPlatform.config}"="${cxxForHost}" \ "CXX_${stdenv.hostPlatform.config}"="${cxxForHost}" \
cargo build \ cargo build \
${stdenv.lib.optionalString (buildType == "release") "--release"} \ ${stdenv.lib.optionalString (buildType == "release") "--release"} \
--target ${stdenv.hostPlatform.config} \ --target ${rustHostConfig} \
--frozen ${concatStringsSep " " cargoBuildFlags} --frozen ${concatStringsSep " " cargoBuildFlags}
) )

View File

@ -1,6 +1,6 @@
{ fetchurl }: { fetchurl }:
fetchurl { fetchurl {
url = "https://github.com/commercialhaskell/all-cabal-hashes/archive/4db96602103463d72e59ce214d0da8af35405f07.tar.gz"; url = "https://github.com/commercialhaskell/all-cabal-hashes/archive/2b4df08d487f0821b932f92392b67fe12dc1d42c.tar.gz";
sha256 = "14r7m3555ngfafk2wgdj4lnv7zzajcc4j4fiws4k3kr3xwbrwrxr"; sha256 = "02d06fr2jr69za5751z25c3x3zspiwdmlhmdmxaj1g48v00gbfag";
} }

View File

@ -13,7 +13,7 @@ in
stdenv.mkDerivation { stdenv.mkDerivation {
name = "chicken-${version}"; name = "chicken-${version}";
binaryVersion = 9; binaryVersion = 11;
src = fetchurl { src = fetchurl {
url = "https://code.call-cc.org/releases/${version}/chicken-${version}.tar.gz"; url = "https://code.call-cc.org/releases/${version}/chicken-${version}.tar.gz";
@ -22,8 +22,8 @@ stdenv.mkDerivation {
setupHook = lib.ifEnable (bootstrap-chicken != null) ./setup-hook.sh; setupHook = lib.ifEnable (bootstrap-chicken != null) ./setup-hook.sh;
buildFlags = "PLATFORM=${platform} PREFIX=$(out) VARDIR=$(out)/var/lib"; buildFlags = "PLATFORM=${platform} PREFIX=$(out)";
installFlags = "PLATFORM=${platform} PREFIX=$(out) VARDIR=$(out)/var/lib"; installFlags = "PLATFORM=${platform} PREFIX=$(out)";
buildInputs = [ buildInputs = [
makeWrapper makeWrapper
@ -37,10 +37,6 @@ stdenv.mkDerivation {
wrapProgram $f \ wrapProgram $f \
--prefix PATH : ${stdenv.cc}/bin --prefix PATH : ${stdenv.cc}/bin
done done
mv $out/var/lib/chicken $out/lib
rmdir $out/var/lib
rmdir $out/var
''; '';
# TODO: Assert csi -R files -p '(pathname-file (repository-path))' == binaryVersion # TODO: Assert csi -R files -p '(pathname-file (repository-path))' == binaryVersion

View File

@ -1,4 +1,4 @@
{ pkgs }: { pkgs, stdenv }:
rec { rec {
inherit (pkgs) eggDerivation fetchegg; inherit (pkgs) eggDerivation fetchegg;
@ -33,12 +33,12 @@ rec {
}; };
srfi-1 = eggDerivation { srfi-1 = eggDerivation {
name = "srfi-1-0.5"; name = "srfi-1-0.5.1";
src = fetchegg { src = fetchegg {
name = "srfi-1"; name = "srfi-1";
version = "0.5"; version = "0.5.1";
sha256 = "0gh1h406xbxwm5gvc5znc93nxp9xjbhyqf7zzga08k5y6igxrlvk"; sha256 = "15x0ajdkw5gb3vgs8flzh5g0pzl3wmcpf11iimlm67mw6fxc8p7j";
}; };
buildInputs = [ buildInputs = [
@ -47,12 +47,12 @@ rec {
}; };
srfi-13 = eggDerivation { srfi-13 = eggDerivation {
name = "srfi-13-0.2"; name = "srfi-13-0.2.1";
src = fetchegg { src = fetchegg {
name = "srfi-13"; name = "srfi-13";
version = "0.2"; version = "0.2.1";
sha256 = "0jazbdnn9bjm7wwxqq7xzqxc9zfvaapq565rf1czj6ayl96yvk3n"; sha256 = "0204i7fhc4dy0l89lbi2lv9cjndrvwyrk68z3wy7x445jb4ky1gq";
}; };
buildInputs = [ buildInputs = [
@ -61,12 +61,12 @@ rec {
}; };
srfi-14 = eggDerivation { srfi-14 = eggDerivation {
name = "srfi-14-0.2"; name = "srfi-14-0.2.1";
src = fetchegg { src = fetchegg {
name = "srfi-14"; name = "srfi-14";
version = "0.2"; version = "0.2.1";
sha256 = "13nm4nn1d52nkvhjizy26z3s6q41x1ml4zm847xzf86x1zwvymni"; sha256 = "0gc33cx4xll9vsf7fm8jvn3gc0604kn3bbi6jfn6xscqp86kqb9p";
}; };
buildInputs = [ buildInputs = [

View File

@ -1,5 +1,5 @@
addChickenRepositoryPath() { addChickenRepositoryPath() {
addToSearchPathWithCustomDelimiter : CHICKEN_REPOSITORY_PATH "$1/lib/chicken/9/" addToSearchPathWithCustomDelimiter : CHICKEN_REPOSITORY_PATH "$1/lib/chicken/11/"
addToSearchPathWithCustomDelimiter : CHICKEN_INCLUDE_PATH "$1/share/" addToSearchPathWithCustomDelimiter : CHICKEN_INCLUDE_PATH "$1/share/"
} }

View File

@ -1,13 +1,13 @@
{ stdenv, callPackage, fetchFromGitHub }: { stdenv, callPackage, fetchFromGitHub }:
callPackage ./build.nix { callPackage ./build.nix {
version = "unstable-2019-02-05"; version = "unstable-2019-07-21";
# git-version = "4.9.3"; # git-version = "4.9.3-109-g3b5f74fa";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "feeley"; owner = "feeley";
repo = "gambit"; repo = "gambit";
rev = "baf7de67f6d800821412fe83a8d9e9e09faeb490"; rev = "3b5f74fae74b2159e3bf6923f29a18b31cc15dcc";
sha256 = "0ygm5y8fvq6dbb8mwq52v8rc8pdnwm4qpmxlnx5m9hzzbm1kzxxv"; sha256 = "07cb0d8754dqhxawkp5dp4y0bsa9kfald4dkj60j5yfnsp81y5mi";
}; };
inherit stdenv; inherit stdenv;
} }

View File

@ -1,14 +1,14 @@
{ stdenv, callPackage, fetchFromGitHub, gambit-unstable }: { stdenv, callPackage, fetchFromGitHub, gambit-unstable }:
callPackage ./build.nix { callPackage ./build.nix {
version = "unstable-2019-02-09"; version = "unstable-2019-08-11";
git-version = "0.16-DEV-15-gafc20fc2"; git-version = "0.16-DEV-132-gcb58f9a3";
gambit = gambit-unstable; gambit = gambit-unstable;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "vyzo"; owner = "vyzo";
repo = "gerbil"; repo = "gerbil";
rev = "afc20fc21030e8445b46b8267cc4c52cfd662aad"; rev = "cb58f9a30630a6f3e85a55f2c1dcc654f517ffed";
sha256 = "02v16zya9zryjs4wallibp1kvnpba60aw15y4k7zhddc71qjfbhw"; sha256 = "18jh64v1gi6z3pks9zf19f2wcjpv21cs270dnaq617kgwp53vysh";
}; };
inherit stdenv; inherit stdenv;
} }

View File

@ -86,12 +86,12 @@ let
in in
stdenv.mkDerivation (rec { stdenv.mkDerivation (rec {
version = "8.8.0.20190613"; version = "8.8.0.20190721";
name = "${targetPrefix}ghc-${version}"; name = "${targetPrefix}ghc-${version}";
src = fetchurl { src = fetchurl {
url = "https://downloads.haskell.org/~ghc/8.8.1-alpha2/ghc-${version}-src.tar.xz"; url = "https://downloads.haskell.org/ghc/8.8.1-rc1/ghc-${version}-src.tar.xz";
sha256 = "17531jabkdmlhj57mkshjfwlri2g3jgal8fw9zpkl1kbplnrivyr"; sha256 = "1ih76zpxk8ay84xjyaflqc754002y8pdaainqfvb4cnhy6lpb1br";
}; };
enableParallelBuilding = true; enableParallelBuilding = true;

View File

@ -0,0 +1,53 @@
Index: lib/Driver/ToolChains/BareMetal.cpp
===================================================================
--- a/lib/Driver/ToolChains/BareMetal.cpp
+++ b/lib/Driver/ToolChains/BareMetal.cpp
@@ -157,7 +157,7 @@
void BareMetal::AddLinkRuntimeLib(const ArgList &Args,
ArgStringList &CmdArgs) const {
CmdArgs.push_back(Args.MakeArgString("-lclang_rt.builtins-" +
- getTriple().getArchName() + ".a"));
+ getTriple().getArchName()));
}
void baremetal::Linker::ConstructJob(Compilation &C, const JobAction &JA,
Index: test/Driver/baremetal.cpp
===================================================================
--- a/test/Driver/baremetal.cpp
+++ b/test/Driver/baremetal.cpp
@@ -13,7 +13,7 @@
// CHECK-V6M-C-NEXT: "{{[^"]*}}ld{{(\.(lld|bfd|gold))?}}{{(\.exe)?}}" "{{.*}}.o" "-Bstatic"
// CHECK-V6M-C-SAME: "-L[[RESOURCE_DIR:[^"]+]]{{[/\\]+}}lib{{[/\\]+}}baremetal"
// CHECK-V6M-C-SAME: "-T" "semihosted.lds" "-Lsome{{[/\\]+}}directory{{[/\\]+}}user{{[/\\]+}}asked{{[/\\]+}}for"
-// CHECK-V6M-C-SAME: "-lc" "-lm" "-lclang_rt.builtins-armv6m.a"
+// CHECK-V6M-C-SAME: "-lc" "-lm" "-lclang_rt.builtins-armv6m"
// CHECK-V6M-C-SAME: "-o" "{{.*}}.o"
// RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
@@ -35,7 +35,7 @@
// CHECK-V6M-DEFAULTCXX: "{{[^"]*}}ld{{(\.(lld|bfd|gold))?}}{{(\.exe)?}}" "{{.*}}.o" "-Bstatic"
// CHECK-V6M-DEFAULTCXX-SAME: "-L{{[^"]*}}{{[/\\]+}}lib{{(64)?}}{{[/\\]+}}clang{{[/\\]+}}{{.*}}{{[/\\]+}}lib{{[/\\]+}}baremetal"
// CHECK-V6M-DEFAULTCXX-SAME: "-lc++" "-lc++abi" "-lunwind"
-// CHECK-V6M-DEFAULTCXX-SAME: "-lc" "-lm" "-lclang_rt.builtins-armv6m.a"
+// CHECK-V6M-DEFAULTCXX-SAME: "-lc" "-lm" "-lclang_rt.builtins-armv6m"
// CHECK-V6M-DEFAULTCXX-SAME: "-o" "{{.*}}.o"
// RUN: %clangxx -no-canonical-prefixes %s -### -o %t.o 2>&1 \
@@ -48,7 +48,7 @@
// CHECK-V6M-LIBCXX: "{{[^"]*}}ld{{(\.(lld|bfd|gold))?}}{{(\.exe)?}}" "{{.*}}.o" "-Bstatic"
// CHECK-V6M-LIBCXX-SAME: "-L{{[^"]*}}{{[/\\]+}}lib{{(64)?}}{{[/\\]+}}clang{{[/\\]+}}{{.*}}{{[/\\]+}}lib{{[/\\]+}}baremetal"
// CHECK-V6M-LIBCXX-SAME: "-lc++" "-lc++abi" "-lunwind"
-// CHECK-V6M-LIBCXX-SAME: "-lc" "-lm" "-lclang_rt.builtins-armv6m.a"
+// CHECK-V6M-LIBCXX-SAME: "-lc" "-lm" "-lclang_rt.builtins-armv6m"
// CHECK-V6M-LIBCXX-SAME: "-o" "{{.*}}.o"
// RUN: %clangxx -no-canonical-prefixes %s -### -o %t.o 2>&1 \
@@ -61,7 +61,7 @@
// CHECK-V6M-LIBSTDCXX: "{{[^"]*}}ld{{(\.(lld|bfd|gold))?}}{{(\.exe)?}}" "{{.*}}.o" "-Bstatic"
// CHECK-V6M-LIBSTDCXX-SAME: "-L{{[^"]*}}{{[/\\]+}}lib{{(64)?}}{{[/\\]+}}clang{{[/\\]+}}{{.*}}{{[/\\]+}}lib{{[/\\]+}}baremetal"
// CHECK-V6M-LIBSTDCXX-SAME: "-lstdc++" "-lsupc++" "-lunwind"
-// CHECK-V6M-LIBSTDCXX-SAME: "-lc" "-lm" "-lclang_rt.builtins-armv6m.a"
+// CHECK-V6M-LIBSTDCXX-SAME: "-lc" "-lm" "-lclang_rt.builtins-armv6m"
// CHECK-V6M-LIBSTDCXX-SAME: "-o" "{{.*}}.o"
// RUN: %clangxx -no-canonical-prefixes %s -### -o %t.o 2>&1 \

View File

@ -47,6 +47,8 @@ let
# Backport for the `--unwindlib=[libgcc|compiler-rt]` flag, which is # Backport for the `--unwindlib=[libgcc|compiler-rt]` flag, which is
# needed for our bootstrapping to not interfere with C. # needed for our bootstrapping to not interfere with C.
./unwindlib.patch ./unwindlib.patch
# https://reviews.llvm.org/D51899
./compiler-rt-baremetal.patch
]; ];
postPatch = '' postPatch = ''

View File

@ -27,6 +27,9 @@ stdenv.mkDerivation rec {
"-DCOMPILER_RT_BUILD_XRAY=OFF" "-DCOMPILER_RT_BUILD_XRAY=OFF"
"-DCOMPILER_RT_BUILD_LIBFUZZER=OFF" "-DCOMPILER_RT_BUILD_LIBFUZZER=OFF"
"-DCOMPILER_RT_BUILD_PROFILE=OFF" "-DCOMPILER_RT_BUILD_PROFILE=OFF"
] ++ stdenv.lib.optionals (stdenv.hostPlatform.parsed.kernel.name == "none") [
"-DCOMPILER_RT_BAREMETAL_BUILD=ON"
"-DCOMPILER_RT_OS_DIR=baremetal"
]; ];
outputs = [ "out" "dev" ]; outputs = [ "out" "dev" ];

View File

@ -25,6 +25,10 @@ stdenv.mkDerivation ( rec {
substituteInPlace packages/process/_test.pony \ substituteInPlace packages/process/_test.pony \
--replace '=/bin' "${coreutils}/bin" --replace '=/bin' "${coreutils}/bin"
# Disabling the stdlib tests
substituteInPlace Makefile-ponyc \
--replace 'test-ci: all check-version test-core test-stdlib-debug test-stdlib' 'test-ci: all check-version test-core'
# Remove impure system refs # Remove impure system refs
substituteInPlace src/libponyc/pkg/package.c \ substituteInPlace src/libponyc/pkg/package.c \
--replace "/usr/local/lib" "" \ --replace "/usr/local/lib" "" \

View File

@ -0,0 +1,35 @@
{ stdenv, lib, rustPlatform, rustc, Security, patchelf }:
rustPlatform.buildRustPackage rec {
name = "clippy-${rustc.version}";
inherit (rustc) version src;
# the rust source tarball already has all the dependencies vendored, no need to fetch them again
cargoVendorDir = "vendor";
preBuild = "pushd src/tools/clippy";
postBuild = "popd";
# changes hash of vendor directory otherwise
dontUpdateAutotoolsGnuConfigScripts = true;
buildInputs = [ rustc ] ++ stdenv.lib.optionals stdenv.isDarwin [ Security ];
# fixes: error: the option `Z` is only accepted on the nightly compiler
RUSTC_BOOTSTRAP = 1;
# Without disabling the test the build fails with:
# error: failed to run custom build command for `rustc_llvm v0.0.0
# (/private/tmp/nix-build-clippy-1.36.0.drv-0/rustc-1.36.0-src/src/librustc_llvm)
doCheck = false;
preFixup = stdenv.lib.optionalString stdenv.isDarwin ''
install_name_tool -add_rpath "${rustc}/lib" $out/bin/clippy-driver
'';
meta = with stdenv.lib; {
homepage = https://rust-lang.github.io/rust-clippy/;
description = "A bunch of lints to catch common mistakes and improve your Rust code";
maintainers = with maintainers; [ basvandijk ];
license = with licenses; [ mit asl20 ];
platforms = platforms.unix;
};
}

View File

@ -64,6 +64,7 @@
rustPlatform = bootRustPlatform; rustPlatform = bootRustPlatform;
inherit CoreFoundation Security; inherit CoreFoundation Security;
}; };
clippy = self.callPackage ./clippy.nix { inherit Security; };
}); });
}; };
} }

View File

@ -214,15 +214,19 @@ self: super: {
# base bound # base bound
digit = doJailbreak super.digit; digit = doJailbreak super.digit;
# Needs older version of QuickCheck.
these_0_7_6 = doJailbreak super.these_0_7_6;
# dontCheck: Can be removed once https://github.com/haskell-nix/hnix/commit/471712f is in (5.2 probably) # dontCheck: Can be removed once https://github.com/haskell-nix/hnix/commit/471712f is in (5.2 probably)
# This is due to GenList having been removed from generic-random in 1.2.0.0 # This is due to GenList having been removed from generic-random in 1.2.0.0
# doJailbreak: Can be removed once https://github.com/haskell-nix/hnix/pull/329 is in (5.2 probably) # doJailbreak: Can be removed once https://github.com/haskell-nix/hnix/pull/329 is in (5.2 probably)
# This is due to hnix currently having an upper bound of <0.5 on deriving-compat, works just fine with our current version 0.5.1 though # This is due to hnix currently having an upper bound of <0.5 on deriving-compat, works just fine with our current version 0.5.1 though
# Does not support recent versions of "these".
# https://github.com/haskell-nix/hnix/issues/514
hnix = hnix =
generateOptparseApplicativeCompletion "hnix" ( generateOptparseApplicativeCompletion "hnix" (
dontCheck (doJailbreak (overrideCabal super.hnix (old: { dontCheck (doJailbreak (super.hnix.override { these = self.these_0_7_6; }))
testHaskellDepends = old.testHaskellDepends or [] ++ [ pkgs.nix ]; );
}))));
# Fails for non-obvious reasons while attempting to use doctest. # Fails for non-obvious reasons while attempting to use doctest.
search = dontCheck super.search; search = dontCheck super.search;
@ -1224,14 +1228,14 @@ self: super: {
# The latest release version is ancient. You really need this tool from git. # The latest release version is ancient. You really need this tool from git.
haskell-ci = generateOptparseApplicativeCompletion "haskell-ci" haskell-ci = generateOptparseApplicativeCompletion "haskell-ci"
(addBuildDepend (overrideSrc (dontCheck super.haskell-ci) { (addBuildDepend (overrideSrc (dontCheck super.haskell-ci) {
version = "20190625-git"; version = "20190814-git";
src = pkgs.fetchFromGitHub { src = pkgs.fetchFromGitHub {
owner = "haskell-CI"; owner = "haskell-CI";
repo = "haskell-ci"; repo = "haskell-ci";
rev = "260f967c6973dfb22ecc8061a1811a2ea4b79e01"; rev = "70918d80b6fd43aca7e4d00ba0d2ea116b666556";
sha256 = "1mvn6pqa6wfcm4jxhlhm4l54pwrlgnz7vdrmkwabliwz4q0bzgqk"; sha256 = "0bzp959qy74zmqq75f60rcixpjbvvyrb5a8zp2nyql3nm9vxzy5k";
}; };
}) (with self; [base-compat generic-lens microlens optparse-applicative ShellCheck exceptions temporary])); }) (with self; [temporary lattices Cabal_3_0_0_0]));
# Fix build with attr-2.4.48 (see #53716) # Fix build with attr-2.4.48 (see #53716)
xattr = appendPatch super.xattr ./patches/xattr-fix-build.patch; xattr = appendPatch super.xattr ./patches/xattr-fix-build.patch;

View File

@ -43,7 +43,7 @@ core-packages:
- ghcjs-base-0 - ghcjs-base-0
default-package-overrides: default-package-overrides:
# LTS Haskell 14.0 # LTS Haskell 14.1
- abstract-deque ==0.3 - abstract-deque ==0.3
- abstract-deque-tests ==0.3 - abstract-deque-tests ==0.3
- abstract-par ==0.3.3 - abstract-par ==0.3.3
@ -91,8 +91,8 @@ default-package-overrides:
- ANum ==0.2.0.2 - ANum ==0.2.0.2
- aos-signature ==0.1.1 - aos-signature ==0.1.1
- apecs ==0.8.1 - apecs ==0.8.1
- apecs-gloss ==0.2.1 - apecs-gloss ==0.2.2
- apecs-physics ==0.4.0 - apecs-physics ==0.4.2
- api-field-json-th ==0.1.0.2 - api-field-json-th ==0.1.0.2
- appar ==0.1.8 - appar ==0.1.8
- appendmap ==0.1.5 - appendmap ==0.1.5
@ -134,12 +134,12 @@ default-package-overrides:
- authenticate ==1.3.4 - authenticate ==1.3.4
- authenticate-oauth ==1.6 - authenticate-oauth ==1.6
- auto ==0.4.3.1 - auto ==0.4.3.1
- autoexporter ==1.1.13 - autoexporter ==1.1.14
- auto-update ==0.1.6 - auto-update ==0.1.6
- avers ==0.0.17.1 - avers ==0.0.17.1
- avers-api ==0.1.0 - avers-api ==0.1.0
- avers-server ==0.1.0.1 - avers-server ==0.1.0.1
- avro ==0.4.5.1 - avro ==0.4.5.2
- avwx ==0.3.0.2 - avwx ==0.3.0.2
- aws-cloudfront-signed-cookies ==0.2.0.1 - aws-cloudfront-signed-cookies ==0.2.0.1
- aws-lambda-haskell-runtime ==2.0.1 - aws-lambda-haskell-runtime ==2.0.1
@ -203,7 +203,7 @@ default-package-overrides:
- bits ==0.5.2 - bits ==0.5.2
- bitset-word8 ==0.1.1.1 - bitset-word8 ==0.1.1.1
- bits-extra ==0.0.1.3 - bits-extra ==0.0.1.3
- bitvec ==1.0.0.0 - bitvec ==1.0.0.1
- bitx-bitcoin ==0.12.0.0 - bitx-bitcoin ==0.12.0.0
- blake2 ==0.3.0 - blake2 ==0.3.0
- blas-carray ==0.1.0.1 - blas-carray ==0.1.0.1
@ -260,7 +260,7 @@ default-package-overrides:
- bytestring-to-vector ==0.3.0.1 - bytestring-to-vector ==0.3.0.1
- bytestring-tree-builder ==0.2.7.3 - bytestring-tree-builder ==0.2.7.3
- bzlib ==0.5.0.5 - bzlib ==0.5.0.5
- bzlib-conduit ==0.3.0.1 - bzlib-conduit ==0.3.0.2
- c2hs ==0.28.6 - c2hs ==0.28.6
- Cabal ==2.4.1.0 - Cabal ==2.4.1.0
- cabal2spec ==2.2.2.1 - cabal2spec ==2.2.2.1
@ -413,7 +413,7 @@ default-package-overrides:
- crc32c ==0.0.0 - crc32c ==0.0.0
- credential-store ==0.1.2 - credential-store ==0.1.2
- criterion ==1.5.5.0 - criterion ==1.5.5.0
- criterion-measurement ==0.1.1.0 - criterion-measurement ==0.1.2.0
- cron ==0.6.1 - cron ==0.6.1
- crypto-api ==0.13.3 - crypto-api ==0.13.3
- crypto-api-tests ==0.3 - crypto-api-tests ==0.3
@ -540,7 +540,7 @@ default-package-overrides:
- distribution-opensuse ==1.1.1 - distribution-opensuse ==1.1.1
- distributive ==0.6 - distributive ==0.6
- dl-fedora ==0.5 - dl-fedora ==0.5
- dlist ==0.8.0.6 - dlist ==0.8.0.7
- dlist-instances ==0.1.1.1 - dlist-instances ==0.1.1.1
- dlist-nonempty ==0.1.1 - dlist-nonempty ==0.1.1
- dns ==4.0.0 - dns ==4.0.0
@ -581,7 +581,7 @@ default-package-overrides:
- edit-distance-vector ==1.0.0.4 - edit-distance-vector ==1.0.0.4
- editor-open ==0.6.0.0 - editor-open ==0.6.0.0
- either ==5.0.1.1 - either ==5.0.1.1
- either-both ==0.1.0.0 - either-both ==0.1.1.1
- ekg ==0.4.0.15 - ekg ==0.4.0.15
- ekg-core ==0.1.1.6 - ekg-core ==0.1.1.6
- ekg-json ==0.1.0.6 - ekg-json ==0.1.0.6
@ -668,7 +668,7 @@ default-package-overrides:
- filepattern ==0.1.1 - filepattern ==0.1.1
- fileplow ==0.1.0.0 - fileplow ==0.1.0.0
- filter-logger ==0.6.0.0 - filter-logger ==0.6.0.0
- filtrable ==0.1.1.0 - filtrable ==0.1.2.0
- fin ==0.1 - fin ==0.1
- FindBin ==0.0.5 - FindBin ==0.0.5
- fingertree ==0.1.4.2 - fingertree ==0.1.4.2
@ -852,12 +852,12 @@ default-package-overrides:
- HandsomeSoup ==0.4.2 - HandsomeSoup ==0.4.2
- hapistrano ==0.3.9.3 - hapistrano ==0.3.9.3
- happy ==1.19.11 - happy ==1.19.11
- hasbolt ==0.1.3.3 - hasbolt ==0.1.3.4
- hashable ==1.2.7.0 - hashable ==1.2.7.0
- hashable-time ==0.2.0.2 - hashable-time ==0.2.0.2
- hashids ==1.0.2.4 - hashids ==1.0.2.4
- hashmap ==1.3.3 - hashmap ==1.3.3
- hashtables ==1.2.3.3 - hashtables ==1.2.3.4
- haskeline ==0.7.5.0 - haskeline ==0.7.5.0
- haskell-gi ==0.23.0 - haskell-gi ==0.23.0
- haskell-gi-base ==0.23.0 - haskell-gi-base ==0.23.0
@ -893,7 +893,7 @@ default-package-overrides:
- hedgehog ==1.0 - hedgehog ==1.0
- hedgehog-corpus ==0.1.0 - hedgehog-corpus ==0.1.0
- hedgehog-fn ==1.0 - hedgehog-fn ==1.0
- hedis ==0.12.6 - hedis ==0.12.7
- hedn ==0.2.0.1 - hedn ==0.2.0.1
- here ==1.2.13 - here ==1.2.13
- heredoc ==0.2.0.0 - heredoc ==0.2.0.0
@ -1184,7 +1184,7 @@ default-package-overrides:
- language-java ==0.2.9 - language-java ==0.2.9
- language-javascript ==0.6.0.13 - language-javascript ==0.6.0.13
- language-puppet ==1.4.5 - language-puppet ==1.4.5
- lapack ==0.3.0.1 - lapack ==0.3.1
- lapack-carray ==0.0.3 - lapack-carray ==0.0.3
- lapack-comfort-array ==0.0.0.1 - lapack-comfort-array ==0.0.0.1
- lapack-ffi ==0.0.2 - lapack-ffi ==0.0.2
@ -1229,7 +1229,7 @@ default-package-overrides:
- lift-generics ==0.1.2 - lift-generics ==0.1.2
- line ==4.0.1 - line ==4.0.1
- linear ==1.20.9 - linear ==1.20.9
- linear-circuit ==0.1.0.1 - linear-circuit ==0.1.0.2
- linux-file-extents ==0.2.0.0 - linux-file-extents ==0.2.0.0
- linux-namespaces ==0.1.3.0 - linux-namespaces ==0.1.3.0
- List ==0.6.2 - List ==0.6.2
@ -1338,7 +1338,7 @@ default-package-overrides:
- mmtf ==0.1.3.1 - mmtf ==0.1.3.1
- mnist-idx ==0.1.2.8 - mnist-idx ==0.1.2.8
- mockery ==0.3.5 - mockery ==0.3.5
- modern-uri ==0.3.0.1 - modern-uri ==0.3.1.0
- modular ==0.1.0.8 - modular ==0.1.0.8
- monad-control ==1.0.2.3 - monad-control ==1.0.2.3
- monad-control-aligned ==0.0.1.1 - monad-control-aligned ==0.0.1.1
@ -1509,14 +1509,14 @@ default-package-overrides:
- pandoc-citeproc ==0.16.2 - pandoc-citeproc ==0.16.2
- pandoc-csv2table ==1.0.7 - pandoc-csv2table ==1.0.7
- pandoc-markdown-ghci-filter ==0.1.0.0 - pandoc-markdown-ghci-filter ==0.1.0.0
- pandoc-pyplot ==2.1.4.0 - pandoc-pyplot ==2.1.5.1
- pandoc-types ==1.17.5.4 - pandoc-types ==1.17.5.4
- pantry ==0.1.1.1 - pantry ==0.1.1.1
- parallel ==3.2.2.0 - parallel ==3.2.2.0
- parallel-io ==0.3.3 - parallel-io ==0.3.3
- paripari ==0.6.0.0 - paripari ==0.6.0.0
- parseargs ==0.2.0.9 - parseargs ==0.2.0.9
- parsec ==3.1.13.0 - parsec ==3.1.14.0
- parsec-class ==1.0.0.0 - parsec-class ==1.0.0.0
- parsec-numbers ==0.1.0 - parsec-numbers ==0.1.0
- parsec-numeric ==0.1.0.0 - parsec-numeric ==0.1.0.0
@ -1610,7 +1610,7 @@ default-package-overrides:
- port-utils ==0.2.1.0 - port-utils ==0.2.1.0
- posix-paths ==0.2.1.6 - posix-paths ==0.2.1.6
- possibly ==1.0.0.0 - possibly ==1.0.0.0
- postgresql-binary ==0.12.1.2 - postgresql-binary ==0.12.1.3
- postgresql-libpq ==0.9.4.2 - postgresql-libpq ==0.9.4.2
- postgresql-orm ==0.5.1 - postgresql-orm ==0.5.1
- postgresql-schema ==0.1.14 - postgresql-schema ==0.1.14
@ -1692,7 +1692,7 @@ default-package-overrides:
- quickcheck-classes ==0.6.1.0 - quickcheck-classes ==0.6.1.0
- quickcheck-instances ==0.3.22 - quickcheck-instances ==0.3.22
- quickcheck-io ==0.2.0 - quickcheck-io ==0.2.0
- quickcheck-simple ==0.1.1.0 - quickcheck-simple ==0.1.1.1
- quickcheck-special ==0.1.0.6 - quickcheck-special ==0.1.0.6
- quickcheck-state-machine ==0.6.0 - quickcheck-state-machine ==0.6.0
- quickcheck-text ==0.1.2.1 - quickcheck-text ==0.1.2.1
@ -1754,7 +1754,7 @@ default-package-overrides:
- regex-tdfa ==1.2.3.2 - regex-tdfa ==1.2.3.2
- regex-tdfa-text ==1.0.0.3 - regex-tdfa-text ==1.0.0.3
- regex-with-pcre ==1.0.2.0 - regex-with-pcre ==1.0.2.0
- registry ==0.1.6.2 - registry ==0.1.7.0
- reinterpret-cast ==0.1.0 - reinterpret-cast ==0.1.0
- relapse ==1.0.0.0 - relapse ==1.0.0.0
- relational-query ==0.12.2.2 - relational-query ==0.12.2.2
@ -1771,7 +1771,7 @@ default-package-overrides:
- req-conduit ==1.0.0 - req-conduit ==1.0.0
- require ==0.4.2 - require ==0.4.2
- rerebase ==1.3.1.1 - rerebase ==1.3.1.1
- resistor-cube ==0.0.1.1 - resistor-cube ==0.0.1.2
- resource-pool ==0.2.3.2 - resource-pool ==0.2.3.2
- resourcet ==1.2.2 - resourcet ==1.2.2
- result ==0.2.6.0 - result ==0.2.6.0
@ -1808,7 +1808,7 @@ default-package-overrides:
- safe-json ==0.1.0 - safe-json ==0.1.0
- safe-money ==0.9 - safe-money ==0.9
- SafeSemaphore ==0.10.1 - SafeSemaphore ==0.10.1
- salak ==0.3.3 - salak ==0.3.3.1
- salak-toml ==0.3.3 - salak-toml ==0.3.3
- salak-yaml ==0.3.3 - salak-yaml ==0.3.3
- saltine ==0.1.0.2 - saltine ==0.1.0.2
@ -2222,7 +2222,7 @@ default-package-overrides:
- ucam-webauth ==0.1.0.0 - ucam-webauth ==0.1.0.0
- ucam-webauth-types ==0.1.0.0 - ucam-webauth-types ==0.1.0.0
- uglymemo ==0.1.0.1 - uglymemo ==0.1.0.1
- unagi-chan ==0.4.1.0 - unagi-chan ==0.4.1.2
- unbounded-delays ==0.1.1.0 - unbounded-delays ==0.1.1.0
- unbound-generics ==0.4.0 - unbound-generics ==0.4.0
- unboxed-ref ==0.4.0.0 - unboxed-ref ==0.4.0.0
@ -2251,7 +2251,7 @@ default-package-overrides:
- universe-reverse-instances ==1.1 - universe-reverse-instances ==1.1
- universum ==1.5.0 - universum ==1.5.0
- unix-bytestring ==0.3.7.3 - unix-bytestring ==0.3.7.3
- unix-compat ==0.5.1 - unix-compat ==0.5.2
- unix-time ==0.4.7 - unix-time ==0.4.7
- unliftio ==0.2.12 - unliftio ==0.2.12
- unliftio-core ==0.1.2.0 - unliftio-core ==0.1.2.0
@ -2361,7 +2361,7 @@ default-package-overrides:
- windns ==0.1.0.1 - windns ==0.1.0.1
- winery ==1.1.2 - winery ==1.1.2
- wire-streams ==0.1.1.0 - wire-streams ==0.1.1.0
- witherable ==0.3.1 - witherable ==0.3.2
- with-location ==0.1.0 - with-location ==0.1.0
- witness ==0.4 - witness ==0.4
- wizards ==1.0.3 - wizards ==1.0.3
@ -2522,6 +2522,7 @@ extra-packages:
- seqid-streams < 0.2 # newer versions depend on transformers 0.4.x which we cannot provide in GHC 7.8.x - seqid-streams < 0.2 # newer versions depend on transformers 0.4.x which we cannot provide in GHC 7.8.x
- split < 0.2 # newer versions don't work with GHC 6.12.3 - split < 0.2 # newer versions don't work with GHC 6.12.3
- tar < 0.4.2.0 # later versions don't work with GHC < 7.6.x - tar < 0.4.2.0 # later versions don't work with GHC < 7.6.x
- these == 0.7.6 # required by hnix 0.6.1
- transformers == 0.4.3.* # the latest version isn't supported by mtl yet - transformers == 0.4.3.* # the latest version isn't supported by mtl yet
- vector < 0.10.10 # newer versions don't work with GHC 6.12.3 - vector < 0.10.10 # newer versions don't work with GHC 6.12.3
- xml-conduit ^>= 1.7 # pre-lts-11.x versions neeed by git-annex 6.20180227 - xml-conduit ^>= 1.7 # pre-lts-11.x versions neeed by git-annex 6.20180227
@ -3253,6 +3254,7 @@ broken-packages:
- Bang - Bang
- bank-holiday-usa - bank-holiday-usa
- banwords - banwords
- barbly
- barchart - barchart
- barcodes-code128 - barcodes-code128
- barecheck - barecheck
@ -4943,6 +4945,7 @@ broken-packages:
- functional-arrow - functional-arrow
- functor - functor
- functor-combinators - functor-combinators
- functor-products
- functorm - functorm
- funflow - funflow
- funflow-nix - funflow-nix
@ -5921,7 +5924,6 @@ broken-packages:
- hmumps - hmumps
- hnetcdf - hnetcdf
- hnix - hnix
- hnix-store-core
- hnix-store-remote - hnix-store-remote
- HNM - HNM
- hnormalise - hnormalise
@ -5990,7 +5992,6 @@ broken-packages:
- hp2any-core - hp2any-core
- hp2any-graph - hp2any-graph
- hp2any-manager - hp2any-manager
- hpack
- hpack-convert - hpack-convert
- hpack-dhall - hpack-dhall
- hpaco - hpaco
@ -6237,7 +6238,6 @@ broken-packages:
- http-conduit-browser - http-conduit-browser
- http-directory - http-directory
- http-dispatch - http-dispatch
- http-download
- http-enumerator - http-enumerator
- http-grammar - http-grammar
- http-kinder - http-kinder
@ -6579,7 +6579,6 @@ broken-packages:
- join-api - join-api
- joinlist - joinlist
- jonathanscard - jonathanscard
- jose
- jpeg - jpeg
- js-good-parts - js-good-parts
- jsaddle-hello - jsaddle-hello
@ -7612,6 +7611,7 @@ broken-packages:
- Nomyx-Web - Nomyx-Web
- non-empty-zipper - non-empty-zipper
- NonEmpty - NonEmpty
- nonempty-lift
- NonEmptyList - NonEmptyList
- normalization-insensitive - normalization-insensitive
- NoSlow - NoSlow
@ -7792,7 +7792,6 @@ broken-packages:
- pang-a-lambda - pang-a-lambda
- pangraph - pangraph
- panpipe - panpipe
- pantry
- pantry-tmp - pantry-tmp
- papa-export - papa-export
- papa-implement - papa-implement
@ -8532,6 +8531,7 @@ broken-packages:
- rfc-servant - rfc-servant
- rg - rg
- rhythm-game-tutorial - rhythm-game-tutorial
- rib
- RichConditional - RichConditional
- ridley - ridley
- ridley-extras - ridley-extras
@ -8767,7 +8767,6 @@ broken-packages:
- servant-aeson-specs - servant-aeson-specs
- servant-auth-cookie - servant-auth-cookie
- servant-auth-hmac - servant-auth-hmac
- servant-auth-server
- servant-auth-token - servant-auth-token
- servant-auth-token-acid - servant-auth-token-acid
- servant-auth-token-api - servant-auth-token-api
@ -9106,6 +9105,7 @@ broken-packages:
- sparrow - sparrow
- sparse - sparse
- sparse-lin-alg - sparse-lin-alg
- sparse-tensor
- sparsebit - sparsebit
- sparsecheck - sparsecheck
- sparser - sparser
@ -9394,6 +9394,7 @@ broken-packages:
- taglib-api - taglib-api
- tagsoup-ht - tagsoup-ht
- tagsoup-megaparsec - tagsoup-megaparsec
- tagsoup-navigate
- tagsoup-parsec - tagsoup-parsec
- tagsoup-selection - tagsoup-selection
- tai64 - tai64
@ -9413,11 +9414,9 @@ broken-packages:
- task-distribution - task-distribution
- taskell - taskell
- tasty-auto - tasty-auto
- tasty-discover
- tasty-fail-fast - tasty-fail-fast
- tasty-groundhog-converters - tasty-groundhog-converters
- tasty-hedgehog-coverage - tasty-hedgehog-coverage
- tasty-hspec
- tasty-integrate - tasty-integrate
- tasty-jenkins-xml - tasty-jenkins-xml
- tasty-laws - tasty-laws
@ -10292,6 +10291,7 @@ broken-packages:
- yate - yate
- yavie - yavie
- yaya - yaya
- yaya-hedgehog
- yaya-unsafe - yaya-unsafe
- ycextra - ycextra
- yeller - yeller

View File

@ -95,6 +95,7 @@ self: super: builtins.intersectAttrs super {
sfml-audio = appendConfigureFlag super.sfml-audio "--extra-include-dirs=${pkgs.openal}/include/AL"; sfml-audio = appendConfigureFlag super.sfml-audio "--extra-include-dirs=${pkgs.openal}/include/AL";
cachix = enableSeparateBinOutput super.cachix; cachix = enableSeparateBinOutput super.cachix;
ghcid = enableSeparateBinOutput super.ghcid;
hzk = overrideCabal super.hzk (drv: { hzk = overrideCabal super.hzk (drv: {
preConfigure = "sed -i -e /include-dirs/d hzk.cabal"; preConfigure = "sed -i -e /include-dirs/d hzk.cabal";

File diff suppressed because it is too large Load Diff

View File

@ -14,6 +14,6 @@ mkDerivation rec {
]; ];
prePatch = '' prePatch = ''
substituteInPlace configure.in --replace '`sw_vers -productVersion`' '10.10' substituteInPlace configure.in --replace '`sw_vers -productVersion`' "''${MACOSX_DEPLOYMENT_TARGET:-10.12}"
''; '';
} }

View File

@ -5,6 +5,6 @@ mkDerivation rec {
sha256 = "0v2iiyzss8hiih98wvj0gi2qzdmmhh7bvc9p025wlfm4k7r1109a"; sha256 = "0v2iiyzss8hiih98wvj0gi2qzdmmhh7bvc9p025wlfm4k7r1109a";
prePatch = '' prePatch = ''
substituteInPlace configure.in --replace '`sw_vers -productVersion`' '10.10' substituteInPlace configure.in --replace '`sw_vers -productVersion`' "''${MACOSX_DEPLOYMENT_TARGET:-10.12}"
''; '';
} }

View File

@ -5,6 +5,6 @@ mkDerivation rec {
sha256 = "1szybirrcpqsl2nmlmpbkxjqnm6i7l7bma87m5cpwi0kpvlxwmcw"; sha256 = "1szybirrcpqsl2nmlmpbkxjqnm6i7l7bma87m5cpwi0kpvlxwmcw";
prePatch = '' prePatch = ''
substituteInPlace configure.in --replace '`sw_vers -productVersion`' '10.10' substituteInPlace configure.in --replace '`sw_vers -productVersion`' "''${MACOSX_DEPLOYMENT_TARGET:-10.12}"
''; '';
} }

View File

@ -5,7 +5,7 @@ mkDerivation rec {
sha256 = "1aqkhd6nwdn4xp5yz02zbymd4x8ij8fjw9ji8kh860n1a513k9ai"; sha256 = "1aqkhd6nwdn4xp5yz02zbymd4x8ij8fjw9ji8kh860n1a513k9ai";
prePatch = '' prePatch = ''
substituteInPlace make/configure.in --replace '`sw_vers -productVersion`' '10.10' substituteInPlace make/configure.in --replace '`sw_vers -productVersion`' "''${MACOSX_DEPLOYMENT_TARGET:-10.12}"
substituteInPlace erts/configure.in --replace '-Wl,-no_weak_imports' "" substituteInPlace erts/configure.in --replace '-Wl,-no_weak_imports' ""
''; '';
} }

File diff suppressed because it is too large Load Diff

View File

@ -1,18 +1,18 @@
{ rustPlatform, fetchFromGitHub, lib, python, cmake, llvmPackages, clang }: { rustPlatform, fetchFromGitHub, lib, python, cmake, llvmPackages, clang }:
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
name = "wasmtime-${version}"; pname = "wasmtime";
version = "0.1.0"; version = "20190521";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "CraneStation"; owner = "CraneStation";
repo = "wasmtime"; repo = "wasmtime";
rev = "07a6ca8f4e1136ecd9f4af8d1f03a01aade60407"; rev = "e530a582afe6a2b5735fd7cdf5e2e88391e58669";
sha256 = "1cq6nz90kaf023mcyblca90bpvbzhq8xjq01laa28v7r50lagcn5"; sha256 = "13lqf9dp1cnw7ms7hcgirmlfkr0v7nrn3p5g7yacfasrqgnwsyl8";
fetchSubmodules = true; fetchSubmodules = true;
}; };
cargoSha256 = "0xy8vazb4nc4q1098ws92j1yfwp9w7q30z0yk2gindkn898603bc"; cargoSha256 = "1jbpq09czm295316gdv3y0pfapqs0ynj3qbarwlnrv7valq5ak13";
cargoPatches = [ ./cargo-lock.patch ]; cargoPatches = [ ./cargo-lock.patch ];

View File

@ -0,0 +1,24 @@
{ stdenv, fetchFromGitHub, cmake, gflags }:
stdenv.mkDerivation rec {
pname = "crc32c";
version = "1.1.0";
src = fetchFromGitHub {
owner = "google";
repo = "crc32c";
rev = version;
sha256 = "1sazkis9rzbrklfrvk7jn1mqywnq4yghmzg94mxd153h8b1sb149";
fetchSubmodules = true;
};
nativeBuildInputs = [ cmake ];
buildInputs = [ gflags ];
NIX_CFLAGS_COMPILE = stdenv.lib.optional stdenv.isAarch64 "-march=armv8-a+crc";
meta = with stdenv.lib; {
homepage = https://github.com/google/crc32c;
description = "CRC32C implementation with support for CPU-specific acceleration instructions";
license = with licenses; [ bsd3 ];
maintainers = with maintainers; [ andir ];
};
}

View File

@ -3,13 +3,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "cre2-${version}"; name = "cre2-${version}";
version = "0.3.0"; version = "0.3.6";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "marcomaggi"; owner = "marcomaggi";
repo = "cre2"; repo = "cre2";
rev = version; rev = "v${version}";
sha256 = "12yrdad87jjqrhbqm02hzsayan2402vf61a9x1b2iabv6d1c1bnj"; sha256 = "1h9jwn6z8kjf4agla85b5xf7gfkdwncp0mfd8zwk98jkm8y2qx9q";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -0,0 +1,65 @@
{ stdenv, grpc, curl, cmake, pkgconfig, fetchFromGitHub, doxygen, protobuf, crc32c, c-ares, nlohmann_json, fetchurl }:
let
googleapis_rev = "a8ee1416f4c588f2ab92da72e7c1f588c784d3e6";
googleapis = fetchurl {
name = "${googleapis_rev}.tar.gz";
url = "https://github.com/googleapis/googleapis/archive/${googleapis_rev}.tar.gz";
sha256 = "1kxi27r034p7jfldhvgpbn6rqqqddycnja47m6jyjxj4rcmrp2kb";
};
in stdenv.mkDerivation rec {
pname = "google-cloud-cpp";
version = "0.11.0";
src = fetchFromGitHub {
owner = "googleapis";
repo = "google-cloud-cpp";
rev = "v${version}";
sha256 = "1w942gzyv01ym1cv2a417x92zxra9s2v3xz5crcv84j919f616f8";
};
buildInputs = [ curl grpc protobuf nlohmann_json crc32c c-ares c-ares.cmake-config ];
nativeBuildInputs = [ cmake pkgconfig doxygen ];
outputs = [ "out" "dev" ];
postPatch = ''
NLOHMANN_SHA256=$(sha256sum ${nlohmann_json}/include/nlohmann/json.hpp | cut -f1 -d' ')
sed -e 's,https://github.com/nlohmann/json/releases/download/.*,file://${nlohmann_json}/include/nlohmann/json.hpp"),' \
-e "s,JSON_SHA256 .*,JSON_SHA256 ''${NLOHMANN_SHA256}," \
-i cmake/DownloadNlohmannJson.cmake
sed -e 's,https://github.com/googleapis/googleapis/archive/${googleapis_rev}.tar.gz,file://${googleapis},' \
-i cmake/external/googleapis.cmake
# Fixup the library path. It would build a path like /build/external//nix/store/…-foo/lib/foo.so for each library instead of /build/external/lib64/foo.so
sed -e 's,''${CMAKE_INSTALL_LIBDIR},lib64,g' \
-e 's,;lib64,lib,g' \
-i cmake/ExternalProjectHelper.cmake
'';
preFixup = ''
mv --no-clobber $out/lib64/cmake/* $out/lib/cmake
mv --no-clobber $out/lib64/pkgconfig/* $out/lib/pkgconfig
rmdir $out/lib64/cmake $out/lib64/pkgconfig
find $out/lib64
for file in $out/lib/pkgconfig/*; do
sed -e 's,\''${prefix}//,/,g' -i $file
done
'';
cmakeFlags = [
"-DGOOGLE_CLOUD_CPP_BIGTABLE_ENABLE_INSTALL=no"
"-DGOOGLE_CLOUD_CPP_DEPENDENCY_PROVIDER=package"
"-DGOOGLE_CLOUD_CPP_GOOGLEAPIS_PROVIDER=external"
"-DBUILD_SHARED_LIBS:BOOL=ON"
"-DGOOGLE_CLOUD_CPP_INSTALL_RPATH=$(out)/lib"
];
meta = with stdenv.lib; {
license = with licenses; [ asl20 ];
homepage = https://github.com/googleapis/google-cloud-cpp;
description = "C++ Idiomatic Clients for Google Cloud Platform services";
maintainers = with maintainers; [ andir ];
};
}

View File

@ -0,0 +1,37 @@
From 8c67f314de2684d77315eecd99ef091d441f17dd Mon Sep 17 00:00:00 2001
From: Matthew Bauer <mjbauer95@gmail.com>
Date: Wed, 24 Jul 2019 15:35:18 -0400
Subject: [PATCH] Make hunspell look in XDG_DATA_DIRS for dictionaries
Some dictionaries may exist but only show up under XDG_DATA_DIRS. For
instance, $HOME/.local/share/hunspell could contain some dictionaries.
This patch adds each directory in the hunspell subdir of each
XDG_DATA_DIRS to the lookup path.
Upstream pr is available at: https://github.com/hunspell/hunspell/pull/637
---
src/tools/hunspell.cxx | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/src/tools/hunspell.cxx b/src/tools/hunspell.cxx
index 690e34a..6cd127e 100644
--- a/src/tools/hunspell.cxx
+++ b/src/tools/hunspell.cxx
@@ -2044,6 +2044,13 @@ int main(int argc, char** argv) {
if (getenv("DICPATH")) {
path_std_str.append(getenv("DICPATH")).append(PATHSEP);
}
+ if (getenv("XDG_DATA_DIRS")) {
+ char* dir = strtok(getenv("XDG_DATA_DIRS"), ":");
+ while (dir != NULL) {
+ path_std_str.append(dir).append("/hunspell:");
+ dir = strtok(NULL, ":");
+ }
+ }
path_std_str.append(LIBDIR).append(PATHSEP);
if (HOME) {
const char * userooodir[] = USEROOODIR;
--
2.22.0

View File

@ -14,6 +14,8 @@ stdenv.mkDerivation rec {
buildInputs = [ ncurses readline ]; buildInputs = [ ncurses readline ];
nativeBuildInputs = [ autoreconfHook ]; nativeBuildInputs = [ autoreconfHook ];
patches = [ ./0001-Make-hunspell-look-in-XDG_DATA_DIRS-for-dictionaries.patch ];
postPatch = '' postPatch = ''
patchShebangs tests patchShebangs tests
''; '';

View File

@ -286,10 +286,11 @@ let
}; };
}; };
in { in rec {
/* ENGLISH */ /* ENGLISH */
en_US = en-us;
en-us = mkDictFromWordlist { en-us = mkDictFromWordlist {
shortName = "en-us"; shortName = "en-us";
shortDescription = "English (United States)"; shortDescription = "English (United States)";
@ -300,6 +301,7 @@ in {
}; };
}; };
en_CA = en-ca;
en-ca = mkDictFromWordlist { en-ca = mkDictFromWordlist {
shortName = "en-ca"; shortName = "en-ca";
shortDescription = "English (Canada)"; shortDescription = "English (Canada)";
@ -310,6 +312,7 @@ in {
}; };
}; };
en_GB-ise = en-gb-ise;
en-gb-ise = mkDictFromWordlist { en-gb-ise = mkDictFromWordlist {
shortName = "en-gb-ise"; shortName = "en-gb-ise";
shortDescription = "English (United Kingdom, 'ise' ending)"; shortDescription = "English (United Kingdom, 'ise' ending)";
@ -320,6 +323,7 @@ in {
}; };
}; };
en_GB-ize = en-gb-ize;
en-gb-ize = mkDictFromWordlist { en-gb-ize = mkDictFromWordlist {
shortName = "en-gb-ize"; shortName = "en-gb-ize";
shortDescription = "English (United Kingdom, 'ize' ending)"; shortDescription = "English (United Kingdom, 'ize' ending)";
@ -332,126 +336,147 @@ in {
/* SPANISH */ /* SPANISH */
es_ANY = es-any;
es-any = mkDictFromRla { es-any = mkDictFromRla {
shortName = "es-any"; shortName = "es-any";
shortDescription = "Spanish (any variant)"; shortDescription = "Spanish (any variant)";
dictFileName = "es_ANY"; dictFileName = "es_ANY";
}; };
es_AR = es-ar;
es-ar = mkDictFromRla { es-ar = mkDictFromRla {
shortName = "es-ar"; shortName = "es-ar";
shortDescription = "Spanish (Argentina)"; shortDescription = "Spanish (Argentina)";
dictFileName = "es_AR"; dictFileName = "es_AR";
}; };
es_BO = es-bo;
es-bo = mkDictFromRla { es-bo = mkDictFromRla {
shortName = "es-bo"; shortName = "es-bo";
shortDescription = "Spanish (Bolivia)"; shortDescription = "Spanish (Bolivia)";
dictFileName = "es_BO"; dictFileName = "es_BO";
}; };
es_CL = es-cl;
es-cl = mkDictFromRla { es-cl = mkDictFromRla {
shortName = "es-cl"; shortName = "es-cl";
shortDescription = "Spanish (Chile)"; shortDescription = "Spanish (Chile)";
dictFileName = "es_CL"; dictFileName = "es_CL";
}; };
es_CO = es-co;
es-co = mkDictFromRla { es-co = mkDictFromRla {
shortName = "es-co"; shortName = "es-co";
shortDescription = "Spanish (Colombia)"; shortDescription = "Spanish (Colombia)";
dictFileName = "es_CO"; dictFileName = "es_CO";
}; };
es_CR = es-cr;
es-cr = mkDictFromRla { es-cr = mkDictFromRla {
shortName = "es-cr"; shortName = "es-cr";
shortDescription = "Spanish (Costra Rica)"; shortDescription = "Spanish (Costra Rica)";
dictFileName = "es_CR"; dictFileName = "es_CR";
}; };
es_CU = es-cu;
es-cu = mkDictFromRla { es-cu = mkDictFromRla {
shortName = "es-cu"; shortName = "es-cu";
shortDescription = "Spanish (Cuba)"; shortDescription = "Spanish (Cuba)";
dictFileName = "es_CU"; dictFileName = "es_CU";
}; };
es_DO = es-do;
es-do = mkDictFromRla { es-do = mkDictFromRla {
shortName = "es-do"; shortName = "es-do";
shortDescription = "Spanish (Dominican Republic)"; shortDescription = "Spanish (Dominican Republic)";
dictFileName = "es_DO"; dictFileName = "es_DO";
}; };
es_EC = es-ec;
es-ec = mkDictFromRla { es-ec = mkDictFromRla {
shortName = "es-ec"; shortName = "es-ec";
shortDescription = "Spanish (Ecuador)"; shortDescription = "Spanish (Ecuador)";
dictFileName = "es_EC"; dictFileName = "es_EC";
}; };
es_ES = es-es;
es-es = mkDictFromRla { es-es = mkDictFromRla {
shortName = "es-es"; shortName = "es-es";
shortDescription = "Spanish (Spain)"; shortDescription = "Spanish (Spain)";
dictFileName = "es_ES"; dictFileName = "es_ES";
}; };
es_GT = es-gt;
es-gt = mkDictFromRla { es-gt = mkDictFromRla {
shortName = "es-gt"; shortName = "es-gt";
shortDescription = "Spanish (Guatemala)"; shortDescription = "Spanish (Guatemala)";
dictFileName = "es_GT"; dictFileName = "es_GT";
}; };
es_HN = es-hn;
es-hn = mkDictFromRla { es-hn = mkDictFromRla {
shortName = "es-hn"; shortName = "es-hn";
shortDescription = "Spanish (Honduras)"; shortDescription = "Spanish (Honduras)";
dictFileName = "es_HN"; dictFileName = "es_HN";
}; };
es_MX = es-mx;
es-mx = mkDictFromRla { es-mx = mkDictFromRla {
shortName = "es-mx"; shortName = "es-mx";
shortDescription = "Spanish (Mexico)"; shortDescription = "Spanish (Mexico)";
dictFileName = "es_MX"; dictFileName = "es_MX";
}; };
es_NI = es-ni;
es-ni = mkDictFromRla { es-ni = mkDictFromRla {
shortName = "es-ni"; shortName = "es-ni";
shortDescription = "Spanish (Nicaragua)"; shortDescription = "Spanish (Nicaragua)";
dictFileName = "es_NI"; dictFileName = "es_NI";
}; };
es_PA = es-pa;
es-pa = mkDictFromRla { es-pa = mkDictFromRla {
shortName = "es-pa"; shortName = "es-pa";
shortDescription = "Spanish (Panama)"; shortDescription = "Spanish (Panama)";
dictFileName = "es_PA"; dictFileName = "es_PA";
}; };
es_PE = es-pe;
es-pe = mkDictFromRla { es-pe = mkDictFromRla {
shortName = "es-pe"; shortName = "es-pe";
shortDescription = "Spanish (Peru)"; shortDescription = "Spanish (Peru)";
dictFileName = "es_PE"; dictFileName = "es_PE";
}; };
es_PR = es-pr;
es-pr = mkDictFromRla { es-pr = mkDictFromRla {
shortName = "es-pr"; shortName = "es-pr";
shortDescription = "Spanish (Puerto Rico)"; shortDescription = "Spanish (Puerto Rico)";
dictFileName = "es_PR"; dictFileName = "es_PR";
}; };
es_PY = es-py;
es-py = mkDictFromRla { es-py = mkDictFromRla {
shortName = "es-py"; shortName = "es-py";
shortDescription = "Spanish (Paraguay)"; shortDescription = "Spanish (Paraguay)";
dictFileName = "es_PY"; dictFileName = "es_PY";
}; };
es_SV = es-sv;
es-sv = mkDictFromRla { es-sv = mkDictFromRla {
shortName = "es-sv"; shortName = "es-sv";
shortDescription = "Spanish (El Salvador)"; shortDescription = "Spanish (El Salvador)";
dictFileName = "es_SV"; dictFileName = "es_SV";
}; };
es_UY = es-uy;
es-uy = mkDictFromRla { es-uy = mkDictFromRla {
shortName = "es-uy"; shortName = "es-uy";
shortDescription = "Spanish (Uruguay)"; shortDescription = "Spanish (Uruguay)";
dictFileName = "es_UY"; dictFileName = "es_UY";
}; };
es_VE = es-ve;
es-ve = mkDictFromRla { es-ve = mkDictFromRla {
shortName = "es-ve"; shortName = "es-ve";
shortDescription = "Spanish (Venezuela)"; shortDescription = "Spanish (Venezuela)";
@ -505,6 +530,7 @@ in {
/* ITALIAN */ /* ITALIAN */
it_IT = it-it;
it-it = mkDictFromLinguistico rec { it-it = mkDictFromLinguistico rec {
shortName = "it-it"; shortName = "it-it";
dictFileName = "it_IT"; dictFileName = "it_IT";
@ -517,6 +543,7 @@ in {
/* BASQUE */ /* BASQUE */
eu_ES = eu-es;
eu-es = mkDictFromXuxen { eu-es = mkDictFromXuxen {
shortName = "eu-es"; shortName = "eu-es";
dictFileName = "eu_ES"; dictFileName = "eu_ES";
@ -549,6 +576,7 @@ in {
/* HUNGARIAN */ /* HUNGARIAN */
hu_HU = hu-hu;
hu-hu = mkDictFromLibreOffice { hu-hu = mkDictFromLibreOffice {
shortName = "hu-hu"; shortName = "hu-hu";
dictFileName = "hu_HU"; dictFileName = "hu_HU";
@ -558,6 +586,7 @@ in {
/* SWEDISH */ /* SWEDISH */
sv_SE = sv-se;
sv-se = mkDictFromDSSO rec { sv-se = mkDictFromDSSO rec {
shortName = "sv-se"; shortName = "sv-se";
dictFileName = "sv_SE"; dictFileName = "sv_SE";
@ -565,6 +594,7 @@ in {
}; };
# Finlandian Swedish (hello Linus Torvalds) # Finlandian Swedish (hello Linus Torvalds)
sv_FI = sv-fi;
sv-fi = mkDictFromDSSO rec { sv-fi = mkDictFromDSSO rec {
shortName = "sv-fi"; shortName = "sv-fi";
dictFileName = "sv_FI"; dictFileName = "sv_FI";
@ -573,18 +603,21 @@ in {
/* GERMAN */ /* GERMAN */
de_DE = de-de;
de-de = mkDictFromJ3e { de-de = mkDictFromJ3e {
shortName = "de-de"; shortName = "de-de";
shortDescription = "German (Germany)"; shortDescription = "German (Germany)";
dictFileName = "de_DE"; dictFileName = "de_DE";
}; };
de_AT = de-at;
de-at = mkDictFromJ3e { de-at = mkDictFromJ3e {
shortName = "de-at"; shortName = "de-at";
shortDescription = "German (Austria)"; shortDescription = "German (Austria)";
dictFileName = "de_AT"; dictFileName = "de_AT";
}; };
de_CH = de-ch;
de-ch = mkDictFromJ3e { de-ch = mkDictFromJ3e {
shortName = "de-ch"; shortName = "de-ch";
shortDescription = "German (Switzerland)"; shortDescription = "German (Switzerland)";
@ -593,6 +626,7 @@ in {
/* UKRAINIAN */ /* UKRAINIAN */
uk_UA = uk-ua;
uk-ua = mkDict rec { uk-ua = mkDict rec {
name = "hunspell-dict-uk-ua-${version}"; name = "hunspell-dict-uk-ua-${version}";
version = "4.2.5"; version = "4.2.5";

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