Merge branch 'master' into staging

* master: (125 commits)
  scummvm: fix eval
  tinycc: 0.9.27pre-20171016 -> 0.9.27
  Update terraform provider versions
  vscode: 1.18.1 -> 1.19.0
  linux: 4.14.6 -> 4.14.7
  scummvm: 1.9.0 -> 2.0.0
  cmst: 2017.03.18 -> 2017.09.19
  albert: 0.14.7 -> 0.14.14
  obs-studio: fix vlc plugin
  ffmpeg, ffmpeg-full: 3.4 -> 3.4.1
  uchiwa: 0.26.3 -> 1.1.0
  linux-testing: 4.15-rc3 -> 4.15-rc4
  steam: override nss, nspr, fixes #32781
  ponyc: 0.20.0 -> 0.21.0
  pythonPackages.pwntools: disable tests
  gnome3.gnome-tweak-tool: 3.26.3 → 3.26.4
  vim-rhubarb: init at 2017-06-28
  atom: depend on libsecret
  nvidia-settings: Make sure binary can find libXv.so
  backblaze-b2: 0.6.2 -> 1.1.0
  ...
This commit is contained in:
Orivej Desh 2017-12-18 15:56:03 +00:00
commit 7c58e8dfc2
152 changed files with 2979 additions and 2427 deletions

View File

@ -649,6 +649,7 @@
tex = "Milan Svoboda <milan.svoboda@centrum.cz>"; tex = "Milan Svoboda <milan.svoboda@centrum.cz>";
thall = "Niclas Thall <niclas.thall@gmail.com>"; thall = "Niclas Thall <niclas.thall@gmail.com>";
thammers = "Tobias Hammerschmidt <jawr@gmx.de>"; thammers = "Tobias Hammerschmidt <jawr@gmx.de>";
thanegill = "Thane Gill <me@thanegill.com>";
the-kenny = "Moritz Ulrich <moritz@tarn-vedra.de>"; the-kenny = "Moritz Ulrich <moritz@tarn-vedra.de>";
theuni = "Christian Theune <ct@flyingcircus.io>"; theuni = "Christian Theune <ct@flyingcircus.io>";
ThomasMader = "Thomas Mader <thomas.mader@gmail.com>"; ThomasMader = "Thomas Mader <thomas.mader@gmail.com>";

View File

@ -1,48 +0,0 @@
<section xmlns="http://docbook.org/ns/docbook"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xi="http://www.w3.org/2001/XInclude"
version="5.0"
xml:id="sec-uefi-installation">
<title>UEFI Installation</title>
<para>NixOS can also be installed on UEFI systems. The procedure
is by and large the same as a BIOS installation, with the following
changes:
<itemizedlist>
<listitem>
<para>You should boot the live CD in UEFI mode (consult your
specific hardware's documentation for instructions). You may find
the <link
xlink:href="http://www.rodsbooks.com/refind">rEFInd
boot manager</link> useful.</para>
</listitem>
<listitem>
<para>Instead of <command>fdisk</command>, you should use
<command>gdisk</command> to partition your disks. You will need to
have a separate partition for <filename>/boot</filename> with
partition code EF00, and it should be formatted as a
<literal>vfat</literal> filesystem.</para>
</listitem>
<listitem>
<para>Instead of <option>boot.loader.grub.device</option>,
you must set <option>boot.loader.systemd-boot.enable</option> to
<literal>true</literal>. <command>nixos-generate-config</command>
should do this automatically for new configurations when booted in
UEFI mode.</para>
</listitem>
<listitem>
<para>After having mounted your installation partition to
<code>/mnt</code>, you must mount the <code>boot</code> partition
to <code>/mnt/boot</code>.</para>
</listitem>
<listitem>
<para>You may want to look at the options starting with
<option>boot.loader.efi</option> and <option>boot.loader.systemd-boot</option>
as well.</para>
</listitem>
</itemizedlist>
</para>
</section>

View File

@ -6,9 +6,18 @@
<title>Installing NixOS</title> <title>Installing NixOS</title>
<para>NixOS can be installed on BIOS or UEFI systems. The procedure
for a UEFI installation is by and large the same as a BIOS installation. The differences are mentioned in the steps that follow.</para>
<orderedlist> <orderedlist>
<listitem><para>Boot from the CD.</para></listitem> <listitem><para>Boot from the CD.</para>
<variablelist>
<varlistentry><term>UEFI systems</term>
<listitem><para>You should boot the live CD in UEFI mode
(consult your specific hardware's documentation for instructions).
You may find the <link xlink:href="http://www.rodsbooks.com/refind">rEFInd boot
manager</link> useful.</para></listitem></varlistentry></variablelist></listitem>
<listitem><para>The CD contains a basic NixOS installation. (It <listitem><para>The CD contains a basic NixOS installation. (It
also contains Memtest86+, useful if you want to test new hardware). also contains Memtest86+, useful if you want to test new hardware).
@ -50,7 +59,31 @@
<itemizedlist> <itemizedlist>
<listitem><para>For partitioning: <listitem><para>For partitioning:
<command>fdisk</command>.</para></listitem> <command>fdisk</command>.
<screen>
# fdisk /dev/sda # <lineannotation>(or whatever device you want to install on)</lineannotation>
-- for UEFI systems only
> n # <lineannotation>(create a new partition for /boot)</lineannotation>
> 3 # <lineannotation>(make it a partition number 3)</lineannotation>
> # <lineannotation>(press enter to accept the default)</lineannotation>
> +512M # <lineannotation>(the size of the UEFI boot partition)</lineannotation>
> t # <lineannotation>(change the partition type ...)</lineannotation>
> 3 # <lineannotation>(... of the boot partition ...)</lineannotation>
> 1 # <lineannotation>(... to 'UEFI System')</lineannotation>
-- for BIOS or UEFI systems
> n # <lineannotation>(create a new partition for /swap)</lineannotation>
> 2 # <lineannotation>(make it a partition number 2)</lineannotation>
> # <lineannotation>(press enter to accept the default)</lineannotation>
> +8G # <lineannotation>(the size of the swap partition, set to whatever you like)</lineannotation>
> n # <lineannotation>(create a new partition for /)</lineannotation>
> 1 # <lineannotation>(make it a partition number 1)</lineannotation>
> # <lineannotation>(press enter to accept the default)</lineannotation>
> # <lineannotation>(press enter to accept the default and use the rest of the remaining space)</lineannotation>
> a # <lineannotation>(make the partition bootable)</lineannotation>
> x # <lineannotation>(enter expert mode)</lineannotation>
> f # <lineannotation>(fix up the partition ordering)</lineannotation>
> r # <lineannotation>(exit expert mode)</lineannotation>
> w # <lineannotation>(write the partition table to disk and exit)</lineannotation></screen></para></listitem>
<listitem><para>For initialising Ext4 partitions: <listitem><para>For initialising Ext4 partitions:
<command>mkfs.ext4</command>. It is recommended that you assign a <command>mkfs.ext4</command>. It is recommended that you assign a
@ -67,7 +100,25 @@
<listitem><para>For creating swap partitions: <listitem><para>For creating swap partitions:
<command>mkswap</command>. Again its recommended to assign a <command>mkswap</command>. Again its recommended to assign a
label to the swap partition: <option>-L label to the swap partition: <option>-L
<replaceable>label</replaceable></option>.</para></listitem> <replaceable>label</replaceable></option>. For example:
<screen>
# mkswap -L swap /dev/sda2</screen>
</para></listitem>
<listitem>
<variablelist>
<varlistentry><term>UEFI systems</term>
<listitem><para>For creating boot partitions:
<command>mkfs.fat</command>. Again its recommended to assign a
label to the boot partition: <option>-L
<replaceable>label</replaceable></option>. For example:
<screen>
# mkfs.fat -F 32 -L boot /dev/sda3</screen>
</para></listitem></varlistentry></variablelist></listitem>
<listitem><para>For creating LVM volumes, the LVM commands, e.g., <listitem><para>For creating LVM volumes, the LVM commands, e.g.,
@ -95,11 +146,27 @@
</para></listitem> </para></listitem>
<listitem>
<variablelist>
<varlistentry><term>UEFI systems</term>
<listitem><para>Mount the boot file system on <filename>/mnt/boot</filename>, e.g.
<screen>
# mount /dev/disk/by-label/boot /mnt/boot
</screen>
</para></listitem></varlistentry></variablelist></listitem>
<listitem><para>If your machine has a limited amount of memory, you <listitem><para>If your machine has a limited amount of memory, you
may want to activate swap devices now (<command>swapon may want to activate swap devices now (<command>swapon
<replaceable>device</replaceable></command>). The installer (or <replaceable>device</replaceable></command>). The installer (or
rather, the build actions that it may spawn) may need quite a bit of rather, the build actions that it may spawn) may need quite a bit of
RAM, depending on your configuration.</para></listitem> RAM, depending on your configuration.
<screen>
# swapon /dev/sda2</screen>
</para></listitem>
<listitem> <listitem>
@ -135,10 +202,25 @@
install Emacs by running <literal>nix-env -i install Emacs by running <literal>nix-env -i
emacs</literal>.</para> emacs</literal>.</para>
<para>You <emphasis>must</emphasis> set the option <variablelist>
<varlistentry><term>BIOS systems</term>
<listitem><para>You <emphasis>must</emphasis> set the option
<option>boot.loader.grub.device</option> to specify on which disk <option>boot.loader.grub.device</option> to specify on which disk
the GRUB boot loader is to be installed. Without it, NixOS cannot the GRUB boot loader is to be installed. Without it, NixOS cannot
boot.</para> boot.</para></listitem></varlistentry>
<varlistentry><term>UEFI systems</term>
<listitem><para>You <emphasis>must</emphasis> set the option
<option>boot.loader.systemd-boot.enable</option> to <literal>true</literal>.
<command>nixos-generate-config</command> should do this automatically for new
configurations when booted in
UEFI mode.</para>
<para>You may want to look at the options starting with
<option>boot.loader.efi</option> and <option>boot.loader.systemd-boot</option>
as well.</para></listitem></varlistentry>
</variablelist>
<para>If there are other operating systems running on the machine before <para>If there are other operating systems running on the machine before
installing NixOS, the installing NixOS, the
@ -247,10 +329,34 @@ drive (here <filename>/dev/sda</filename>). <xref linkend="ex-config"
<example xml:id='ex-install-sequence'><title>Commands for Installing NixOS on <filename>/dev/sda</filename></title> <example xml:id='ex-install-sequence'><title>Commands for Installing NixOS on <filename>/dev/sda</filename></title>
<screen> <screen>
# fdisk /dev/sda # <lineannotation>(or whatever device you want to install on)</lineannotation> # fdisk /dev/sda # <lineannotation>(or whatever device you want to install on)</lineannotation>
-- for UEFI systems only
> n # <lineannotation>(create a new partition for /boot)</lineannotation>
> 3 # <lineannotation>(make it a partition number 3)</lineannotation>
> # <lineannotation>(press enter to accept the default)</lineannotation>
> +512M # <lineannotation>(the size of the UEFI boot partition)</lineannotation>
> t # <lineannotation>(change the partition type ...)</lineannotation>
> 3 # <lineannotation>(... of the boot partition ...)</lineannotation>
> 1 # <lineannotation>(... to 'UEFI System')</lineannotation>
-- for BIOS or UEFI systems
> n # <lineannotation>(create a new partition for /swap)</lineannotation>
> 2 # <lineannotation>(make it a partition number 2)</lineannotation>
> # <lineannotation>(press enter to accept the default)</lineannotation>
> +8G # <lineannotation>(the size of the swap partition)</lineannotation>
> n # <lineannotation>(create a new partition for /)</lineannotation>
> 1 # <lineannotation>(make it a partition number 1)</lineannotation>
> # <lineannotation>(press enter to accept the default)</lineannotation>
> # <lineannotation>(press enter to accept the default and use the rest of the remaining space)</lineannotation>
> a # <lineannotation>(make the partition bootable)</lineannotation>
> x # <lineannotation>(enter expert mode)</lineannotation>
> f # <lineannotation>(fix up the partition ordering)</lineannotation>
> r # <lineannotation>(exit expert mode)</lineannotation>
> w # <lineannotation>(write the partition table to disk and exit)</lineannotation>
# mkfs.ext4 -L nixos /dev/sda1 # mkfs.ext4 -L nixos /dev/sda1
# mkswap -L swap /dev/sda2 # mkswap -L swap /dev/sda2
# swapon /dev/sda2 # swapon /dev/sda2
# mkfs.fat -F 32 -L boot /dev/sda3 # <lineannotation>(for UEFI systems only)</lineannotation>
# mount /dev/disk/by-label/nixos /mnt # mount /dev/disk/by-label/nixos /mnt
# mount /dev/disk/by-label/boot /mnt/boot # <lineannotation>(for UEFI systems only)</lineannotation>
# nixos-generate-config --root /mnt # nixos-generate-config --root /mnt
# nano /mnt/etc/nixos/configuration.nix # nano /mnt/etc/nixos/configuration.nix
# nixos-install # nixos-install
@ -267,7 +373,8 @@ drive (here <filename>/dev/sda</filename>). <xref linkend="ex-config"
./hardware-configuration.nix ./hardware-configuration.nix
]; ];
boot.loader.grub.device = "/dev/sda"; boot.loader.grub.device = "/dev/sda"; # <lineannotation>(for BIOS systems only)</lineannotation>
boot.loader.systemd-boot.enable = true; # <lineannotation>(for UEFI systems only)</lineannotation>
# Note: setting fileSystems is generally not # Note: setting fileSystems is generally not
# necessary, since nixos-generate-config figures them out # necessary, since nixos-generate-config figures them out
@ -279,7 +386,6 @@ drive (here <filename>/dev/sda</filename>). <xref linkend="ex-config"
}</screen> }</screen>
</example> </example>
<xi:include href="installing-uefi.xml" />
<xi:include href="installing-usb.xml" /> <xi:include href="installing-usb.xml" />
<xi:include href="installing-pxe.xml" /> <xi:include href="installing-pxe.xml" />
<xi:include href="installing-virtualbox-guest.xml" /> <xi:include href="installing-virtualbox-guest.xml" />

View File

@ -13,7 +13,7 @@ the following highlights:
<itemizedlist> <itemizedlist>
<listitem><para>Installation on UEFI systems is now supported. See <listitem><para>Installation on UEFI systems is now supported. See
<xref linkend="sec-uefi-installation"/> for <xref linkend="sec-installation"/> for
details.</para></listitem> details.</para></listitem>
<listitem><para>Systemd has been updated to version 212, which has <listitem><para>Systemd has been updated to version 212, which has

View File

@ -137,6 +137,14 @@ following incompatible changes:</para>
Previously the default behaviour was to listen on all interfaces. Previously the default behaviour was to listen on all interfaces.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
<literal>services.btrfs.autoScrub</literal> has been added, to
periodically check btrfs filesystems for data corruption.
If there's a correct copy available, it will automatically repair
corrupted blocks.
</para>
</listitem>
</itemizedlist> </itemizedlist>
</section> </section>

View File

@ -129,6 +129,9 @@ let format' = format; in let
# TODO: Nix really likes to chown things it creates to its current user... # TODO: Nix really likes to chown things it creates to its current user...
fakeroot nixos-prepare-root $root ${channelSources} ${config.system.build.toplevel} closure fakeroot nixos-prepare-root $root ${channelSources} ${config.system.build.toplevel} closure
# fakeroot seems to always give the owner write permissions, which we do not want
find $root/nix/store -mindepth 1 -maxdepth 1 -type f -o -type d -exec chmod -R a-w '{}' \;
echo "copying staging root to image..." echo "copying staging root to image..."
cptofs ${optionalString partitioned "-P 1"} -t ${fsType} -i $diskImage $root/* / cptofs ${optionalString partitioned "-P 1"} -t ${fsType} -i $diskImage $root/* /
''; '';

View File

@ -35,7 +35,7 @@ with lib;
networkmanager_pptp = pkgs.networkmanager_pptp.override { withGnome = false; }; networkmanager_pptp = pkgs.networkmanager_pptp.override { withGnome = false; };
networkmanager_vpnc = pkgs.networkmanager_vpnc.override { withGnome = false; }; networkmanager_vpnc = pkgs.networkmanager_vpnc.override { withGnome = false; };
networkmanager_iodine = pkgs.networkmanager_iodine.override { withGnome = false; }; networkmanager_iodine = pkgs.networkmanager_iodine.override { withGnome = false; };
pinentry = pkgs.pinentry.override { gtk2 = null; qt4 = null; }; pinentry = pkgs.pinentry_ncurses;
}; };
}; };
} }

View File

@ -402,6 +402,7 @@
./services/monitoring/zabbix-agent.nix ./services/monitoring/zabbix-agent.nix
./services/monitoring/zabbix-server.nix ./services/monitoring/zabbix-server.nix
./services/network-filesystems/cachefilesd.nix ./services/network-filesystems/cachefilesd.nix
./services/network-filesystems/davfs2.nix
./services/network-filesystems/drbd.nix ./services/network-filesystems/drbd.nix
./services/network-filesystems/glusterfs.nix ./services/network-filesystems/glusterfs.nix
./services/network-filesystems/kbfs.nix ./services/network-filesystems/kbfs.nix

View File

@ -8,7 +8,7 @@ let
defaultRules = pkgs.runCommand "logcheck-default-rules" {} '' defaultRules = pkgs.runCommand "logcheck-default-rules" {} ''
cp -prd ${pkgs.logcheck}/etc/logcheck $out cp -prd ${pkgs.logcheck}/etc/logcheck $out
chmod u+w $out chmod u+w $out
rm $out/logcheck.* rm -r $out/logcheck.*
''; '';
rulesDir = pkgs.symlinkJoin rulesDir = pkgs.symlinkJoin

View File

@ -0,0 +1,74 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.services.davfs2;
cfgFile = pkgs.writeText "davfs2.conf" ''
dav_user ${cfg.davUser}
dav_group ${cfg.davGroup}
${cfg.extraConfig}
'';
in
{
options.services.davfs2 = {
enable = mkOption {
type = types.bool;
default = false;
description = ''
Whether to enable davfs2.
'';
};
davUser = mkOption {
type = types.string;
default = "davfs2";
description = ''
When invoked by root the mount.davfs daemon will run as this user.
Value must be given as name, not as numerical id.
'';
};
davGroup = mkOption {
type = types.string;
default = "davfs2";
description = ''
The group of the running mount.davfs daemon. Ordinary users must be
member of this group in order to mount a davfs2 file system. Value must
be given as name, not as numerical id.
'';
};
extraConfig = mkOption {
type = types.lines;
default = "";
example = ''
kernel_fs coda
proxy foo.bar:8080
use_locks 0
'';
description = ''
Extra lines appended to the configuration of davfs2.
'' ;
};
};
config = mkIf cfg.enable {
environment.systemPackages = [ pkgs.davfs2 ];
environment.etc."davfs2/davfs2.conf".source = cfgFile;
users.extraGroups = optionalAttrs (cfg.davGroup == "davfs2") (singleton {
name = "davfs2";
gid = config.ids.gids.davfs2;
});
users.extraUsers = optionalAttrs (cfg.davUser == "davfs2") (singleton {
name = "davfs2";
createHome = false;
group = cfg.davGroup;
uid = config.ids.uids.davfs2;
description = "davfs2 user";
});
};
}

View File

@ -89,9 +89,6 @@ in
config = mkIf (config.boot.initrd.network.enable && cfg.enable) { config = mkIf (config.boot.initrd.network.enable && cfg.enable) {
assertions = [ assertions = [
{ assertion = cfg.hostRSAKey != null || cfg.hostDSSKey != null || cfg.hostECDSAKey != null;
message = "You should specify at least one host key for initrd SSH";
}
{ assertion = cfg.authorizedKeys != []; { assertion = cfg.authorizedKeys != [];
message = "You should specify at least one authorized key for initrd SSH"; message = "You should specify at least one authorized key for initrd SSH";
} }
@ -121,7 +118,7 @@ in
echo ${escapeShellArg key} >> /root/.ssh/authorized_keys echo ${escapeShellArg key} >> /root/.ssh/authorized_keys
'') cfg.authorizedKeys)} '') cfg.authorizedKeys)}
dropbear -s -j -k -E -m -p ${toString cfg.port} dropbear -s -j -k -E -m -p ${toString cfg.port} ${optionalString (cfg.hostRSAKey == null && cfg.hostDSSKey == null && cfg.hostECDSAKey == null) "-R"}
''; '';
boot.initrd.secrets = boot.initrd.secrets =

View File

@ -1,35 +1,132 @@
{ config, lib, pkgs, ... }: { config, lib, pkgs, utils, ... }:
with lib; with lib;
let let
inInitrd = any (fs: fs == "btrfs") config.boot.initrd.supportedFilesystems; inInitrd = any (fs: fs == "btrfs") config.boot.initrd.supportedFilesystems;
inSystem = any (fs: fs == "btrfs") config.boot.supportedFilesystems;
cfgScrub = config.services.btrfs.autoScrub;
enableAutoScrub = cfgScrub.enable;
enableBtrfs = inInitrd || inSystem || enableAutoScrub;
in in
{ {
config = mkIf (any (fs: fs == "btrfs") config.boot.supportedFilesystems) { options = {
# One could also do regular btrfs balances, but that shouldn't be necessary
# during normal usage and as long as the filesystems aren't filled near capacity
services.btrfs.autoScrub = {
enable = mkEnableOption "Enable regular btrfs scrub";
system.fsPackages = [ pkgs.btrfs-progs ]; fileSystems = mkOption {
type = types.listOf types.path;
example = [ "/" ];
description = ''
List of paths to btrfs filesystems to regularily call <command>btrfs scrub</command> on.
Defaults to all mount points with btrfs filesystems.
If you mount a filesystem multiple times or additionally mount subvolumes,
you need to manually specify this list to avoid scrubbing multiple times.
'';
};
boot.initrd.kernelModules = mkIf inInitrd [ "btrfs" "crc32c" ]; interval = mkOption {
default = "monthly";
type = types.str;
example = "weekly";
description = ''
Systemd calendar expression for when to scrub btrfs filesystems.
The recommended period is a month but could be less
(<citerefentry><refentrytitle>btrfs-scrub</refentrytitle>
<manvolnum>8</manvolnum></citerefentry>).
See
<citerefentry><refentrytitle>systemd.time</refentrytitle>
<manvolnum>7</manvolnum></citerefentry>
for more information on the syntax.
'';
};
boot.initrd.extraUtilsCommands = mkIf inInitrd };
};
config = mkMerge [
(mkIf enableBtrfs {
system.fsPackages = [ pkgs.btrfs-progs ];
boot.initrd.kernelModules = mkIf inInitrd [ "btrfs" "crc32c" ];
boot.initrd.extraUtilsCommands = mkIf inInitrd
'' ''
copy_bin_and_libs ${pkgs.btrfs-progs}/bin/btrfs copy_bin_and_libs ${pkgs.btrfs-progs}/bin/btrfs
ln -sv btrfs $out/bin/btrfsck ln -sv btrfs $out/bin/btrfsck
ln -sv btrfsck $out/bin/fsck.btrfs ln -sv btrfsck $out/bin/fsck.btrfs
''; '';
boot.initrd.extraUtilsCommandsTest = mkIf inInitrd boot.initrd.extraUtilsCommandsTest = mkIf inInitrd
'' ''
$out/bin/btrfs --version $out/bin/btrfs --version
''; '';
boot.initrd.postDeviceCommands = mkIf inInitrd boot.initrd.postDeviceCommands = mkIf inInitrd
'' ''
btrfs device scan btrfs device scan
''; '';
}; })
(mkIf enableAutoScrub {
assertions = [
{
assertion = cfgScrub.enable -> (cfgScrub.fileSystems != []);
message = ''
If 'services.btrfs.autoScrub' is enabled, you need to have at least one
btrfs file system mounted via 'fileSystems' or specify a list manually
in 'services.btrfs.autoScrub.fileSystems'.
'';
}
];
# This will yield duplicated units if the user mounts a filesystem multiple times
# or additionally mounts subvolumes, but going the other way around via devices would
# yield duplicated units when a filesystem spans multiple devices.
# This way around seems like the more sensible default.
services.btrfs.autoScrub.fileSystems = mkDefault (mapAttrsToList (name: fs: fs.mountPoint)
(filterAttrs (name: fs: fs.fsType == "btrfs") config.fileSystems));
# TODO: Did not manage to do it via the usual btrfs-scrub@.timer/.service
# template units due to problems enabling the parameterized units,
# so settled with many units and templating via nix for now.
# https://github.com/NixOS/nixpkgs/pull/32496#discussion_r156527544
systemd.timers = let
scrubTimer = fs: let
fs' = utils.escapeSystemdPath fs;
in nameValuePair "btrfs-scrub-${fs'}" {
description = "regular btrfs scrub timer on ${fs}";
wantedBy = [ "timers.target" ];
timerConfig = {
OnCalendar = cfgScrub.interval;
AccuracySec = "1d";
Persistent = true;
};
};
in listToAttrs (map scrubTimer cfgScrub.fileSystems);
systemd.services = let
scrubService = fs: let
fs' = utils.escapeSystemdPath fs;
in nameValuePair "btrfs-scrub-${fs'}" {
description = "btrfs scrub on ${fs}";
serviceConfig = {
Type = "oneshot";
Nice = 19;
IOSchedulingClass = "idle";
ExecStart = "${pkgs.btrfs-progs}/bin/btrfs scrub start -B ${fs}";
};
};
in listToAttrs (map scrubService cfgScrub.fileSystems);
})
];
} }

View File

@ -4,13 +4,13 @@ automake, pkgconfig, lv2, fftw, cmake, xorg, libjack2, libsamplerate, libsndfile
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
repo = "rkrlv2"; repo = "rkrlv2";
name = "${repo}-b1.0"; name = "${repo}-b2.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "ssj71"; owner = "ssj71";
inherit repo; inherit repo;
rev = "a315f5aefe63be7e34663596b8b050410a9b7e72"; rev = "beta_2";
sha256 = "0kr3rvq7n1bh47qryyarcpiibms601qd8l1vypmm61969l4d4bn8"; sha256 = "128jcilbrd1l65c01w2bazsb21x78mng0jjkhi3x9crf1n9qbh2m";
}; };
nativeBuildInputs = [ pkgconfig ]; nativeBuildInputs = [ pkgconfig ];

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, alsaLib, boost, cairo, cmake, fftwSinglePrec, fltk { stdenv, fetchurl, alsaLib, boost, cairo, cmake, fftwSinglePrec, fltk, pcre
, libjack2, libsndfile, libXdmcp, readline, lv2, mesa, minixml, pkgconfig, zlib, xorg , libjack2, libsndfile, libXdmcp, readline, lv2, mesa, minixml, pkgconfig, zlib, xorg
}: }:
@ -6,22 +6,23 @@ assert stdenv ? glibc;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "yoshimi-${version}"; name = "yoshimi-${version}";
version = "1.5.4.1"; version = "1.5.5";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/yoshimi/${name}.tar.bz2"; url = "mirror://sourceforge/yoshimi/${name}.tar.bz2";
sha256 = "1r5mgjlxyabm3nd3vcnfwywk46531vy2j3k8pjbfwadjkvp52vj6"; sha256 = "0h71x9742bswifwll7bma1fz648fd5xd0yfp7byvsczy6zhjz5pf";
}; };
buildInputs = [ buildInputs = [
alsaLib boost cairo fftwSinglePrec fltk libjack2 libsndfile libXdmcp readline lv2 mesa alsaLib boost cairo fftwSinglePrec fltk libjack2 libsndfile libXdmcp readline lv2 mesa
minixml zlib xorg.libpthreadstubs minixml zlib xorg.libpthreadstubs pcre
]; ];
nativeBuildInputs = [ cmake pkgconfig ]; nativeBuildInputs = [ cmake pkgconfig ];
patchPhase = '' patchPhase = ''
sed -i -e 's,/usr/share,'$out/share,g src/Misc/Config.cpp src/Misc/Bank.cpp substituteInPlace src/Misc/Config.cpp --replace /usr $out
substituteInPlace src/Misc/Bank.cpp --replace /usr $out
''; '';
preConfigure = "cd src"; preConfigure = "cd src";

View File

@ -4,16 +4,20 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "zynaddsubfx-${version}"; name = "zynaddsubfx-${version}";
version = "3.0.2"; version = "3.0.3";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/zynaddsubfx/zynaddsubfx-${version}.tar.bz2"; url = "mirror://sourceforge/zynaddsubfx/zynaddsubfx-${version}.tar.bz2";
sha256 = "09mr23lqc51r7gskry5b7hk84pghdpgn1s4vnrzvx7xpa21gvplm"; sha256 = "1hfpiqdm337gl4ynkmmp2qss2m5z8mzqzjrbiyg6w1v4js7l9phi";
}; };
buildInputs = [ alsaLib cairo libjack2 fftw fltk13 lash libjpeg libXpm minixml ntk zlib liblo ]; buildInputs = [ alsaLib cairo libjack2 fftw fltk13 lash libjpeg libXpm minixml ntk zlib liblo ];
nativeBuildInputs = [ cmake pkgconfig ]; nativeBuildInputs = [ cmake pkgconfig ];
patchPhase = ''
substituteInPlace src/Misc/Config.cpp --replace /usr $out
'';
hardeningDisable = [ "format" ]; hardeningDisable = [ "format" ];
meta = with stdenv.lib; { meta = with stdenv.lib; {

View File

@ -1,6 +1,7 @@
{ stdenv, fetchurl, lightdm, pkgconfig, intltool { stdenv, fetchurl, lightdm, pkgconfig, intltool
, hicolor_icon_theme, makeWrapper , hicolor_icon_theme, makeWrapper
, useGTK2 ? false, gtk2, gtk3 # gtk3 seems better supported , useGTK2 ? false, gtk2, gtk3 # gtk3 seems better supported
, exo
}: }:
#ToDo: bad icons with gtk2; #ToDo: bad icons with gtk2;
@ -8,26 +9,18 @@
let let
ver_branch = "2.0"; ver_branch = "2.0";
version = "2.0.1"; version = "2.0.3";
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "lightdm-gtk-greeter-${version}"; name = "lightdm-gtk-greeter-${version}";
src = fetchurl { src = fetchurl {
url = "${meta.homepage}/${ver_branch}/${version}/+download/${name}.tar.gz"; url = "${meta.homepage}/${ver_branch}/${version}/+download/${name}.tar.gz";
sha256 = "031iv7zrpv27zsvahvfyrm75zdrh7591db56q89k8cjiiy600r1j"; sha256 = "0c6v2myzqj8nzpcqyvbab7c66kwgcshw2chn5r6dhm7xrx19bcrx";
}; };
patches = [
(fetchurl {
name = "lightdm-gtk-greeter-2.0.1-lightdm-1.19.patch";
url = "https://588764.bugs.gentoo.org/attachment.cgi?id=442616";
sha256 = "0r383kjkvq9yanjc1lk878xc5g8993pjgxylqhhjb5rkpi1mbfsv";
})
];
nativeBuildInputs = [ pkgconfig ]; nativeBuildInputs = [ pkgconfig ];
buildInputs = [ lightdm intltool makeWrapper ] buildInputs = [ lightdm exo intltool makeWrapper ]
++ (if useGTK2 then [ gtk2 ] else [ gtk3 ]); ++ (if useGTK2 then [ gtk2 ] else [ gtk3 ]);
configureFlags = [ configureFlags = [

View File

@ -1,6 +1,6 @@
{ stdenv, lib, zlib, glib, alsaLib, dbus, gtk2, atk, pango, freetype, fontconfig { stdenv, lib, zlib, glib, alsaLib, dbus, gtk2, atk, pango, freetype, fontconfig
, libgnome_keyring3, gdk_pixbuf, gvfs, cairo, cups, expat, libgpgerror, nspr , libgnome_keyring3, gdk_pixbuf, gvfs, cairo, cups, expat, libgpgerror, nspr
, gconf, nss, xorg, libcap, systemd, libnotify , gconf, nss, xorg, libcap, systemd, libnotify, libsecret
}: }:
let let
@ -10,7 +10,7 @@ let
xorg.libXrender xorg.libX11 xorg.libXext xorg.libXdamage xorg.libXtst xorg.libXrender xorg.libX11 xorg.libXext xorg.libXdamage xorg.libXtst
xorg.libXcomposite xorg.libXi xorg.libXfixes xorg.libXrandr xorg.libXcomposite xorg.libXi xorg.libXfixes xorg.libXrandr
xorg.libXcursor xorg.libxkbfile xorg.libXScrnSaver libcap systemd libnotify xorg.libXcursor xorg.libxkbfile xorg.libXScrnSaver libcap systemd libnotify
xorg.libxcb xorg.libxcb libsecret
]; ];
libPathNative = lib.makeLibraryPath packages; libPathNative = lib.makeLibraryPath packages;

View File

@ -36,9 +36,19 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true; enableParallelBuilding = true;
patches = patches = [
[ ./clean-env.patch ] ./clean-env.patch
++ lib.optional stdenv.isDarwin ./at-fdcwd.patch; ] ++ lib.optionals stdenv.isDarwin [
./at-fdcwd.patch
# Backport of the fix to
# https://lists.gnu.org/archive/html/bug-gnu-emacs/2017-04/msg00201.html
# Should be removed when switching to Emacs 26.1
(fetchurl {
url = "https://gist.githubusercontent.com/aaronjensen/f45894ddf431ecbff78b1bcf533d3e6b/raw/6a5cd7f57341aba673234348d8b0d2e776f86719/Emacs-25-OS-X-use-vfork.patch";
sha256 = "1nlsxiaynswqhy99jf4mw9x0sndhwcrwy8713kq1l3xqv9dbrzgj";
})
];
nativeBuildInputs = [ pkgconfig ] nativeBuildInputs = [ pkgconfig ]
++ lib.optionals srcRepo [ autoconf automake texinfo ] ++ lib.optionals srcRepo [ autoconf automake texinfo ]

View File

@ -9,6 +9,7 @@
, withPyGUI ? false , withPyGUI ? false
, vimAlias ? false , vimAlias ? false
, viAlias ? false
, configure ? null , configure ? null
}: }:
@ -174,7 +175,9 @@ let
}; };
}; };
in if (vimAlias == false && configure == null) then neovim else stdenv.mkDerivation { in if (vimAlias == false && viAlias == false && configure == null)
then neovim
else stdenv.mkDerivation {
name = "neovim-${neovim.version}-configured"; name = "neovim-${neovim.version}-configured";
inherit (neovim) version meta; inherit (neovim) version meta;
@ -187,6 +190,8 @@ in if (vimAlias == false && configure == null) then neovim else stdenv.mkDerivat
done done
'' + optionalString vimAlias '' '' + optionalString vimAlias ''
ln -s $out/bin/nvim $out/bin/vim ln -s $out/bin/nvim $out/bin/vim
'' + optionalString viAlias ''
ln -s $out/bin/nvim $out/bin/vi
'' + optionalString (configure != null) '' '' + optionalString (configure != null) ''
wrapProgram $out/bin/nvim --add-flags "-u ${vimUtils.vimrcFile configure}" wrapProgram $out/bin/nvim --add-flags "-u ${vimUtils.vimrcFile configure}"
''; '';

View File

@ -2,7 +2,7 @@
makeWrapper, libXScrnSaver, libxkbfile, libsecret }: makeWrapper, libXScrnSaver, libxkbfile, libsecret }:
let let
version = "1.18.1"; version = "1.19.0";
channel = "stable"; channel = "stable";
plat = { plat = {
@ -12,9 +12,9 @@ let
}.${stdenv.system}; }.${stdenv.system};
sha256 = { sha256 = {
"i686-linux" = "13gs0spqkbxw4i3a0b060v5bi68zfkp3i8vqk41i0fkbshnc7c7i"; "i686-linux" = "036mdmma3b7iwinq1g6pxsn8vwx977hmjy3b4b0m84023phwm2x7";
"x86_64-linux" = "0h7nfyrn4ybm9p1czjb48p3cd3970hpyn6pj8l4ir1hqygcq6dwi"; "x86_64-linux" = "089j9plq96d2px56gh1q4m9dhclb5xy0ca4b97rnnpdw93hhx94n";
"x86_64-darwin" = "093k8s2msi0xz11wy2yf1rppwkx6kv5psgii4w44l59ji8qgpamk"; "x86_64-darwin" = "1q37bak2m966kfa5a87nzalnpa205gkjvb4zf1klmqipwqq4wm4d";
}.${stdenv.system}; }.${stdenv.system};
archive_fmt = if stdenv.system == "x86_64-darwin" then "zip" else "tar.gz"; archive_fmt = if stdenv.system == "x86_64-darwin" then "zip" else "tar.gz";

View File

@ -15,10 +15,14 @@ in
sha256 = "04kx2p461sqd4q354n1a99zcabg9h29dwcnyhakykq8bpg3mgf1x"; sha256 = "04kx2p461sqd4q354n1a99zcabg9h29dwcnyhakykq8bpg3mgf1x";
}; };
postPatch = ''
substituteInPlace airspy-tools/CMakeLists.txt --replace "/etc/udev/rules.d" "$out/etc/udev/rules.d"
'';
nativeBuildInputs = [ cmake pkgconfig ]; nativeBuildInputs = [ cmake pkgconfig ];
buildInputs = [ libusb ]; buildInputs = [ libusb ];
cmakeFlags = [ "-DINSTALL_UDEV_RULES=OFF" ]; cmakeFlags = [ "-DINSTALL_UDEV_RULES=ON" ];
meta = with stdenv.lib; { meta = with stdenv.lib; {
homepage = http://github.com/airspy/airspyone_host; homepage = http://github.com/airspy/airspyone_host;

View File

@ -0,0 +1,100 @@
{ stdenv, lib, fetchurl, makeDesktopItem, makeWrapper
, alsaLib, atk, cairo, cups, curl, dbus, expat, ffmpeg, fontconfig, freetype
, gdk_pixbuf, glib, glibc, gnome2, gtk2, libX11, libXScrnSaver, libXcomposite
, libXcursor, libXdamage, libXext, libXfixes, libXi, libXrandr, libXrender
, libXtst, libopus, libpulseaudio, libxcb, nspr, nss, pango, udev, x264
}:
let libPath = lib.makeLibraryPath [
alsaLib
atk
cairo
cups
curl
dbus
expat
ffmpeg
fontconfig
freetype
gdk_pixbuf
glib
glibc
gnome2.GConf
gtk2
libopus
nspr
nss
pango
stdenv.cc.cc
udev
x264
libX11
libXScrnSaver
libXcomposite
libXcursor
libXdamage
libXext
libXfixes
libXi
libXrandr
libXrender
libXtst
libpulseaudio
libxcb
];
in stdenv.mkDerivation rec {
pname = "airtame";
version = "3.0.1";
name = "${pname}-${version}";
longName = "${pname}-application";
src = fetchurl {
url = "https://downloads.airtame.com/application/ga/lin_x64/releases/${longName}-${version}.tar.gz";
sha256 = "1z5v9dwcvcmz190acm89kr4mngirha1v2jpvfzvisi0vidl2ba60";
};
nativeBuildInputs = [ makeWrapper ];
desktopItem = makeDesktopItem rec {
name = "airtame";
exec = longName;
comment = "Airtame Streaming Client";
desktopName = "Airtame";
icon = name;
genericName = comment;
categories = "Application;Network;";
};
installPhase = ''
opt="$out/opt/airtame"
mkdir -p "$opt"
cp -R . "$opt"
mkdir -p "$out/bin"
ln -s "$opt/${longName}" "$out/bin/"
mkdir -p "$out/share"
cp -r "${desktopItem}/share/applications" "$out/share/"
mkdir -p "$out/share/icons"
ln -s "$opt/icon.png" "$out/share/icons/airtame.png"
# Flags and rpath are copied from launch-airtame.sh.
interp="$(< $NIX_CC/nix-support/dynamic-linker)"
vendorlib="$opt/resources/app.asar.unpacked/streamer/vendor/airtame-core/lib"
rpath="${libPath}:$opt:$vendorlib:$opt/resources/app.asar.unpacked/encryption/out/lib"
rm $vendorlib/libcurl.so*
find "$opt" \( -type f -executable -o -name "*.so" -o -name "*.so.*" \) \
-exec patchelf --set-rpath "$rpath" {} \;
# The main binary also needs libudev which was removed by --shrink-rpath.
patchelf --set-interpreter "$interp" $opt/${longName}
wrapProgram $opt/${longName} --add-flags "--disable-gpu --enable-transparent-visuals"
'';
dontPatchELF = true;
meta = with stdenv.lib; {
homepage = https://airtame.com/download;
description = "Wireless streaming client for Airtame devices";
license = licenses.unfree;
maintainers = with maintainers; [ thanegill ];
platforms = platforms.linux;
};
}

View File

@ -1,15 +1,15 @@
{ mkDerivation, lib, fetchFromGitHub, makeWrapper, qtbase, qtdeclarative, qtsvg, qtx11extras, muparser, { mkDerivation, lib, fetchFromGitHub, makeWrapper, qtbase,
cmake, python3 }: qtdeclarative, qtsvg, qtx11extras, muparser, cmake, python3 }:
mkDerivation rec { mkDerivation rec {
name = "albert-${version}"; name = "albert-${version}";
version = "0.14.7"; version = "0.14.14";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "albertlauncher"; owner = "albertlauncher";
repo = "albert"; repo = "albert";
rev = "v${version}"; rev = "v${version}";
sha256 = "1ryjrbrbgignhkvsv4021l4am8ml7g8v4bs5cp5jj288k4p2rf4n"; sha256 = "1skh709f4y4p0vqabvvysn6fgws2yq8izbwkib7rfjc357chhmi7";
fetchSubmodules = true; fetchSubmodules = true;
}; };

View File

@ -1,24 +1,31 @@
{ stdenv, fetchurl, python2Packages }: { stdenv, fetchurl, python3Packages, qtbase }:
python2Packages.buildPythonApplication rec { let
version = "2.9.4";
python = python3Packages.python;
in
python3Packages.buildPythonApplication rec {
version = "3.0";
name = "electron-cash-${version}"; name = "electron-cash-${version}";
src = fetchurl { src = fetchurl {
url = "https://electroncash.org/downloads/${version}/win-linux/Electron-Cash-${version}.tar.gz"; url = "https://electroncash.org/downloads/${version}/win-linux/ElectronCash-${version}.tar.gz";
# Verified using official SHA-1 and signature from # Verified using official SHA-1 and signature from
# https://github.com/fyookball/keys-n-hashes # https://github.com/fyookball/keys-n-hashes
sha256 = "1y8mzwa6bb8zj4l92wm4c2icnr42wmhbfz6z5ymh356gwll914vh"; sha256 = "f0e2bf5c6d29da714eddd50b45761fea9fc905a0172c7b92df8fca7427439f1a";
}; };
propagatedBuildInputs = with python2Packages; [ propagatedBuildInputs = with python3Packages; [
dnspython dnspython
ecdsa ecdsa
jsonrpclib jsonrpclib-pelix
matplotlib
pbkdf2 pbkdf2
pyaes pyaes
pycrypto pycrypto
pyqt4 pyqt5
pysocks pysocks
qrcode qrcode
requests requests
@ -31,16 +38,18 @@ python2Packages.buildPythonApplication rec {
preBuild = '' preBuild = ''
sed -i 's,usr_share = .*,usr_share = "'$out'/share",g' setup.py sed -i 's,usr_share = .*,usr_share = "'$out'/share",g' setup.py
pyrcc4 icons.qrc -o gui/qt/icons_rc.py pyrcc5 icons.qrc -o gui/qt/icons_rc.py
# Recording the creation timestamps introduces indeterminism to the build # Recording the creation timestamps introduces indeterminism to the build
sed -i '/Created: .*/d' gui/qt/icons_rc.py sed -i '/Created: .*/d' gui/qt/icons_rc.py
''; '';
doCheck = false;
postInstall = '' postInstall = ''
# Despite setting usr_share above, these files are installed under # Despite setting usr_share above, these files are installed under
# $out/nix ... # $out/nix ...
mv $out/lib/python2.7/site-packages/nix/store"/"*/share $out mv $out/${python.sitePackages}/nix/store"/"*/share $out
rm -rf $out/lib/python2.7/site-packages/nix rm -rf $out/${python.sitePackages}/nix
substituteInPlace $out/share/applications/electron-cash.desktop \ substituteInPlace $out/share/applications/electron-cash.desktop \
--replace "Exec=electron-cash %u" "Exec=$out/bin/electron-cash %u" --replace "Exec=electron-cash %u" "Exec=$out/bin/electron-cash %u"

View File

@ -1,18 +1,18 @@
# This file is autogenerated from update.sh in the same directory. # This file is autogenerated from update.sh in the same directory.
{ {
beta = { beta = {
sha256 = "1bx35zj15wyviq2pp12gr0srn036av4i7bk7dap7adikzi6pbqkd"; sha256 = "1mv01q6sdvkmfyk9q834zcaq1z4s07sgfp5i107vgcbwnmwmhpgi";
sha256bin64 = "0d4bhwbnvi0sci2h6i8ysz2vi9p831khhs2a2176py5xfgxzc1jj"; sha256bin64 = "0x176ijcmn25xhn4apn3yal1xb14rz0xaiy2mjbknm011s4ysvby";
version = "63.0.3239.84"; version = "64.0.3282.24";
}; };
dev = { dev = {
sha256 = "078cj2sbs65391z5l35jmfr5n2wg63bl5b55f9r46wqxgs1b746c"; sha256 = "1mv01q6sdvkmfyk9q834zcaq1z4s07sgfp5i107vgcbwnmwmhpgi";
sha256bin64 = "1p9l9aqh8h5n1mx3ss7byxxl863lr0j241d5bds0yab2dk9gmxyn"; sha256bin64 = "15zmh4ix6822kzqcapkpjzsjkd4yaw45jgddh5gdv65j65a6fhlq";
version = "64.0.3278.0"; version = "64.0.3282.24";
}; };
stable = { stable = {
sha256 = "1bx35zj15wyviq2pp12gr0srn036av4i7bk7dap7adikzi6pbqkd"; sha256 = "0aqsqd2s4hj3lci7wa7bss4wy4sv889f0z4va7fqp9sd36c0gn27";
sha256bin64 = "0rdcq63ppd5pyj6iwlalxr93iyls9pkr5jifsjyf14p79li297zx"; sha256bin64 = "188wxkagihq77aaikkdiq923bbx7a0np73skhrfd4y38lygirry9";
version = "63.0.3239.84"; version = "63.0.3239.108";
}; };
} }

View File

@ -3,7 +3,7 @@
## various stuff that can be plugged in ## various stuff that can be plugged in
, flashplayer, hal-flash , flashplayer, hal-flash
, MPlayerPlugin, ffmpeg, gst_all, xorg, libpulseaudio, libcanberra_gtk2 , MPlayerPlugin, ffmpeg, gst_all, xorg, libpulseaudio, libcanberra_gtk2
, supportsJDK, jrePlugin, icedtea_web , jrePlugin, icedtea_web
, trezor-bridge, bluejeans, djview4, adobe-reader , trezor-bridge, bluejeans, djview4, adobe-reader
, google_talk_plugin, fribid, gnome3/*.gnome_shell*/ , google_talk_plugin, fribid, gnome3/*.gnome_shell*/
, esteidfirefoxplugin , esteidfirefoxplugin
@ -36,6 +36,11 @@ let
gssSupport = browser.gssSupport or false; gssSupport = browser.gssSupport or false;
jre = cfg.jre or false; jre = cfg.jre or false;
icedtea = cfg.icedtea or false; icedtea = cfg.icedtea or false;
supportsJDK =
stdenv.system == "i686-linux" ||
stdenv.system == "x86_64-linux" ||
stdenv.system == "armv7l-linux" ||
stdenv.system == "aarch64-linux";
plugins = plugins =
assert !(jre && icedtea); assert !(jre && icedtea);

View File

@ -4,10 +4,10 @@ let
then "linux-amd64" then "linux-amd64"
else "darwin-amd64"; else "darwin-amd64";
checksum = if stdenv.isLinux checksum = if stdenv.isLinux
then "1i22givr52kgr76dd2azcg9avgh70wiw5dcpmmyychms2ynxi42y" then "9f04c4824fc751d6c932ae5b93f7336eae06e78315352aa80241066aa1d66c49"
else "0phhy3si86ilc6051zfgn8jnniy5lygf1r2gysjpcyfbrc5pw3hj"; else "5058142bcd6e16b7e01695a8f258d27ae0b6469caf227ddf6aa2181405e6aa8e";
pname = "helm"; pname = "helm";
version = "2.6.1"; version = "2.7.2";
in in
stdenv.mkDerivation { stdenv.mkDerivation {
name = "${pname}-${version}"; name = "${pname}-${version}";

View File

@ -14,7 +14,7 @@ index 1c4b5000..c9f120d4 100644
- if err != nil { - if err != nil {
- return errors.Wrap(err, "Error updating localkube from uri") - return errors.Wrap(err, "Error updating localkube from uri")
- } - }
+ localkubeFile = assets.NewBinDataAsset("out/localkube", "/", "localkube", "0777") + localkubeFile = assets.NewBinDataAsset("out/localkube", "/usr/local/bin/", "localkube", "0777")
copyableFiles = append(copyableFiles, localkubeFile) copyableFiles = append(copyableFiles, localkubeFile)
// user added files // user added files

View File

@ -4,8 +4,8 @@
{ {
owner = "terraform-providers"; owner = "terraform-providers";
repo = "terraform-provider-alicloud"; repo = "terraform-provider-alicloud";
version = "0.1.0"; version = "1.2.0";
sha256 = "199zrpmi1hqy80nrvdhh5pn7vlcvpjcsf0hpwgzb1r9vnydpz7cj"; sha256 = "0v3ji83igjf3b7lp8525j42jxwlvbxws1d7q72v20xlnbyz03h3x";
}; };
archive = archive =
{ {
@ -32,8 +32,8 @@
{ {
owner = "terraform-providers"; owner = "terraform-providers";
repo = "terraform-provider-aws"; repo = "terraform-provider-aws";
version = "1.3.1"; version = "1.5.0";
sha256 = "0vsvvw1qdjb69jilhjl5g8h7dn82n0n23k2v67dqywhinilafcmv"; sha256 = "1c1mkb3299ahf3w58zkk7ilkasflwj2n1kqgddaylqqfcjykblyj";
}; };
azure = azure =
{ {
@ -46,15 +46,15 @@
{ {
owner = "terraform-providers"; owner = "terraform-providers";
repo = "terraform-provider-azurerm"; repo = "terraform-provider-azurerm";
version = "0.3.3"; version = "1.0.0";
sha256 = "0qq10gjwka0268ylzx5r7qhj0xpjh8fxrjr1fwbiq8sp6i1jb7sa"; sha256 = "0grpc7apfn03slkkily8agl8pv6mc0j58ch8fa6jgqcqy6dbd0kh";
}; };
bitbucket = bitbucket =
{ {
owner = "terraform-providers"; owner = "terraform-providers";
repo = "terraform-provider-bitbucket"; repo = "terraform-provider-bitbucket";
version = "0.1.0"; version = "1.0.0";
sha256 = "0c5aiq0p425h7c600wg5h3601l40airwz6cs724lc72fycbb4s43"; sha256 = "0gi8p1q0y8x5y8lqihijkpqs3v152h0q7icv7ixk33xsdcvb418y";
}; };
chef = chef =
{ {
@ -116,15 +116,15 @@
{ {
owner = "terraform-providers"; owner = "terraform-providers";
repo = "terraform-provider-datadog"; repo = "terraform-provider-datadog";
version = "1.0.0"; version = "1.0.1";
sha256 = "1kabjhq7xl2mhh0gvg87a9zh8y2k0h5ghcmb86xzvx25j3jdqfg6"; sha256 = "1a5acwxqwasckkyj9h33kgn1cmnmn14x4fg19kz742zwfyjmncwj";
}; };
digitalocean = digitalocean =
{ {
owner = "terraform-providers"; owner = "terraform-providers";
repo = "terraform-provider-digitalocean"; repo = "terraform-provider-digitalocean";
version = "0.1.2"; version = "0.1.3";
sha256 = "0wn2bx9zk0fqvrn7a76rffin7f1b70p66h5bs9073szhr3zph7hg"; sha256 = "10crxciw7y2gnm8vqp007vw0k7c1a1xk2z2zsjr5rksk6qlnri4k";
}; };
dme = dme =
{ {
@ -193,8 +193,8 @@
{ {
owner = "terraform-providers"; owner = "terraform-providers";
repo = "terraform-provider-google"; repo = "terraform-provider-google";
version = "1.2.0"; version = "1.4.0";
sha256 = "1q3ypacsjc8779v1k81z0vs3kx6i340fa4mz26gscf85rx8bghim"; sha256 = "0nlm02ibp2w4m38pvmw6r29807863h23y8k00ywmkcr7yiy1zilr";
}; };
grafana = grafana =
{ {
@ -298,8 +298,8 @@
{ {
owner = "terraform-providers"; owner = "terraform-providers";
repo = "terraform-provider-nomad"; repo = "terraform-provider-nomad";
version = "1.0.0"; version = "1.1.0";
sha256 = "01fvw7yw8dhjclipnn9h1blagbp2849ahmnqj3ysh13i0x1qbq4r"; sha256 = "0n3bd9fiablhb2zxmlqnidahdqlpj3i7701vi62zds04kcgdkxw8";
}; };
ns1 = ns1 =
{ {
@ -333,8 +333,15 @@
{ {
owner = "terraform-providers"; owner = "terraform-providers";
repo = "terraform-provider-openstack"; repo = "terraform-provider-openstack";
version = "1.1.0";
sha256 = "1w747qbk24b18v6x7l4n08pxnwak395fq1grajpxf3qw6afchjdj";
};
opentelekomcloud =
{
owner = "terraform-providers";
repo = "terraform-provider-opentelekomcloud";
version = "1.0.0"; version = "1.0.0";
sha256 = "0ddy62psapajbgnf7f998cnwiyak3lnk43vj0rl230dhnma9crpm"; sha256 = "1wra9a6cjgsyvbfldvi2xnjk6y9zqv3y06pbq8c8dyjzssd5j591";
}; };
opsgenie = opsgenie =
{ {
@ -403,8 +410,8 @@
{ {
owner = "terraform-providers"; owner = "terraform-providers";
repo = "terraform-provider-random"; repo = "terraform-provider-random";
version = "1.0.0"; version = "1.1.0";
sha256 = "0im4dsnbpbc9qln92lxcrygm9d705bvlhigpx492172cq1fqnw61"; sha256 = "1mal0pg37a99q0sjqbccwc2ipwvxm8lqp93lg8i96f868hiv4yzl";
}; };
rundeck = rundeck =
{ {
@ -494,7 +501,7 @@
{ {
owner = "terraform-providers"; owner = "terraform-providers";
repo = "terraform-provider-vsphere"; repo = "terraform-provider-vsphere";
version = "0.4.2"; version = "1.1.1";
sha256 = "0k9mndxfiq5drcz2qhqasc7cqra0mfdwwwblb1m6lyg7flg7dli0"; sha256 = "1y209bwkk79ycxjl3b6c20n0z2g5d6njna85w68a0w6npk88zva9";
}; };
} }

View File

@ -71,7 +71,7 @@ fi
org=terraform-providers org=terraform-providers
repos=$(get_org_repos "$org" | grep terraform-provider- | sort) repos=$(get_org_repos "$org" | grep terraform-provider- | grep -v terraform-provider-scaffolding | sort)
# Get all the providers with index # Get all the providers with index

View File

@ -1,11 +1,13 @@
{ stdenv, fetchurl, openssl, curl, coreutils, gawk, bash, which }: { stdenv, fetchFromGitHub, openssl, curl, coreutils, gawk, bash, which }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "esniper-2.33.0"; name = "esniper-2.33.0.2017-11-06";
src = fetchurl { src = fetchFromGitHub {
url = "mirror://sourceforge/esniper/${stdenv.lib.replaceStrings ["."] ["-"] name}.tgz"; owner = "yhfudev";
sha256 = "1pck2x7mp7ip0b21v2sjvq86fz12gzw6kig4vvbrghz5xw5b3f69"; repo = "esniper";
rev = "c95140d376db3c991300a7462e6c172b0ccf3eb5";
sha256 = "1dfb5hmcrvm3yg9ask362c6s5ylxs21szw23dm737a94br37j890";
}; };
buildInputs = [ openssl curl ]; buildInputs = [ openssl curl ];

View File

@ -1,4 +1,5 @@
{ stdenv, fetchFromGitHub, fetchNodeModules, nodejs-8_x, ruby, sencha, auth0ClientID, auth0Domain }: { stdenv, fetchFromGitHub, fetchNodeModules, nodejs-8_x, ruby, sencha
, auth0ClientID, auth0Domain, disableTooltips }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "rambox-bare-${version}"; name = "rambox-bare-${version}";
@ -20,7 +21,8 @@ stdenv.mkDerivation rec {
sha256 = "1y3q8ggyvfywxqi5hn9mvr1sjfylspis43iyf4b7snyr1a1br3r4"; sha256 = "1y3q8ggyvfywxqi5hn9mvr1sjfylspis43iyf4b7snyr1a1br3r4";
}; };
patches = [ ./hide-check-for-updates.patch ./isDev.patch ]; patches = [ ./hide-check-for-updates.patch ./isDev.patch ]
++ stdenv.lib.optionals disableTooltips [ ./disable-tooltips.patch ];
configurePhase = '' configurePhase = ''
echo 'var auth0Cfg = { clientID: "${auth0ClientID}", domain: "${auth0Domain}" };' > env.js echo 'var auth0Cfg = { clientID: "${auth0ClientID}", domain: "${auth0Domain}" };' > env.js

View File

@ -1,13 +1,14 @@
{ stdenv, newScope, makeWrapper, electron, xdg_utils, makeDesktopItem { stdenv, newScope, makeWrapper, electron, xdg_utils, makeDesktopItem
, auth0ClientID ? "0spuNKfIGeLAQ_Iki9t3fGxbfJl3k8SU" , auth0ClientID ? "0spuNKfIGeLAQ_Iki9t3fGxbfJl3k8SU"
, auth0Domain ? "nixpkgs.auth0.com" }: , auth0Domain ? "nixpkgs.auth0.com"
, disableTooltips ? false }:
let let
callPackage = newScope self; callPackage = newScope self;
self = { self = {
fetchNodeModules = callPackage ./fetchNodeModules.nix {}; fetchNodeModules = callPackage ./fetchNodeModules.nix {};
rambox-bare = callPackage ./bare.nix { rambox-bare = callPackage ./bare.nix {
inherit auth0ClientID auth0Domain; inherit auth0ClientID auth0Domain disableTooltips;
}; };
sencha = callPackage ./sencha {}; sencha = callPackage ./sencha {};
}; };

View File

@ -0,0 +1,19 @@
--- index.html.orig 2017-12-16 20:06:03.401298402 +0300
+++ ./index.html 2017-12-16 20:06:21.474484436 +0300
@@ -43,14 +43,14 @@
<!--- Localization -->
<!--- Tooltip player -->
- <script type='text/javascript'>
+ <!--<script type='text/javascript'>
(function(d, s){
var t = d.createElement(s), e = d.getElementsByTagName(s)[0];
t.type = "text/javascript"; e.parentNode.insertBefore(t, e);
t.async = "async";
t.src = "https://cdn.tooltip.io/static/player.js?apiKey=sEF8shc4KSuqtHMx0ztmTFdcrQO0cAVpszZ9Y8hLfQ2";
})(document, "script");
- </script>
+ </script>-->
<!--- Tooltip player -->
</head>
<body>

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name= "riot-web-${version}"; name= "riot-web-${version}";
version = "0.13.1"; version = "0.13.3";
src = fetchurl { src = fetchurl {
url = "https://github.com/vector-im/riot-web/releases/download/v${version}/riot-v${version}.tar.gz"; url = "https://github.com/vector-im/riot-web/releases/download/v${version}/riot-v${version}.tar.gz";
sha256 = "19g0d3wqmz4vj9flf7pfgfvm2qf2w3jhxp9qdyfbiwd670h5wjlv"; sha256 = "0acim3kad6lv5ni4blg75phb3njyk9s5h6x7fsn151h1pvsc5mmw";
}; };
installPhase = '' installPhase = ''

View File

@ -27,11 +27,11 @@ with stdenv.lib;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "mutt-${version}"; name = "mutt-${version}";
version = "1.9.1"; version = "1.9.2";
src = fetchurl { src = fetchurl {
url = "http://ftp.mutt.org/pub/mutt/${name}.tar.gz"; url = "http://ftp.mutt.org/pub/mutt/${name}.tar.gz";
sha256 = "1c8vv4anl555a03pbnwf8wnf0d8pcnd4p35y3q8f5ikkcflq76vl"; sha256 = "15kqxpx8bykqbyw4q33hkz0j2f65v6cl21sl5li2vw5vaaim5qd2";
}; };
patches = optional smimeSupport (fetchpatch { patches = optional smimeSupport (fetchpatch {

View File

@ -6,13 +6,13 @@
let let
pname = "liferea"; pname = "liferea";
version = "1.12-rc3"; version = "1.12.0";
in stdenv.mkDerivation rec { in stdenv.mkDerivation rec {
name = "${pname}-${version}"; name = "${pname}-${version}";
src = fetchurl { src = fetchurl {
url = "https://github.com/lwindolf/${pname}/releases/download/v${version}/${name}.tar.bz2"; url = "https://github.com/lwindolf/${pname}/releases/download/v${version}/${name}.tar.bz2";
sha256 = "0dd6hisqvc4ps6dx9ly34qx49ab1qa5h826b7dvf64mjqxa2v3kr"; sha256 = "02qzg85l2vrja2qwzdbrfa4z1lp5p6lp528bv74abmxz5wlpif70";
}; };
nativeBuildInputs = [ wrapGAppsHook python3Packages.wrapPython intltool pkgconfig ]; nativeBuildInputs = [ wrapGAppsHook python3Packages.wrapPython intltool pkgconfig ];

View File

@ -0,0 +1,54 @@
{ wxGTK, lib, stdenv, fetchFromGitHub, cmake, mesa, zlib
, libX11, gettext, glew, glm, cairo, curl, openssl, boost, pkgconfig
, doxygen, pcre, libpthreadstubs, libXdmcp
, oceSupport ? true, opencascade_oce
, ngspiceSupport ? true, ngspice
, scriptingSupport ? true, swig, python, wxPython
}:
with lib;
stdenv.mkDerivation rec {
name = "kicad-unstable-${version}";
version = "2017-12-11";
src = fetchFromGitHub {
owner = "KICad";
repo = "kicad-source-mirror";
rev = "1955f252265c38a313f6c595d6c4c637f38fd316";
sha256 = "15cc81h7nh5dk6gj6mc4ylcgdznfriilhb43n1g3xwyq3s8iaibz";
};
postPatch = ''
substituteInPlace CMakeModules/KiCadVersion.cmake \
--replace no-vcs-found ${version}
'';
cmakeFlags =
optionals (oceSupport) [ "-DKICAD_USE_OCE=ON" "-DOCE_DIR=${opencascade_oce}" ]
++ optional (ngspiceSupport) "-DKICAD_SPICE=ON"
++ optionals (scriptingSupport) [
"-DKICAD_SCRIPTING=ON"
"-DKICAD_SCRIPTING_MODULES=ON"
"-DKICAD_SCRIPTING_WXPYTHON=ON"
# nix installs wxPython headers in wxPython package, not in wxwidget
# as assumed. We explicitely set the header location.
"-DCMAKE_CXX_FLAGS=-I${wxPython}/include/wx-3.0"
];
nativeBuildInputs = [ cmake doxygen pkgconfig ];
buildInputs = [
mesa zlib libX11 wxGTK pcre libXdmcp gettext glew glm libpthreadstubs
cairo curl openssl boost
] ++ optional (oceSupport) opencascade_oce
++ optional (ngspiceSupport) ngspice
++ optionals (scriptingSupport) [ swig python wxPython ];
meta = {
description = "Free Software EDA Suite, Nightly Development Build";
homepage = http://www.kicad-pcb.org/;
license = licenses.gpl2;
maintainers = with maintainers; [ berce ];
platforms = with platforms; linux;
};
}

View File

@ -21,7 +21,7 @@ stdenv.mkDerivation {
}; };
buildInputs = with ocamlPackages; [ buildInputs = with ocamlPackages; [
ocaml findlib camlp4 ansiterminal biniou bolt ocaml_cairo2 dypgen easy-format ocf yojson ocaml findlib camlp4 ansiterminal biniou bolt cairo2 dypgen easy-format ocf yojson
]; ];
patches = [ ./install-emacs-to-site-lisp.patch patches = [ ./install-emacs-to-site-lisp.patch

View File

@ -21,6 +21,7 @@ let
"8.6.1" = "0llrxcxwy5j87vbbjnisw42rfw1n1pm5602ssx64xaxx3k176g6l"; "8.6.1" = "0llrxcxwy5j87vbbjnisw42rfw1n1pm5602ssx64xaxx3k176g6l";
"8.7+beta2" = "1r274m44z774xigvj43g211ms9z9bwgyp1g43rvq4fswb3gzxc4b"; "8.7+beta2" = "1r274m44z774xigvj43g211ms9z9bwgyp1g43rvq4fswb3gzxc4b";
"8.7.0" = "1h18b7xpnx3ix9vsi5fx4zdcbxy7bhra7gd5c5yzxmk53cgf1p9m"; "8.7.0" = "1h18b7xpnx3ix9vsi5fx4zdcbxy7bhra7gd5c5yzxmk53cgf1p9m";
"8.7.1" = "0gjn59jkbxwrihk8fx9d823wjyjh5m9gvj9l31nv6z6bcqhgdqi8";
}."${version}"; }."${version}";
coq-version = builtins.substring 0 3 version; coq-version = builtins.substring 0 3 version;
camlp5 = ocamlPackages.camlp5_strict; camlp5 = ocamlPackages.camlp5_strict;

View File

@ -0,0 +1,40 @@
{ stdenv, fetchFromGitHub }:
stdenv.mkDerivation rec {
name = "drat-trim-2017-08-31";
src = fetchFromGitHub {
owner = "marijnheule";
repo = "drat-trim";
rev = "37ac8f874826ffa3500a00698910e137498defac";
sha256 = "1m9q47dfnvdli1z3kb1jvvbm0dgaw725k1aw6h9w00bggqb91bqh";
};
postPatch = ''
substituteInPlace Makefile --replace gcc cc
'';
installPhase = ''
install -Dt $out/bin drat-trim
'';
meta = with stdenv.lib; {
description = "A proof checker for unSAT proofs";
longDescription = ''
DRAT-trim is a satisfiability proof checking and trimming
utility designed to validate proofs for all known satisfiability
solving and preprocessing techniques. DRAT-trim can also emit
trimmed formulas, optimized proofs, and TraceCheck+ dependency
graphs.
DRAT-trim has been used as part of the judging process in the
annual SAT Competition in recent years, in order to check
competing SAT solvers' work when they claim that a SAT instance
is unsatisfiable.
'';
homepage = https://www.cs.utexas.edu/~marijn/drat-trim/;
license = licenses.mit;
maintainers = with maintainers; [ kini ];
platforms = platforms.all;
};
}

View File

@ -7,13 +7,13 @@ with stdenv.lib;
buildGoPackage rec { buildGoPackage rec {
name = "gitea-${version}"; name = "gitea-${version}";
version = "1.2.3"; version = "1.3.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "go-gitea"; owner = "go-gitea";
repo = "gitea"; repo = "gitea";
rev = "v${version}"; rev = "v${version}";
sha256 = "0v24q14xzmqgwk10m7rqyn6pahd630v3bnc646ij4w8fbgr8hzja"; sha256 = "11gzb6x8zixmkm57x8hdncmdbbvppzld3yf7p7m0abigg8zyybsj";
}; };
patches = [ ./static-root-path.patch ]; patches = [ ./static-root-path.patch ];

View File

@ -2,12 +2,12 @@ diff --git i/modules/setting/setting.go w/modules/setting/setting.go
index aafe2d1b..1e4a8064 100644 index aafe2d1b..1e4a8064 100644
--- i/modules/setting/setting.go --- i/modules/setting/setting.go
+++ w/modules/setting/setting.go +++ w/modules/setting/setting.go
@@ -683,7 +683,7 @@ func NewContext() { @@ -730,7 +730,7 @@ func NewContext() {
LocalURL = sec.Key("LOCAL_ROOT_URL").MustString(defaultLocalURL) LocalURL = sec.Key("LOCAL_ROOT_URL").MustString(defaultLocalURL)
OfflineMode = sec.Key("OFFLINE_MODE").MustBool() OfflineMode = sec.Key("OFFLINE_MODE").MustBool()
DisableRouterLog = sec.Key("DISABLE_ROUTER_LOG").MustBool() DisableRouterLog = sec.Key("DISABLE_ROUTER_LOG").MustBool()
- StaticRootPath = sec.Key("STATIC_ROOT_PATH").MustString(workDir) - StaticRootPath = sec.Key("STATIC_ROOT_PATH").MustString(AppWorkPath)
+ StaticRootPath = sec.Key("STATIC_ROOT_PATH").MustString("@data@") + StaticRootPath = sec.Key("STATIC_ROOT_PATH").MustString("@data@")
AppDataPath = sec.Key("APP_DATA_PATH").MustString("data") AppDataPath = sec.Key("APP_DATA_PATH").MustString(path.Join(AppWorkPath, "data"))
EnableGzip = sec.Key("ENABLE_GZIP").MustBool() EnableGzip = sec.Key("ENABLE_GZIP").MustBool()
EnablePprof = sec.Key("ENABLE_PPROF").MustBool(false) EnablePprof = sec.Key("ENABLE_PPROF").MustBool(false)

View File

@ -70,7 +70,7 @@ in stdenv.mkDerivation rec {
postInstall = '' postInstall = ''
wrapProgram $out/bin/obs \ wrapProgram $out/bin/obs \
--prefix "LD_LIBRARY_PATH" : "${xorg.libX11.out}/lib" --prefix "LD_LIBRARY_PATH" : "${xorg.libX11.out}/lib:${vlc}/lib"
''; '';
meta = with stdenv.lib; { meta = with stdenv.lib; {

View File

@ -18,8 +18,8 @@
with stdenv.lib; with stdenv.lib;
let let
version = "2.10.1"; version = "2.11.0";
sha256 = "1a3bjr0ygx4r2qd4nx5jf77jhh4xis3zga27lfryn0b4ap3hn14f"; sha256 = "1jvzw6rdhimn583dz6an8xiw07n3ycvxmj3jpv1s312scv3k9w64";
audio = optionalString (hasSuffix "linux" stdenv.system) "alsa," audio = optionalString (hasSuffix "linux" stdenv.system) "alsa,"
+ optionalString pulseSupport "pa," + optionalString pulseSupport "pa,"
+ optionalString sdlSupport "sdl,"; + optionalString sdlSupport "sdl,";
@ -62,16 +62,7 @@ stdenv.mkDerivation rec {
patches = [ ./no-etc-install.patch ] patches = [ ./no-etc-install.patch ]
++ optional nixosTestRunner ./force-uid0-on-9p.patch ++ optional nixosTestRunner ./force-uid0-on-9p.patch
++ optional pulseSupport ./fix-hda-recording.patch ++ optional pulseSupport ./fix-hda-recording.patch;
++ [ (fetchpatch {
name = "qemu-CVE-2017-15118.patch";
url = "http://git.qemu.org/?p=qemu.git;a=patch;h=51ae4f8455c9e32c54770c4ebc25bf86a8128183";
sha256 = "0f9i096dz3h1i8g92y99vak23rjs1shf7prlcxqizsz0fah7wx7h"; })
(fetchpatch {
name = "qemu-CVE-2017-17381.patch";
url = "https://git.kernel.org/pub/scm/virt/kvm/mst/qemu.git/patch/?id=758ead31c7e17bf17a9ef2e0ca1c3e86ab296b43";
sha256 = "17yw4bqsbywdrbmrikr94yjnfsg853bf4i3k4y3k169387da2yc5"; })
];
hardeningDisable = [ "stackprotector" ]; hardeningDisable = [ "stackprotector" ];

View File

@ -44,7 +44,7 @@ let
# The wrapper scripts use 'cat' and 'grep', so we may need coreutils. # The wrapper scripts use 'cat' and 'grep', so we may need coreutils.
coreutils_bin = if nativeTools then "" else getBin coreutils; coreutils_bin = if nativeTools then "" else getBin coreutils;
default_cxx_stdlib_compile=optionalString (targetPlatform.isLinux && !(cc.isGNU or false)) default_cxx_stdlib_compile = optionalString (targetPlatform.isLinux && !(cc.isGNU or false) && !nativeTools)
"-isystem $(echo -n ${cc.gcc}/include/c++/*) -isystem $(echo -n ${cc.gcc}/include/c++/*)/$(${cc.gcc}/bin/gcc -dumpmachine)"; "-isystem $(echo -n ${cc.gcc}/include/c++/*) -isystem $(echo -n ${cc.gcc}/include/c++/*)/$(${cc.gcc}/bin/gcc -dumpmachine)";
dashlessTarget = stdenv.lib.replaceStrings ["-"] ["_"] targetPlatform.config; dashlessTarget = stdenv.lib.replaceStrings ["-"] ["_"] targetPlatform.config;

View File

@ -1,7 +1,7 @@
{ stdenv, fetchzip }: { stdenv, fetchzip }:
let let
version = "062"; version = "063";
in fetchzip rec { in fetchzip rec {
name = "mplus-${version}"; name = "mplus-${version}";
@ -13,7 +13,7 @@ in fetchzip rec {
cp *.ttf $out/share/fonts/truetype cp *.ttf $out/share/fonts/truetype
''; '';
sha256 = "0zm1snq5r584rz90yv5lndsqgchdaxq2185vrk7849ch4k5vd23z"; sha256 = "0d485l2ihxfk039rrrnfviamlbj13cwky0c752m4ikwvgiqiq94y";
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "M+ Outline Fonts"; description = "M+ Outline Fonts";

View File

@ -0,0 +1,23 @@
{ lib, fetchFromGitHub }:
fetchFromGitHub rec {
name = "myrica-2.011.20160403";
owner = "tomokuni";
repo = "Myrica";
rev = "b737107723bfddd917210f979ccc32ab3eb6dc20";
sha256 = "187rklcibbkai6m08173ca99qn8v7xpdfdv0izpymmavj85axm12";
postFetch = ''
tar --strip-components=1 -xzvf $downloadedFile
mkdir -p $out/share/fonts/truetype
cp product/*.TTC $out/share/fonts/truetype
'';
meta = with lib; {
homepage = https://myrica.estable.jp/;
license = licenses.ofl;
maintainers = with maintainers; [ mikoim ];
platforms = platforms.all;
};
}

View File

@ -1,5 +1,5 @@
{ stdenv, fetchurl, pkgconfig, dbus_glib, dbus, cairo, popt, which, libxml2Python, libxslt, bzip2, python { stdenv, fetchurl, pkgconfig, dbus_glib, dbus, cairo, popt, which, libxml2Python, libxslt, bzip2, python
, glib, gtk, pango, atk, libXau, libcanberra , glib, gtk, pango, atk, libXau, libcanberra_gtk2
, intltool, ORBit2, libglade, libgnome, libgnomeui, libbonobo, libbonoboui, GConf, gnome_menus, gnome_desktop , intltool, ORBit2, libglade, libgnome, libgnomeui, libbonobo, libbonoboui, GConf, gnome_menus, gnome_desktop
, libwnck, librsvg, libgweather, gnome_doc_utils, libgnomecanvas, libart_lgpl, libtasn1, libtool, xorg }: , libwnck, librsvg, libgweather, gnome_doc_utils, libgnomecanvas, libart_lgpl, libtasn1, libtool, xorg }:
@ -15,7 +15,7 @@ stdenv.mkDerivation {
[ gtk dbus_glib popt libxml2Python libxslt bzip2 python libXau intltool [ gtk dbus_glib popt libxml2Python libxslt bzip2 python libXau intltool
ORBit2 libglade libgnome libgnomeui libbonobo libbonoboui GConf ORBit2 libglade libgnome libgnomeui libbonobo libbonoboui GConf
gnome_menus gnome_desktop libwnck librsvg libgweather gnome_doc_utils gnome_menus gnome_desktop libwnck librsvg libgweather gnome_doc_utils
libtasn1 libtool libcanberra xorg.libICE xorg.libSM libtasn1 libtool libcanberra_gtk2 xorg.libICE xorg.libSM
]; ];
nativeBuildInputs = [ pkgconfig intltool which ]; nativeBuildInputs = [ pkgconfig intltool which ];

View File

@ -1,5 +1,5 @@
{ stdenv, fetchurl, pkgconfig, glib, gtk, libXcomposite, libXcursor, libXdamage { stdenv, fetchurl, pkgconfig, glib, gtk, libXcomposite, libXcursor, libXdamage
, libcanberra, intltool, GConf, startup_notification, zenity, gnome_doc_utils , libcanberra_gtk2, intltool, GConf, startup_notification, zenity, gnome_doc_utils
, gsettings_desktop_schemas }: , gsettings_desktop_schemas }:
stdenv.mkDerivation { stdenv.mkDerivation {
@ -11,7 +11,7 @@ stdenv.mkDerivation {
}; };
buildInputs = buildInputs =
[ pkgconfig glib gtk libXcomposite libXcursor libXdamage libcanberra [ pkgconfig glib gtk libXcomposite libXcursor libXdamage libcanberra_gtk2
intltool GConf startup_notification zenity gnome_doc_utils intltool GConf startup_notification zenity gnome_doc_utils
gsettings_desktop_schemas gsettings_desktop_schemas
]; ];

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, pkgconfig, glib, popt, zlib, libcanberra { stdenv, fetchurl, pkgconfig, glib, popt, zlib, libcanberra_gtk2
, intltool, libbonobo, GConf, gnome_vfs, ORBit2, libtool, libogg , intltool, libbonobo, GConf, gnome_vfs, ORBit2, libtool, libogg
}: }:
@ -18,6 +18,6 @@ stdenv.mkDerivation rec {
outputs = [ "out" "dev" ]; outputs = [ "out" "dev" ];
nativeBuildInputs = [ pkgconfig ]; nativeBuildInputs = [ pkgconfig ];
buildInputs = [ popt zlib intltool GConf gnome_vfs libcanberra libtool ]; buildInputs = [ popt zlib intltool GConf gnome_vfs libcanberra_gtk2 libtool ];
propagatedBuildInputs = [ glib libbonobo libogg ]; propagatedBuildInputs = [ glib libbonobo libogg ];
} }

View File

@ -1,10 +1,10 @@
# Autogenerated by maintainers/scripts/gnome.sh update # Autogenerated by maintainers/scripts/gnome.sh update
fetchurl: { fetchurl: {
name = "evolution-3.26.2"; name = "evolution-3.26.3";
src = fetchurl { src = fetchurl {
url = mirror://gnome/sources/evolution/3.26/evolution-3.26.2.tar.xz; url = mirror://gnome/sources/evolution/3.26/evolution-3.26.3.tar.xz;
sha256 = "2d9299b8414903021faa03cbb885814de454f5260398eb2c2a03600224479137"; sha256 = "091621f21827e2dfb8057f3b2c3a215c4e97a692c59d0a4ee33108af571de60e";
}; };
} }

View File

@ -1,6 +1,6 @@
{ stdenv, fetchurl { stdenv, fetchurl
, meson, ninja, gettext, pkgconfig, wrapGAppsHook, itstool, desktop_file_utils , meson, ninja, gettext, pkgconfig, wrapGAppsHook, itstool, desktop_file_utils
, vala, gtk3, glib, gsound, libcanberra_gtk3 , vala, gtk3, glib, gsound
, gnome3, gdk_pixbuf, geoclue2, libgweather }: , gnome3, gdk_pixbuf, geoclue2, libgweather }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
@ -8,14 +8,13 @@ stdenv.mkDerivation rec {
doCheck = true; doCheck = true;
nativeBuildInputs = [ vala meson ninja pkgconfig gettext itstool wrapGAppsHook desktop_file_utils ]; nativeBuildInputs = [
buildInputs = [ gtk3 glib libcanberra_gtk3 vala meson ninja pkgconfig gettext itstool wrapGAppsHook desktop_file_utils
gnome3.gsettings_desktop_schemas ];
gdk_pixbuf gnome3.defaultIconTheme buildInputs = [
gnome3.gnome_desktop gnome3.geocode_glib geoclue2 gtk3 glib gnome3.gsettings_desktop_schemas gdk_pixbuf gnome3.defaultIconTheme
libgweather gsound ]; gnome3.gnome_desktop gnome3.geocode_glib geoclue2 libgweather gsound
];
enableParallelBuilding = true;
prePatch = "patchShebangs build-aux/"; prePatch = "patchShebangs build-aux/";

View File

@ -1,10 +1,10 @@
# Autogenerated by maintainers/scripts/gnome.sh update # Autogenerated by maintainers/scripts/gnome.sh update
fetchurl: { fetchurl: {
name = "gnome-photos-3.26.2"; name = "gnome-photos-3.26.3";
src = fetchurl { src = fetchurl {
url = mirror://gnome/sources/gnome-photos/3.26/gnome-photos-3.26.2.tar.xz; url = mirror://gnome/sources/gnome-photos/3.26/gnome-photos-3.26.3.tar.xz;
sha256 = "9001ed2794da44522a1d700c7b5aff40ede92f80ba17031f0dfa7f54d6d05657"; sha256 = "028de4c8662b7d1dc3ca6c3fbe3ce7f6bb90dd097708e99f235a409756dbadab";
}; };
} }

View File

@ -1,10 +1,10 @@
# Autogenerated by maintainers/scripts/gnome.sh update # Autogenerated by maintainers/scripts/gnome.sh update
fetchurl: { fetchurl: {
name = "epiphany-3.26.3"; name = "epiphany-3.26.4";
src = fetchurl { src = fetchurl {
url = mirror://gnome/sources/epiphany/3.26/epiphany-3.26.3.tar.xz; url = mirror://gnome/sources/epiphany/3.26/epiphany-3.26.4.tar.xz;
sha256 = "cb50042496e704621db3d0213581b0f914c639e160522751f64c5e5f6e6040b5"; sha256 = "390d50f975f8ab9228016eb60bf4b8ea9a39be0b31467e2d6c27ae75fa1e84ea";
}; };
} }

View File

@ -1,10 +1,10 @@
# Autogenerated by maintainers/scripts/gnome.sh update # Autogenerated by maintainers/scripts/gnome.sh update
fetchurl: { fetchurl: {
name = "evolution-data-server-3.26.2.1"; name = "evolution-data-server-3.26.3";
src = fetchurl { src = fetchurl {
url = mirror://gnome/sources/evolution-data-server/3.26/evolution-data-server-3.26.2.1.tar.xz; url = mirror://gnome/sources/evolution-data-server/3.26/evolution-data-server-3.26.3.tar.xz;
sha256 = "09fb1c4ce20c62309e8ea2d80649f590492e88c1deb89118e715e155296baefd"; sha256 = "63b1ae5f76be818862f455bf841b5ebb1ec3e1f4df6d3a16dc2be348b7e0a1c5";
}; };
} }

View File

@ -1,44 +1,43 @@
{ fetchurl, stdenv, pkgconfig, gnome3, ibus, intltool, upower, wrapGAppsHook { fetchurl, stdenv, pkgconfig, gnome3, ibus, intltool, upower, wrapGAppsHook
, libcanberra_gtk2, libcanberra_gtk3, accountsservice, libpwquality, libpulseaudio , libcanberra_gtk3, accountsservice, libpwquality, libpulseaudio
, gdk_pixbuf, librsvg, libxkbfile, libnotify, libgudev , gdk_pixbuf, librsvg, libnotify, libgudev
, libxml2, polkit, libxslt, libgtop, libsoup, colord, colord-gtk , libxml2, polkit, libxslt, libgtop, libsoup, colord, colord-gtk
, cracklib, python, libkrb5, networkmanagerapplet, networkmanager , cracklib, python, libkrb5, networkmanagerapplet, networkmanager
, libwacom, samba, shared_mime_info, tzdata, icu, libtool, udev , libwacom, samba, shared_mime_info, tzdata, libtool
, docbook_xsl, docbook_xsl_ns, modemmanager, clutter, clutter_gtk , docbook_xsl, docbook_xsl_ns, modemmanager, clutter, clutter_gtk
, fontconfig, sound-theme-freedesktop, grilo }: , fontconfig, sound-theme-freedesktop, grilo }:
# http://ftp.gnome.org/pub/GNOME/teams/releng/3.10.2/gnome-suites-core-3.10.2.modules
# TODO: bluetooth, wacom, printers
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
inherit (import ./src.nix fetchurl) name src; inherit (import ./src.nix fetchurl) name src;
propagatedUserEnvPkgs = propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
[ gnome3.gnome_themes_standard gnome3.libgnomekbd ];
# https://bugzilla.gnome.org/show_bug.cgi?id=752596 nativeBuildInputs = [
enableParallelBuilding = false; pkgconfig intltool wrapGAppsHook libtool libxslt docbook_xsl docbook_xsl_ns
shared_mime_info
];
buildInputs = with gnome3; buildInputs = with gnome3; [
[ pkgconfig intltool ibus gtk glib glib_networking upower libcanberra_gtk2 gsettings_desktop_schemas ibus gtk glib glib_networking upower gsettings_desktop_schemas
libxml2 gnome_desktop gnome_settings_daemon polkit libxslt libgtop gnome-menus libxml2 gnome_desktop gnome_settings_daemon polkit libgtop
gnome_online_accounts libsoup colord libpulseaudio fontconfig colord-gtk libpwquality gnome_online_accounts libsoup colord libpulseaudio fontconfig colord-gtk
accountsservice libkrb5 networkmanagerapplet libwacom samba libnotify libxkbfile accountsservice libkrb5 networkmanagerapplet libwacom samba libnotify
shared_mime_info icu libtool docbook_xsl docbook_xsl_ns gnome3.grilo grilo libpwquality cracklib vino libcanberra_gtk3 libgudev
gdk_pixbuf gnome3.defaultIconTheme librsvg clutter clutter_gtk gdk_pixbuf defaultIconTheme librsvg clutter clutter_gtk
gnome3.vino udev libcanberra_gtk3 libgudev wrapGAppsHook networkmanager modemmanager gnome-bluetooth tracker
networkmanager modemmanager gnome3.gnome-bluetooth grilo tracker ];
cracklib ];
preBuild = '' preBuild = ''
substituteInPlace panels/datetime/tz.h --replace "/usr/share/zoneinfo/zone.tab" "${tzdata}/share/zoneinfo/zone.tab" substituteInPlace panels/datetime/tz.h --replace "/usr/share/zoneinfo/zone.tab" "${tzdata}/share/zoneinfo/zone.tab"
substituteInPlace panels/region/cc-region-panel.c --replace "gkbd-keyboard-display" "${gnome3.libgnomekbd}/bin/gkbd-keyboard-display"
# hack to make test-endianess happy # hack to make test-endianess happy
mkdir -p $out/share/locale mkdir -p $out/share/locale
substituteInPlace panels/datetime/test-endianess.c --replace "/usr/share/locale/" "$out/share/locale/" substituteInPlace panels/datetime/test-endianess.c --replace "/usr/share/locale/" "$out/share/locale/"
''; '';
preFixup = with gnome3; '' preFixup = ''
gappsWrapperArgs+=( gappsWrapperArgs+=(
--prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:${sound-theme-freedesktop}/share" --prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:${sound-theme-freedesktop}/share"
# Thumbnailers (for setting user profile pictures) # Thumbnailers (for setting user profile pictures)
@ -56,5 +55,4 @@ stdenv.mkDerivation rec {
maintainers = gnome3.maintainers; maintainers = gnome3.maintainers;
platforms = platforms.linux; platforms = platforms.linux;
}; };
} }

View File

@ -1,10 +1,10 @@
# Autogenerated by maintainers/scripts/gnome.sh update # Autogenerated by maintainers/scripts/gnome.sh update
fetchurl: { fetchurl: {
name = "gnome-online-accounts-3.26.1"; name = "gnome-online-accounts-3.26.2";
src = fetchurl { src = fetchurl {
url = mirror://gnome/sources/gnome-online-accounts/3.26/gnome-online-accounts-3.26.1.tar.xz; url = mirror://gnome/sources/gnome-online-accounts/3.26/gnome-online-accounts-3.26.2.tar.xz;
sha256 = "603c110405cb89a01497a69967f10e3f3f36add3dc175b062ec4c5ed4485621b"; sha256 = "49f8760d86fe33057eaeeb4f1667bc7f6163e428591e7aed9575563be10b17d1";
}; };
} }

View File

@ -1,10 +1,10 @@
# Autogenerated by maintainers/scripts/gnome.sh update # Autogenerated by maintainers/scripts/gnome.sh update
fetchurl: { fetchurl: {
name = "gnome-user-docs-3.26.2"; name = "gnome-user-docs-3.26.2.1";
src = fetchurl { src = fetchurl {
url = mirror://gnome/sources/gnome-user-docs/3.26/gnome-user-docs-3.26.2.tar.xz; url = mirror://gnome/sources/gnome-user-docs/3.26/gnome-user-docs-3.26.2.1.tar.xz;
sha256 = "e7d7f0434624ef6f21803c798d8672331f065485bdf59d44ac5b6b5f14fa1b78"; sha256 = "93136f5baffd160c14e1b39f0ac60b9768975edac2da2b30c945faef534af8f5";
}; };
} }

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, pkgconfig, glib, libcanberra_gtk2, gobjectIntrospection, libtool, gnome3 }: { stdenv, fetchurl, pkgconfig, glib, libcanberra, gobjectIntrospection, libtool, gnome3 }:
let let
majVer = "1.0"; majVer = "1.0";
@ -11,7 +11,7 @@ in stdenv.mkDerivation rec {
}; };
nativeBuildInputs = [ pkgconfig gobjectIntrospection libtool gnome3.vala ]; nativeBuildInputs = [ pkgconfig gobjectIntrospection libtool gnome3.vala ];
buildInputs = [ glib libcanberra_gtk2 ]; buildInputs = [ glib libcanberra ];
meta = with stdenv.lib; { meta = with stdenv.lib; {
homepage = https://wiki.gnome.org/Projects/GSound; homepage = https://wiki.gnome.org/Projects/GSound;

View File

@ -3,8 +3,8 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
inherit (import ./src.nix fetchurl) name src; inherit (import ./src.nix fetchurl) name src;
nativeBuildInputs = [ pkgconfig ]; nativeBuildInputs = [ pkgconfig file intltool makeWrapper ];
buildInputs = [ file intltool glib gtk3 libxklavier makeWrapper ]; buildInputs = [ glib gtk3 libxklavier ];
preFixup = '' preFixup = ''
wrapProgram $out/bin/gkbd-keyboard-display \ wrapProgram $out/bin/gkbd-keyboard-display \

View File

@ -1,14 +1,11 @@
{ fetchurl, stdenv, pkgconfig, gnome3, intltool, gobjectIntrospection, upower, cairo { fetchurl, stdenv, pkgconfig, gnome3, intltool, gobjectIntrospection, upower, cairo
, pango, cogl, clutter, libstartup_notification, libcanberra_gtk2, zenity, libcanberra_gtk3 , pango, cogl, clutter, libstartup_notification, zenity, libcanberra_gtk3
, libtool, makeWrapper, xkeyboard_config, libxkbfile, libxkbcommon, libXtst, libudev, libinput , libtool, makeWrapper, xkeyboard_config, libxkbfile, libxkbcommon, libXtst, libinput
, libgudev, libwacom, xwayland, autoreconfHook }: , libgudev, libwacom, xwayland, autoreconfHook }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
inherit (import ./src.nix fetchurl) name src; inherit (import ./src.nix fetchurl) name src;
# fatal error: gio/gunixfdlist.h: No such file or directory
NIX_CFLAGS_COMPILE = "-I${gnome3.glib.dev}/include/gio-unix-2.0 -Wno-error=format -Wno-error=sign-compare";
configureFlags = [ configureFlags = [
"--with-x" "--with-x"
"--disable-static" "--disable-static"
@ -28,12 +25,13 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ autoreconfHook pkgconfig intltool libtool makeWrapper ]; nativeBuildInputs = [ autoreconfHook pkgconfig intltool libtool makeWrapper ];
buildInputs = with gnome3; buildInputs = with gnome3; [
[ glib gobjectIntrospection gtk gsettings_desktop_schemas upower glib gobjectIntrospection gtk gsettings_desktop_schemas upower
gnome_desktop cairo pango cogl clutter zenity libstartup_notification libcanberra_gtk2 gnome_desktop cairo pango cogl clutter zenity libstartup_notification
gnome3.geocode_glib libudev libinput libgudev libwacom gnome3.geocode_glib libinput libgudev libwacom
libcanberra_gtk3 zenity xkeyboard_config libxkbfile libcanberra_gtk3 zenity xkeyboard_config libxkbfile
libxkbcommon ]; libxkbcommon
];
preFixup = '' preFixup = ''
wrapProgram "$out/bin/mutter" \ wrapProgram "$out/bin/mutter" \
@ -45,6 +43,6 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; { meta = with stdenv.lib; {
platforms = platforms.linux; platforms = platforms.linux;
maintainers = gnome3.maintainers; maintainers = gnome3.maintainers;
license = licenses.gpl2;
}; };
} }

View File

@ -1,10 +1,10 @@
# Autogenerated by maintainers/scripts/gnome.sh update # Autogenerated by maintainers/scripts/gnome.sh update
fetchurl: { fetchurl: {
name = "devhelp-3.26.0"; name = "devhelp-3.26.1";
src = fetchurl { src = fetchurl {
url = mirror://gnome/sources/devhelp/3.26/devhelp-3.26.0.tar.xz; url = mirror://gnome/sources/devhelp/3.26/devhelp-3.26.1.tar.xz;
sha256 = "6bf2714f7f953b5858c643585383c4e4c8e9c65055527505abbf24fbf1ac8e38"; sha256 = "10bd468ae2188abd98af9ba7b81aced337d2206e9d843eb44520be5b00d77d8e";
}; };
} }

View File

@ -1,97 +0,0 @@
From f7f7fe6bf36ca08c66192077bf964036eb02ffb5 Mon Sep 17 00:00:00 2001
From: Jascha Geerds <jascha@jgeerds.name>
Date: Tue, 19 Sep 2017 03:08:07 +0200
Subject: [PATCH 1/3] Search for themes and icons in system data dirs
---
gtweak/tweaks/tweak_group_appearance.py | 17 ++++-------------
gtweak/utils.py | 17 +++++++++++++++++
2 files changed, 21 insertions(+), 13 deletions(-)
diff --git a/gtweak/tweaks/tweak_group_appearance.py b/gtweak/tweaks/tweak_group_appearance.py
index ccadefc..0d12194 100644
--- a/gtweak/tweaks/tweak_group_appearance.py
+++ b/gtweak/tweaks/tweak_group_appearance.py
@@ -26,7 +26,7 @@ from gi.repository import Gtk
from gi.repository import GLib
import gtweak
-from gtweak.utils import walk_directories, make_combo_list_with_default, extract_zip_file
+from gtweak.utils import walk_directories, make_combo_list_with_default, extract_zip_file, get_resource_dirs
from gtweak.tweakmodel import Tweak
from gtweak.gshellwrapper import GnomeShellFactory
from gtweak.gsettings import GSettingsSetting
@@ -50,10 +50,7 @@ class GtkThemeSwitcher(GSettingsComboTweak):
if gtk_ver % 2: # Want even number
gtk_ver += 1
- dirs = ( os.path.join(gtweak.DATA_DIR, "themes"),
- os.path.join(GLib.get_user_data_dir(), "themes"),
- os.path.join(os.path.expanduser("~"), ".themes"))
- valid = walk_directories(dirs, lambda d:
+ valid = walk_directories(get_resource_dirs("themes"), lambda d:
os.path.exists(os.path.join(d, "gtk-2.0")) and \
(os.path.exists(os.path.join(d, "gtk-3.0")) or \
os.path.exists(os.path.join(d, "gtk-3.{}".format(gtk_ver)))))
@@ -69,10 +66,7 @@ class IconThemeSwitcher(GSettingsComboTweak):
**options)
def _get_valid_icon_themes(self):
- dirs = ( os.path.join(gtweak.DATA_DIR, "icons"),
- os.path.join(GLib.get_user_data_dir(), "icons"),
- os.path.join(os.path.expanduser("~"), ".icons"))
- valid = walk_directories(dirs, lambda d:
+ valid = walk_directories(get_resource_dirs("icons"), lambda d:
os.path.isdir(d) and \
os.path.exists(os.path.join(d, "index.theme")))
return valid
@@ -87,10 +81,7 @@ class CursorThemeSwitcher(GSettingsComboTweak):
**options)
def _get_valid_cursor_themes(self):
- dirs = ( os.path.join(gtweak.DATA_DIR, "icons"),
- os.path.join(GLib.get_user_data_dir(), "icons"),
- os.path.join(os.path.expanduser("~"), ".icons"))
- valid = walk_directories(dirs, lambda d:
+ valid = walk_directories(get_resource_dirs("icons"), lambda d:
os.path.isdir(d) and \
os.path.exists(os.path.join(d, "cursors")))
return valid
diff --git a/gtweak/utils.py b/gtweak/utils.py
index de6c345..6c60b88 100644
--- a/gtweak/utils.py
+++ b/gtweak/utils.py
@@ -21,6 +21,7 @@ import tempfile
import shutil
import subprocess
import glob
+import itertools
import gtweak
from gtweak.gsettings import GSettingsSetting
@@ -117,6 +118,22 @@ def execute_subprocess(cmd_then_args, block=True):
stdout, stderr = p.communicate()
return stdout, stderr, p.returncode
+def get_resource_dirs(resource):
+ """Returns a list of all known resource dirs for a given resource.
+
+ :param str resource:
+ Name of the resource (e.g. "themes")
+ :return:
+ A list of resource dirs
+ """
+ dirs = [os.path.join(dir, resource)
+ for dir in itertools.chain(GLib.get_system_data_dirs(),
+ (gtweak.DATA_DIR,
+ GLib.get_user_data_dir()))]
+ dirs += [os.path.join(os.path.expanduser("~"), ".{}".format(resource))]
+
+ return [dir for dir in dirs if os.path.isdir(dir)]
+
@singleton
class AutostartManager:
--
2.14.1

View File

@ -1,80 +0,0 @@
From 8e75fe5f1ebd8a140a7306294d2219aea4ac47d2 Mon Sep 17 00:00:00 2001
From: Jascha Geerds <jascha@jgeerds.name>
Date: Tue, 19 Sep 2017 03:16:07 +0200
Subject: [PATCH 2/3] Don't show multiple entries for a single theme
---
gtweak/tweaks/tweak_group_appearance.py | 8 ++++----
gtweak/utils.py | 16 ++++++++++++++++
2 files changed, 20 insertions(+), 4 deletions(-)
diff --git a/gtweak/tweaks/tweak_group_appearance.py b/gtweak/tweaks/tweak_group_appearance.py
index 0d12194..8e05077 100644
--- a/gtweak/tweaks/tweak_group_appearance.py
+++ b/gtweak/tweaks/tweak_group_appearance.py
@@ -26,7 +26,7 @@ from gi.repository import Gtk
from gi.repository import GLib
import gtweak
-from gtweak.utils import walk_directories, make_combo_list_with_default, extract_zip_file, get_resource_dirs
+from gtweak.utils import walk_directories, make_combo_list_with_default, extract_zip_file, get_resource_dirs, get_unique_resources
from gtweak.tweakmodel import Tweak
from gtweak.gshellwrapper import GnomeShellFactory
from gtweak.gsettings import GSettingsSetting
@@ -54,7 +54,7 @@ class GtkThemeSwitcher(GSettingsComboTweak):
os.path.exists(os.path.join(d, "gtk-2.0")) and \
(os.path.exists(os.path.join(d, "gtk-3.0")) or \
os.path.exists(os.path.join(d, "gtk-3.{}".format(gtk_ver)))))
- return valid
+ return get_unique_resources(valid)
class IconThemeSwitcher(GSettingsComboTweak):
def __init__(self, **options):
@@ -69,7 +69,7 @@ class IconThemeSwitcher(GSettingsComboTweak):
valid = walk_directories(get_resource_dirs("icons"), lambda d:
os.path.isdir(d) and \
os.path.exists(os.path.join(d, "index.theme")))
- return valid
+ return get_unique_resources(valid)
class CursorThemeSwitcher(GSettingsComboTweak):
def __init__(self, **options):
@@ -84,7 +84,7 @@ class CursorThemeSwitcher(GSettingsComboTweak):
valid = walk_directories(get_resource_dirs("icons"), lambda d:
os.path.isdir(d) and \
os.path.exists(os.path.join(d, "cursors")))
- return valid
+ return get_unique_resources(valid)
class ShellThemeTweak(Gtk.Box, Tweak):
diff --git a/gtweak/utils.py b/gtweak/utils.py
index 6c60b88..6fd7c6a 100644
--- a/gtweak/utils.py
+++ b/gtweak/utils.py
@@ -134,6 +134,22 @@ def get_resource_dirs(resource):
return [dir for dir in dirs if os.path.isdir(dir)]
+def get_unique_resources(dirs):
+ """Filter out duplicated resources.
+
+ :param list dirs:
+ List of resource dirs (e.g. /usr/share/themes/Adwaita)
+ :return:
+ List of dirs without duplicated resources
+ """
+ unique_dirs = {}
+ for dir in dirs:
+ basename = os.path.basename(dir)
+ if basename not in unique_dirs:
+ unique_dirs[basename] = dir
+
+ return unique_dirs
+
@singleton
class AutostartManager:
--
2.14.1

View File

@ -1,27 +0,0 @@
From 6a6a7d1c708a2f568277699c5b605fa03ccb5faa Mon Sep 17 00:00:00 2001
From: Jascha Geerds <jascha@jgeerds.name>
Date: Tue, 19 Sep 2017 03:17:20 +0200
Subject: [PATCH 3/3] Create config dir if it doesn't exist
---
gtweak/gtksettings.py | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/gtweak/gtksettings.py b/gtweak/gtksettings.py
index a11363b..2871c49 100644
--- a/gtweak/gtksettings.py
+++ b/gtweak/gtksettings.py
@@ -36,6 +36,10 @@ class GtkSettingsManager:
def _get_keyfile(self):
keyfile = None
try:
+ config_dir = os.path.dirname(self._path)
+ if not os.path.isdir(config_dir):
+ os.makedirs(config_dir)
+
keyfile = GLib.KeyFile()
keyfile.load_from_file(self._path, 0)
except MemoryError:
--
2.14.1

View File

@ -6,19 +6,18 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
inherit (import ./src.nix fetchurl) name src; inherit (import ./src.nix fetchurl) name src;
doCheck = true;
checkPhase = "meson test";
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ]; propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
nativeBuildInputs = [ meson ninja pkgconfig gettext itstool libxml2 file wrapGAppsHook ]; nativeBuildInputs = [
buildInputs = [ gtk3 glib gnome3.gsettings_desktop_schemas meson ninja pkgconfig gettext itstool libxml2 file wrapGAppsHook
gdk_pixbuf gnome3.defaultIconTheme librsvg ];
libnotify gnome3.gnome_shell python3Packages.pygobject3 buildInputs = [
libsoup gnome3.gnome_settings_daemon gnome3.nautilus gtk3 glib gnome3.gsettings_desktop_schemas
gnome3.gnome_desktop gobjectIntrospection gdk_pixbuf gnome3.defaultIconTheme librsvg
]; libnotify gnome3.gnome_shell python3Packages.pygobject3
libsoup gnome3.gnome_settings_daemon gnome3.nautilus
gnome3.mutter gnome3.gnome_desktop gobjectIntrospection
];
postPatch = '' postPatch = ''
patchShebangs meson-postinstall.py patchShebangs meson-postinstall.py
@ -30,10 +29,21 @@ stdenv.mkDerivation rec {
''; '';
patches = [ patches = [
./find_gsettings.patch (fetchurl {
./0001-Search-for-themes-and-icons-in-system-data-dirs.patch name = "find_gsettings.patch";
./0002-Don-t-show-multiple-entries-for-a-single-theme.patch url = https://bugzilla.gnome.org/attachment.cgi?id=365642;
./0003-Create-config-dir-if-it-doesn-t-exist.patch sha256 = "14ik1kad0w99xa2wn3d4ynrkhnwchjlqfbaij7p11y5zpiwhaha4";
})
(fetchurl {
name = "0001-Search-for-themes-and-icons-in-system-data-dirs.patch";
url = https://bugzilla.gnome.org/attachment.cgi?id=365643;
sha256 = "1phq3c7hc9lryih6rp3m5wmp88rfbl6iv42ng4g6bzm1jphgl89f";
})
(fetchurl {
name = "0001-appearance-Don-t-duplicate-the-cursor-theme-name.patch";
url = https://bugzilla.gnome.org/attachment.cgi?id=365648;
sha256 = "1n9vwsfz4sx72qsi1gd1y7460zmagwirvmi9qrfhc3ahanpyn4fr";
})
]; ];
meta = with stdenv.lib; { meta = with stdenv.lib; {

View File

@ -1,22 +0,0 @@
diff --git a/gtweak/gsettings.py b/gtweak/gsettings.py
index a00fe19..dce74b2 100644
--- a/gtweak/gsettings.py
+++ b/gtweak/gsettings.py
@@ -33,10 +33,15 @@ class GSettingsMissingError(Exception):
class _GSettingsSchema:
def __init__(self, schema_name, schema_dir=None, schema_filename=None, **options):
- if not schema_dir:
- schema_dir = gtweak.GSETTINGS_SCHEMA_DIR
if not schema_filename:
schema_filename = schema_name + ".gschema.xml"
+ if not schema_dir:
+ schema_dir = gtweak.GSETTINGS_SCHEMA_DIR
+ for xdg_dir in GLib.get_system_data_dirs():
+ dir = os.path.join(xdg_dir, "glib-2.0", "schemas")
+ if os.path.exists(os.path.join(dir, schema_filename)):
+ schema_dir = dir
+ break
schema_path = os.path.join(schema_dir, schema_filename)
if not os.path.exists(schema_path):

View File

@ -1,10 +1,10 @@
# Autogenerated by maintainers/scripts/gnome.sh update # Autogenerated by maintainers/scripts/gnome.sh update
fetchurl: { fetchurl: {
name = "gnome-tweak-tool-3.26.3"; name = "gnome-tweak-tool-3.26.4";
src = fetchurl { src = fetchurl {
url = mirror://gnome/sources/gnome-tweak-tool/3.26/gnome-tweak-tool-3.26.3.tar.xz; url = mirror://gnome/sources/gnome-tweak-tool/3.26/gnome-tweak-tool-3.26.4.tar.xz;
sha256 = "9406447850b14de204f9c5a6eaa6b63ba805ddb1a10fd863239841090af76430"; sha256 = "fda08044d22c258bbd93dbad326d282d4d1184b98795ae8e3e5f07f8275005df";
}; };
} }

View File

@ -1,5 +1,5 @@
{ stdenv, fetchFromGitHub, autoconf-archive, appstream-glib, intltool, pkgconfig, libtool, wrapGAppsHook, { stdenv, fetchFromGitHub, autoconf-archive, appstream-glib, intltool, pkgconfig, libtool, wrapGAppsHook,
dbus_glib, libcanberra_gtk2, gst_all_1, vala, gnome3, gtk3, libxml2, dbus_glib, libcanberra, gst_all_1, vala, gnome3, gtk3, libxml2, autoreconfHook,
glib, gobjectIntrospection, libpeas glib, gobjectIntrospection, libpeas
}: }:
@ -14,24 +14,21 @@ stdenv.mkDerivation rec {
sha256 = "0fiql99nhj168wbfhvzrhfcm4c4569gikd2zaf10vzszdqjahrl1"; sha256 = "0fiql99nhj168wbfhvzrhfcm4c4569gikd2zaf10vzszdqjahrl1";
}; };
configureScript = "./autogen.sh";
nativeBuildInputs = [ nativeBuildInputs = [
autoconf-archive libtool intltool appstream-glib autoreconfHook vala autoconf-archive libtool intltool appstream-glib
wrapGAppsHook pkgconfig libxml2 wrapGAppsHook pkgconfig libxml2
]; ];
buildInputs = [ buildInputs = [
glib gobjectIntrospection libpeas glib gobjectIntrospection libpeas
dbus_glib libcanberra_gtk2 vala gst_all_1.gstreamer dbus_glib libcanberra gst_all_1.gstreamer
gst_all_1.gst-plugins-base gst_all_1.gst-plugins-good gst_all_1.gst-plugins-base gst_all_1.gst-plugins-good
gnome3.gsettings_desktop_schemas gnome3.gsettings_desktop_schemas
gnome3.gnome_common gnome3.gnome_shell gtk3 gnome3.gnome_shell gtk3 gnome3.defaultIconTheme
gnome3.defaultIconTheme
]; ];
meta = with stdenv.lib; { meta = with stdenv.lib; {
homepage = https://github.com/codito/gnome-shell-pomodoro; homepage = http://gnomepomodoro.org/;
description = "A time management utility for GNOME based on the pomodoro technique"; description = "A time management utility for GNOME based on the pomodoro technique";
longDescription = '' longDescription = ''
This GNOME utility helps to manage time according to Pomodoro Technique. This GNOME utility helps to manage time according to Pomodoro Technique.

View File

@ -0,0 +1,14 @@
diff -urNZ a/garcon-gtk/garcon-gtk-menu.c b/garcon-gtk/garcon-gtk-menu.c
--- a/garcon-gtk/garcon-gtk-menu.c 2017-11-16 19:22:33.551926068 +0000
+++ b/garcon-gtk/garcon-gtk-menu.c 2017-11-16 19:23:33.055497211 +0000
@@ -676,6 +676,9 @@
G_CALLBACK (garcon_gtk_menu_deactivate), menu);
gtk_widget_show (mi);
+ /* submenu are child items, too. */
+ has_children = TRUE;
+
if (menu->priv->show_menu_icons)
{
icon_name = garcon_menu_element_get_icon_name (li->data);
Binary files a/.git/index and b/.git/index differ

View File

@ -0,0 +1,44 @@
From 222080e6d5fce85eb2a8a5c33df671bd9f21add8 Mon Sep 17 00:00:00 2001
From: Yegor Timoshenko <yegortimoshenko@gmail.com>
Date: Thu, 14 Dec 2017 22:04:04 +0000
Subject: [PATCH] Decrement allocation counter on item unref (#12700)
---
garcon/garcon-menu-item-pool.c | 7 ++++++-
garcon/garcon-menu-item.c | 2 ++
2 files changed, 8 insertions(+), 1 deletion(-)
diff --git a/garcon/garcon-menu-item-pool.c b/garcon/garcon-menu-item-pool.c
index 2017180..355e520 100644
--- a/garcon/garcon-menu-item-pool.c
+++ b/garcon/garcon-menu-item-pool.c
@@ -191,7 +191,12 @@ garcon_menu_item_pool_filter_exclude (const gchar *desktop_id,
g_return_val_if_fail (GARCON_IS_MENU_ITEM (item), FALSE);
g_return_val_if_fail (node != NULL, FALSE);
- return garcon_menu_node_tree_rule_matches (node, item);
+ gboolean matches = garcon_menu_node_tree_rule_matches (node, item);
+
+ if (matches)
+ garcon_menu_item_increment_allocated (item);
+
+ return matches;
}
diff --git a/garcon/garcon-menu-item.c b/garcon/garcon-menu-item.c
index 66a86bf..d61c88f 100644
--- a/garcon/garcon-menu-item.c
+++ b/garcon/garcon-menu-item.c
@@ -1516,6 +1516,8 @@ garcon_menu_item_unref (GarconMenuItem *item)
{
g_return_if_fail (GARCON_IS_MENU_ITEM (item));
+ garcon_menu_item_decrement_allocated (item);
+
/* Decrement the reference counter */
g_object_unref (G_OBJECT (item));
}
--
2.15.1

View File

@ -13,6 +13,7 @@ stdenv.mkDerivation rec {
}; };
outputs = [ "out" "dev" ]; outputs = [ "out" "dev" ];
patches = [ ./garcon-10967.patch ./garcon-12700.patch ];
nativeBuildInputs = [ pkgconfig ]; nativeBuildInputs = [ pkgconfig ];
buildInputs = [ intltool glib libxfce4util gtk libxfce4ui ]; buildInputs = [ intltool glib libxfce4util gtk libxfce4ui ];
@ -24,4 +25,3 @@ stdenv.mkDerivation rec {
platforms = platforms.linux; platforms = platforms.linux;
}; };
} }

View File

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, libuuid, python2, iasl }: { stdenv, fetchFromGitHub, fetchpatch, libuuid, python2, iasl }:
let let
pythonEnv = python2.withPackages(ps: [ps.tkinter]); pythonEnv = python2.withPackages(ps: [ps.tkinter]);
@ -11,16 +11,24 @@ else
throw "Unsupported architecture"; throw "Unsupported architecture";
edk2 = stdenv.mkDerivation { edk2 = stdenv.mkDerivation {
name = "edk2-2014-12-10"; name = "edk2-2017-12-05";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "tianocore"; owner = "tianocore";
repo = "edk2"; repo = "edk2";
rev = "vUDK2017"; rev = "f71a70e7a4c93a6143d7bad8ab0220a947679697";
sha256 = "0sswa028644yr8fbl8j6rhrdm717fj29h4dys3ygklmjhss90a2g"; sha256 = "0k48xfwxcgcim1bhkggc19hilvsxsf5axvvcpmld0ng1fcfg0cr6";
}; };
buildInputs = [ libuuid pythonEnv]; patches = [
(fetchpatch {
name = "short-circuit-the-transfer-of-an-empty-S3_CONTEXT.patch";
url = "https://github.com/tianocore/edk2/commit/9e2a8e928995c3b1bb664b73fd59785055c6b5f6";
sha256 = "0mdqa9w1p6cmli6976v4wi0sw9r4p5prkj7lzfd1877wk11c9c73";
})
];
buildInputs = [ libuuid pythonEnv ];
makeFlags = "-C BaseTools"; makeFlags = "-C BaseTools";
@ -33,10 +41,13 @@ edk2 = stdenv.mkDerivation {
mv -v edksetup.sh $out mv -v edksetup.sh $out
''; '';
enableParallelBuilding = true;
meta = { meta = {
description = "Intel EFI development kit"; description = "Intel EFI development kit";
homepage = https://sourceforge.net/projects/edk2/; homepage = https://sourceforge.net/projects/edk2/;
license = stdenv.lib.licenses.bsd2; license = stdenv.lib.licenses.bsd2;
branch = "UDK2017";
platforms = ["x86_64-linux" "i686-linux"]; platforms = ["x86_64-linux" "i686-linux"];
}; };

View File

@ -2,15 +2,15 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "glslang-git-${version}"; name = "glslang-git-${version}";
version = "2017-03-29"; version = "2017-08-31";
# `vulkan-loader` requires a specific version of `glslang` as specified in # `vulkan-loader` requires a specific version of `glslang` as specified in
# `<vulkan-loader-repo>/external_revisions/glslang_revision`. # `<vulkan-loader-repo>/external_revisions/glslang_revision`.
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "KhronosGroup"; owner = "KhronosGroup";
repo = "glslang"; repo = "glslang";
rev = "714e58b2fc5a45714596e6aa2f6ac8f64260365c"; rev = "3a21c880500eac21cdf79bef5b80f970a55ac6af";
sha256 = "0ihnd0c4mr6ppbv9g7z1abrn8vx66simfzx5q48nqcpnywn35jxv"; sha256 = "1i15m17r0acmzjrkybris2rgw15il05a4w5h7vhhsiyngcvajcyn";
}; };
buildInputs = [ cmake bison ]; buildInputs = [ cmake bison ];

View File

@ -1,10 +1,7 @@
{ productVersion { productVersion
, patchVersion , patchVersion
, downloadUrl , downloadUrl
, sha256_i686 , sha256
, sha256_x86_64
, sha256_armv7l
, sha256_aarch64
, jceName , jceName
, jceDownloadUrl , jceDownloadUrl
, sha256JCE , sha256JCE
@ -37,29 +34,19 @@
, setJavaClassPath , setJavaClassPath
}: }:
assert stdenv.system == "i686-linux"
|| stdenv.system == "x86_64-linux"
|| stdenv.system == "armv7l-linux"
|| stdenv.system == "aarch64-linux";
assert swingSupport -> xorg != null; assert swingSupport -> xorg != null;
let let
abortArch = throw "Unsupported system: ${stdenv.system}";
/** /**
* The JRE libraries are in directories that depend on the CPU. * The JRE libraries are in directories that depend on the CPU.
*/ */
architecture = architecture = {
if stdenv.system == "i686-linux" then i686-linux = "i386";
"i386" x86_64-linux = "amd64";
else if stdenv.system == "x86_64-linux" then armv7l-linux = "arm";
"amd64" aarch64-linux = "aarch64";
else if stdenv.system == "armv7l-linux" then }.${stdenv.system};
"arm"
else if stdenv.system == "aarch64-linux" then
"aarch64"
else
abortArch;
jce = jce =
if installjce then if installjce then
@ -84,33 +71,16 @@ let result = stdenv.mkDerivation rec {
name = name =
if installjdk then "oraclejdk-${productVersion}u${patchVersion}" else "oraclejre-${productVersion}u${patchVersion}"; if installjdk then "oraclejdk-${productVersion}u${patchVersion}" else "oraclejre-${productVersion}u${patchVersion}";
src = src = requireFile {
if stdenv.system == "i686-linux" then name = {
requireFile { i686-linux = "jdk-${productVersion}u${patchVersion}-linux-i586.tar.gz";
name = "jdk-${productVersion}u${patchVersion}-linux-i586.tar.gz"; x86_64-linux = "jdk-${productVersion}u${patchVersion}-linux-x64.tar.gz";
url = downloadUrl; armv7l-linux = "jdk-${productVersion}u${patchVersion}-linux-arm32-vfp-hflt.tar.gz";
sha256 = sha256_i686; aarch64-linux = "jdk-${productVersion}u${patchVersion}-linux-arm64-vfp-hflt.tar.gz";
} }.${stdenv.system};
else if stdenv.system == "x86_64-linux" then url = downloadUrl;
requireFile { sha256 = sha256.${stdenv.system};
name = "jdk-${productVersion}u${patchVersion}-linux-x64.tar.gz"; };
url = downloadUrl;
sha256 = sha256_x86_64;
}
else if stdenv.system == "armv7l-linux" then
requireFile {
name = "jdk-${productVersion}u${patchVersion}-linux-arm32-vfp-hflt.tar.gz";
url = downloadUrl;
sha256 = sha256_armv7l;
}
else if stdenv.system == "aarch64-linux" then
requireFile {
name = "jdk-${productVersion}u${patchVersion}-linux-arm64-vfp-hflt.tar.gz";
url = downloadUrl;
sha256 = sha256_aarch64;
}
else
abortArch;
nativeBuildInputs = [ file ] nativeBuildInputs = [ file ]
++ stdenv.lib.optional installjce unzip; ++ stdenv.lib.optional installjce unzip;

View File

@ -2,10 +2,10 @@ import ./jdk-linux-base.nix {
productVersion = "8"; productVersion = "8";
patchVersion = "151"; patchVersion = "151";
downloadUrl = http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html; downloadUrl = http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html;
sha256_i686 = "0w1snn9hxwvdnk77frhdzbsm6v30v99dy5zmpy8ij7yxd57z6ql0"; sha256.i686-linux = "0w1snn9hxwvdnk77frhdzbsm6v30v99dy5zmpy8ij7yxd57z6ql0";
sha256_x86_64 = "0zq2dxbxmshz080yskhc8y2wbqi0y0kl9girxjbb4rwk837010n7"; sha256.x86_64-linux = "0zq2dxbxmshz080yskhc8y2wbqi0y0kl9girxjbb4rwk837010n7";
sha256_armv7l = "0fdkvg1al7g9lqbq10rlw400aqr0xxi2a802319sw5n0zipkrjic"; sha256.armv7l-linux = "0fdkvg1al7g9lqbq10rlw400aqr0xxi2a802319sw5n0zipkrjic";
sha256_aarch64 = "1xva22cjjpwa95h7x3xzyymn1bgxp1q67j5j304kn6cqah4k31j1"; sha256.aarch64-linux = "1xva22cjjpwa95h7x3xzyymn1bgxp1q67j5j304kn6cqah4k31j1";
jceName = "jce_policy-8.zip"; jceName = "jce_policy-8.zip";
jceDownloadUrl = http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html; jceDownloadUrl = http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html;
sha256JCE = "0n8b6b8qmwb14lllk2lk1q1ahd3za9fnjigz5xn65mpg48whl0pk"; sha256JCE = "0n8b6b8qmwb14lllk2lk1q1ahd3za9fnjigz5xn65mpg48whl0pk";

View File

@ -2,10 +2,10 @@ import ./jdk-linux-base.nix {
productVersion = "8"; productVersion = "8";
patchVersion = "152"; patchVersion = "152";
downloadUrl = http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html; downloadUrl = http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html;
sha256_i686 = "0gjc7kcfx40f43z1w1qsn1fqxdz8d46wml2g11qgm55ishhv2q7w"; sha256.i686-linux = "0gjc7kcfx40f43z1w1qsn1fqxdz8d46wml2g11qgm55ishhv2q7w";
sha256_x86_64 = "1gv1348hrgna9l3sssv3g9jzs37y1lkx05xq83chav9z1hs3p2r1"; sha256.x86_64-linux = "1gv1348hrgna9l3sssv3g9jzs37y1lkx05xq83chav9z1hs3p2r1";
sha256_armv7l = "1w0hwslsd3z0kvb3z7gmbh20xsyiz73vglmdqz2108y7alim7arm"; sha256.armv7l-linux = "1w0hwslsd3z0kvb3z7gmbh20xsyiz73vglmdqz2108y7alim7arm";
sha256_aarch64 = "13qpxa8nxsnikmm7h6ysnsdqg5vl8j7hzfa8kgh20z8a17fhj9kk"; sha256.aarch64-linux = "13qpxa8nxsnikmm7h6ysnsdqg5vl8j7hzfa8kgh20z8a17fhj9kk";
jceName = "jce_policy-8.zip"; jceName = "jce_policy-8.zip";
jceDownloadUrl = http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html; jceDownloadUrl = http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html;
sha256JCE = "0n8b6b8qmwb14lllk2lk1q1ahd3za9fnjigz5xn65mpg48whl0pk"; sha256JCE = "0n8b6b8qmwb14lllk2lk1q1ahd3za9fnjigz5xn65mpg48whl0pk";

View File

@ -3,13 +3,13 @@
stdenv.mkDerivation ( rec { stdenv.mkDerivation ( rec {
name = "ponyc-${version}"; name = "ponyc-${version}";
version = "0.20.0"; version = "0.21.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "ponylang"; owner = "ponylang";
repo = "ponyc"; repo = "ponyc";
rev = version; rev = version;
sha256 = "0shln9v0bp0q9qfipm3834vl284q5vwz9333yzgx46d0l2ivggyi"; sha256 = "0kpnmgxhha22nhl2bmch47cpr0d9h5718h3w9h7qqwd994xcfk9z";
}; };
buildInputs = [ llvm makeWrapper which ]; buildInputs = [ llvm makeWrapper which ];

View File

@ -1,19 +1,27 @@
diff -Naur a/packages/net/_test.pony b/packages/net/_test.pony diff --git a/packages/net/_test.pony b/packages/net/_test.pony
--- a/packages/net/_test.pony 1970-01-01 01:00:01.000000000 +0100 index baf29e7..b63f368 100644
+++ b/packages/net/_test.pony 2016-12-01 22:25:59.102433053 +0100 --- a/packages/net/_test.pony
@@ -5,14 +5,7 @@ +++ b/packages/net/_test.pony
@@ -5,9 +5,6 @@ actor Main is TestList
new make() => None new make() => None
fun tag tests(test: PonyTest) => fun tag tests(test: PonyTest) =>
- test(_TestBroadcast) - ifdef not osx then
- test(_TestTCPWritev) - test(_TestBroadcast)
- test(_TestTCPExpect)
- test(_TestTCPMute)
- test(_TestTCPUnmute)
- ifdef not windows then
- test(_TestTCPThrottle)
- end - end
+ None test(_TestTCPWritev)
test(_TestTCPExpect)
test(_TestTCPMute)
diff --git a/packages/net/http/_test.pony b/packages/net/http/_test.pony
index e55d5a7..40a4cb6 100644
--- a/packages/net/http/_test.pony
+++ b/packages/net/http/_test.pony
@@ -29,8 +29,6 @@ actor Main is TestList
test(_Valid)
test(_ToStringFun)
- test(_HTTPConnTest)
-
class iso _Encode is UnitTest
fun name(): String => "net/http/URLEncode.encode"
class _TestPing is UDPNotify
let _h: TestHelper

View File

@ -1,20 +1,14 @@
{ stdenv, fetchFromRepoOrCz, perl, texinfo }: { stdenv, fetchFromRepoOrCz, perl, texinfo }:
with stdenv.lib; with stdenv.lib;
let
date = "20171016";
rev = "da8c62f75d893449e232944fc62566c020b4d010";
sha256 = "0pdvyhrx7g9imxpc7gr75116imi6ifn0ihsl4fbffsji2dpi61y2";
version = "0.9.27pre-${date}";
in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "tcc-${version}"; name = "tcc-${version}";
version = "0.9.27";
src = fetchFromRepoOrCz { src = fetchFromRepoOrCz {
repo = "tinycc"; repo = "tinycc";
inherit rev; rev = "release_0_9_27";
inherit sha256; sha256 = "12mm1lqywz0akr2yb2axjfbw8lwv57nh395vzsk534riz03ml977";
}; };
nativeBuildInputs = [ perl texinfo ]; nativeBuildInputs = [ perl texinfo ];

View File

@ -628,6 +628,19 @@ self: super: {
# https://github.com/lens/lens-aeson/issues/18 # https://github.com/lens/lens-aeson/issues/18
lens-aeson = dontCheck super.lens-aeson; lens-aeson = dontCheck super.lens-aeson;
# Install icons and metadata, remove broken hgettext dependency.
# https://github.com/vasylp/hgettext/issues/10
bustle = overrideCabal super.bustle (drv: {
configureFlags = drv.configureFlags or [] ++ ["-f-hgettext"];
executableHaskellDepends = pkgs.lib.remove self.hgettext drv.executableHaskellDepends;
buildDepends = [ pkgs.libpcap ];
buildTools = with pkgs; [ gettext perl help2man intltool ];
doCheck = false; # https://github.com/wjt/bustle/issues/6
postInstall = ''
make install PREFIX=$out
'';
});
# Byte-compile elisp code for Emacs. # Byte-compile elisp code for Emacs.
ghc-mod = overrideCabal super.ghc-mod (drv: { ghc-mod = overrideCabal super.ghc-mod (drv: {
preCheck = "export HOME=$TMPDIR"; preCheck = "export HOME=$TMPDIR";

View File

@ -2,7 +2,7 @@
buildGoPackage rec { buildGoPackage rec {
name = "joker-${version}"; name = "joker-${version}";
version = "0.8.6"; version = "0.8.7";
goPackagePath = "github.com/candid82/joker"; goPackagePath = "github.com/candid82/joker";
@ -10,7 +10,7 @@ buildGoPackage rec {
rev = "v${version}"; rev = "v${version}";
owner = "candid82"; owner = "candid82";
repo = "joker"; repo = "joker";
sha256 = "0m6xi1jgss6f4maxqpwjyyhyyc71wy5a7jpm908m49xx80mz5ams"; sha256 = "1cmvja8qdrrzacdfn944f22mdg8177qkxfrb10ykq59c2yp1xn01";
}; };
preBuild = "go generate ./..."; preBuild = "go generate ./...";

View File

@ -8,4 +8,13 @@
sha256 = "1ny3rws671sa9bj5phg6k1rprlgzys73kfdr14vxq4wnwz84zbrc"; sha256 = "1ny3rws671sa9bj5phg6k1rprlgzys73kfdr14vxq4wnwz84zbrc";
}; };
} }
{
goPackagePath = "gopkg.in/yaml.v2";
fetch = {
type = "git";
url = "https://gopkg.in/yaml.v2";
rev = "a83829b6f1293c91addabc89d0571c246397bbf4";
sha256 = "1m4dsmk90sbi17571h6pld44zxz7jc4lrnl4f27dpd1l8g5xvjhh";
};
}
] ]

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "assimp-${version}"; name = "assimp-${version}";
version = "3.3.1"; version = "4.1.0";
src = fetchFromGitHub{ src = fetchFromGitHub{
owner = "assimp"; owner = "assimp";
repo = "assimp"; repo = "assimp";
rev = "v${version}"; rev = "v${version}";
sha256 = "13y44fymj13h6alig0nqab91j2qch0yh9gq8yql2zz744ch2s5vc"; sha256 = "00g61g3ixmfszzjncpvm8x7gp2livaj4lmhbycjmrw4x3gfqlc4r";
}; };
buildInputs = [ cmake boost zlib ]; buildInputs = [ cmake boost zlib ];

View File

@ -231,21 +231,13 @@ assert nvenc -> nvidia-video-sdk != null && nonfreeLicensing;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "ffmpeg-full-${version}"; name = "ffmpeg-full-${version}";
version = "3.4"; version = "3.4.1";
src = fetchurl { src = fetchurl {
url = "https://www.ffmpeg.org/releases/ffmpeg-${version}.tar.xz"; url = "https://www.ffmpeg.org/releases/ffmpeg-${version}.tar.xz";
sha256 = "1vzvpx8ixy8m44f8qwp833hv253hpghybgzbc4n8b3div3j0dvmf"; sha256 = "1h4iz7q10wj04awr2wvmp60n7b09pfwrgwbbw9sgl7klcf52fxss";
}; };
patches = [
(fetchurl {
name = "CVE-2017-16840.patch";
url = "http://git.videolan.org/?p=ffmpeg.git;a=patch;h=a94cb36ab2ad99d3a1331c9f91831ef593d94f74";
sha256 = "0zx0vh110hrykk7j863j04bx6igm2q8dlkv25mf5g4rbxafpqig3";
})
];
prePatch = '' prePatch = ''
patchShebangs . patchShebangs .
'' + stdenv.lib.optionalString stdenv.isDarwin '' '' + stdenv.lib.optionalString stdenv.isDarwin ''

View File

@ -6,16 +6,7 @@
callPackage ./generic.nix (args // rec { callPackage ./generic.nix (args // rec {
version = "${branch}"; version = "${branch}";
branch = "3.4"; branch = "3.4.1";
sha256 = "0pn8g3ab937ahslqd41crk0g4j4fh7kwimsrlfc0rl0pc3z132ax"; sha256 = "0b2aaxx8l7g3pvs4zd3mzig44cc73savrxzfm6w0lnaa2lh3wi7k";
darwinFrameworks = [ Cocoa CoreMedia ]; darwinFrameworks = [ Cocoa CoreMedia ];
patches = [
(fetchpatch{
name = "CVE-2017-16840.patch";
url = "http://git.videolan.org/?p=ffmpeg.git;a=patch;h=a94cb36ab2ad99d3a1331c9f91831ef593d94f74";
sha256 = "1rjr9lc71cyy43wsa2zxb9ygya292h9jflvr5wk61nf0vp97gjg3";
})
];
}) })

View File

@ -3,11 +3,11 @@
, libwebp, gnome3 }: , libwebp, gnome3 }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "gegl-0.3.24"; name = "gegl-0.3.26";
src = fetchurl { src = fetchurl {
url = "http://download.gimp.org/pub/gegl/0.3/${name}.tar.bz2"; url = "http://download.gimp.org/pub/gegl/0.3/${name}.tar.bz2";
sha256 = "0x4xjca05fbncy49vjs5nq3ria6j8wlpiq6yldkv0r6qcb18p80s"; sha256 = "1a9zbi6ws0r0sqynvg2fh3ad0ipnphg7w62y7whlcrbpqi29izvf";
}; };
hardeningDisable = [ "format" ]; hardeningDisable = [ "format" ];

View File

@ -1,7 +1,7 @@
{ stdenv, fetchurl, lib, file { stdenv, fetchurl, lib, file
, pkgconfig, intltool , pkgconfig, intltool
, glib, dbus_glib, json_glib , glib, dbus_glib, json_glib
, gobjectIntrospection, vala_0_23, gnome_doc_utils , gobjectIntrospection, vala_0_38, gnome_doc_utils
, gtkVersion ? null, gtk2 ? null, gtk3 ? null }: , gtkVersion ? null, gtk2 ? null, gtk3 ? null }:
with lib; with lib;
@ -10,19 +10,19 @@ stdenv.mkDerivation rec {
name = let postfix = if gtkVersion == null then "glib" else "gtk${gtkVersion}"; name = let postfix = if gtkVersion == null then "glib" else "gtk${gtkVersion}";
in "libdbusmenu-${postfix}-${version}"; in "libdbusmenu-${postfix}-${version}";
version = "${versionMajor}.${versionMinor}"; version = "${versionMajor}.${versionMinor}";
versionMajor = "12.10"; versionMajor = "16.04";
versionMinor = "2"; versionMinor = "0";
src = fetchurl { src = fetchurl {
url = "${meta.homepage}/${versionMajor}/${version}/+download/libdbusmenu-${version}.tar.gz"; url = "${meta.homepage}/${versionMajor}/${version}/+download/libdbusmenu-${version}.tar.gz";
sha256 = "9d6ad4a0b918b342ad2ee9230cce8a095eb601cb0cee6ddc1122d0481f9d04c9"; sha256 = "12l7z8dhl917iy9h02sxmpclnhkdjryn08r8i4sr8l3lrlm4mk5r";
}; };
nativeBuildInputs = [ pkgconfig intltool ]; nativeBuildInputs = [ pkgconfig intltool ];
buildInputs = [ buildInputs = [
glib dbus_glib json_glib glib dbus_glib json_glib
gobjectIntrospection vala_0_23 gnome_doc_utils gobjectIntrospection vala_0_38 gnome_doc_utils
] ++ optional (gtkVersion != null) (if gtkVersion == "2" then gtk2 else gtk3); ] ++ optional (gtkVersion != null) (if gtkVersion == "2" then gtk2 else gtk3);
postPatch = '' postPatch = ''
@ -49,10 +49,11 @@ stdenv.mkDerivation rec {
installFlags = [ installFlags = [
"sysconfdir=\${out}/etc" "sysconfdir=\${out}/etc"
"localstatedir=\${TMPDIR}" "localstatedir=\${TMPDIR}"
"typelibdir=\${out}/lib/girepository-1.0"
]; ];
meta = { meta = {
description = "A library for passing menu structures across DBus"; description = "Library for passing menu structures across DBus";
homepage = https://launchpad.net/dbusmenu; homepage = https://launchpad.net/dbusmenu;
license = with licenses; [ gpl3 lgpl21 lgpl3 ]; license = with licenses; [ gpl3 lgpl21 lgpl3 ];
platforms = platforms.linux; platforms = platforms.linux;

View File

@ -26,6 +26,15 @@ stdenv.mkDerivation rec {
url = "https://sources.debian.net/data/main/libp/libpcap/1.8.1-3/debian/patches/disable-remote.diff"; url = "https://sources.debian.net/data/main/libp/libpcap/1.8.1-3/debian/patches/disable-remote.diff";
sha256 = "0dvjax9c0spvq8cdjnkbnm65wlzaml259yragf95kzg611vszfmj"; sha256 = "0dvjax9c0spvq8cdjnkbnm65wlzaml259yragf95kzg611vszfmj";
}) })
# See https://github.com/wjt/bustle/commit/f62cf6bfa662af4ae39effbbd4891bc619e3b4e9
(fetchpatch {
url = "https://github.com/the-tcpdump-group/libpcap/commit/2be9c29d45fb1fab8e9549342a30c160b7dea3e1.patch";
sha256 = "1g8mh942vr0abn48g0bdvi4gmhq1bz0l80276603y7064qhy3wq5";
})
(fetchpatch {
url = "https://github.com/the-tcpdump-group/libpcap/commit/1a6b088a88886eac782008f37a7219a32b86da45.patch";
sha256 = "1n5ylm7ch3i1lh4y2q16b0vabgym8g8mqiqxpqcdkjdn05c1wflr";
})
]; ];
preInstall = ''mkdir -p $out/bin''; preInstall = ''mkdir -p $out/bin'';

View File

@ -30,16 +30,16 @@ in
}; };
cudnn_cudatoolkit8 = generic rec { cudnn_cudatoolkit8 = generic rec {
version = "7.0.3"; version = "7.0.5";
cudatoolkit = cudatoolkit8; cudatoolkit = cudatoolkit8;
srcName = "cudnn-${cudatoolkit.majorVersion}-linux-x64-v7.tgz"; srcName = "cudnn-${cudatoolkit.majorVersion}-linux-x64-v7.tgz";
sha256 = "0gzwadxcyirr2zgiikdapnm860x3gcfwfxh5xn3s47zaa03x4kg4"; sha256 = "9e0b31735918fe33a79c4b3e612143d33f48f61c095a3b993023cdab46f6d66e";
}; };
cudnn_cudatoolkit9 = generic rec { cudnn_cudatoolkit9 = generic rec {
version = "7.0.3"; version = "7.0.5";
cudatoolkit = cudatoolkit9; cudatoolkit = cudatoolkit9;
srcName = "cudnn-${cudatoolkit.majorVersion}-linux-x64-v7.tgz"; srcName = "cudnn-${cudatoolkit.majorVersion}-linux-x64-v7.tgz";
sha256 = "1ycy413cq9y9yxj20djqv05aarn3qzcy2md3dvvjpvhc269kwn09"; sha256 = "1a3e076447d5b9860c73d9bebe7087ffcb7b0c8814fd1e506096435a2ad9ab0e";
}; };
} }

View File

@ -3,12 +3,12 @@
libXext, wayland, mesa_noglu, makeWrapper }: libXext, wayland, mesa_noglu, makeWrapper }:
let let
version = "1.0.42.2"; version = "1.0.61.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "KhronosGroup"; owner = "KhronosGroup";
repo = "Vulkan-LoaderAndValidationLayers"; repo = "Vulkan-LoaderAndValidationLayers";
rev = "sdk-${version}"; rev = "sdk-${version}";
sha256 = "0na1ax2cgv6w29213mby56mndfsj3iizj3n5pbpy4s4p7ij9kdgn"; sha256 = "043kw6wnrpdplnb40x6n9rgf3gygsn9jiv91y458sydbhalfr945";
}; };
in in
@ -48,11 +48,12 @@ stdenv.mkDerivation rec {
sed -i "s:\\./lib:$out/lib/lib:g" "$out/share/vulkan/"*/*.json sed -i "s:\\./lib:$out/lib/lib:g" "$out/share/vulkan/"*/*.json
mkdir -p $dev/include mkdir -p $dev/include
cp -rv ../include $dev/ cp -rv ../include $dev/
mkdir -p $demos/share/vulkan-demos
cp demos/*.spv demos/*.ppm $demos/share/vulkan-demos
mkdir -p $demos/bin mkdir -p $demos/bin
cp demos/*.spv demos/*.ppm $demos/bin find demos -type f -executable -not -name vulkaninfo -exec cp -v {} $demos/bin \;
find demos -type f -executable -not -name vulkaninfo -exec cp {} $demos/bin \;
for p in cube cubepp; do for p in cube cubepp; do
wrapProgram $demos/bin/$p --run "cd $demos/bin" wrapProgram $demos/bin/$p --run "cd $demos/share/vulkan-demos"
done done
''; '';

View File

@ -1,13 +1,16 @@
{ stdenv, fetchurl, perl, python2, ruby, bison, gperf, cmake { stdenv, fetchurl, perl, python2, ruby, bison, gperf, cmake
, pkgconfig, gettext, gobjectIntrospection, libnotify, gnutls , pkgconfig, gettext, gobjectIntrospection, libnotify, gnutls
, gtk2, gtk3, wayland, libwebp, enchant, xlibs, libxkbcommon, epoxy, at_spi2_core , gtk3, wayland, libwebp, enchant, xlibs, libxkbcommon, epoxy, at_spi2_core
, libxml2, libsoup, libsecret, libxslt, harfbuzz, libpthreadstubs, pcre, nettle, libtasn1, p11_kit , libxml2, libsoup, libsecret, libxslt, harfbuzz, libpthreadstubs, pcre, nettle, libtasn1, p11_kit
, libidn, libedit, readline, mesa, libintlOrEmpty , libidn, libedit, readline, mesa, libintlOrEmpty
, enableGeoLocation ? true, geoclue2, sqlite , enableGeoLocation ? true, geoclue2, sqlite
, enableGtk2Plugins ? false, gtk2 ? null
, gst-plugins-base, gst-plugins-bad , gst-plugins-base, gst-plugins-bad
}: }:
assert enableGeoLocation -> geoclue2 != null; assert enableGeoLocation -> geoclue2 != null;
assert enableGtk2Plugins -> gtk2 != null;
assert stdenv.isDarwin -> !enableGtk2Plugins;
with stdenv.lib; with stdenv.lib;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
@ -16,7 +19,7 @@ stdenv.mkDerivation rec {
meta = { meta = {
description = "Web content rendering engine, GTK+ port"; description = "Web content rendering engine, GTK+ port";
homepage = http://webkitgtk.org/; homepage = https://webkitgtk.org/;
license = licenses.bsd2; license = licenses.bsd2;
platforms = with platforms; linux ++ darwin; platforms = with platforms; linux ++ darwin;
hydraPlatforms = []; hydraPlatforms = [];
@ -59,14 +62,13 @@ stdenv.mkDerivation rec {
"-DPORT=GTK" "-DPORT=GTK"
"-DUSE_LIBHYPHEN=0" "-DUSE_LIBHYPHEN=0"
] ]
++ optional (!enableGtk2Plugins) "-DENABLE_PLUGIN_PROCESS_GTK2=OFF"
++ optional stdenv.isLinux "-DENABLE_GLES2=ON" ++ optional stdenv.isLinux "-DENABLE_GLES2=ON"
++ optionals stdenv.isDarwin [ ++ optionals stdenv.isDarwin [
"-DUSE_SYSTEM_MALLOC=ON" "-DUSE_SYSTEM_MALLOC=ON"
"-DUSE_ACCELERATE=0" "-DUSE_ACCELERATE=0"
"-DENABLE_INTROSPECTION=ON" "-DENABLE_INTROSPECTION=ON"
"-DENABLE_MINIBROWSER=OFF" "-DENABLE_MINIBROWSER=OFF"
"-DENABLE_PLUGIN_PROCESS_GTK2=OFF"
"-DENABLE_MINIBROWSER=OFF"
"-DENABLE_VIDEO=ON" "-DENABLE_VIDEO=ON"
"-DENABLE_QUARTZ_TARGET=ON" "-DENABLE_QUARTZ_TARGET=ON"
"-DENABLE_X11_TARGET=OFF" "-DENABLE_X11_TARGET=OFF"
@ -85,10 +87,11 @@ stdenv.mkDerivation rec {
]; ];
buildInputs = libintlOrEmpty ++ [ buildInputs = libintlOrEmpty ++ [
gtk2 libwebp enchant libnotify gnutls pcre nettle libidn libwebp enchant libnotify gnutls pcre nettle libidn
libxml2 libsecret libxslt harfbuzz libpthreadstubs libtasn1 p11_kit libxml2 libsecret libxslt harfbuzz libpthreadstubs libtasn1 p11_kit
sqlite gst-plugins-base gst-plugins-bad libxkbcommon epoxy at_spi2_core sqlite gst-plugins-base gst-plugins-bad libxkbcommon epoxy at_spi2_core
] ++ optional enableGeoLocation geoclue2 ] ++ optional enableGeoLocation geoclue2
++ optional enableGtk2Plugins gtk2
++ (with xlibs; [ libXdmcp libXt libXtst ]) ++ (with xlibs; [ libXdmcp libXt libXtst ])
++ optionals stdenv.isDarwin [ libedit readline mesa ] ++ optionals stdenv.isDarwin [ libedit readline mesa ]
++ optional stdenv.isLinux wayland; ++ optional stdenv.isLinux wayland;

View File

@ -346,13 +346,13 @@ let
sha1 = "4065e2013cf9fb916ddfd82efb506ad4c6769062"; sha1 = "4065e2013cf9fb916ddfd82efb506ad4c6769062";
}; };
}; };
"fancy-log-1.3.0" = { "fancy-log-1.3.1" = {
name = "fancy-log"; name = "fancy-log";
packageName = "fancy-log"; packageName = "fancy-log";
version = "1.3.0"; version = "1.3.1";
src = fetchurl { src = fetchurl {
url = "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.0.tgz"; url = "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.1.tgz";
sha1 = "45be17d02bb9917d60ccffd4995c999e6c8c9948"; sha1 = "c4a3462ba14adf5dfbab79731fd3844a2069cbbb";
}; };
}; };
"gulplog-1.0.0" = { "gulplog-1.0.0" = {
@ -454,6 +454,15 @@ let
sha1 = "b0455b38fc5e0cf30d4325132e461970c2091cde"; sha1 = "b0455b38fc5e0cf30d4325132e461970c2091cde";
}; };
}; };
"ansi-gray-0.1.1" = {
name = "ansi-gray";
packageName = "ansi-gray";
version = "0.1.1";
src = fetchurl {
url = "https://registry.npmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz";
sha1 = "2962cf54ec9792c48510a3deb524436861ef7251";
};
};
"time-stamp-1.1.0" = { "time-stamp-1.1.0" = {
name = "time-stamp"; name = "time-stamp";
packageName = "time-stamp"; packageName = "time-stamp";
@ -463,6 +472,15 @@ let
sha1 = "764a5a11af50561921b133f3b44e618687e0f5c3"; sha1 = "764a5a11af50561921b133f3b44e618687e0f5c3";
}; };
}; };
"ansi-wrap-0.1.0" = {
name = "ansi-wrap";
packageName = "ansi-wrap";
version = "0.1.0";
src = fetchurl {
url = "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz";
sha1 = "a82250ddb0015e9a27ca82e82ea603bbfa45efaf";
};
};
"glogg-1.0.0" = { "glogg-1.0.0" = {
name = "glogg"; name = "glogg";
packageName = "glogg"; packageName = "glogg";
@ -1642,13 +1660,13 @@ let
sha1 = "3ff21f198cad2175f9f3b781853fd94d0d19b590"; sha1 = "3ff21f198cad2175f9f3b781853fd94d0d19b590";
}; };
}; };
"natives-1.1.0" = { "natives-1.1.1" = {
name = "natives"; name = "natives";
packageName = "natives"; packageName = "natives";
version = "1.1.0"; version = "1.1.1";
src = fetchurl { src = fetchurl {
url = "https://registry.npmjs.org/natives/-/natives-1.1.0.tgz"; url = "https://registry.npmjs.org/natives/-/natives-1.1.1.tgz";
sha1 = "e9ff841418a6b2ec7a495e939984f78f163e6e31"; sha512 = "08a9lf00d2pkqmdi6ipp00pjin0gwl6fh283cjdjbayaz834lppwrw19kn4s642kwa46bfcway3033j6rbqd96iy86qrzrfgz35mr7i";
}; };
}; };
"minimist-0.0.8" = { "minimist-0.0.8" = {
@ -4270,8 +4288,13 @@ in
sources."array-uniq-1.0.3" sources."array-uniq-1.0.3"
sources."beeper-1.1.1" sources."beeper-1.1.1"
sources."dateformat-2.2.0" sources."dateformat-2.2.0"
(sources."fancy-log-1.3.0" // { (sources."fancy-log-1.3.1" // {
dependencies = [ dependencies = [
(sources."ansi-gray-0.1.1" // {
dependencies = [
sources."ansi-wrap-0.1.0"
];
})
sources."time-stamp-1.1.0" sources."time-stamp-1.1.0"
]; ];
}) })
@ -4668,7 +4691,7 @@ in
}) })
(sources."graceful-fs-3.0.11" // { (sources."graceful-fs-3.0.11" // {
dependencies = [ dependencies = [
sources."natives-1.1.0" sources."natives-1.1.1"
]; ];
}) })
(sources."mkdirp-0.5.1" // { (sources."mkdirp-0.5.1" // {
@ -6093,10 +6116,10 @@ in
npm = nodeEnv.buildNodePackage { npm = nodeEnv.buildNodePackage {
name = "npm"; name = "npm";
packageName = "npm"; packageName = "npm";
version = "5.5.1"; version = "5.6.0";
src = fetchurl { src = fetchurl {
url = "https://registry.npmjs.org/npm/-/npm-5.5.1.tgz"; url = "https://registry.npmjs.org/npm/-/npm-5.6.0.tgz";
sha512 = "3chqlcr8vp121jxny46vi43cm5r0p31l7a24jbbq5jz4zzi0bvp0isk0i8xqylllcas38b75a9nl9p9pj0azbmbqf1bcyf793q8wxik"; sha512 = "0nnr796ik5h8bsd3k9ygivivr3na2ksnf5iipf8dsnn20j10i9sgmhmsnzbimd2pqgjbrpp8gbpl2q7j5c7yjqjfirrh8xcc3v3gpws";
}; };
buildInputs = globalBuildInputs; buildInputs = globalBuildInputs;
meta = { meta = {

View File

@ -1,5 +1,6 @@
[ [
"alloy" "alloy"
, "asar"
, "azure-cli" , "azure-cli"
, "bower" , "bower"
, "bower2nix" , "bower2nix"

File diff suppressed because it is too large Load Diff

View File

@ -6,17 +6,16 @@
let let
inherit (stdenv.lib) optionals; inherit (stdenv.lib) optionals;
pname = "ocaml-cairo2"; version = "0.5";
version = "0.4.6";
in in
stdenv.mkDerivation { stdenv.mkDerivation {
name = "${pname}-${version}"; name = "ocaml${ocaml.version}-cairo2-${version}";
src = fetchurl { src = fetchurl {
url = "http://forge.ocamlcore.org/frs/download.php/1279/cairo2-0.4.6.tar.gz"; url = "https://github.com/Chris00/ocaml-cairo/releases/download/${version}/cairo2-${version}.tar.gz";
sha256 = "1lc1iv5yz49avbc0wbrw9nrx8dn0c35r7cykivjln1zc2fwscf7w"; sha256 = "1559df74rzh4v7c9hr6phymq1f5121s83q0xy3r83x4apj74dchj";
}; };
nativeBuildInputs = [ pkgconfig ]; nativeBuildInputs = [ pkgconfig ];
@ -39,7 +38,7 @@ stdenv.mkDerivation {
installPhase = "ocaml setup.ml -install"; installPhase = "ocaml setup.ml -install";
meta = with stdenv.lib; { meta = with stdenv.lib; {
homepage = http://forge.ocamlcore.org/projects/cairo; homepage = "https://github.com/Chris00/ocaml-cairo";
description = "Binding to Cairo, a 2D Vector Graphics Library"; description = "Binding to Cairo, a 2D Vector Graphics Library";
longDescription = '' longDescription = ''
This is a binding to Cairo, a 2D graphics library with support for This is a binding to Cairo, a 2D graphics library with support for

View File

@ -4,14 +4,14 @@
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "0.99.0"; version = "1.0.0";
name = "ocaml${ocaml.version}-cohttp-${version}"; name = "ocaml${ocaml.version}-cohttp-${version}";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "mirage"; owner = "mirage";
repo = "ocaml-cohttp"; repo = "ocaml-cohttp";
rev = "v${version}"; rev = "v${version}";
sha256 = "0y8qhzfwrc6486apmp2rsj822cnfhnz4w8rsb52w5wqmsgjxx1bj"; sha256 = "0h9ak2bvhmcdxickvybpg45il33xszh2ksacpjgqrnnslxnh81ig";
}; };
buildInputs = [ ocaml findlib jbuilder jsonm ppx_fields_conv ppx_sexp_conv ]; buildInputs = [ ocaml findlib jbuilder jsonm ppx_fields_conv ppx_sexp_conv ];

View File

@ -15,5 +15,6 @@ stdenv.mkDerivation rec {
meta = { meta = {
description = "Client implementation of the Smart HTTP Git protocol in pure OCaml"; description = "Client implementation of the Smart HTTP Git protocol in pure OCaml";
inherit (git.meta) homepage license maintainers platforms; inherit (git.meta) homepage license maintainers platforms;
broken = true;
}; };
} }

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