Merge branch 'master' into staging
This commit is contained in:
commit
3fe32b675e
@ -14,4 +14,5 @@
|
||||
<xi:include href="functions/fhs-environments.xml" />
|
||||
<xi:include href="functions/shell.xml" />
|
||||
<xi:include href="functions/dockertools.xml" />
|
||||
<xi:include href="functions/prefer-remote-fetch.xml" />
|
||||
</chapter>
|
||||
|
27
doc/functions/prefer-remote-fetch.xml
Normal file
27
doc/functions/prefer-remote-fetch.xml
Normal file
@ -0,0 +1,27 @@
|
||||
<section xmlns="http://docbook.org/ns/docbook"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:xi="http://www.w3.org/2001/xinclude"
|
||||
xml:id="sec-prefer-remote-fetch">
|
||||
<title>prefer-remote-fetch overlay</title>
|
||||
|
||||
<para>
|
||||
<function>prefer-remote-fetch</function> is an overlay that download sources
|
||||
on remote builder. This is useful when the evaluating machine has a slow
|
||||
upload while the builder can fetch faster directly from the source.
|
||||
To use it, put the following snippet as a new overlay:
|
||||
<programlisting>
|
||||
self: super:
|
||||
(super.prefer-remote-fetch self super)
|
||||
</programlisting>
|
||||
|
||||
A full configuration example for that sets the overlay up for your own account,
|
||||
could look like this
|
||||
|
||||
<programlisting>
|
||||
$ mkdir ~/.config/nixpkgs/overlays/
|
||||
$ cat > ~/.config/nixpkgs/overlays/prefer-remote-fetch.nix <<EOF
|
||||
self: super: super.prefer-remote-fetch self super
|
||||
EOF
|
||||
</programlisting>
|
||||
</para>
|
||||
</section>
|
@ -1,21 +1,41 @@
|
||||
/* List of NixOS maintainers.
|
||||
|
||||
handle = {
|
||||
name = "Real name";
|
||||
# Required
|
||||
name = "Your name";
|
||||
email = "address@example.org";
|
||||
|
||||
# Optional
|
||||
github = "GithubUsername";
|
||||
keys = [{
|
||||
longkeyid = "rsa2048/0x0123456789ABCDEF";
|
||||
fingerprint = "AAAA BBBB CCCC DDDD EEEE FFFF 0000 1111 2222 3333";
|
||||
}];
|
||||
};
|
||||
|
||||
where `name` is your real name, `email` is your maintainer email
|
||||
address and `github` is your GitHub handle (as it appears in the
|
||||
URL of your profile page, `https://github.com/<userhandle>`).
|
||||
address
|
||||
The only required fields are `name` and `email`.
|
||||
where
|
||||
|
||||
- `handle` is the handle you are going to use in nixpkgs expressions,
|
||||
- `name` is your, preferably real, name,
|
||||
- `email` is your maintainer email address, and
|
||||
- `github` is your GitHub handle (as it appears in the URL of your profile page, `https://github.com/<userhandle>`),
|
||||
- `keys` is a list of your PGP/GPG key IDs and fingerprints.
|
||||
|
||||
`handle == github` is strongly preffered whenever `github` is an acceptable attribute name and is short and convenient.
|
||||
|
||||
Add PGP/GPG keys only if you actually use them to sign commits and/or mail.
|
||||
|
||||
To get the required PGP/GPG values for a key run
|
||||
```shell
|
||||
gpg --keyid-format 0xlong --fingerprint <email> | head -n 2
|
||||
```
|
||||
|
||||
!!! Note that PGP/GPG values stored here are for informational purposes only, don't use this file as a source of truth.
|
||||
|
||||
More fields may be added in the future.
|
||||
|
||||
Please keep the list alphabetically sorted.
|
||||
See `../maintainers/scripts/check-maintainer-github-handles.sh`
|
||||
for an example on how to work with this data.
|
||||
See `./scripts/check-maintainer-github-handles.sh` for an example on how to work with this data.
|
||||
*/
|
||||
{
|
||||
"1000101" = {
|
||||
@ -341,6 +361,11 @@
|
||||
github = "apeyroux";
|
||||
name = "Alexandre Peyroux";
|
||||
};
|
||||
ar1a = {
|
||||
email = "aria@ar1as.space";
|
||||
github = "ar1a";
|
||||
name = "Aria Edmonds";
|
||||
};
|
||||
arcadio = {
|
||||
email = "arc@well.ox.ac.uk";
|
||||
github = "arcadio";
|
||||
@ -1586,6 +1611,11 @@
|
||||
email = "eocallaghan@alterapraxis.com";
|
||||
name = "Edward O'Callaghan";
|
||||
};
|
||||
fusion809 = {
|
||||
email = "brentonhorne77@gmail.com";
|
||||
github = "fusion809";
|
||||
name = "Brenton Horne";
|
||||
};
|
||||
fuuzetsu = {
|
||||
email = "fuuzetsu@fuuzetsu.co.uk";
|
||||
github = "fuuzetsu";
|
||||
@ -1919,6 +1949,11 @@
|
||||
github = "infinisil";
|
||||
name = "Silvan Mosberger";
|
||||
};
|
||||
ingenieroariel = {
|
||||
email = "ariel@nunez.co";
|
||||
github = "ingenieroariel";
|
||||
name = "Ariel Nunez";
|
||||
};
|
||||
ironpinguin = {
|
||||
email = "michele@catalano.de";
|
||||
github = "ironpinguin";
|
||||
@ -1933,6 +1968,15 @@
|
||||
email = "tkatchev@gmail.com";
|
||||
name = "Ivan Tkatchev";
|
||||
};
|
||||
ivegotasthma = {
|
||||
email = "ivegotasthma@protonmail.com";
|
||||
github = "ivegotasthma";
|
||||
name = "John Doe";
|
||||
keys = [{
|
||||
longkeyid = "rsa4096/09AC52AEA87817A4";
|
||||
fingerprint = "4008 2A5B 56A4 79B9 83CB 95FD 09AC 52AE A878 17A4";
|
||||
}];
|
||||
};
|
||||
ixmatus = {
|
||||
email = "parnell@digitalmentat.com";
|
||||
github = "ixmatus";
|
||||
@ -3245,6 +3289,11 @@
|
||||
github = "nyarly";
|
||||
name = "Judson Lester";
|
||||
};
|
||||
nzhang-zh = {
|
||||
email = "n.zhang.hp.au@gmail.com";
|
||||
github = "nzhang-zh";
|
||||
name = "Ning Zhang";
|
||||
};
|
||||
obadz = {
|
||||
email = "obadz-nixos@obadz.com";
|
||||
github = "obadz";
|
||||
@ -3323,6 +3372,10 @@
|
||||
email = "oxij@oxij.org";
|
||||
github = "oxij";
|
||||
name = "Jan Malakhovski";
|
||||
keys = [{
|
||||
longkeyid = "rsa2048/0x0E6CA66E5C557AA8";
|
||||
fingerprint = "514B B966 B46E 3565 0508 86E8 0E6C A66E 5C55 7AA8";
|
||||
}];
|
||||
};
|
||||
oyren = {
|
||||
email = "m.scheuren@oyra.eu";
|
||||
@ -4316,6 +4369,11 @@
|
||||
github = "t184256";
|
||||
name = "Alexander Sosedkin";
|
||||
};
|
||||
tadeokondrak = {
|
||||
email = "me@tadeo.ca";
|
||||
github = "tadeokondrak";
|
||||
name = "Tadeo Kondrak";
|
||||
};
|
||||
tadfisher = {
|
||||
email = "tadfisher@gmail.com";
|
||||
github = "tadfisher";
|
||||
|
@ -1,37 +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-debugging-nixos-tests">
|
||||
<title>Debugging NixOS tests</title>
|
||||
|
||||
<para>
|
||||
Tests may fail and infrastructure offers access to inspect machine state.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
To prevent test from stopping and cleaning up, insert a sleep command:
|
||||
</para>
|
||||
|
||||
<programlisting>
|
||||
$machine->succeed("sleep 84000");
|
||||
</programlisting>
|
||||
|
||||
<para>
|
||||
As soon as machine starts run as root:
|
||||
</para>
|
||||
|
||||
<programlisting>
|
||||
nix-shell -p socat --run "socat STDIO,raw,echo=0,escape=0x11 UNIX:/tmp/nix-build-vm-test-run-*.drv-0/vm-state-machine/backdoor"
|
||||
</programlisting>
|
||||
|
||||
<para>
|
||||
You may need to find the correct path, replacing <literal>/tmp</literal>,
|
||||
<literal>*</literal> or <literal>machine</literal>.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Press "enter" to open up console and login as "root". After you're done,
|
||||
press "ctrl-q" to exit the console.
|
||||
</para>
|
||||
</section>
|
@ -16,5 +16,4 @@ xlink:href="https://github.com/NixOS/nixpkgs/tree/master/nixos/tests">nixos/test
|
||||
<xi:include href="writing-nixos-tests.xml" />
|
||||
<xi:include href="running-nixos-tests.xml" />
|
||||
<xi:include href="running-nixos-tests-interactively.xml" />
|
||||
<xi:include href="debugging-nixos-tests.xml" />
|
||||
</chapter>
|
||||
|
@ -156,10 +156,8 @@ sub start {
|
||||
$ENV{USE_TMPDIR} = 1;
|
||||
$ENV{QEMU_OPTS} =
|
||||
($self->{allowReboot} ? "" : "-no-reboot ") .
|
||||
"-monitor unix:./monitor " .
|
||||
"-chardev socket,id=shell,path=./shell -device virtio-serial -device virtconsole,chardev=shell " .
|
||||
# socket backdoor, see "Debugging NixOS tests" section in NixOS manual
|
||||
"-chardev socket,id=backdoor,path=./backdoor,server,nowait -device virtio-serial -device virtconsole,chardev=backdoor " .
|
||||
"-monitor unix:./monitor -chardev socket,id=shell,path=./shell " .
|
||||
"-device virtio-serial -device virtconsole,chardev=shell " .
|
||||
"-device virtio-rng-pci " .
|
||||
($showGraphics ? "-serial stdio" : "-nographic") . " " . ($ENV{QEMU_OPTS} || "");
|
||||
chdir $self->{stateDir} or die;
|
||||
|
@ -449,7 +449,11 @@ EOF
|
||||
if (-e $slave) {
|
||||
my $dmName = read_file("/sys/class/block/$deviceName/dm/name");
|
||||
chomp $dmName;
|
||||
$fileSystems .= " boot.initrd.luks.devices.\"$dmName\".device = \"${\(findStableDevPath $slave)}\";\n\n";
|
||||
# Ensure to add an entry only once
|
||||
my $luksDevice = " boot.initrd.luks.devices.\"$dmName\".device";
|
||||
if ($fileSystems !~ /^\Q$luksDevice\E/m) {
|
||||
$fileSystems .= "$luksDevice = \"${\(findStableDevPath $slave)}\";\n\n";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -167,16 +167,16 @@ in
|
||||
The set of system-wide known SSH hosts.
|
||||
'';
|
||||
example = literalExample ''
|
||||
[
|
||||
{
|
||||
{
|
||||
myhost = {
|
||||
hostNames = [ "myhost" "myhost.mydomain.com" "10.10.1.4" ];
|
||||
publicKeyFile = ./pubkeys/myhost_ssh_host_dsa_key.pub;
|
||||
}
|
||||
{
|
||||
};
|
||||
myhost2 = {
|
||||
hostNames = [ "myhost2" ];
|
||||
publicKeyFile = ./pubkeys/myhost2_ssh_host_dsa_key.pub;
|
||||
}
|
||||
]
|
||||
};
|
||||
}
|
||||
'';
|
||||
};
|
||||
|
||||
|
@ -362,7 +362,7 @@ in
|
||||
${optionalString (cfg.ensureDatabases != []) ''
|
||||
(
|
||||
${concatMapStrings (database: ''
|
||||
echo "CREATE DATABASE IF NOT EXISTS ${database};"
|
||||
echo "CREATE DATABASE IF NOT EXISTS \`${database}\`;"
|
||||
'') cfg.ensureDatabases}
|
||||
) | ${mysql}/bin/mysql -u root -N
|
||||
''}
|
||||
|
@ -325,7 +325,8 @@ let
|
||||
promTypes.relabel_config = types.submodule {
|
||||
options = {
|
||||
source_labels = mkOption {
|
||||
type = types.listOf types.str;
|
||||
type = with types; nullOr (listOf str);
|
||||
default = null;
|
||||
description = ''
|
||||
The source labels select values from existing labels. Their content
|
||||
is concatenated using the configured separator and matched against
|
||||
|
@ -8,21 +8,31 @@ let
|
||||
|
||||
stateDir = "/run/phpfpm";
|
||||
|
||||
poolConfigs = cfg.poolConfigs // mapAttrs mkPool cfg.pools;
|
||||
poolConfigs =
|
||||
(mapAttrs mapPoolConfig cfg.poolConfigs) //
|
||||
(mapAttrs mapPool cfg.pools);
|
||||
|
||||
mkPool = n: p: ''
|
||||
listen = ${p.listen}
|
||||
${p.extraConfig}
|
||||
'';
|
||||
mapPoolConfig = n: p: {
|
||||
phpPackage = cfg.phpPackage;
|
||||
config = p;
|
||||
};
|
||||
|
||||
fpmCfgFile = pool: poolConfig: pkgs.writeText "phpfpm-${pool}.conf" ''
|
||||
mapPool = n: p: {
|
||||
phpPackage = p.phpPackage;
|
||||
config = ''
|
||||
listen = ${p.listen}
|
||||
${p.extraConfig}
|
||||
'';
|
||||
};
|
||||
|
||||
fpmCfgFile = pool: conf: pkgs.writeText "phpfpm-${pool}.conf" ''
|
||||
[global]
|
||||
error_log = syslog
|
||||
daemonize = no
|
||||
${cfg.extraConfig}
|
||||
|
||||
[${pool}]
|
||||
${poolConfig}
|
||||
${conf}
|
||||
'';
|
||||
|
||||
phpIni = pkgs.runCommand "php.ini" {
|
||||
@ -97,13 +107,14 @@ in {
|
||||
|
||||
pools = mkOption {
|
||||
type = types.attrsOf (types.submodule (import ./pool-options.nix {
|
||||
inherit lib;
|
||||
inherit lib config;
|
||||
}));
|
||||
default = {};
|
||||
example = literalExample ''
|
||||
{
|
||||
mypool = {
|
||||
listen = "/path/to/unix/socket";
|
||||
phpPackage = pkgs.php;
|
||||
extraConfig = '''
|
||||
user = nobody
|
||||
pm = dynamic
|
||||
@ -144,7 +155,7 @@ in {
|
||||
mkdir -p ${stateDir}
|
||||
'';
|
||||
serviceConfig = let
|
||||
cfgFile = fpmCfgFile pool poolConfig;
|
||||
cfgFile = fpmCfgFile pool poolConfig.config;
|
||||
in {
|
||||
Slice = "phpfpm.slice";
|
||||
PrivateDevices = true;
|
||||
@ -153,7 +164,7 @@ in {
|
||||
# XXX: We need AF_NETLINK to make the sendmail SUID binary from postfix work
|
||||
RestrictAddressFamilies = "AF_UNIX AF_INET AF_INET6 AF_NETLINK";
|
||||
Type = "notify";
|
||||
ExecStart = "${cfg.phpPackage}/bin/php-fpm -y ${cfgFile} -c ${phpIni}";
|
||||
ExecStart = "${poolConfig.phpPackage}/bin/php-fpm -y ${cfgFile} -c ${phpIni}";
|
||||
ExecReload = "${pkgs.coreutils}/bin/kill -USR2 $MAINPID";
|
||||
};
|
||||
}
|
||||
|
@ -1,4 +1,8 @@
|
||||
{ lib }:
|
||||
{ lib, config }:
|
||||
|
||||
let
|
||||
fpmCfg = config.services.phpfpm;
|
||||
in
|
||||
|
||||
with lib; {
|
||||
|
||||
@ -12,6 +16,15 @@ with lib; {
|
||||
'';
|
||||
};
|
||||
|
||||
phpPackage = mkOption {
|
||||
type = types.package;
|
||||
default = fpmCfg.phpPackage;
|
||||
defaultText = "config.services.phpfpm.phpPackage";
|
||||
description = ''
|
||||
The PHP package to use for running this PHP-FPM pool.
|
||||
'';
|
||||
};
|
||||
|
||||
extraConfig = mkOption {
|
||||
type = types.lines;
|
||||
example = ''
|
||||
|
@ -36,6 +36,8 @@ let
|
||||
${pkgs.glib.dev}/bin/glib-compile-schemas $out/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas/
|
||||
'';
|
||||
|
||||
flashbackEnabled = cfg.flashback.enableMetacity || length cfg.flashback.customSessions > 0;
|
||||
|
||||
in {
|
||||
|
||||
options = {
|
||||
@ -71,6 +73,36 @@ in {
|
||||
};
|
||||
|
||||
debug = mkEnableOption "gnome-session debug messages";
|
||||
|
||||
flashback = {
|
||||
enableMetacity = mkEnableOption "Enable the standard GNOME Flashback session with Metacity.";
|
||||
|
||||
customSessions = mkOption {
|
||||
type = types.listOf (types.submodule {
|
||||
options = {
|
||||
wmName = mkOption {
|
||||
type = types.str;
|
||||
description = "The filename-compatible name of the window manager to use.";
|
||||
example = "xmonad";
|
||||
};
|
||||
|
||||
wmLabel = mkOption {
|
||||
type = types.str;
|
||||
description = "The pretty name of the window manager to use.";
|
||||
example = "XMonad";
|
||||
};
|
||||
|
||||
wmCommand = mkOption {
|
||||
type = types.str;
|
||||
description = "The executable of the window manager to use.";
|
||||
example = "\${pkgs.haskellPackages.xmonad}/bin/xmonad";
|
||||
};
|
||||
};
|
||||
});
|
||||
default = [];
|
||||
description = "Other GNOME Flashback sessions to enable.";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
environment.gnome3.excludePackages = mkOption {
|
||||
@ -113,7 +145,9 @@ in {
|
||||
services.telepathy.enable = mkDefault true;
|
||||
networking.networkmanager.enable = mkDefault true;
|
||||
services.upower.enable = config.powerManagement.enable;
|
||||
services.dbus.packages = mkIf config.services.printing.enable [ pkgs.system-config-printer ];
|
||||
services.dbus.packages =
|
||||
optional config.services.printing.enable pkgs.system-config-printer ++
|
||||
optional flashbackEnabled pkgs.gnome3.gnome-screensaver;
|
||||
services.colord.enable = mkDefault true;
|
||||
services.packagekit.enable = mkDefault true;
|
||||
hardware.bluetooth.enable = mkDefault true;
|
||||
@ -127,7 +161,15 @@ in {
|
||||
|
||||
fonts.fonts = [ pkgs.dejavu_fonts pkgs.cantarell-fonts ];
|
||||
|
||||
services.xserver.displayManager.extraSessionFilePackages = [ pkgs.gnome3.gnome-session ];
|
||||
services.xserver.displayManager.extraSessionFilePackages = [ pkgs.gnome3.gnome-session ]
|
||||
++ map
|
||||
(wm: pkgs.gnome3.gnome-flashback.mkSessionForWm {
|
||||
inherit (wm) wmName wmLabel wmCommand;
|
||||
}) (optional cfg.flashback.enableMetacity {
|
||||
wmName = "metacity";
|
||||
wmLabel = "Metacity";
|
||||
wmCommand = "${pkgs.gnome3.metacity}/bin/metacity";
|
||||
} ++ cfg.flashback.customSessions);
|
||||
|
||||
environment.extraInit = ''
|
||||
${concatMapStrings (p: ''
|
||||
@ -177,6 +219,9 @@ in {
|
||||
"/share/nautilus-python/extensions"
|
||||
];
|
||||
|
||||
security.pam.services.gnome-screensaver = mkIf flashbackEnabled {
|
||||
enableGnomeKeyring = true;
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
|
@ -535,6 +535,7 @@ in
|
||||
|
||||
systemd.timers.zfs-scrub = {
|
||||
wantedBy = [ "timers.target" ];
|
||||
after = [ "multi-user.target" ]; # Apparently scrubbing before boot is complete hangs the system? #53583
|
||||
timerConfig = {
|
||||
OnCalendar = cfgScrub.interval;
|
||||
Persistent = "yes";
|
||||
|
@ -55,8 +55,7 @@ with import ../../lib/qemu-flags.nix { inherit pkgs; };
|
||||
systemd.services."serial-getty@hvc0".enable = false;
|
||||
|
||||
# Only use a serial console, no TTY.
|
||||
# hvc1: socket backdoor, see "Debugging NixOS tests" section in NixOS manual
|
||||
virtualisation.qemu.consoles = [ "hvc1" qemuSerialDevice ];
|
||||
virtualisation.qemu.consoles = [ qemuSerialDevice ];
|
||||
|
||||
boot.initrd.preDeviceCommands =
|
||||
''
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
buildGoPackage rec {
|
||||
name = "go-ethereum-${version}";
|
||||
version = "1.8.20";
|
||||
version = "1.8.21";
|
||||
goPackagePath = "github.com/ethereum/go-ethereum";
|
||||
|
||||
# Fix for usb-related segmentation faults on darwin
|
||||
@ -16,7 +16,7 @@ buildGoPackage rec {
|
||||
owner = "ethereum";
|
||||
repo = "go-ethereum";
|
||||
rev = "v${version}";
|
||||
sha256 = "0m2q1nz6f39pyr2rk6vflkwi4ykganzwr7wndpwr9rliw0x8jgi0";
|
||||
sha256 = "1p4qfxa90l26s9q4hddyb93gdf7vb0sb46z9n26ijiqlxdq3z7v2";
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
@ -1,5 +1,5 @@
|
||||
{ stdenv, fetchurl, pkgconfig, wrapGAppsHook, intltool, libgpod, curl, flac,
|
||||
gnome3, gtk3, gettext, perlPackages, flex, libid3tag,
|
||||
gnome3, gtk3, gettext, perlPackages, flex, libid3tag, gdl,
|
||||
libvorbis, gdk_pixbuf }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
|
||||
buildInputs = [
|
||||
curl gettext
|
||||
flex libgpod libid3tag flac libvorbis gtk3 gdk_pixbuf
|
||||
gnome3.gdl gnome3.defaultIconTheme gnome3.anjuta
|
||||
gdl gnome3.defaultIconTheme gnome3.anjuta
|
||||
] ++ (with perlPackages; [ perl XMLParser ]);
|
||||
|
||||
patchPhase = ''
|
||||
|
@ -13,7 +13,7 @@ pythonPackages.buildPythonApplication rec {
|
||||
mopidy
|
||||
pythonPackages.requests
|
||||
pythonPackages.gmusicapi
|
||||
pythonPackages.cachetools_1
|
||||
pythonPackages.cachetools
|
||||
];
|
||||
|
||||
doCheck = false;
|
||||
|
19
pkgs/applications/backup/vdmfec/default.nix
Normal file
19
pkgs/applications/backup/vdmfec/default.nix
Normal file
@ -0,0 +1,19 @@
|
||||
{ stdenv, fetchurl }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "vdmfec-${version}";
|
||||
version = "1.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://members.tripod.com/professor_tom/archives/${name}.tgz";
|
||||
sha256 = "0i7q4ylx2xmzzq778anpkj4nqir5gf573n1lbpxnbc10ymsjq2rm";
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A program that adds error correction blocks";
|
||||
homepage = "http://members.tripod.com/professor_tom/archives/index.html";
|
||||
maintainers = [ maintainers.ar1a ];
|
||||
license = with licenses; [ gpl2 /* for vdmfec */ bsd2 /* for fec */ ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
@ -20,6 +20,13 @@ let
|
||||
sha256 = "07ncvgp6xfhiwc6hd7qf7zk28n3yj47p26qj1ji29vqkwnk28y3s";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# introduce a system-wide rplugin.vim in addition to the user one
|
||||
# necessary so that nix can handle `UpdateRemotePlugins` for the plugins
|
||||
# it installs. See https://github.com/neovim/neovim/issues/9413.
|
||||
./system_rplugin_manifest.patch
|
||||
];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
buildInputs = [
|
||||
|
@ -0,0 +1,29 @@
|
||||
diff --git a/runtime/autoload/remote/host.vim b/runtime/autoload/remote/host.vim
|
||||
index 6266b312b..965fabf1e 100644
|
||||
--- a/runtime/autoload/remote/host.vim
|
||||
+++ b/runtime/autoload/remote/host.vim
|
||||
@@ -71,7 +71,8 @@ function! remote#host#RegisterPlugin(host, path, specs) abort
|
||||
|
||||
for plugin in plugins
|
||||
if plugin.path == a:path
|
||||
- throw 'Plugin "'.a:path.'" is already registered'
|
||||
+ " plugin already registered
|
||||
+ return
|
||||
endif
|
||||
endfor
|
||||
|
||||
diff --git a/runtime/plugin/rplugin.vim b/runtime/plugin/rplugin.vim
|
||||
index 122d8d47f..83fbf8b57 100644
|
||||
--- a/runtime/plugin/rplugin.vim
|
||||
+++ b/runtime/plugin/rplugin.vim
|
||||
@@ -54,6 +54,10 @@ function! s:GetManifest() abort
|
||||
endfunction
|
||||
|
||||
function! s:LoadRemotePlugins() abort
|
||||
+ if exists('$NVIM_SYSTEM_RPLUGIN_MANIFEST')
|
||||
+ let g:system_remote_plugins = fnamemodify($NVIM_SYSTEM_RPLUGIN_MANIFEST, ':p')
|
||||
+ execute 'source' fnameescape(g:system_remote_plugins)
|
||||
+ endif
|
||||
let g:loaded_remote_plugins = s:GetManifest()
|
||||
if filereadable(g:loaded_remote_plugins)
|
||||
execute 'source' fnameescape(g:loaded_remote_plugins)
|
@ -72,7 +72,6 @@ let
|
||||
--cmd \"${if withRuby then "let g:ruby_host_prog='$out/bin/nvim-ruby'" else "let g:loaded_ruby_provider=1"}\" " \
|
||||
--suffix PATH : ${binPath} \
|
||||
${optionalString withRuby '' --set GEM_HOME ${rubyEnv}/${rubyEnv.ruby.gemPath}'' }
|
||||
|
||||
''
|
||||
+ optionalString (!stdenv.isDarwin) ''
|
||||
# copy and patch the original neovim.desktop file
|
||||
@ -83,18 +82,39 @@ let
|
||||
''
|
||||
+ optionalString withPython ''
|
||||
makeWrapper ${pythonEnv}/bin/python $out/bin/nvim-python --unset PYTHONPATH
|
||||
'' + optionalString withPython3 ''
|
||||
'' + optionalString withPython3 ''
|
||||
makeWrapper ${python3Env}/bin/python3 $out/bin/nvim-python3 --unset PYTHONPATH
|
||||
'' + optionalString withRuby ''
|
||||
ln -s ${rubyEnv}/bin/neovim-ruby-host $out/bin/nvim-ruby
|
||||
'' + optionalString vimAlias ''
|
||||
ln -s $out/bin/nvim $out/bin/vim
|
||||
'' + optionalString viAlias ''
|
||||
ln -s $out/bin/nvim $out/bin/vi
|
||||
'' + optionalString (configure != {}) ''
|
||||
wrapProgram $out/bin/nvim --add-flags "-u ${vimUtils.vimrcFile configure}"
|
||||
''
|
||||
;
|
||||
'' + optionalString withRuby ''
|
||||
ln -s ${rubyEnv}/bin/neovim-ruby-host $out/bin/nvim-ruby
|
||||
'' + optionalString vimAlias ''
|
||||
ln -s $out/bin/nvim $out/bin/vim
|
||||
'' + optionalString viAlias ''
|
||||
ln -s $out/bin/nvim $out/bin/vi
|
||||
'' + optionalString (configure != {}) ''
|
||||
echo "Generating remote plugin manifest"
|
||||
export NVIM_RPLUGIN_MANIFEST=$out/rplugin.vim
|
||||
# Launch neovim with a vimrc file containing only the generated plugin
|
||||
# code. Pass various flags to disable temp file generation
|
||||
# (swap/viminfo) and redirect errors to stderr.
|
||||
# Only display the log on error since it will contain a few normally
|
||||
# irrelevant messages.
|
||||
if ! $out/bin/nvim \
|
||||
-u ${vimUtils.vimrcFile (configure // { customRC = ""; })} \
|
||||
-i NONE -n \
|
||||
-E -V1rplugins.log -s \
|
||||
+UpdateRemotePlugins +quit! > outfile 2>&1; then
|
||||
cat outfile
|
||||
echo -e "\nGenerating rplugin.vim failed!"
|
||||
exit 1
|
||||
fi
|
||||
unset NVIM_RPLUGIN_MANIFEST
|
||||
|
||||
# this relies on a patched neovim, see
|
||||
# https://github.com/neovim/neovim/issues/9413
|
||||
wrapProgram $out/bin/nvim \
|
||||
--set NVIM_SYSTEM_RPLUGIN_MANIFEST $out/rplugin.vim \
|
||||
--add-flags "-u ${vimUtils.vimrcFile configure}"
|
||||
'';
|
||||
|
||||
preferLocalBuild = true;
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
{ stdenv, fetchurl, fetchFromGitHub, makeDesktopItem, cmake, boost
|
||||
, zlib, openssl, R, qtbase, qtwebkit, qtwebchannel, libuuid, hunspellDicts
|
||||
, unzip, ant, jdk, gnumake, makeWrapper, pandoc
|
||||
, zlib, openssl, R, qtbase, qtwebkit, qtwebchannel, qtxmlpatterns, libuuid
|
||||
, hunspellDicts, unzip, ant, jdk, gnumake, makeWrapper, pandoc
|
||||
}:
|
||||
|
||||
let
|
||||
@ -16,7 +16,8 @@ stdenv.mkDerivation rec {
|
||||
|
||||
nativeBuildInputs = [ cmake unzip ant jdk makeWrapper pandoc ];
|
||||
|
||||
buildInputs = [ boost zlib openssl R qtbase qtwebkit qtwebchannel libuuid ];
|
||||
buildInputs = [ boost zlib openssl R qtbase qtwebkit qtwebchannel
|
||||
qtxmlpatterns libuuid ];
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "rstudio";
|
||||
|
@ -1,11 +1,11 @@
|
||||
{ stdenv, fetchurl, fetchFromGitHub, makeDesktopItem, cmake, boost, zlib
|
||||
, openssl, R, qtbase, qtdeclarative, qtsensors, qtwebengine, qtwebchannel
|
||||
, openssl, R, qtbase, qtxmlpatterns, qtsensors, qtwebengine, qtwebchannel
|
||||
, libuuid, hunspellDicts, unzip, ant, jdk, gnumake, makeWrapper, pandoc
|
||||
, llvmPackages
|
||||
}:
|
||||
|
||||
let
|
||||
rev = "f33fb2b2f1";
|
||||
rev = "f79330d4";
|
||||
ginVer = "2.1.2";
|
||||
gwtVer = "2.8.1";
|
||||
in
|
||||
@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
nativeBuildInputs = [ cmake unzip ant jdk makeWrapper pandoc ];
|
||||
|
||||
buildInputs = [ boost zlib openssl R qtbase qtdeclarative qtsensors
|
||||
buildInputs = [ boost zlib openssl R qtbase qtxmlpatterns qtsensors
|
||||
qtwebengine qtwebchannel libuuid ];
|
||||
|
||||
src = fetchFromGitHub {
|
||||
|
@ -24,7 +24,7 @@ in
|
||||
postPatch = ''
|
||||
sed -i "s,/usr/local,$out,g" \
|
||||
app/CMakeLists.txt app/app/app.cpp app/app/main.cpp
|
||||
sed -i "s,python-py35,python36," CMakeLists.txt
|
||||
sed -i "s,python3,${python3.executable}," CMakeLists.txt
|
||||
'';
|
||||
|
||||
buildInputs = [
|
||||
|
@ -5,7 +5,7 @@
|
||||
akonadi, akonadi-calendar, akonadi-contacts, akonadi-mime, akonadi-notes,
|
||||
kalarmcal, kcalutils, kcontacts, kdav, kdelibs4support, kidentitymanagement,
|
||||
kimap, kmailtransport, kmbox, kmime, knotifications, knotifyconfig,
|
||||
pimcommon, qtwebengine, libkgapi, qtspeech
|
||||
pimcommon, qtwebengine, libkgapi, qtspeech, qtxmlpatterns
|
||||
}:
|
||||
|
||||
mkDerivation {
|
||||
@ -19,7 +19,7 @@ mkDerivation {
|
||||
akonadi akonadi-calendar akonadi-contacts akonadi-mime akonadi-notes
|
||||
kalarmcal kcalutils kcontacts kdav kdelibs4support kidentitymanagement kimap
|
||||
kmailtransport kmbox kmime knotifications knotifyconfig qtwebengine
|
||||
pimcommon libkgapi qtspeech
|
||||
pimcommon libkgapi qtspeech qtxmlpatterns
|
||||
];
|
||||
# Attempts to build some files before dependencies have been generated
|
||||
enableParallelBuilding = false;
|
||||
|
@ -43,16 +43,16 @@ let
|
||||
];
|
||||
in buildRustPackage rec {
|
||||
name = "alacritty-${version}";
|
||||
version = "0.2.5";
|
||||
version = "0.2.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "jwilm";
|
||||
repo = "alacritty";
|
||||
rev = "v${version}";
|
||||
sha256 = "17802fgfkp80872wr6qkjhs3gdjjw2cibigcifqnzcfzwabp07iv";
|
||||
sha256 = "1yjmlvxs5vwqhgjlb83a4hq2b12zzhr4pp209djprgdi0cf2bbqw";
|
||||
};
|
||||
|
||||
cargoSha256 = "0adw5zwxy1x9laa1fx11j2bhhs2w7c9n0xnjwxw8vchqi4xwqvy5";
|
||||
cargoSha256 = "11n5xl43l07zycdg0icv4i7mh6zy4ia6aw48i0wm59xqdl7xqn9f";
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
|
31
pkgs/applications/misc/fff/default.nix
Normal file
31
pkgs/applications/misc/fff/default.nix
Normal file
@ -0,0 +1,31 @@
|
||||
{ stdenv, fetchFromGitHub, makeWrapper, xdg_utils, file, coreutils }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "fff";
|
||||
version = "1.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "dylanaraps";
|
||||
repo = name;
|
||||
rev = version;
|
||||
sha256 = "0jvv9mwj0qw3rmg1f17wbvx9fl5kxzmkp6j1113l3a6w1na83js0";
|
||||
};
|
||||
|
||||
pathAdd = stdenv.lib.makeSearchPath "bin" [ xdg_utils file coreutils ];
|
||||
buildInputs = [ makeWrapper ];
|
||||
|
||||
installPhase = ''
|
||||
install -D fff "$out/bin/fff"
|
||||
install -D README.md "$out/share/doc/fff/README.md"
|
||||
install -D fff.1 "$out/share/man/man1/fff.1"
|
||||
wrapProgram $out/bin/fff --prefix PATH : ${pathAdd}
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Fucking Fast File-Manager";
|
||||
homepage = https://github.com/dylanaraps/fff;
|
||||
license = licenses.mit;
|
||||
maintainers = [ maintainers.tadeokondrak ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchurl, intltool, pkgconfig, gnome3, shared-mime-info, desktop-file-utils, wrapGAppsHook }:
|
||||
{ stdenv, fetchurl, intltool, pkgconfig, gnome3, libchamplain, gdl, shared-mime-info, desktop-file-utils, wrapGAppsHook }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gpx-viewer-${version}";
|
||||
@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
|
||||
desktop-file-utils # For update-desktop-database
|
||||
wrapGAppsHook # Fix error: GLib-GIO-ERROR **: No GSettings schemas are installed on the system
|
||||
];
|
||||
buildInputs = with gnome3; [ gdl libchamplain defaultIconTheme ];
|
||||
buildInputs = [ gdl libchamplain gnome3.adwaita-icon-theme ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://blog.sarine.nl/tag/gpxviewer/;
|
||||
|
@ -11,11 +11,11 @@ let
|
||||
];
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
version = "2.1.0";
|
||||
version = "2.1.1";
|
||||
name = "hyper-${version}";
|
||||
src = fetchurl {
|
||||
url = "https://github.com/zeit/hyper/releases/download/${version}/hyper_${version}_amd64.deb";
|
||||
sha256 = "0ss0ip6yc7sd8b1lx504nxckqmxjiqcz105wi3226nzyan489q3g";
|
||||
sha256 = "1vr4j2vb2wpn8qzgq30l8kfck2an03jwchwywyx4zsl2vz3qp70x";
|
||||
};
|
||||
buildInputs = [ dpkg ];
|
||||
unpackPhase = ''
|
||||
|
48
pkgs/applications/misc/qMasterPassword/default.nix
Normal file
48
pkgs/applications/misc/qMasterPassword/default.nix
Normal file
@ -0,0 +1,48 @@
|
||||
{ stdenv, fetchFromGitHub, qtbase, qmake, libX11, libXtst, openssl, libscrypt }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "qMasterPassword";
|
||||
version = "1.2.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "bkueng";
|
||||
repo = name;
|
||||
rev = "v${version}";
|
||||
sha256 = "0l0jarvfdc69rcjl2wa0ixq8gp3fmjsy9n84m38sxf3n9j2bh13c";
|
||||
};
|
||||
|
||||
buildInputs = [ qtbase libX11 libXtst openssl libscrypt ];
|
||||
nativeBuildInputs = [ qmake ];
|
||||
|
||||
# Upstream install is mostly defunct. It hardcodes target.path and doesn't
|
||||
# install anything but the binary.
|
||||
installPhase = if stdenv.isDarwin then ''
|
||||
mkdir -p "$out"/{Applications,bin}
|
||||
mv qMasterPassword.app "$out"/Applications/
|
||||
ln -s ../Applications/qMasterPassword.app/Contents/MacOS/qMasterPassword "$out"/bin/qMasterPassword
|
||||
'' else ''
|
||||
mkdir -p $out/bin
|
||||
mkdir -p $out/share/{applications,doc/qMasterPassword,icons/qmasterpassword,icons/hicolor/512x512/apps}
|
||||
mv qMasterPassword $out/bin
|
||||
mv data/qMasterPassword.desktop $out/share/applications
|
||||
mv LICENSE README.md $out/share/doc/qMasterPassword
|
||||
mv data/icons/app_icon.png $out/share/icons/hicolor/512x512/apps/qmasterpassword.png
|
||||
mv data/icons/* $out/share/icons/qmasterpassword
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Stateless Master Password Manager";
|
||||
longDescription = ''
|
||||
Access all your passwords using only a single master password. But in
|
||||
contrast to other managers it does not store any passwords: Unique
|
||||
passwords are generated from the master password and a site name. This
|
||||
means you automatically get different passwords for each account and
|
||||
there is no password file that can be lost or get stolen. There is also
|
||||
no need to trust any online password service.
|
||||
'';
|
||||
homepage = https://github.com/bkueng/qMasterPassword;
|
||||
license = licenses.gpl3;
|
||||
maintainers = [ maintainers.tadeokondrak ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
@ -1,16 +1,16 @@
|
||||
{ lib, buildPythonApplication, fetchPypi, pythonPackages, ffmpeg }:
|
||||
{ lib, python3Packages, ffmpeg }:
|
||||
|
||||
buildPythonApplication rec {
|
||||
python3Packages.buildPythonApplication rec {
|
||||
version = "1.4.1";
|
||||
pname = "sigal";
|
||||
|
||||
src = fetchPypi {
|
||||
src = python3Packages.fetchPypi {
|
||||
inherit version pname;
|
||||
sha256 = "1fg32ii26j3xpq3cryi212lx9z33qnicm1cszwv1wfpg6sr2rr61";
|
||||
};
|
||||
|
||||
buildInputs = with pythonPackages; [ pytest ];
|
||||
propagatedBuildInputs = with pythonPackages; [
|
||||
checkInputs = with python3Packages; [ pytest ];
|
||||
propagatedBuildInputs = with python3Packages; [
|
||||
jinja2
|
||||
markdown
|
||||
pillow
|
||||
@ -32,4 +32,3 @@ buildPythonApplication rec {
|
||||
maintainers = with maintainers; [ domenkozar ];
|
||||
};
|
||||
}
|
||||
|
||||
|
@ -100,6 +100,7 @@ stdenv.mkDerivation rec {
|
||||
maintainers = [];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
# Application crashed with an unhandled SIGSEGV
|
||||
broken = true;
|
||||
# Not on all systems, though. Video driver problem?
|
||||
broken = false;
|
||||
};
|
||||
}
|
||||
|
@ -1,26 +1,22 @@
|
||||
{ stdenv, fetchurl, pkgconfig, libsoup, webkit, gtk2, glib-networking
|
||||
, gsettings-desktop-schemas, makeWrapper
|
||||
{ stdenv, fetchFromGitHub, pkgconfig, libsoup, webkit, gtk3, glib-networking
|
||||
, gsettings-desktop-schemas, wrapGAppsHook
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "vimb-${version}";
|
||||
version = "3.1.0";
|
||||
version = "3.3.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/fanglingsu/vimb/archive/${version}.tar.gz";
|
||||
sha256 = "1gws028c2v1zh6r142hmjvi2m447lwqqh65m6z3dzcar2yw35z3f";
|
||||
src = fetchFromGitHub {
|
||||
owner = "fanglingsu";
|
||||
repo = "vimb";
|
||||
rev = version;
|
||||
sha256 = "1qg18z2gnsli9qgrqfhqfrsi6g9mcgr90w8yab28nxrq4aha6brf";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ makeWrapper gtk2 libsoup webkit gsettings-desktop-schemas ];
|
||||
nativeBuildInputs = [ wrapGAppsHook pkgconfig ];
|
||||
buildInputs = [ gtk3 libsoup webkit glib-networking gsettings-desktop-schemas ];
|
||||
|
||||
makeFlags = [ "PREFIX=$(out)" ];
|
||||
|
||||
preFixup = ''
|
||||
wrapProgram "$out/bin/vimb" \
|
||||
--prefix GIO_EXTRA_MODULES : "${glib-networking.out}/lib/gio/modules" \
|
||||
--prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
|
||||
'';
|
||||
makeFlags = [ "PREFIX=${placeholder "out"}" ];
|
||||
|
||||
meta = {
|
||||
description = "A Vim-like browser";
|
||||
|
33
pkgs/applications/networking/cluster/kubectl/default.nix
Normal file
33
pkgs/applications/networking/cluster/kubectl/default.nix
Normal file
@ -0,0 +1,33 @@
|
||||
{ stdenv, lib, kubernetes }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "kubectl-${kubernetes.version}";
|
||||
|
||||
# kubectl is currently part of the main distribution but will eventially be
|
||||
# split out (see homepage)
|
||||
src = kubernetes;
|
||||
|
||||
outputs = [ "out" "man" ];
|
||||
|
||||
doBuild = false;
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p \
|
||||
"$out/bin" \
|
||||
"$out/share/bash-completion/completions" \
|
||||
"$out/share/zsh/site-functions" \
|
||||
"$man/share/man/man1"
|
||||
|
||||
cp bin/kubectl $out/bin/kubectl
|
||||
|
||||
cp "${kubernetes.man}/share/man/man1"/kubectl* "$man/share/man/man1"
|
||||
|
||||
$out/bin/kubectl completion bash > $out/share/bash-completion/completions/kubectl
|
||||
$out/bin/kubectl completion zsh > $out/share/zsh/site-functions/_kubectl
|
||||
'';
|
||||
|
||||
meta = kubernetes.meta // {
|
||||
description = "Kubernetes CLI";
|
||||
homepage = "https://github.com/kubernetes/kubectl";
|
||||
};
|
||||
}
|
@ -2,11 +2,11 @@
|
||||
|
||||
python2Packages.buildPythonApplication rec {
|
||||
name = "rawdog-${version}";
|
||||
version = "2.22";
|
||||
version = "2.23";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://offog.org/files/${name}.tar.gz";
|
||||
sha256 = "01ircwl80xi5lamamsb22i7vmsh2ysq3chn9mbsdhqic2i32hcz0";
|
||||
sha256 = "18nyg19mwxyqdnykplkqmzb4n27vvrhvp639zai8f81gg9vdbsjp";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with python2Packages; [ feedparser ];
|
||||
|
@ -4,8 +4,8 @@ let
|
||||
mkTelegram = args: qt5.callPackage (import ./generic.nix args) { };
|
||||
stableVersion = {
|
||||
stable = true;
|
||||
version = "1.5.4";
|
||||
sha256Hash = "0a52m5qkvk01yl3za3k7pccjrqkr8gbxqnj5lnhh1im1pdxqwh4m";
|
||||
version = "1.5.8";
|
||||
sha256Hash = "0sl4p4a7fyh68g01rddiy719lyr321cjar78b3c732zxfj8lxvkb";
|
||||
# svn log svn://svn.archlinux.org/community/telegram-desktop/trunk
|
||||
archPatchesRevision = "415526";
|
||||
archPatchesHash = "1lfzws90ab0vajhm5r64gyyqqc1g6a2ay0a1vkp0ah1iw5jh11ik";
|
||||
@ -14,7 +14,5 @@ in {
|
||||
stable = mkTelegram stableVersion;
|
||||
preview = mkTelegram (stableVersion // {
|
||||
stable = false;
|
||||
version = "1.5.7";
|
||||
sha256Hash = "0mpnz287ahzrcr50ira6h6ry5jjhp5wqi660s3kncxpq1wllj0h6";
|
||||
});
|
||||
}
|
||||
|
@ -1,68 +0,0 @@
|
||||
Date: Tue, 17 Jul 2018 20:29:49 +0200
|
||||
|
||||
---
|
||||
Telegram/SourceFiles/export/data/export_data_types.cpp | 9 ++++++---
|
||||
Telegram/SourceFiles/export/export_api_wrap.cpp | 6 ++++--
|
||||
2 files changed, 10 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/Telegram/SourceFiles/export/data/export_data_types.cpp b/Telegram/SourceFiles/export/data/export_data_types.cpp
|
||||
index f835dc2f9..e811c27e8 100644
|
||||
--- a/Telegram/SourceFiles/export/data/export_data_types.cpp
|
||||
+++ b/Telegram/SourceFiles/export/data/export_data_types.cpp
|
||||
@@ -221,7 +221,8 @@ Image ParseMaxImage(
|
||||
result.width = data.vw.v;
|
||||
result.height = data.vh.v;
|
||||
result.file.location = ParseLocation(data.vlocation);
|
||||
- if constexpr (MTPDphotoCachedSize::Is<decltype(data)>()) {
|
||||
+ constexpr bool condition = MTPDphotoCachedSize::Is<decltype(data)>();
|
||||
+ if constexpr (condition) {
|
||||
result.file.content = data.vbytes.v;
|
||||
result.file.size = result.file.content.size();
|
||||
} else {
|
||||
@@ -409,7 +410,8 @@ Document ParseDocument(
|
||||
result.width = data.vw.v;
|
||||
result.height = data.vh.v;
|
||||
result.file.location = ParseLocation(data.vlocation);
|
||||
- if constexpr (MTPDphotoCachedSize::Is<decltype(data)>()) {
|
||||
+ constexpr bool condition = MTPDphotoCachedSize::Is<decltype(data)>();
|
||||
+ if constexpr (condition) {
|
||||
result.file.content = data.vbytes.v;
|
||||
result.file.size = result.file.content.size();
|
||||
} else {
|
||||
@@ -1017,7 +1019,8 @@ Message ParseMessage(
|
||||
auto result = Message();
|
||||
data.match([&](const auto &data) {
|
||||
result.id = data.vid.v;
|
||||
- if constexpr (!MTPDmessageEmpty::Is<decltype(data)>()) {
|
||||
+ constexpr bool condition = !MTPDmessageEmpty::Is<decltype(data)>();
|
||||
+ if constexpr (condition) {
|
||||
result.toId = ParsePeerId(data.vto_id);
|
||||
const auto peerId = (!data.is_out()
|
||||
&& data.has_from_id()
|
||||
diff --git a/Telegram/SourceFiles/export/export_api_wrap.cpp b/Telegram/SourceFiles/export/export_api_wrap.cpp
|
||||
index b618937f6..bb98647dd 100644
|
||||
--- a/Telegram/SourceFiles/export/export_api_wrap.cpp
|
||||
+++ b/Telegram/SourceFiles/export/export_api_wrap.cpp
|
||||
@@ -709,7 +709,8 @@ void ApiWrap::handleUserpicsSlice(const MTPphotos_Photos &result) {
|
||||
Expects(_userpicsProcess != nullptr);
|
||||
|
||||
result.match([&](const auto &data) {
|
||||
- if constexpr (MTPDphotos_photos::Is<decltype(data)>()) {
|
||||
+ constexpr bool condition = MTPDphotos_photos::Is<decltype(data)>();
|
||||
+ if constexpr (condition) {
|
||||
_userpicsProcess->lastSlice = true;
|
||||
}
|
||||
loadUserpicsFiles(Data::ParseUserpicsSlice(
|
||||
@@ -1141,7 +1142,8 @@ void ApiWrap::requestMessagesSlice() {
|
||||
result.match([&](const MTPDmessages_messagesNotModified &data) {
|
||||
error("Unexpected messagesNotModified received.");
|
||||
}, [&](const auto &data) {
|
||||
- if constexpr (MTPDmessages_messages::Is<decltype(data)>()) {
|
||||
+ constexpr bool condition = MTPDmessages_messages::Is<decltype(data)>();
|
||||
+ if constexpr (condition) {
|
||||
_chatProcess->lastSlice = true;
|
||||
}
|
||||
loadMessagesFiles(Data::ParseMessagesSlice(
|
||||
--
|
||||
2.16.3
|
||||
|
@ -29,12 +29,7 @@ mkDerivation rec {
|
||||
};
|
||||
|
||||
# TODO: libtgvoip.patch no-gtk2.patch
|
||||
patches = [
|
||||
"${archPatches}/tdesktop.patch"
|
||||
]
|
||||
# TODO: Only required to work around a compiler bug.
|
||||
# This should be fixed in GCC 7.3.1 (or later?)
|
||||
++ [ ./fix-internal-compiler-error.patch ];
|
||||
patches = [ "${archPatches}/tdesktop.patch" ];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace Telegram/SourceFiles/platform/linux/linux_libs.cpp \
|
||||
|
@ -3,13 +3,13 @@
|
||||
let
|
||||
xorgxrdp = stdenv.mkDerivation rec {
|
||||
name = "xorgxrdp-${version}";
|
||||
version = "0.2.7";
|
||||
version = "0.2.9";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "neutrinolabs";
|
||||
repo = "xorgxrdp";
|
||||
rev = "v${version}";
|
||||
sha256 = "15idwgcjgwa9in8y1bblpj67y7w0bfngc2sa0hd9hn0dinrlifrk";
|
||||
sha256 = "1bhp5x47hajhinvglmc4vxxnpjvfjm6369njb3ghqfr7c5xypvzr";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig autoconf automake which libtool nasm ];
|
||||
@ -34,15 +34,15 @@ let
|
||||
};
|
||||
|
||||
xrdp = stdenv.mkDerivation rec {
|
||||
version = "0.9.7";
|
||||
version = "0.9.9";
|
||||
name = "xrdp-${version}";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "volth";
|
||||
repo = "xrdp";
|
||||
rev = "refs/heads/runtime-cfg-path-${version}"; # Fixes https://github.com/neutrinolabs/xrdp/issues/609; not a patch on top of the official repo because "xorgxrdp.configureFlags" above includes "xrdp.src" which must be patched already
|
||||
rev = "refs/tags/runtime-cfg-path-${version}"; # Fixes https://github.com/neutrinolabs/xrdp/issues/609; not a patch on top of the official repo because "xorgxrdp.configureFlags" above includes "xrdp.src" which must be patched already
|
||||
fetchSubmodules = true;
|
||||
sha256 = "1dw2zl9zh6win1q0kxj08n9fawpcrs1krjh5978wp0jmq8sdbn7k";
|
||||
sha256 = "0ynj6pml4f38y8571ryhifza57wfqg4frdrjcwzw3fmryiznfm1z";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig autoconf automake which libtool nasm ];
|
||||
|
9
pkgs/applications/science/chemistry/marvin/LicenseManager.desktop
Executable file
9
pkgs/applications/science/chemistry/marvin/LicenseManager.desktop
Executable file
@ -0,0 +1,9 @@
|
||||
#!/usr/bin/env xdg-open
|
||||
[Desktop Entry]
|
||||
Type=Application
|
||||
Name=ChemAxon License Manager
|
||||
Exec=@out@/bin/LicenseManager
|
||||
Icon=LicenseManager
|
||||
Categories=Education;Science;Chemistry;
|
||||
StartupWMClass=com-install4j-runtime-launcher-UnixLauncher
|
||||
Comment=License manager for ChemAxon software like MarvinSketch
|
10
pkgs/applications/science/chemistry/marvin/MarvinSketch.desktop
Executable file
10
pkgs/applications/science/chemistry/marvin/MarvinSketch.desktop
Executable file
@ -0,0 +1,10 @@
|
||||
#!/usr/bin/env xdg-open
|
||||
[Desktop Entry]
|
||||
Type=Application
|
||||
Name=MarvinSketch
|
||||
Exec=@out@/bin/msketch %f
|
||||
Icon=MarvinSketch
|
||||
MimeType=text/xml;text/plain;chemical/x-cml;chemical/x-mdl-molfile;chemical/x-mdl-sdfile;chemical/x-mol2;chemical/x-pdb;chemical/x-xyz;chemical/x-mdl-rdfile;chemical/x-mdl-rxnfile;chemical/x-inchi;
|
||||
Categories=Education;Science;Chemistry;
|
||||
StartupWMClass=com-install4j-runtime-launcher-UnixLauncher
|
||||
Comment=Molecular modelling, analysis and structure drawing program
|
10
pkgs/applications/science/chemistry/marvin/MarvinView.desktop
Executable file
10
pkgs/applications/science/chemistry/marvin/MarvinView.desktop
Executable file
@ -0,0 +1,10 @@
|
||||
#!/usr/bin/env xdg-open
|
||||
[Desktop Entry]
|
||||
Type=Application
|
||||
Name=MarvinView
|
||||
Exec=@out@/bin/mview %f
|
||||
Icon=MarvinView
|
||||
Comment=Molecule viewing program
|
||||
MimeType=text/xml;text/plain;chemical/x-cml;chemical/x-mdl-molfile;chemical/x-mdl-sdfile;chemical/x-mol2;chemical/x-pdb;chemical/x-xyz;chemical/x-mdl-rdfile;chemical/x-mdl-rxnfile;chemical/x-inchi;
|
||||
Categories=Education;Science;Chemistry;
|
||||
StartupWMClass=com-install4j-runtime-launcher-UnixLauncher
|
49
pkgs/applications/science/chemistry/marvin/default.nix
Normal file
49
pkgs/applications/science/chemistry/marvin/default.nix
Normal file
@ -0,0 +1,49 @@
|
||||
{ stdenv, fetchurl, dpkg, makeWrapper, coreutils, gawk, gnugrep, gnused, jre }:
|
||||
|
||||
with stdenv.lib;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "${pname}-${version}";
|
||||
pname = "marvin";
|
||||
version = "19.1.0";
|
||||
|
||||
src = fetchurl {
|
||||
name = "marvin-${version}.deb";
|
||||
url = "http://dl.chemaxon.com/marvin/${version}/marvin_linux_${versions.majorMinor version}.deb";
|
||||
sha256 = "1ccsimfvms5q4prjyk6sg5hsc3hkcjjfq3gl7jjm8dgd2173zzyc";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ dpkg makeWrapper ];
|
||||
|
||||
unpackPhase = ''
|
||||
dpkg-deb -x $src opt
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
wrapBin() {
|
||||
makeWrapper $1 $out/bin/$(basename $1) \
|
||||
--set INSTALL4J_JAVA_HOME "${jre}" \
|
||||
--prefix PATH : ${makeBinPath [ coreutils gawk gnugrep gnused ]}
|
||||
}
|
||||
cp -r opt $out
|
||||
mkdir -p $out/bin $out/share/pixmaps $out/share/applications
|
||||
for name in LicenseManager MarvinSketch MarvinView; do
|
||||
wrapBin $out/opt/chemaxon/marvinsuite/$name
|
||||
ln -s {$out/opt/chemaxon/marvinsuite/.install4j,$out/share/pixmaps}/$name.png
|
||||
done
|
||||
for name in cxcalc cxtrain evaluate molconvert mview msketch; do
|
||||
wrapBin $out/opt/chemaxon/marvinsuite/bin/$name
|
||||
done
|
||||
${concatStrings (map (name: ''
|
||||
substitute ${./. + "/${name}.desktop"} $out/share/applications/${name}.desktop --subst-var out
|
||||
'') [ "LicenseManager" "MarvinSketch" "MarvinView" ])}
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "A chemical modelling, analysis and structure drawing program";
|
||||
homepage = https://chemaxon.com/products/marvin;
|
||||
maintainers = with maintainers; [ fusion809 ];
|
||||
license = licenses.unfree;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
@ -2,13 +2,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "lean-${version}";
|
||||
version = "3.4.1";
|
||||
version = "3.4.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "leanprover";
|
||||
repo = "lean";
|
||||
rev = "v${version}";
|
||||
sha256 = "0ww8azlyy3xikhd7nh96f507sg23r53zvayij1mwv5513vmblhhw";
|
||||
sha256 = "0zpnfg6kyg120rrdr336i1lymmzz4xgcqpn96iavhzhlaanmx55l";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Automatic and interactive theorem prover";
|
||||
homepage = "http://leanprover.github.io";
|
||||
homepage = https://leanprover.github.io/;
|
||||
license = licenses.asl20;
|
||||
platforms = platforms.unix;
|
||||
maintainers = with maintainers; [ thoughtpolice gebner ];
|
||||
|
@ -1,28 +0,0 @@
|
||||
{ stdenv, fetchurl, unzip, ocaml }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "sapic-${version}";
|
||||
version = "0.9";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://sapic.gforge.inria.fr/${name}.zip";
|
||||
sha256 = "1ckl090lpyfh90mkjhnpcys5grs3nrl9wlbn9nfkxxnaivn2yx9y";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ unzip ];
|
||||
buildInputs = [ ocaml ];
|
||||
patches = [ ./native.patch ]; # create a native binary, not a bytecode one
|
||||
|
||||
buildPhase = "make depend && make";
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
cp ./sapic $out/bin
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Stateful applied Pi Calculus for protocol verification";
|
||||
homepage = http://sapic.gforge.inria.fr/;
|
||||
platforms = stdenv.lib.platforms.unix;
|
||||
maintainers = [ stdenv.lib.maintainers.thoughtpolice ];
|
||||
};
|
||||
}
|
@ -1,38 +0,0 @@
|
||||
diff --git a/Makefile b/Makefile
|
||||
index a1de94d..f9e2eb8 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -1,8 +1,8 @@
|
||||
TARGET = sapic
|
||||
-OBJS=lexer.cmo apip.cmo firsttranslation.cmo main.cmo #secondtranslation.cmo thirdtranslation.cmo main.cmo
|
||||
+OBJS=lexer.cmx apip.cmx firsttranslation.cmx main.cmx
|
||||
|
||||
sapic: $(OBJS)
|
||||
- ocamlc -o $@ $(OBJS)
|
||||
+ ocamlopt.opt -o $@ $(OBJS)
|
||||
|
||||
depend:
|
||||
ocamldep *.ml *.mli > .depend
|
||||
@@ -13,17 +13,17 @@ clean:
|
||||
rm -rf *.cmi *.cmo $(TARGET)
|
||||
rm -rf apip.ml apip.mli lexer.ml lexer.mli
|
||||
|
||||
-.SUFFIXES: .ml .mli .mll .mly .cmo .cmi
|
||||
+.SUFFIXES: .ml .mli .mll .mly .cmo .cmi .cmx
|
||||
|
||||
-.ml.cmo:
|
||||
- ocamlc -c $<
|
||||
+.ml.cmx:
|
||||
+ ocamlopt.opt -c $<
|
||||
.mli.cmi:
|
||||
- ocamlc -c $<
|
||||
+ ocamlopt.opt -c $<
|
||||
.mll.ml:
|
||||
ocamllex $<
|
||||
.mly.ml:
|
||||
ocamlyacc $<
|
||||
.ml.mli:
|
||||
- ocamlc -i $< > $@
|
||||
+ ocamlopt.opt -i $< > $@
|
||||
|
||||
-include .depend
|
@ -1,15 +1,15 @@
|
||||
{ haskellPackages, mkDerivation, fetchFromGitHub, lib
|
||||
# the following are non-haskell dependencies
|
||||
, makeWrapper, which, maude, graphviz, sapic
|
||||
, makeWrapper, which, maude, graphviz, ocaml
|
||||
}:
|
||||
|
||||
let
|
||||
version = "1.4.0";
|
||||
version = "1.4.1";
|
||||
src = fetchFromGitHub {
|
||||
owner = "tamarin-prover";
|
||||
repo = "tamarin-prover";
|
||||
rev = "7ced07a69f8e93178f9a95797479277a736ae572";
|
||||
sha256 = "02pyw22h90228g6qybjpdvpcm9d5lh96f5qwmy2hv2bylz05z3nn";
|
||||
rev = "d2e1c57311ce4ed0ef46d0372c4995b8fdc25323";
|
||||
sha256 = "1bf2qvb646jg3qxd6jgp9ja3wlr888wchxi9mfr3kg7hfn63vxbq";
|
||||
};
|
||||
|
||||
# tamarin has its own dependencies, but they're kept inside the repo,
|
||||
@ -32,7 +32,6 @@ let
|
||||
|
||||
tamarin-prover-utils = mkDerivation (common "tamarin-prover-utils" (src + "/lib/utils") // {
|
||||
postPatch = replaceSymlinks;
|
||||
patches = [ ./ghc-8.4-support-utils.patch ];
|
||||
libraryHaskellDepends = with haskellPackages; [
|
||||
base base64-bytestring binary blaze-builder bytestring containers
|
||||
deepseq dlist fclabels mtl pretty safe SHA syb time transformers
|
||||
@ -41,7 +40,6 @@ let
|
||||
|
||||
tamarin-prover-term = mkDerivation (common "tamarin-prover-term" (src + "/lib/term") // {
|
||||
postPatch = replaceSymlinks;
|
||||
patches = [ ./ghc-8.4-support-term.patch ];
|
||||
libraryHaskellDepends = (with haskellPackages; [
|
||||
attoparsec base binary bytestring containers deepseq dlist HUnit
|
||||
mtl process safe
|
||||
@ -50,7 +48,6 @@ let
|
||||
|
||||
tamarin-prover-theory = mkDerivation (common "tamarin-prover-theory" (src + "/lib/theory") // {
|
||||
postPatch = replaceSymlinks;
|
||||
patches = [ ./ghc-8.4-support-theory.patch ];
|
||||
doHaddock = false; # broken
|
||||
libraryHaskellDepends = (with haskellPackages; [
|
||||
aeson aeson-pretty base binary bytestring containers deepseq dlist
|
||||
@ -75,20 +72,28 @@ mkDerivation (common "tamarin-prover" src // {
|
||||
|
||||
sed -ie 's~\( *, \)mtl~&\
|
||||
\1monad-control~' tamarin-prover.cabal
|
||||
|
||||
patch -p1 < ${./sapic-native.patch}
|
||||
'';
|
||||
|
||||
postBuild = ''
|
||||
cd plugins/sapic && make sapic && cd ../..
|
||||
'';
|
||||
|
||||
# wrap the prover to be sure it can find maude, sapic, etc
|
||||
executableToolDepends = [ makeWrapper which maude graphviz sapic ];
|
||||
executableToolDepends = [ makeWrapper which maude graphviz ];
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/tamarin-prover \
|
||||
--prefix PATH : ${lib.makeBinPath [ which maude graphviz sapic ]}
|
||||
--prefix PATH : ${lib.makeBinPath [ which maude graphviz ]}
|
||||
# so that the package can be used as a vim plugin to install syntax coloration
|
||||
install -Dt $out/share/vim-plugins/tamarin-prover/syntax/ etc/{spthy,sapic}.vim
|
||||
install etc/filetype.vim -D $out/share/vim-plugins/tamarin-prover/ftdetect/tamarin.vim
|
||||
install -m0755 ./plugins/sapic/sapic $out/bin/sapic
|
||||
'';
|
||||
|
||||
checkPhase = "./dist/build/tamarin-prover/tamarin-prover test";
|
||||
|
||||
executableSystemDepends = [ ocaml ];
|
||||
executableHaskellDepends = (with haskellPackages; [
|
||||
base binary binary-orphans blaze-builder blaze-html bytestring
|
||||
cmdargs conduit containers monad-control deepseq directory fclabels file-embed
|
||||
|
@ -1,109 +0,0 @@
|
||||
From a08f6e400772899b9b0fc16befc50391cd70696b Mon Sep 17 00:00:00 2001
|
||||
From: Felix Yan <felixonmars@archlinux.org>
|
||||
Date: Fri, 18 May 2018 16:24:41 +0800
|
||||
Subject: [PATCH] GHC 8.4 support
|
||||
|
||||
---
|
||||
src/Term/Maude/Signature.hs | 8 ++--
|
||||
src/Term/Rewriting/Definitions.hs | 23 ++++++----
|
||||
src/Term/Unification.hs | 4 +-
|
||||
11 files changed, 79 insertions(+), 48 deletions(-)
|
||||
|
||||
diff --git a/src/Term/Maude/Signature.hs b/src/Term/Maude/Signature.hs
|
||||
index 98c25d9f..1a4ce82f 100644
|
||||
--- a/src/Term/Maude/Signature.hs
|
||||
+++ b/src/Term/Maude/Signature.hs
|
||||
@@ -104,9 +104,9 @@ maudeSig msig@(MaudeSig {enableDH,enableBP,enableMSet,enableXor,enableDiff=_,stF
|
||||
`S.union` dhReducibleFunSig `S.union` bpReducibleFunSig `S.union` xorReducibleFunSig
|
||||
|
||||
-- | A monoid instance to combine maude signatures.
|
||||
-instance Monoid MaudeSig where
|
||||
- (MaudeSig dh1 bp1 mset1 xor1 diff1 stFunSyms1 stRules1 _ _) `mappend`
|
||||
- (MaudeSig dh2 bp2 mset2 xor2 diff2 stFunSyms2 stRules2 _ _) =
|
||||
+instance Semigroup MaudeSig where
|
||||
+ MaudeSig dh1 bp1 mset1 xor1 diff1 stFunSyms1 stRules1 _ _ <>
|
||||
+ MaudeSig dh2 bp2 mset2 xor2 diff2 stFunSyms2 stRules2 _ _ =
|
||||
maudeSig (mempty {enableDH=dh1||dh2
|
||||
,enableBP=bp1||bp2
|
||||
,enableMSet=mset1||mset2
|
||||
@@ -114,6 +114,8 @@ instance Monoid MaudeSig where
|
||||
,enableDiff=diff1||diff2
|
||||
,stFunSyms=S.union stFunSyms1 stFunSyms2
|
||||
,stRules=S.union stRules1 stRules2})
|
||||
+
|
||||
+instance Monoid MaudeSig where
|
||||
mempty = MaudeSig False False False False False S.empty S.empty S.empty S.empty
|
||||
|
||||
-- | Non-AC function symbols.
|
||||
diff --git a/src/Term/Rewriting/Definitions.hs b/src/Term/Rewriting/Definitions.hs
|
||||
index bd942b6a..18562e4e 100644
|
||||
--- a/src/Term/Rewriting/Definitions.hs
|
||||
+++ b/src/Term/Rewriting/Definitions.hs
|
||||
@@ -44,10 +44,12 @@ evalEqual (Equal l r) = l == r
|
||||
instance Functor Equal where
|
||||
fmap f (Equal lhs rhs) = Equal (f lhs) (f rhs)
|
||||
|
||||
+instance Semigroup a => Semigroup (Equal a) where
|
||||
+ (Equal l1 r1) <> (Equal l2 r2) =
|
||||
+ Equal (l1 <> l2) (r1 <> r2)
|
||||
+
|
||||
instance Monoid a => Monoid (Equal a) where
|
||||
mempty = Equal mempty mempty
|
||||
- (Equal l1 r1) `mappend` (Equal l2 r2) =
|
||||
- Equal (l1 `mappend` l2) (r1 `mappend` r2)
|
||||
|
||||
instance Foldable Equal where
|
||||
foldMap f (Equal l r) = f l `mappend` f r
|
||||
@@ -104,14 +106,15 @@ instance Functor Match where
|
||||
fmap _ NoMatch = NoMatch
|
||||
fmap f (DelayedMatches ms) = DelayedMatches (fmap (f *** f) ms)
|
||||
|
||||
+instance Semigroup (Match a) where
|
||||
+ NoMatch <> _ = NoMatch
|
||||
+ _ <> NoMatch = NoMatch
|
||||
+ DelayedMatches ms1 <> DelayedMatches ms2 =
|
||||
+ DelayedMatches (ms1 <> ms2)
|
||||
+
|
||||
instance Monoid (Match a) where
|
||||
mempty = DelayedMatches []
|
||||
|
||||
- NoMatch `mappend` _ = NoMatch
|
||||
- _ `mappend` NoMatch = NoMatch
|
||||
- DelayedMatches ms1 `mappend` DelayedMatches ms2 =
|
||||
- DelayedMatches (ms1 `mappend` ms2)
|
||||
-
|
||||
|
||||
instance Foldable Match where
|
||||
foldMap _ NoMatch = mempty
|
||||
@@ -136,10 +139,12 @@ data RRule a = RRule a a
|
||||
instance Functor RRule where
|
||||
fmap f (RRule lhs rhs) = RRule (f lhs) (f rhs)
|
||||
|
||||
+instance Monoid a => Semigroup (RRule a) where
|
||||
+ (RRule l1 r1) <> (RRule l2 r2) =
|
||||
+ RRule (l1 <> l2) (r1 <> r2)
|
||||
+
|
||||
instance Monoid a => Monoid (RRule a) where
|
||||
mempty = RRule mempty mempty
|
||||
- (RRule l1 r1) `mappend` (RRule l2 r2) =
|
||||
- RRule (l1 `mappend` l2) (r1 `mappend` r2)
|
||||
|
||||
instance Foldable RRule where
|
||||
foldMap f (RRule l r) = f l `mappend` f r
|
||||
diff --git a/src/Term/Unification.hs b/src/Term/Unification.hs
|
||||
index e1de0163..7ce6bb41 100644
|
||||
--- a/src/Term/Unification.hs
|
||||
+++ b/src/Term/Unification.hs
|
||||
@@ -265,9 +265,11 @@ unifyRaw l0 r0 = do
|
||||
|
||||
data MatchFailure = NoMatcher | ACProblem
|
||||
|
||||
+instance Semigroup MatchFailure where
|
||||
+ _ <> _ = NoMatcher
|
||||
+
|
||||
instance Monoid MatchFailure where
|
||||
mempty = NoMatcher
|
||||
- mappend _ _ = NoMatcher
|
||||
|
||||
-- | Ensure that the computed substitution @sigma@ satisfies
|
||||
-- @t ==_AC apply sigma p@ after the delayed equations are solved.
|
@ -1,130 +0,0 @@
|
||||
From a08f6e400772899b9b0fc16befc50391cd70696b Mon Sep 17 00:00:00 2001
|
||||
From: Felix Yan <felixonmars@archlinux.org>
|
||||
Date: Fri, 18 May 2018 16:24:41 +0800
|
||||
Subject: [PATCH] GHC 8.4 support
|
||||
|
||||
---
|
||||
src/Theory/Proof.hs | 43 +++++++++++--------
|
||||
11 files changed, 79 insertions(+), 48 deletions(-)
|
||||
|
||||
diff --git a/src/Theory/Constraint/Solver/Reduction.hs b/src/Theory/Constraint/Solver/Reduction.hs
|
||||
index ddbc965a..6daadd0d 100644
|
||||
--- a/src/Theory/Constraint/Solver/Reduction.hs
|
||||
+++ b/src/Theory/Constraint/Solver/Reduction.hs
|
||||
@@ -139,13 +139,14 @@ execReduction m ctxt se fs =
|
||||
data ChangeIndicator = Unchanged | Changed
|
||||
deriving( Eq, Ord, Show )
|
||||
|
||||
+instance Semigroup ChangeIndicator where
|
||||
+ Changed <> _ = Changed
|
||||
+ _ <> Changed = Changed
|
||||
+ Unchanged <> Unchanged = Unchanged
|
||||
+
|
||||
instance Monoid ChangeIndicator where
|
||||
mempty = Unchanged
|
||||
|
||||
- Changed `mappend` _ = Changed
|
||||
- _ `mappend` Changed = Changed
|
||||
- Unchanged `mappend` Unchanged = Unchanged
|
||||
-
|
||||
-- | Return 'True' iff there was a change.
|
||||
wasChanged :: ChangeIndicator -> Bool
|
||||
wasChanged Changed = True
|
||||
diff --git a/src/Theory/Constraint/System/Guarded.hs b/src/Theory/Constraint/System/Guarded.hs
|
||||
index f98fc7c2..2aac8ce2 100644
|
||||
--- a/src/Theory/Constraint/System/Guarded.hs
|
||||
+++ b/src/Theory/Constraint/System/Guarded.hs
|
||||
@@ -435,7 +435,7 @@ gall ss atos gf = GGuarded All ss atos gf
|
||||
|
||||
-- | Local newtype to avoid orphan instance.
|
||||
newtype ErrorDoc d = ErrorDoc { unErrorDoc :: d }
|
||||
- deriving( Monoid, NFData, Document, HighlightDocument )
|
||||
+ deriving( Monoid, Semigroup, NFData, Document, HighlightDocument )
|
||||
|
||||
-- | @formulaToGuarded fm@ returns a guarded formula @gf@ that is
|
||||
-- equivalent to @fm@ under the assumption that this is possible.
|
||||
diff --git a/src/Theory/Proof.hs b/src/Theory/Proof.hs
|
||||
index 74fb77b1..7971b9fc 100644
|
||||
--- a/src/Theory/Proof.hs
|
||||
+++ b/src/Theory/Proof.hs
|
||||
@@ -388,17 +388,19 @@ data ProofStatus =
|
||||
| TraceFound -- ^ There is an annotated solved step
|
||||
deriving ( Show, Generic, NFData, Binary )
|
||||
|
||||
+instance Semigroup ProofStatus where
|
||||
+ TraceFound <> _ = TraceFound
|
||||
+ _ <> TraceFound = TraceFound
|
||||
+ IncompleteProof <> _ = IncompleteProof
|
||||
+ _ <> IncompleteProof = IncompleteProof
|
||||
+ _ <> CompleteProof = CompleteProof
|
||||
+ CompleteProof <> _ = CompleteProof
|
||||
+ UndeterminedProof <> UndeterminedProof = UndeterminedProof
|
||||
+
|
||||
+
|
||||
instance Monoid ProofStatus where
|
||||
mempty = CompleteProof
|
||||
|
||||
- mappend TraceFound _ = TraceFound
|
||||
- mappend _ TraceFound = TraceFound
|
||||
- mappend IncompleteProof _ = IncompleteProof
|
||||
- mappend _ IncompleteProof = IncompleteProof
|
||||
- mappend _ CompleteProof = CompleteProof
|
||||
- mappend CompleteProof _ = CompleteProof
|
||||
- mappend UndeterminedProof UndeterminedProof = UndeterminedProof
|
||||
-
|
||||
-- | The status of a 'ProofStep'.
|
||||
proofStepStatus :: ProofStep (Maybe a) -> ProofStatus
|
||||
proofStepStatus (ProofStep _ Nothing ) = UndeterminedProof
|
||||
@@ -560,10 +562,12 @@ newtype Prover = Prover
|
||||
-> Maybe IncrementalProof -- resulting proof
|
||||
}
|
||||
|
||||
+instance Semigroup Prover where
|
||||
+ p1 <> p2 = Prover $ \ctxt d se ->
|
||||
+ runProver p1 ctxt d se >=> runProver p2 ctxt d se
|
||||
+
|
||||
instance Monoid Prover where
|
||||
mempty = Prover $ \_ _ _ -> Just
|
||||
- p1 `mappend` p2 = Prover $ \ctxt d se ->
|
||||
- runProver p1 ctxt d se >=> runProver p2 ctxt d se
|
||||
|
||||
-- | Provers whose sequencing is handled via the 'Monoid' instance.
|
||||
--
|
||||
@@ -579,10 +583,12 @@ newtype DiffProver = DiffProver
|
||||
-> Maybe IncrementalDiffProof -- resulting proof
|
||||
}
|
||||
|
||||
+instance Semigroup DiffProver where
|
||||
+ p1 <> p2 = DiffProver $ \ctxt d se ->
|
||||
+ runDiffProver p1 ctxt d se >=> runDiffProver p2 ctxt d se
|
||||
+
|
||||
instance Monoid DiffProver where
|
||||
mempty = DiffProver $ \_ _ _ -> Just
|
||||
- p1 `mappend` p2 = DiffProver $ \ctxt d se ->
|
||||
- runDiffProver p1 ctxt d se >=> runDiffProver p2 ctxt d se
|
||||
|
||||
-- | Map the proof generated by the prover.
|
||||
mapProverProof :: (IncrementalProof -> IncrementalProof) -> Prover -> Prover
|
||||
@@ -784,15 +790,16 @@ runAutoDiffProver (AutoProver heuristic bound cut) =
|
||||
-- | The result of one pass of iterative deepening.
|
||||
data IterDeepRes = NoSolution | MaybeNoSolution | Solution ProofPath
|
||||
|
||||
+instance Semigroup IterDeepRes where
|
||||
+ x@(Solution _) <> _ = x
|
||||
+ _ <> y@(Solution _) = y
|
||||
+ MaybeNoSolution <> _ = MaybeNoSolution
|
||||
+ _ <> MaybeNoSolution = MaybeNoSolution
|
||||
+ NoSolution <> NoSolution = NoSolution
|
||||
+
|
||||
instance Monoid IterDeepRes where
|
||||
mempty = NoSolution
|
||||
|
||||
- x@(Solution _) `mappend` _ = x
|
||||
- _ `mappend` y@(Solution _) = y
|
||||
- MaybeNoSolution `mappend` _ = MaybeNoSolution
|
||||
- _ `mappend` MaybeNoSolution = MaybeNoSolution
|
||||
- NoSolution `mappend` NoSolution = NoSolution
|
||||
-
|
||||
-- | @cutOnSolvedDFS prf@ removes all other cases if an attack is found. The
|
||||
-- attack search is performed using a parallel DFS traversal with iterative
|
||||
-- deepening.
|
@ -1,140 +0,0 @@
|
||||
From a08f6e400772899b9b0fc16befc50391cd70696b Mon Sep 17 00:00:00 2001
|
||||
From: Felix Yan <felixonmars@archlinux.org>
|
||||
Date: Fri, 18 May 2018 16:24:41 +0800
|
||||
Subject: [PATCH] GHC 8.4 support
|
||||
|
||||
---
|
||||
src/Extension/Data/Bounded.hs | 10 ++++-
|
||||
src/Extension/Data/Monoid.hs | 14 +++---
|
||||
src/Logic/Connectives.hs | 4 +-
|
||||
src/Text/PrettyPrint/Class.hs | 4 +-
|
||||
src/Text/PrettyPrint/Html.hs | 6 ++-
|
||||
11 files changed, 79 insertions(+), 48 deletions(-)
|
||||
|
||||
|
||||
diff --git a/src/Extension/Data/Bounded.hs b/src/Extension/Data/Bounded.hs
|
||||
index 5f166006..f416a44c 100644
|
||||
--- a/src/Extension/Data/Bounded.hs
|
||||
+++ b/src/Extension/Data/Bounded.hs
|
||||
@@ -11,19 +11,25 @@ module Extension.Data.Bounded (
|
||||
) where
|
||||
|
||||
-- import Data.Monoid
|
||||
+import Data.Semigroup
|
||||
|
||||
-- | A newtype wrapper for a monoid of the maximum of a bounded type.
|
||||
newtype BoundedMax a = BoundedMax {getBoundedMax :: a}
|
||||
deriving( Eq, Ord, Show )
|
||||
|
||||
+instance (Ord a, Bounded a) => Semigroup (BoundedMax a) where
|
||||
+ BoundedMax x <> BoundedMax y = BoundedMax (max x y)
|
||||
+
|
||||
instance (Ord a, Bounded a) => Monoid (BoundedMax a) where
|
||||
mempty = BoundedMax minBound
|
||||
- (BoundedMax x) `mappend` (BoundedMax y) = BoundedMax (max x y)
|
||||
+ mappend = (<>)
|
||||
|
||||
-- | A newtype wrapper for a monoid of the minimum of a bounded type.
|
||||
newtype BoundedMin a = BoundedMin {getBoundedMin :: a}
|
||||
deriving( Eq, Ord, Show )
|
||||
|
||||
+instance (Ord a, Bounded a) => Semigroup (BoundedMin a) where
|
||||
+ BoundedMin x <> BoundedMin y = BoundedMin (min x y)
|
||||
+
|
||||
instance (Ord a, Bounded a) => Monoid (BoundedMin a) where
|
||||
mempty = BoundedMin maxBound
|
||||
- (BoundedMin x) `mappend` (BoundedMin y) = BoundedMin (min x y)
|
||||
\ No newline at end of file
|
||||
diff --git a/src/Extension/Data/Monoid.hs b/src/Extension/Data/Monoid.hs
|
||||
index 83655c34..9ce2f91b 100644
|
||||
--- a/src/Extension/Data/Monoid.hs
|
||||
+++ b/src/Extension/Data/Monoid.hs
|
||||
@@ -18,6 +18,7 @@ module Extension.Data.Monoid (
|
||||
) where
|
||||
|
||||
import Data.Monoid
|
||||
+import Data.Semigroup
|
||||
|
||||
#if __GLASGOW_HASKELL__ < 704
|
||||
|
||||
@@ -38,10 +39,13 @@ newtype MinMax a = MinMax { getMinMax :: Maybe (a, a) }
|
||||
minMaxSingleton :: a -> MinMax a
|
||||
minMaxSingleton x = MinMax (Just (x, x))
|
||||
|
||||
+instance Ord a => Semigroup (MinMax a) where
|
||||
+ MinMax Nothing <> y = y
|
||||
+ x <> MinMax Nothing = x
|
||||
+ MinMax (Just (xMin, xMax)) <> MinMax (Just (yMin, yMax)) =
|
||||
+ MinMax (Just (min xMin yMin, max xMax yMax))
|
||||
+
|
||||
+
|
||||
instance Ord a => Monoid (MinMax a) where
|
||||
mempty = MinMax Nothing
|
||||
-
|
||||
- MinMax Nothing `mappend` y = y
|
||||
- x `mappend` MinMax Nothing = x
|
||||
- MinMax (Just (xMin, xMax)) `mappend` MinMax (Just (yMin, yMax)) =
|
||||
- MinMax (Just (min xMin yMin, max xMax yMax))
|
||||
+ mappend = (<>)
|
||||
diff --git a/src/Logic/Connectives.hs b/src/Logic/Connectives.hs
|
||||
index 2e441172..7206cc2c 100644
|
||||
--- a/src/Logic/Connectives.hs
|
||||
+++ b/src/Logic/Connectives.hs
|
||||
@@ -23,12 +23,12 @@ import Control.DeepSeq
|
||||
|
||||
-- | A conjunction of atoms of type a.
|
||||
newtype Conj a = Conj { getConj :: [a] }
|
||||
- deriving (Monoid, Foldable, Traversable, Eq, Ord, Show, Binary,
|
||||
+ deriving (Monoid, Semigroup, Foldable, Traversable, Eq, Ord, Show, Binary,
|
||||
Functor, Applicative, Monad, Alternative, MonadPlus, Typeable, Data, NFData)
|
||||
|
||||
-- | A disjunction of atoms of type a.
|
||||
newtype Disj a = Disj { getDisj :: [a] }
|
||||
- deriving (Monoid, Foldable, Traversable, Eq, Ord, Show, Binary,
|
||||
+ deriving (Monoid, Semigroup, Foldable, Traversable, Eq, Ord, Show, Binary,
|
||||
Functor, Applicative, Monad, Alternative, MonadPlus, Typeable, Data, NFData)
|
||||
|
||||
instance MonadDisj Disj where
|
||||
diff --git a/src/Text/PrettyPrint/Class.hs b/src/Text/PrettyPrint/Class.hs
|
||||
index f5eb42fe..13be6515 100644
|
||||
--- a/src/Text/PrettyPrint/Class.hs
|
||||
+++ b/src/Text/PrettyPrint/Class.hs
|
||||
@@ -187,9 +187,11 @@ instance Document Doc where
|
||||
nest i (Doc d) = Doc $ P.nest i d
|
||||
caseEmptyDoc yes no (Doc d) = if P.isEmpty d then yes else no
|
||||
|
||||
+instance Semigroup Doc where
|
||||
+ Doc d1 <> Doc d2 = Doc $ (P.<>) d1 d2
|
||||
+
|
||||
instance Monoid Doc where
|
||||
mempty = Doc $ P.empty
|
||||
- mappend (Doc d1) (Doc d2) = Doc $ (P.<>) d1 d2
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
-- Additional combinators
|
||||
diff --git a/src/Text/PrettyPrint/Html.hs b/src/Text/PrettyPrint/Html.hs
|
||||
index 3de5e307..10103eb7 100644
|
||||
--- a/src/Text/PrettyPrint/Html.hs
|
||||
+++ b/src/Text/PrettyPrint/Html.hs
|
||||
@@ -90,7 +90,7 @@ attribute (key,value) = " " ++ key ++ "=\"" ++ escapeHtmlEntities value ++ "\""
|
||||
|
||||
-- | A 'Document' transformer that adds proper HTML escaping.
|
||||
newtype HtmlDoc d = HtmlDoc { getHtmlDoc :: d }
|
||||
- deriving( Monoid )
|
||||
+ deriving( Monoid, Semigroup )
|
||||
|
||||
-- | Wrap a document such that HTML markup can be added without disturbing the
|
||||
-- layout.
|
||||
@@ -182,9 +182,11 @@ getNoHtmlDoc = runIdentity . unNoHtmlDoc
|
||||
instance NFData d => NFData (NoHtmlDoc d) where
|
||||
rnf = rnf . getNoHtmlDoc
|
||||
|
||||
+instance Semigroup d => Semigroup (NoHtmlDoc d) where
|
||||
+ (<>) = liftA2 (<>)
|
||||
+
|
||||
instance Monoid d => Monoid (NoHtmlDoc d) where
|
||||
mempty = pure mempty
|
||||
- mappend = liftA2 mappend
|
||||
|
||||
instance Document d => Document (NoHtmlDoc d) where
|
||||
char = pure . char
|
@ -0,0 +1,77 @@
|
||||
diff --git a/plugins/sapic/Makefile b/plugins/sapic/Makefile
|
||||
index 8f1b1866..678accbe 100644
|
||||
--- a/plugins/sapic/Makefile
|
||||
+++ b/plugins/sapic/Makefile
|
||||
@@ -1,18 +1,18 @@
|
||||
TARGET = sapic
|
||||
-OBJS= color.cmo exceptions.cmo btree.cmo position.cmo positionplusinit.cmo var.cmo term.cmo fact.cmo atomformulaaction.cmo action.cmo atom.cmo formula.cmo tamarin.cmo sapicterm.cmo sapicvar.cmo sapicaction.cmo lexer.cmo sapic.cmo annotatedsapicaction.cmo annotatedsapictree.cmo progressfunction.cmo restrictions.cmo annotatedrule.cmo translationhelper.cmo basetranslation.cmo firsttranslation.cmo main.cmo
|
||||
+OBJS= color.cmx exceptions.cmx btree.cmx position.cmx positionplusinit.cmx var.cmx term.cmx fact.cmx atomformulaaction.cmx action.cmx atom.cmx formula.cmx tamarin.cmx sapicterm.cmx sapicvar.cmx sapicaction.cmx lexer.cmx sapic.cmx annotatedsapicaction.cmx annotatedsapictree.cmx progressfunction.cmx restrictions.cmx annotatedrule.cmx translationhelper.cmx basetranslation.cmx firsttranslation.cmx main.cmx
|
||||
FLAGS=-g
|
||||
|
||||
-OCAMLC := $(shell command -v ocamlc 2> /dev/null)
|
||||
+OCAMLOPT := $(shell command -v ocamlopt 2> /dev/null)
|
||||
OCAMLLEX := $(shell command -v ocamllex 2> /dev/null)
|
||||
OCAMLYACC := $(shell command -v ocamlyacc 2> /dev/null)
|
||||
OCAMLDEP := $(shell command -v ocamldep 2> /dev/null)
|
||||
-OCAMLC_GTEQ_402 := $(shell expr `ocamlc -version | sed -e 's/\.\([0-9][0-9]\)/\1/g' -e 's/\.\([0-9]\)/0\1/g' -e 's/^[0-9]\{3,4\}$$/&00/'` \>= 40200)
|
||||
+OCAMLC_GTEQ_402 := $(shell expr `ocamlopt -version | sed -e 's/\.\([0-9][0-9]\)/\1/g' -e 's/\.\([0-9]\)/0\1/g' -e 's/^[0-9]\{3,4\}$$/&00/'` \>= 40200)
|
||||
|
||||
default: sapic
|
||||
|
||||
sapic:
|
||||
-ifdef OCAMLC
|
||||
- @echo "Found ocamlc."
|
||||
+ifdef OCAMLOPT
|
||||
+ @echo "Found ocamlopt."
|
||||
ifdef OCAMLLEX
|
||||
@echo "Found ocamllex."
|
||||
ifdef OCAMLYACC
|
||||
@@ -22,9 +22,9 @@ ifdef OCAMLDEP
|
||||
ifeq "$(OCAMLC_GTEQ_402)" "1"
|
||||
@echo "Building SAPIC."
|
||||
$(MAKE) $(OBJS)
|
||||
- ocamlc $(FLAGS) -o $@ str.cma $(OBJS)
|
||||
- @echo "Installing SAPIC into ~/.local/bin/"
|
||||
- cp sapic ~/.local/bin
|
||||
+ ocamlopt $(FLAGS) -o $@ str.cmxa $(OBJS)
|
||||
+# @echo "Installing SAPIC into ~/.local/bin/"
|
||||
+# cp sapic ~/.local/bin
|
||||
else
|
||||
@echo "Found OCAML version < 4.02. SAPIC will not be installed."
|
||||
endif
|
||||
@@ -38,7 +38,7 @@ else
|
||||
@echo "ocamllex not found. SAPIC will not be installed."
|
||||
endif
|
||||
else
|
||||
- @echo "ocamlc not found. SAPIC will not be installed."
|
||||
+ @echo "ocamlopt not found. SAPIC will not be installed."
|
||||
endif
|
||||
|
||||
depend:
|
||||
@@ -48,20 +48,20 @@ lexer.ml: sapic.cmi
|
||||
|
||||
.PHONY: clean
|
||||
clean:
|
||||
- rm -rf *.cmi *.cmo $(TARGET)
|
||||
+ rm -rf *.cmi **.cmx $(TARGET)
|
||||
rm -rf sapic.ml sapic.mli lexer.ml lexer.mli
|
||||
|
||||
-.SUFFIXES: .ml .mli .mll .mly .cmo .cmi
|
||||
+.SUFFIXES: .ml .mli .mll .mly .cmx .cmi
|
||||
|
||||
-.ml.cmo:
|
||||
- ocamlc $(FLAGS) -c $<
|
||||
+.ml.cmx:
|
||||
+ ocamlopt $(FLAGS) -c $<
|
||||
.mli.cmi:
|
||||
- ocamlc $(FLAGS) -c $<
|
||||
+ ocamlopt $(FLAGS) -c $<
|
||||
.mll.ml:
|
||||
ocamllex $<
|
||||
.mly.ml:
|
||||
ocamlyacc $<
|
||||
.ml.mli:
|
||||
- ocamlc -i $< > $@
|
||||
+ ocamlopt -i $< > $@
|
||||
|
||||
-include .depend
|
@ -11,9 +11,11 @@ stdenv.mkDerivation rec {
|
||||
};
|
||||
|
||||
patches = [
|
||||
./calling_convention.patch
|
||||
./undefined_behavior.patch
|
||||
];
|
||||
|
||||
CXXFLAGS = "-Werror=return-type";
|
||||
|
||||
preConfigure =
|
||||
# Fix F77LD to workaround for a following build error:
|
||||
#
|
||||
|
@ -1,5 +1,4 @@
|
||||
diff --git a/DY/src/finterface.cc b/DY/src/finterface.cc
|
||||
index 0405786..eb171d0 100644
|
||||
--- a/DY/src/finterface.cc
|
||||
+++ b/DY/src/finterface.cc
|
||||
@@ -14,17 +14,17 @@
|
||||
@ -18,8 +17,9 @@ index 0405786..eb171d0 100644
|
||||
- int dy_get_res_(const int *ds_id, double *calc_res);
|
||||
+ void dy_get_res_(const int *ds_id, double *calc_res);
|
||||
|
||||
int dy_release_();
|
||||
- int dy_release_();
|
||||
- int dy_set_ewpars_();
|
||||
+ void dy_release_();
|
||||
+ void dy_set_ewpars_();
|
||||
}
|
||||
|
||||
@ -48,7 +48,7 @@ index 0405786..eb171d0 100644
|
||||
{
|
||||
// evolve convolutions
|
||||
vector<PDFconv*>::iterator ipc = gPDFconvs.begin();
|
||||
@@ -118,24 +116,20 @@ int dy_do_calc_()
|
||||
@@ -118,28 +116,24 @@ int dy_do_calc_()
|
||||
if ( true != idc->second->Integrate() ) {
|
||||
cout << "Something is wrong with DY integration for "
|
||||
<< idc->first << " data set." << endl;
|
||||
@ -76,6 +76,11 @@ index 0405786..eb171d0 100644
|
||||
PhysPar::setPhysPar();
|
||||
}
|
||||
|
||||
-int dy_release_()
|
||||
+void dy_release_()
|
||||
{
|
||||
vector<PDFconv*>::iterator ipc = gPDFconvs.begin();
|
||||
for (; ipc!=gPDFconvs.end(); ipc++){
|
||||
@@ -155,6 +149,4 @@ int dy_release_()
|
||||
for (; idc != gCalcs.end() ; idc++){
|
||||
delete (idc->second);
|
||||
@ -83,8 +88,18 @@ index 0405786..eb171d0 100644
|
||||
-
|
||||
- return 1;
|
||||
}
|
||||
diff --git a/DiffDIS/include/DataTable.h b/DiffDIS/include/DataTable.h
|
||||
--- a/DiffDIS/include/DataTable.h
|
||||
+++ b/DiffDIS/include/DataTable.h
|
||||
@@ -307,6 +307,7 @@ class DataTable_t {
|
||||
for(ic=0; ic < GetNcols(); ic++) {
|
||||
for(ir=0; ir < npt; ir++) Data[ic][ir] = A.Data[ic][ir];
|
||||
}
|
||||
+ return *this;
|
||||
}
|
||||
|
||||
//@}
|
||||
diff --git a/FastNLO/src/FastNLOInterface.cc b/FastNLO/src/FastNLOInterface.cc
|
||||
index 20f8a75..a6dac79 100644
|
||||
--- a/FastNLO/src/FastNLOInterface.cc
|
||||
+++ b/FastNLO/src/FastNLOInterface.cc
|
||||
@@ -39,14 +39,14 @@ void gauleg(double x1,double x2,double *x,double *w, int n);
|
||||
@ -197,7 +212,6 @@ index 20f8a75..a6dac79 100644
|
||||
|
||||
int CreateUsedPointsArray(int idataset, int npoints) {
|
||||
diff --git a/Hathor/src/HathorInterface.cc b/Hathor/src/HathorInterface.cc
|
||||
index 7da88b1..96576a3 100644
|
||||
--- a/Hathor/src/HathorInterface.cc
|
||||
+++ b/Hathor/src/HathorInterface.cc
|
||||
@@ -6,9 +6,9 @@
|
||||
@ -239,8 +253,82 @@ index 7da88b1..96576a3 100644
|
||||
rlxd_reset(rndStore);
|
||||
|
||||
std::map<int, Hathor*>::const_iterator hathorIter = hathor_array.find(*idataset);
|
||||
diff --git a/src/TheorEval.cc b/src/TheorEval.cc
|
||||
--- a/src/TheorEval.cc
|
||||
+++ b/src/TheorEval.cc
|
||||
@@ -62,6 +62,7 @@ TheorEval::initTheory()
|
||||
list<tToken> sl;
|
||||
this->assignTokens(sl);
|
||||
this->convertToRPN(sl);
|
||||
+ return 0;
|
||||
}
|
||||
|
||||
int
|
||||
@@ -167,6 +168,7 @@ TheorEval::assignTokens(list<tToken> &sl)
|
||||
sl.push_back(t);
|
||||
}
|
||||
}
|
||||
+ return 0;
|
||||
}
|
||||
|
||||
int
|
||||
@@ -217,6 +219,7 @@ TheorEval::convertToRPN(list<tToken> &sl)
|
||||
cout << endl;
|
||||
*/
|
||||
|
||||
+ return 0;
|
||||
}
|
||||
|
||||
int
|
||||
@@ -236,6 +239,7 @@ TheorEval::initTerm(int iterm, valarray<double> *val)
|
||||
hf_errlog_(id, text, textlen);
|
||||
return -1;
|
||||
}
|
||||
+ return 0;
|
||||
}
|
||||
|
||||
int
|
||||
@@ -348,6 +352,7 @@ TheorEval::initGridTerm(int iterm, valarray<double> *val)
|
||||
|
||||
// associate grid and valarray pointers in token
|
||||
_mapGridToken[g] = val;
|
||||
+ return 0;
|
||||
}
|
||||
|
||||
int
|
||||
@@ -430,6 +435,7 @@ TheorEval::initKfTerm(int iterm, valarray<double> *val)
|
||||
|
||||
// write k-factor array to the token valarray
|
||||
*val = valarray<double>(vkf.data(), vkf.size());
|
||||
+ return 0;
|
||||
}
|
||||
|
||||
int
|
||||
@@ -465,6 +471,7 @@ TheorEval::setCKM(const vector<double> &v_ckm)
|
||||
int textlen = strlen(text);
|
||||
hf_errlog_(id, text, textlen);
|
||||
#endif
|
||||
+ return 0;
|
||||
}
|
||||
|
||||
int
|
||||
@@ -531,6 +538,7 @@ TheorEval::Evaluate(valarray<double> &vte )
|
||||
}
|
||||
//vte /= _units;
|
||||
}
|
||||
+ return 0;
|
||||
}
|
||||
|
||||
int
|
||||
@@ -555,6 +563,7 @@ TheorEval::getGridValues()
|
||||
|
||||
|
||||
}
|
||||
+ return 0;
|
||||
}
|
||||
|
||||
int
|
||||
diff --git a/src/ftheor_eval.cc b/src/ftheor_eval.cc
|
||||
index 1dd4e8b..8bc7991 100644
|
||||
--- a/src/ftheor_eval.cc
|
||||
+++ b/src/ftheor_eval.cc
|
||||
@@ -19,15 +19,15 @@
|
||||
@ -341,7 +429,6 @@ index 1dd4e8b..8bc7991 100644
|
||||
tTEmap::iterator it = gTEmap.begin();
|
||||
for (; it!= gTEmap.end(); it++){
|
||||
diff --git a/src/lhapdf6_output.c b/src/lhapdf6_output.c
|
||||
index 4b20b68..549c521 100644
|
||||
--- a/src/lhapdf6_output.c
|
||||
+++ b/src/lhapdf6_output.c
|
||||
@@ -64,7 +64,7 @@ extern double bvalij_(int *,int *,int *,int *,int *);
|
||||
@ -353,3 +440,15 @@ index 4b20b68..549c521 100644
|
||||
extern int getcbt_(int *, double *, double *, double *);
|
||||
extern void getpdfunctype_heraf_(int *mc, int *asymh, int *symh, char *name, size_t size);
|
||||
extern void hf_errlog_(int *, char *, size_t);
|
||||
diff --git a/tools/draw/include/FileOpener.h b/tools/draw/include/FileOpener.h
|
||||
--- a/tools/draw/include/FileOpener.h
|
||||
+++ b/tools/draw/include/FileOpener.h
|
||||
@@ -61,7 +61,7 @@ class InFileOpener_t {
|
||||
string GetPath() const {return ind < 0 ? "" : Flist[ind];}
|
||||
|
||||
// ==================================
|
||||
- int Add(const string& fname) {
|
||||
+ void Add(const string& fname) {
|
||||
Flist.push_back(fname);
|
||||
}
|
||||
|
@ -16,10 +16,10 @@ stdenv.mkDerivation rec {
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
buildInputs = [ python ];
|
||||
|
||||
# TODO: Cleanup
|
||||
patchPhase = ''
|
||||
CA_PATH="$(echo '${cacert}/etc/ssl/certs/ca-bundle.crt' | sed 's/\//\\\//g')" # / -> \/
|
||||
sed -i -E 's/urlopen\(url\)/urlopen(url, cafile="'$CA_PATH'")/' repo
|
||||
substituteInPlace repo --replace \
|
||||
'urllib.request.urlopen(url)' \
|
||||
'urllib.request.urlopen(url, cafile="${cacert}/etc/ssl/certs/ca-bundle.crt")'
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
|
@ -1,31 +1,31 @@
|
||||
{ stdenv, fetchurl, jre, unzip }:
|
||||
{ stdenv, fetchurl, makeWrapper, jre }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "mediathekview-9";
|
||||
stdenv.mkDerivation rec {
|
||||
version = "13.2.1";
|
||||
name = "mediathekview-${version}";
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/zdfmediathk/MediathekView_9.zip";
|
||||
sha256 = "1wff0igr33z9p1mjw7yvb6658smdwnp22dv8klz0y8qg116wx7a4";
|
||||
url = "https://download.mediathekview.de/stabil/MediathekView-${version}.tar.gz";
|
||||
sha256 = "11wg6klviig0h7pprfaygamsgqr7drqra2s4yxgfak6665033l2a";
|
||||
};
|
||||
unpackPhase = "true";
|
||||
|
||||
buildInputs = [ unzip ];
|
||||
|
||||
# Could use some more love
|
||||
# Maybe we can also preconfigure locations for vlc and the others.
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
mkdir -p $out/opt/mediathekview
|
||||
cd $out/opt/mediathekview
|
||||
unzip $src
|
||||
find . -iname '*.exe' -delete
|
||||
sed -i -e 's, java, ${jre}/bin/java,' MediathekView__Linux.sh
|
||||
ln -s $out/opt/mediathekview/MediathekView__Linux.sh $out/bin/mediathekview
|
||||
'';
|
||||
mkdir -p $out/{lib,bin,share/mediathekview}
|
||||
|
||||
install -m644 MediathekView.jar $out/
|
||||
install -m644 -t $out/lib lib/*
|
||||
install -m755 bin/flv.sh $out/share/mediathekview
|
||||
|
||||
makeWrapper ${jre}/bin/java $out/bin/mediathek \
|
||||
--add-flags "-cp '$out/lib/*' -jar $out/MediathekView.jar"
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://zdfmediathk.sourceforge.net/;
|
||||
license = stdenv.lib.licenses.gpl3;
|
||||
maintainers = [ maintainers.chaoflow ];
|
||||
platforms = platforms.linux; # also macOS and cygwin, but not investigated, yet
|
||||
description = "Offers access to the Mediathek of different tv stations (ARD, ZDF, Arte, etc.)";
|
||||
homepage = https://mediathekview.de/;
|
||||
license = licenses.gpl3;
|
||||
maintainers = with maintainers; [ chaoflow moredread ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
||||
|
@ -1,6 +1,6 @@
|
||||
{ stdenv, fetchurl, fetchFromGitHub, makeWrapper
|
||||
, docutils, perl, pkgconfig, python3, which, ffmpeg_4
|
||||
, freefont_ttf, freetype, libass, libpthreadstubs
|
||||
, freefont_ttf, freetype, libass, libpthreadstubs, mujs
|
||||
, lua, luasocket, libuchardet, libiconv ? null, darwin
|
||||
|
||||
, waylandSupport ? false
|
||||
@ -19,6 +19,11 @@
|
||||
, libcdio ? null
|
||||
, libcdio-paranoia ? null
|
||||
|
||||
, vulkanSupport ? stdenv.isLinux
|
||||
, shaderc ? null
|
||||
, vulkan-headers ? null
|
||||
, vulkan-loader ? null
|
||||
|
||||
, alsaSupport ? true, alsaLib ? null
|
||||
, bluraySupport ? true, libbluray ? null
|
||||
, bs2bSupport ? true, libbs2b ? null
|
||||
@ -134,7 +139,7 @@ in stdenv.mkDerivation rec {
|
||||
|
||||
buildInputs = [
|
||||
ffmpeg_4 freetype libass libpthreadstubs
|
||||
lua luasocket libuchardet
|
||||
lua luasocket libuchardet mujs
|
||||
] ++ optional alsaSupport alsaLib
|
||||
++ optional archiveSupport libarchive
|
||||
++ optional bluraySupport libbluray
|
||||
@ -163,6 +168,7 @@ in stdenv.mkDerivation rec {
|
||||
++ optionals dvdnavSupport [ libdvdnav libdvdnav.libdvdread ]
|
||||
++ optionals waylandSupport [ wayland wayland-protocols libxkbcommon ]
|
||||
++ optionals x11Support [ libX11 libXext libGLU_combined libXxf86vm libXrandr ]
|
||||
++ optionals vulkanSupport [ shaderc vulkan-headers vulkan-loader ]
|
||||
++ optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
|
||||
CoreFoundation Cocoa CoreAudio
|
||||
]);
|
||||
@ -176,7 +182,7 @@ in stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
# Ensure youtube-dl is available in $PATH for mpv
|
||||
wrapperFlags =
|
||||
wrapperFlags =
|
||||
let
|
||||
getPath = type : "${luasocket}/lib/lua/${lua.luaversion}/?.${type};" +
|
||||
"${luasocket}/share/lua/${lua.luaversion}/?.${type}";
|
||||
|
@ -1,38 +0,0 @@
|
||||
{ stdenv, fetchurl, jre }:
|
||||
|
||||
with stdenv;
|
||||
|
||||
mkDerivation rec {
|
||||
|
||||
version = "10";
|
||||
name = "zdfmediathk-${version}";
|
||||
src = fetchurl {
|
||||
url = "https://github.com/xaverW/MediathekView/archive/Version${version}.tar.gz";
|
||||
sha256 = "12iyigqjslbn8rzym1mq1s0mvss7r97aiy6wfdrq5m0psarlcljw";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/{lib,bin,share/{doc,licenses}}
|
||||
cd dist/
|
||||
install -m644 MediathekView.jar $out/
|
||||
install -m644 -t $out/lib lib/*
|
||||
install -m755 bin/flv.sh $out/bin/
|
||||
install -m644 -t $out/share/doc Anleitung/*.pdf
|
||||
install -m644 -t $out/share/licenses Copyright/{*.*,_copyright}
|
||||
bin="$out/bin/mediathek"
|
||||
cat >> "$bin" << EOF
|
||||
#!${stdenv.shell}
|
||||
exec ${jre}/bin/java -cp "$out/lib/*" -Xms128M -Xmx1G -jar "$out/MediathekView.jar" "\$@"
|
||||
EOF
|
||||
chmod +x "$bin"
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Offers access to the Mediathek of different tv stations (ARD, ZDF, Arte, etc.)";
|
||||
homepage = https://github.com/xaverW/MediathekView/;
|
||||
license = licenses.gpl3;
|
||||
maintainers = [ maintainers.flosse ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
|
||||
}
|
@ -3,13 +3,13 @@
|
||||
stdenv.mkDerivation rec {
|
||||
name = "${pname}-${version}";
|
||||
pname = "dynamips";
|
||||
version = "0.2.18";
|
||||
version = "0.2.19";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "GNS3";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "1jrwvrpl61rqbjjphv8v7ryhdwfjrpps76dbvkpl43hpn5hqqis2";
|
||||
sha256 = "0x63m37vjyp57900x09gfvw02cwg85b33918x7fjj9x37wgmi5qf";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
33
pkgs/applications/virtualization/podman/conmon.nix
Normal file
33
pkgs/applications/virtualization/podman/conmon.nix
Normal file
@ -0,0 +1,33 @@
|
||||
{ stdenv, lib, fetchFromGitHub, pkgconfig, glib }:
|
||||
|
||||
with lib;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "conmon-${version}";
|
||||
version = "unstable-2018-11-28";
|
||||
rev = "8fba206232c249a8fc4e2fac1469fb2fddbf5cf7";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "containers";
|
||||
repo = "conmon";
|
||||
sha256 = "07ar0dk9i072b14f6il51yqahxp5c4fkf5jzar8rxcpvymkdy8zq";
|
||||
inherit rev;
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [
|
||||
glib
|
||||
];
|
||||
|
||||
installPhase = ''
|
||||
install -D -m 555 bin/conmon $out/bin/conmon
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = https://github.com/containers/conmon;
|
||||
description = "An OCI container runtime monitor";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ vdemeester ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
43
pkgs/applications/virtualization/podman/default.nix
Normal file
43
pkgs/applications/virtualization/podman/default.nix
Normal file
@ -0,0 +1,43 @@
|
||||
{ stdenv, fetchFromGitHub, pkgconfig
|
||||
, buildGoPackage, gpgme, lvm2, btrfs-progs, libseccomp
|
||||
}:
|
||||
|
||||
buildGoPackage rec {
|
||||
name = "podman-${version}";
|
||||
version = "1.0.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "containers";
|
||||
repo = "libpod";
|
||||
rev = "v${version}";
|
||||
sha256 = "1py6vbmpm25j1gb51dn973pckvgjl9q63y9qyzszvc3q3wsxsqhw";
|
||||
};
|
||||
|
||||
goPackagePath = "github.com/containers/libpod";
|
||||
|
||||
# Optimizations break compilation of libseccomp c bindings
|
||||
hardeningDisable = [ "fortify" ];
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
||||
buildInputs = [
|
||||
btrfs-progs libseccomp gpgme lvm2
|
||||
];
|
||||
|
||||
buildPhase = ''
|
||||
pushd $NIX_BUILD_TOP/go/src/${goPackagePath}
|
||||
patchShebangs .
|
||||
make binaries
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
install -Dm555 bin/podman $bin/bin/podman
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://podman.io/;
|
||||
description = "A program for managing pods, containers and container images";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ vdemeester ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "remotebox-${version}";
|
||||
version = "2.5";
|
||||
version = "2.6";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://remotebox.knobgoblin.org.uk/downloads/RemoteBox-${version}.tar.bz2";
|
||||
sha256 = "0dajc9fg57gj915h5dxavbia4wx10frn4xc61pv0l8r5zp7xvqal";
|
||||
sha256 = "1bbdnf13vp35ddfmk4pn167vfxgmdw0fd8bqg51wd8dd4cj8y3wp";
|
||||
};
|
||||
|
||||
buildInputs = with perlPackages; [ perl Glib Gtk2 Pango SOAPLite ];
|
||||
|
@ -551,14 +551,19 @@ rec {
|
||||
buildInputs = [ jshon pigz coreutils findutils jq ];
|
||||
# Image name and tag must be lowercase
|
||||
imageName = lib.toLower name;
|
||||
imageTag = if tag == null then "" else lib.toLower tag;
|
||||
baseJson = configJson;
|
||||
passthru.imageTag =
|
||||
if tag == null
|
||||
then lib.head (lib.splitString "-" (lib.last (lib.splitString "/" result)))
|
||||
else lib.toLower tag;
|
||||
} ''
|
||||
${lib.optionalString (tag == null) ''
|
||||
${if (tag == null) then ''
|
||||
outName="$(basename "$out")"
|
||||
outHash=$(echo "$outName" | cut -d - -f 1)
|
||||
|
||||
imageTag=$outHash
|
||||
'' else ''
|
||||
imageTag="${tag}"
|
||||
''}
|
||||
|
||||
find ${bulkLayers} -mindepth 1 -maxdepth 1 | sort -t/ -k5 -n > layer-list
|
||||
|
@ -19,6 +19,7 @@ in
|
||||
, # Shell code executed after the file has been fetched
|
||||
# successfully. This can do things like check or transform the file.
|
||||
postFetch ? ""
|
||||
, preferLocalBuild ? true
|
||||
}:
|
||||
|
||||
/* NOTE:
|
||||
@ -66,5 +67,5 @@ stdenvNoCC.mkDerivation {
|
||||
"GIT_PROXY_COMMAND" "SOCKS_SERVER"
|
||||
];
|
||||
|
||||
preferLocalBuild = true;
|
||||
inherit preferLocalBuild;
|
||||
}
|
||||
|
@ -1,4 +1,11 @@
|
||||
{stdenvNoCC, mercurial}: {name ? null, url, rev ? null, md5 ? null, sha256 ? null, fetchSubrepos ? false}:
|
||||
{ stdenvNoCC, mercurial }:
|
||||
{ name ? null
|
||||
, url
|
||||
, rev ? null
|
||||
, md5 ? null
|
||||
, sha256 ? null
|
||||
, fetchSubrepos ? false
|
||||
, preferLocalBuild ? true }:
|
||||
|
||||
if md5 != null then
|
||||
throw "fetchhg does not support md5 anymore, please use sha256"
|
||||
@ -18,5 +25,5 @@ stdenvNoCC.mkDerivation {
|
||||
outputHash = sha256;
|
||||
|
||||
inherit url rev;
|
||||
preferLocalBuild = true;
|
||||
inherit preferLocalBuild;
|
||||
}
|
||||
|
@ -14,6 +14,7 @@
|
||||
, meta ? {}
|
||||
, port ? "8080"
|
||||
, postFetch ? ""
|
||||
, preferLocalBuild ? true
|
||||
}:
|
||||
|
||||
assert sha512 != "" -> builtins.compareVersions "1.11" builtins.nixVersion <= 0;
|
||||
@ -42,11 +43,10 @@ if (!hasHash) then throw "Specify sha for fetchipfs fixed-output derivation" els
|
||||
postFetch
|
||||
ipfs
|
||||
url
|
||||
port;
|
||||
port
|
||||
meta;
|
||||
|
||||
# Doing the download on a remote machine just duplicates network
|
||||
# traffic, so don't do that.
|
||||
preferLocalBuild = true;
|
||||
|
||||
inherit meta;
|
||||
inherit preferLocalBuild;
|
||||
}
|
||||
|
@ -1,6 +1,7 @@
|
||||
{stdenvNoCC, subversion, glibcLocales, sshSupport ? false, openssh ? null}:
|
||||
{url, rev ? "HEAD", md5 ? "", sha256 ? "",
|
||||
ignoreExternals ? false, ignoreKeywords ? false, name ? null}:
|
||||
{url, rev ? "HEAD", md5 ? "", sha256 ? ""
|
||||
, ignoreExternals ? false, ignoreKeywords ? false, name ? null
|
||||
, preferLocalBuild ? true }:
|
||||
|
||||
let
|
||||
repoName = with stdenvNoCC.lib;
|
||||
@ -40,5 +41,5 @@ stdenvNoCC.mkDerivation {
|
||||
inherit url rev sshSupport openssh ignoreExternals ignoreKeywords;
|
||||
|
||||
impureEnvVars = stdenvNoCC.lib.fetchers.proxyImpureEnvVars;
|
||||
preferLocalBuild = true;
|
||||
inherit preferLocalBuild;
|
||||
}
|
||||
|
@ -87,6 +87,9 @@ in
|
||||
|
||||
# Passthru information, if any.
|
||||
, passthru ? {}
|
||||
# Doing the download on a remote machine just duplicates network
|
||||
# traffic, so don't do that by default
|
||||
, preferLocalBuild ? true
|
||||
}:
|
||||
|
||||
assert sha512 != "" -> builtins.compareVersions "1.11" builtins.nixVersion <= 0;
|
||||
@ -135,9 +138,7 @@ stdenvNoCC.mkDerivation {
|
||||
|
||||
nixpkgsVersion = lib.trivial.release;
|
||||
|
||||
# Doing the download on a remote machine just duplicates network
|
||||
# traffic, so don't do that.
|
||||
preferLocalBuild = true;
|
||||
inherit preferLocalBuild;
|
||||
|
||||
postHook = if netrcPhase == null then null else ''
|
||||
${netrcPhase}
|
||||
|
19
pkgs/build-support/prefer-remote-fetch/default.nix
Normal file
19
pkgs/build-support/prefer-remote-fetch/default.nix
Normal file
@ -0,0 +1,19 @@
|
||||
# An overlay that download sources on remote builder.
|
||||
# This is useful when the evaluating machine has a slow
|
||||
# upload while the builder can fetch faster directly from the source.
|
||||
# Usage: Put the following snippet in your usual overlay definition:
|
||||
#
|
||||
# self: super:
|
||||
# (super.prefer-remote-fetch self super)
|
||||
# Full configuration example for your own account:
|
||||
#
|
||||
# $ mkdir ~/.config/nixpkgs/overlays/
|
||||
# $ echo 'self: super: super.prefer-remote-fetch self super' > ~/.config/nixpkgs/overlays/prefer-remote-fetch.nix
|
||||
#
|
||||
self: super: {
|
||||
fetchurl = args: super.fetchurl (args // { preferLocalBuild = false; });
|
||||
fetchgit = args: super.fetchgit (args // { preferLocalBuild = false; });
|
||||
fetchhg = args: super.fetchhg (args // { preferLocalBuild = false; });
|
||||
fetchsvn = args: super.fetchsvn (args // { preferLocalBuild = false; });
|
||||
fetchipfs = args: super.fetchipfs (args // { preferLocalBuild = false; });
|
||||
}
|
38
pkgs/data/fonts/b612/default.nix
Normal file
38
pkgs/data/fonts/b612/default.nix
Normal file
@ -0,0 +1,38 @@
|
||||
{ stdenv, fetchzip, lib }:
|
||||
|
||||
let
|
||||
version = "1.003";
|
||||
pname = "b612";
|
||||
in
|
||||
|
||||
fetchzip rec {
|
||||
name = "${pname}-font-${version}";
|
||||
url = "http://git.polarsys.org/c/${pname}/${pname}.git/snapshot/${pname}-bd14fde2544566e620eab106eb8d6f2b7fb1347e.zip";
|
||||
sha256 = "07gadk9b975k69pgw9gj54qx8d5xvxphid7wrmv4cna52jyy4464";
|
||||
postFetch = ''
|
||||
mkdir -p $out/share/fonts/truetype/${pname}
|
||||
unzip -j $downloadedFile \*.ttf -d $out/share/fonts/truetype/${pname}
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://b612-font.com/;
|
||||
description = "Highly legible font family for use on aircraft cockpit screens";
|
||||
longDescription = ''
|
||||
B612 is the result of a research project initiated by Airbus. The font
|
||||
was designed by Nicolas Chauveau and Thomas Paillot (intactile DESIGN) with the
|
||||
support of Jean‑Luc Vinot (ENAC). Prior research by Jean‑Luc Vinot (DGAC/DSNA)
|
||||
and Sylvie Athènes (Université de Toulouse III). The challenge for the
|
||||
"Aeronautical Font" was to improve the display of information on the cockpit
|
||||
screens, in particular in terms of legibility and comfort of reading, and to
|
||||
optimize the overall homogeneity of the cockpit.
|
||||
|
||||
Intactile DESIGN was hired to work on the design of eight typographic
|
||||
variants of the font. This one, baptized B612 in reference to the
|
||||
imaginary asteroid of the aviator Saint‑Exupéry, benefited from a complete
|
||||
hinting on all the characters.
|
||||
'';
|
||||
license = with licenses; [ ofl epl10 bsd3 ] ;
|
||||
maintainers = with maintainers; [ leenaars ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ant-theme";
|
||||
version = "1.2.0";
|
||||
version = "1.3.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/EliverLara/Ant/releases/download/v${version}/Ant.tar";
|
||||
sha256 = "15751pnb94g2wi6y932l3d7ksaz18402zbzp3l7ryy0lqwjnqvkj";
|
||||
sha256 = "1r795v96ywzcb4dq08q2fdbmfia32g36cc512mhy41s8fb1a47dz";
|
||||
};
|
||||
|
||||
propagatedUserEnvPkgs = [
|
||||
@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
outputHashAlgo = "sha256";
|
||||
outputHashMode = "recursive";
|
||||
outputHash = "1fzy7bq5v9fzjpfxplvk0nwjgamcva83462gkz01lhr1mipb92h1";
|
||||
outputHash = "1gpacrmi5y87shp39jgy78n0ca2xdpvbqfh0mgldlxx99ca9rvvy";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A flat and light theme with a modern look";
|
||||
|
@ -2,16 +2,16 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "nordic-polar-${version}";
|
||||
version = "1.3.0";
|
||||
version = "1.4.0";
|
||||
|
||||
srcs = [
|
||||
(fetchurl {
|
||||
url = "https://github.com/EliverLara/Nordic-Polar/releases/download/v${version}/Nordic-Polar.tar.xz";
|
||||
sha256 = "1c5zgymkwd89fr680c49siwbkhfbay56iq9vlyqkj1dp0xnc528s";
|
||||
sha256 = "0sw4m1njnxal1kkiipsvfg9ndzxsf9rxfba5vhwswyzk388264xa";
|
||||
})
|
||||
(fetchurl {
|
||||
url = "https://github.com/EliverLara/Nordic-Polar/releases/download/v${version}/Nordic-Polar-standard-buttons.tar.xz";
|
||||
sha256 = "0nxzcgqzc42qvnhafranz6rwanqb4wzf9ychm5m4yrlp3ngw38p4";
|
||||
sha256 = "0ix0x0pnhfd1lrfj7a7n8xfg8vvzg7m0dzrsj8gzpav6wvwlypiy";
|
||||
})
|
||||
];
|
||||
|
||||
|
@ -2,16 +2,24 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "nordic-${version}";
|
||||
version = "1.3.0";
|
||||
version = "1.5.4";
|
||||
|
||||
srcs = [
|
||||
(fetchurl {
|
||||
url = "https://github.com/EliverLara/Nordic/releases/download/v${version}/Nordic.tar.xz";
|
||||
sha256 = "04axs2yldppcx159nwj70g4cyw0hbbzk5250677i9ny8b0w3gr9x";
|
||||
sha256 = "0m00hwr6ms9fzlpl97d972wvgq5l0m11mpn213248a8sqbh2zz9g";
|
||||
})
|
||||
(fetchurl {
|
||||
url = "https://github.com/EliverLara/Nordic/releases/download/v${version}/Nordic-blue.tar.xz";
|
||||
sha256 = "05k1m9f0q4mfaqp2as3ymjsqmyz0bs5cd576srd5v952dzxmmbm2";
|
||||
})
|
||||
(fetchurl {
|
||||
url = "https://github.com/EliverLara/Nordic/releases/download/v${version}/Nordic-standard-buttons.tar.xz";
|
||||
sha256 = "1h0690cijaipidb5if2bxhvvkrx5src3akyxvfywxg4bf8x7jxs5";
|
||||
sha256 = "1qps13fpp8y83c25c51w7kyds266gmks8c7kjp23iybij2lkny1m";
|
||||
})
|
||||
(fetchurl {
|
||||
url = "https://github.com/EliverLara/Nordic/releases/download/v${version}/Nordic-blue-standard-buttons.tar.xz";
|
||||
sha256 = "1c0j6qsxa6zahrl9ad0q6pczgbmm8qn9qsd7k41yk2ndh9iqzr5y";
|
||||
})
|
||||
];
|
||||
|
@ -46,6 +46,14 @@ in stdenv.mkDerivation rec {
|
||||
postPatch = ''
|
||||
patchShebangs utils/g-ir-merge/g-ir-merge
|
||||
patchShebangs utils/data-generators/cc/generate
|
||||
|
||||
# make .desktop Exec absolute
|
||||
patch -p0 <<END_PATCH
|
||||
+++ src/tracker-store/tracker-store.desktop.in.in
|
||||
@@ -4 +4 @@
|
||||
-Exec=gdbus call -e -d org.freedesktop.DBus -o /org/freedesktop/DBus -m org.freedesktop.DBus.StartServiceByName org.freedesktop.Tracker1 0
|
||||
+Exec=${glib.dev}/bin/gdbus call -e -d org.freedesktop.DBus -o /org/freedesktop/DBus -m org.freedesktop.DBus.StartServiceByName org.freedesktop.Tracker1 0
|
||||
END_PATCH
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
|
@ -54,7 +54,7 @@ lib.makeScope pkgs.newScope (self: with self; {
|
||||
inherit (pkgs) atk glib gobject-introspection gspell webkitgtk gtk3 gtkmm3
|
||||
libgtop libgudev libhttpseverywhere librsvg libsecret gdk_pixbuf gtksourceview gtksourceviewmm gtksourceview4
|
||||
easytag meld orca rhythmbox shotwell gnome-usage
|
||||
clutter clutter-gst clutter-gtk cogl gtk-vnc libdazzle libgda libgit2-glib libgxps libgdata libgepub libcroco libpeas libgee geocode-glib libgweather librest libzapojit libmediaart gfbgraph gexiv2 folks totem-pl-parser gcr gsound libgnomekbd vte vte_290 vte-ng gnome-menus;
|
||||
clutter clutter-gst clutter-gtk cogl gtk-vnc libdazzle libgda libgit2-glib libgxps libgdata libgepub libcroco libpeas libgee geocode-glib libgweather librest libzapojit libmediaart gfbgraph gexiv2 folks totem-pl-parser gcr gsound libgnomekbd vte vte_290 vte-ng gnome-menus gdl;
|
||||
|
||||
libsoup = pkgs.libsoup.override { gnomeSupport = true; };
|
||||
libchamplain = pkgs.libchamplain.override { libsoup = libsoup; };
|
||||
@ -288,8 +288,6 @@ lib.makeScope pkgs.newScope (self: with self; {
|
||||
|
||||
devhelp = callPackage ./devtools/devhelp { };
|
||||
|
||||
gdl = callPackage ./devtools/gdl { };
|
||||
|
||||
gnome-devel-docs = callPackage ./devtools/gnome-devel-docs { };
|
||||
|
||||
nemiver = callPackage ./devtools/nemiver { };
|
||||
@ -348,6 +346,8 @@ lib.makeScope pkgs.newScope (self: with self; {
|
||||
|
||||
gnome-panel = callPackage ./misc/gnome-panel { };
|
||||
|
||||
gnome-screensaver = callPackage ./misc/gnome-screensaver { };
|
||||
|
||||
gnome-tweaks = callPackage ./misc/gnome-tweaks { };
|
||||
|
||||
gpaste = callPackage ./misc/gpaste { };
|
||||
|
@ -1,4 +1,5 @@
|
||||
{ stdenv, fetchurl, pkgconfig, gnome3, gtk3, flex, bison, libxml2, intltool,
|
||||
gdl, libgda, gtksourceview,
|
||||
itstool, python3, ncurses, makeWrapper }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
@ -22,8 +23,8 @@ stdenv.mkDerivation rec {
|
||||
ncurses
|
||||
];
|
||||
buildInputs = [
|
||||
flex bison gtk3 libxml2 gnome3.gjs gnome3.gdl
|
||||
gnome3.libgda gnome3.gtksourceview
|
||||
flex bison gtk3 libxml2 gnome3.gjs gdl
|
||||
libgda gtksourceview
|
||||
gnome3.gsettings-desktop-schemas
|
||||
];
|
||||
|
||||
|
@ -6,6 +6,7 @@
|
||||
, glib
|
||||
, gnome-bluetooth
|
||||
, gnome-desktop
|
||||
, gnome-panel
|
||||
, gnome-session
|
||||
, gnome3
|
||||
, gsettings-desktop-schemas
|
||||
@ -16,77 +17,154 @@
|
||||
, libpulseaudio
|
||||
, libxkbfile
|
||||
, libxml2
|
||||
, metacity
|
||||
, pkgconfig
|
||||
, polkit
|
||||
, substituteAll
|
||||
, upower
|
||||
, xkeyboard_config }:
|
||||
, wrapGAppsHook
|
||||
, writeTextFile
|
||||
, writeShellScriptBin
|
||||
, xkeyboard_config
|
||||
}:
|
||||
|
||||
let
|
||||
pname = "gnome-flashback";
|
||||
version = "3.30.0";
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "${pname}-${version}";
|
||||
requiredComponents = wmName: "RequiredComponents=${wmName};gnome-flashback-init;gnome-flashback;gnome-panel;org.gnome.SettingsDaemon.A11ySettings;org.gnome.SettingsDaemon.Clipboard;org.gnome.SettingsDaemon.Color;org.gnome.SettingsDaemon.Datetime;org.gnome.SettingsDaemon.Housekeeping;org.gnome.SettingsDaemon.Keyboard;org.gnome.SettingsDaemon.MediaKeys;org.gnome.SettingsDaemon.Mouse;org.gnome.SettingsDaemon.Power;org.gnome.SettingsDaemon.PrintNotifications;org.gnome.SettingsDaemon.Rfkill;org.gnome.SettingsDaemon.ScreensaverProxy;org.gnome.SettingsDaemon.Sharing;org.gnome.SettingsDaemon.Smartcard;org.gnome.SettingsDaemon.Sound;org.gnome.SettingsDaemon.Wacom;org.gnome.SettingsDaemon.XSettings;";
|
||||
gnome-flashback = stdenv.mkDerivation rec {
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
|
||||
sha256 = "18rwql2pi78155l9zp1i50xfi5z8xz2l08m9d81x6qqbfr1nyy57";
|
||||
};
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
|
||||
sha256 = "18rwql2pi78155l9zp1i50xfi5z8xz2l08m9d81x6qqbfr1nyy57";
|
||||
};
|
||||
|
||||
patches =[
|
||||
(substituteAll {
|
||||
src = ./fix-paths.patch;
|
||||
inherit metacity;
|
||||
gnomeSession = gnome-session;
|
||||
})
|
||||
patches =[
|
||||
# overrides do not respect gsettingsschemasdir
|
||||
# https://gitlab.gnome.org/GNOME/gnome-flashback/issues/9
|
||||
(fetchpatch {
|
||||
url = https://gitlab.gnome.org/GNOME/gnome-flashback/commit/a55530f58ccd600414a5420b287868ab7d219705.patch;
|
||||
sha256 = "1la94lhhb9zlw7bnbpl6hl26zv3kxbsvgx996mhph720wxg426mh";
|
||||
})
|
||||
];
|
||||
|
||||
# overrides do not respect gsettingsschemasdir
|
||||
# https://gitlab.gnome.org/GNOME/gnome-flashback/issues/9
|
||||
(fetchpatch {
|
||||
url = https://gitlab.gnome.org/GNOME/gnome-flashback/commit/a55530f58ccd600414a5420b287868ab7d219705.patch;
|
||||
sha256 = "1la94lhhb9zlw7bnbpl6hl26zv3kxbsvgx996mhph720wxg426mh";
|
||||
})
|
||||
];
|
||||
# make .desktop Execs absolute
|
||||
postPatch = ''
|
||||
patch -p0 <<END_PATCH
|
||||
+++ data/applications/gnome-flashback-init.desktop.in
|
||||
@@ -4 +4 @@
|
||||
-Exec=gnome-flashback --initialize
|
||||
+Exec=$out/bin/gnome-flashback --initialize
|
||||
+++ data/applications/gnome-flashback.desktop.in
|
||||
@@ -4 +4 @@
|
||||
-Exec=gnome-flashback
|
||||
+Exec=$out/bin/gnome-flashback
|
||||
END_PATCH
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoreconfHook
|
||||
gettext
|
||||
libxml2
|
||||
pkgconfig
|
||||
];
|
||||
postInstall = ''
|
||||
# Check that our expected RequiredComponents match the stock session files, but then don't install them.
|
||||
# They can be installed using mkSessionForWm.
|
||||
grep '${requiredComponents "metacity"}' $out/share/gnome-session/sessions/gnome-flashback-metacity.session || (echo "RequiredComponents have changed, please update gnome-flashback/default.nix."; false)
|
||||
|
||||
buildInputs = [
|
||||
glib
|
||||
gnome-bluetooth
|
||||
gnome-desktop
|
||||
gsettings-desktop-schemas
|
||||
gtk
|
||||
ibus
|
||||
libcanberra-gtk3
|
||||
libpulseaudio
|
||||
libxkbfile
|
||||
polkit
|
||||
upower
|
||||
xkeyboard_config
|
||||
];
|
||||
rm -r $out/share/gnome-session
|
||||
rm -r $out/share/xsessions
|
||||
rm -r $out/libexec
|
||||
'';
|
||||
|
||||
doCheck = true;
|
||||
nativeBuildInputs = [
|
||||
autoreconfHook
|
||||
gettext
|
||||
libxml2
|
||||
pkgconfig
|
||||
wrapGAppsHook
|
||||
];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
buildInputs = [
|
||||
glib
|
||||
gnome-bluetooth
|
||||
gnome-desktop
|
||||
gsettings-desktop-schemas
|
||||
gtk
|
||||
ibus
|
||||
libcanberra-gtk3
|
||||
libpulseaudio
|
||||
libxkbfile
|
||||
polkit
|
||||
upower
|
||||
xkeyboard_config
|
||||
];
|
||||
|
||||
passthru = {
|
||||
updateScript = gnome3.updateScript {
|
||||
packageName = pname;
|
||||
attrPath = "gnome3.${pname}";
|
||||
doCheck = true;
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
passthru = {
|
||||
updateScript = gnome3.updateScript {
|
||||
packageName = pname;
|
||||
attrPath = "gnome3.${pname}";
|
||||
};
|
||||
|
||||
mkSessionForWm = { wmName, wmLabel, wmCommand }:
|
||||
let
|
||||
wmApplication = writeTextFile {
|
||||
name = "gnome-flashback-${wmName}-wm";
|
||||
destination = "/share/applications/${wmName}.desktop";
|
||||
text = ''
|
||||
[Desktop Entry]
|
||||
Type=Application
|
||||
Encoding=UTF-8
|
||||
Name=${wmLabel}
|
||||
Exec=${wmCommand}
|
||||
NoDisplay=true
|
||||
X-GNOME-WMName=${wmLabel}
|
||||
X-GNOME-Autostart-Phase=WindowManager
|
||||
X-GNOME-Provides=windowmanager
|
||||
X-GNOME-Autostart-Notify=false
|
||||
'';
|
||||
};
|
||||
|
||||
gnomeSession = writeTextFile {
|
||||
name = "gnome-flashback-${wmName}-gnome-session";
|
||||
destination = "/share/gnome-session/sessions/gnome-flashback-${wmName}.session";
|
||||
text = ''
|
||||
[GNOME Session]
|
||||
Name=GNOME Flashback (${wmLabel})
|
||||
${requiredComponents wmName}
|
||||
'';
|
||||
};
|
||||
|
||||
executable = writeShellScriptBin "gnome-flashback-${wmName}" ''
|
||||
if [ -z $XDG_CURRENT_DESKTOP ]; then
|
||||
export XDG_CURRENT_DESKTOP="GNOME-Flashback:GNOME"
|
||||
fi
|
||||
|
||||
export XDG_DATA_DIRS=${wmApplication}/share:${gnomeSession}/share:${gnome-flashback}/share:${gnome-panel}/share:$XDG_DATA_DIRS
|
||||
|
||||
exec ${gnome-session}/bin/gnome-session --session=gnome-flashback-${wmName} "$@"
|
||||
'';
|
||||
|
||||
in writeTextFile {
|
||||
name = "gnome-flashback-${wmName}-xsession";
|
||||
destination = "/share/xsessions/gnome-flashback-${wmName}.desktop";
|
||||
text = ''
|
||||
[Desktop Entry]
|
||||
Name=GNOME Flashback (${wmLabel})
|
||||
Comment=This session logs you into GNOME Flashback with ${wmLabel}
|
||||
Exec=${executable}/bin/gnome-flashback-${wmName}
|
||||
TryExec=${wmCommand}
|
||||
Type=Application
|
||||
DesktopNames=GNOME-Flashback;GNOME;
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "GNOME 2.x-like session for GNOME 3";
|
||||
homepage = https://wiki.gnome.org/Projects/GnomeFlashback;
|
||||
license = licenses.gpl2;
|
||||
maintainers = gnome3.maintainers;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "GNOME 2.x-like session for GNOME 3";
|
||||
homepage = https://wiki.gnome.org/Projects/GnomeFlashback;
|
||||
license = licenses.gpl2;
|
||||
maintainers = gnome3.maintainers;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
||||
in gnome-flashback
|
||||
|
@ -1,30 +0,0 @@
|
||||
--- a/data/Makefile.am
|
||||
+++ b/data/Makefile.am
|
||||
@@ -22,7 +22,7 @@
|
||||
echo 'if [ -z $$XDG_CURRENT_DESKTOP ]; then' && \
|
||||
echo ' export XDG_CURRENT_DESKTOP="GNOME-Flashback:GNOME"' && \
|
||||
echo 'fi' && echo '' && \
|
||||
- echo 'exec gnome-session --session=gnome-flashback-compiz "$$@"') > $@
|
||||
+ echo 'exec @gnomeSession@/bin/gnome-session --session=gnome-flashback-compiz "$$@"') > $@
|
||||
$(AM_V_at) chmod a+x $@
|
||||
|
||||
gnome-flashback-metacity: Makefile
|
||||
@@ -30,7 +30,7 @@
|
||||
echo 'if [ -z $$XDG_CURRENT_DESKTOP ]; then' && \
|
||||
echo ' export XDG_CURRENT_DESKTOP="GNOME-Flashback:GNOME"' && \
|
||||
echo 'fi' && echo '' && \
|
||||
- echo 'exec gnome-session --session=gnome-flashback-metacity --disable-acceleration-check "$$@"') > $@
|
||||
+ echo 'exec @gnomeSession@/bin/gnome-session --session=gnome-flashback-metacity --disable-acceleration-check "$$@"') > $@
|
||||
$(AM_V_at) chmod a+x $@
|
||||
|
||||
CLEANFILES = \
|
||||
--- a/data/xsessions/gnome-flashback-metacity.desktop.in.in
|
||||
+++ b/data/xsessions/gnome-flashback-metacity.desktop.in.in
|
||||
@@ -2,6 +2,6 @@
|
||||
Name=GNOME Flashback (Metacity)
|
||||
Comment=This session logs you into GNOME Flashback with Metacity
|
||||
Exec=@libexecdir@/gnome-flashback-metacity
|
||||
-TryExec=metacity
|
||||
+TryExec=@metacity@/bin/metacity
|
||||
Type=Application
|
||||
DesktopNames=GNOME-Flashback;GNOME;
|
@ -8,6 +8,7 @@
|
||||
, gettext
|
||||
, glib
|
||||
, gnome-desktop
|
||||
, gnome-flashback
|
||||
, gnome-menus
|
||||
, gnome3
|
||||
, gtk
|
||||
@ -43,6 +44,23 @@ in stdenv.mkDerivation rec {
|
||||
})
|
||||
];
|
||||
|
||||
# make .desktop Exec absolute
|
||||
postPatch = ''
|
||||
patch -p0 <<END_PATCH
|
||||
+++ gnome-panel/gnome-panel.desktop.in
|
||||
@@ -7 +7 @@
|
||||
-Exec=gnome-panel
|
||||
+Exec=$out/bin/gnome-panel
|
||||
END_PATCH
|
||||
'';
|
||||
|
||||
preFixup = ''
|
||||
gappsWrapperArgs+=(
|
||||
--prefix XDG_DATA_DIRS : "${gnome-menus}/share:${gnome-flashback}/share"
|
||||
--prefix XDG_CONFIG_DIRS : "${gnome-menus}/etc/xdg:${gnome-flashback}/etc/xdg"
|
||||
)
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoreconfHook
|
||||
gettext
|
||||
|
96
pkgs/desktops/gnome-3/misc/gnome-screensaver/default.nix
Normal file
96
pkgs/desktops/gnome-3/misc/gnome-screensaver/default.nix
Normal file
@ -0,0 +1,96 @@
|
||||
{ stdenv
|
||||
, fetchgit
|
||||
, fetchurl
|
||||
, autoreconfHook
|
||||
, dbus-glib
|
||||
, glib
|
||||
, gnome-common
|
||||
, gnome-desktop
|
||||
, gnome3
|
||||
, gtk
|
||||
, gsettings-desktop-schemas
|
||||
, pkgconfig
|
||||
, intltool
|
||||
, pam
|
||||
, systemd
|
||||
, wrapGAppsHook
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "gnome-screensaver";
|
||||
version = "3.6.1";
|
||||
|
||||
# the original package is deprecated and the Ubuntu version has a number of useful patches
|
||||
src = fetchgit {
|
||||
url = "https://git.launchpad.net/ubuntu/+source/gnome-screensaver";
|
||||
rev = "4f7b666131dec060a5aac9117f395ac522a627b4";
|
||||
sha256 = "15xqgcpm825cy3rm8pj00qlblq66svmh06lcw8qi74a3g0xcir87";
|
||||
};
|
||||
|
||||
# from debian/patches/series
|
||||
patches = map (patch: "debian/patches/${patch}") [
|
||||
"00git_logind_check.patch"
|
||||
"01_no_autostart.patch"
|
||||
"03_fix_ltsp-fading.patch"
|
||||
"05_dbus_service.patch"
|
||||
"10_legacy_scrsvr_inhibit.patch"
|
||||
"13_nvidia_gamma_fade_fallback.patch"
|
||||
"14_no_fade_on_user_switch.patch"
|
||||
"15_dont_crash_on_no_fade.patch"
|
||||
"16_dont_crash_in_kvm.patch"
|
||||
"17_remove_top_panel.patch"
|
||||
"18_unity_dialog_layout.patch"
|
||||
"24_use_user_settings.patch"
|
||||
"25_fix_lock_command.patch"
|
||||
"27_lightdm_switch_user.patch"
|
||||
"28_blocking_return.patch"
|
||||
"29_handle_expired_creds.patch"
|
||||
# these two patches are ubuntu-specific
|
||||
# "30_ubuntu-lock-on-suspend_gsetting.patch"
|
||||
# "31_lock_screen_on_suspend.patch"
|
||||
"32_input_sources_switcher.patch"
|
||||
"move-not-nuke.patch"
|
||||
"allow-replacement"
|
||||
"libsystemd.patch"
|
||||
"0001-gs-lock-plug-Disconnect-signal-handler-from-right-ob.patch"
|
||||
"33_budgie_support.patch"
|
||||
] ++ [ ./fix-dbus-service-dir.patch ];
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoreconfHook
|
||||
intltool
|
||||
wrapGAppsHook
|
||||
gnome-common
|
||||
pkgconfig
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
glib
|
||||
gtk
|
||||
gnome-desktop
|
||||
dbus-glib
|
||||
pam
|
||||
systemd
|
||||
];
|
||||
|
||||
configureFlags = [ "--enable-locking" "--with-systemd=yes" ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
doCheck = true;
|
||||
|
||||
passthru = {
|
||||
updateScript = gnome3.updateScript {
|
||||
packageName = pname;
|
||||
attrPath = "gnome3.${pname}";
|
||||
};
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Component of Gnome Flashback that provides screen locking";
|
||||
homepage = https://wiki.gnome.org/Projects/GnomeScreensaver;
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = gnome3.maintainers;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
@ -0,0 +1,11 @@
|
||||
--- a/configure.ac 2019-01-20 20:28:01.309231507 +0100
|
||||
+++ b/configure.ac 2019-01-20 20:31:54.927978927 +0100
|
||||
@@ -137,7 +137,7 @@
|
||||
|
||||
# Find out where the session service file goes
|
||||
# The sad sed hack is recomended by section 27.10 of the automake manual.
|
||||
-DBUS_SESSION_SERVICE_DIR=`pkg-config --variable session_bus_services_dir dbus-1 | sed -e 's,/usr/share,${datarootdir},g'`
|
||||
+DBUS_SESSION_SERVICE_DIR=`pkg-config --variable session_bus_services_dir dbus-1 --define-variable 'datadir=${datadir}'`
|
||||
AC_SUBST(DBUS_SESSION_SERVICE_DIR)
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
@ -8,13 +8,13 @@
|
||||
, libXmu
|
||||
}:
|
||||
let
|
||||
version = "0.26.2";
|
||||
version = "0.27.0";
|
||||
in
|
||||
gsmakeDerivation {
|
||||
name = "gnustep-back-${version}";
|
||||
src = fetchurl {
|
||||
url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-back-${version}.tar.gz";
|
||||
sha256 = "012gsc7x66gmsw6r5w65a64krcigf7rzqzd5x86d4gv94344knlf";
|
||||
sha256 = "0j400892ysxygh50i3918nn87vkxh15h892jwvphmkd34j8wdn9f";
|
||||
};
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ cairo base gui freetype xlibsWrapper libXmu ];
|
||||
|
@ -1,12 +1,12 @@
|
||||
{ gsmakeDerivation, fetchurl, base }:
|
||||
let
|
||||
version = "0.26.2";
|
||||
version = "0.27.0";
|
||||
in
|
||||
gsmakeDerivation {
|
||||
name = "gnustep-gui-${version}";
|
||||
src = fetchurl {
|
||||
url = "ftp://ftp.gnustep.org/pub/gnustep/core/gnustep-gui-${version}.tar.gz";
|
||||
sha256 = "1dsbkifnjha3ghq8xx55bpsbbng0cjsni3yz71r7342ax2ixcvxc";
|
||||
sha256 = "1m6k3fa2ndxv0kl2fazi76mwa27gn5jyp24q0rk96f2djhsy94br";
|
||||
};
|
||||
buildInputs = [ base ];
|
||||
patches = [ ./fixup-all.patch ];
|
||||
|
@ -1,12 +1,12 @@
|
||||
{ stdenv, fetchurl, pkgconfig, intltool, gtk3, libxml2, libsecret, poppler, itstool, hicolor-icon-theme, mate, wrapGAppsHook }:
|
||||
{ stdenv, fetchurl, pkgconfig, intltool, gtk3, glib, libxml2, libsecret, poppler, itstool, hicolor-icon-theme, mate, wrapGAppsHook }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "atril-${version}";
|
||||
version = "1.20.0";
|
||||
version = "1.20.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${mate.getRelease version}/${name}.tar.xz";
|
||||
sha256 = "1639jxcdhcn5wvb4gj9xncdj5d5c3rnyydwwsgqj66cmfmb53l1n";
|
||||
sha256 = "00vrqyfk370fdhlfv3m6n0l6hnx30hrsrcg1xja03957cgvcvnvr";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -17,6 +17,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
buildInputs = [
|
||||
gtk3
|
||||
glib
|
||||
itstool
|
||||
libsecret
|
||||
libxml2
|
||||
@ -25,7 +26,9 @@ stdenv.mkDerivation rec {
|
||||
mate.mate-desktop
|
||||
hicolor-icon-theme
|
||||
];
|
||||
|
||||
|
||||
NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0";
|
||||
|
||||
makeFlags = [ "cajaextensiondir=$$out/lib/caja/extensions-2.0" ];
|
||||
|
||||
meta = {
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "caja-extensions-${version}";
|
||||
version = "1.20.1";
|
||||
version = "1.20.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://pub.mate-desktop.org/releases/${mate.getRelease version}/${name}.tar.xz";
|
||||
sha256 = "01k7c3gw6rfd7vlch61zig22bvz40wlnalc5p3rz4d9i98fr643n";
|
||||
sha256 = "14w1xd33ggn6wdzqvcmj8rqc68w4k094lai6mqrgmv1zljifydqz";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "caja-${version}";
|
||||
version = "1.21.2";
|
||||
version = "1.20.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://pub.mate-desktop.org/releases/${mate.getRelease version}/${name}.tar.xz";
|
||||
sha256 = "0kswpghpsz69l417ammniy1ja0dsg1hrsm2k0rx28q9mhdfdmnwq";
|
||||
sha256 = "1wlrhcvhqving3pphbz50xnbp7z57mlkf7m36lfh8mim62kfmmd0";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "engrampa-${version}";
|
||||
version = "1.21.0";
|
||||
version = "1.20.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://pub.mate-desktop.org/releases/${mate.getRelease version}/${name}.tar.xz";
|
||||
sha256 = "0y79rzmv3i03la443bp8f6gsgm03vr4nd88npwrvjqlxs59lg1gw";
|
||||
sha256 = "0fj957dfagw6p7mq5545h9j2w3hv18yqnkpypnr719r4g13d3f2v";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "eom-${version}";
|
||||
version = "1.21.2";
|
||||
version = "1.20.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://pub.mate-desktop.org/releases/${mate.getRelease version}/${name}.tar.xz";
|
||||
sha256 = "08idw219mw0v0nkaphy0jvxi67gqm4nzbbnhnwjksxbma2gmpvss";
|
||||
sha256 = "0440sfbidizn860w5avgwld08qc2fslrm0nx2659651cf3r7rw05";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libmatekbd-${version}";
|
||||
version = "1.21.0";
|
||||
version = "1.20.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://pub.mate-desktop.org/releases/${mate.getRelease version}/${name}.tar.xz";
|
||||
sha256 = "0xi5ds2psbf0qb0363ljxz5m9xxh1hr2hcn8zv6ni6mdqsqnkajz";
|
||||
sha256 = "1l1zbphs4snswf4bkrwkk6gsmb44bdhymcfgaaspzbrcmw3y7hr1";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig intltool ];
|
||||
|
@ -6,11 +6,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libmatemixer-${version}";
|
||||
version = "1.21.0";
|
||||
version = "1.20.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://pub.mate-desktop.org/releases/${mate.getRelease version}/${name}.tar.xz";
|
||||
sha256 = "1376x3rlisrc6hsz6yzi637msplmacxryyqnrsgfc580knp1nrvm";
|
||||
sha256 = "00p67mi0flsbgn15qpwq60rzf917s5islbmhirbvz6npcvv0d493";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig intltool ];
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libmateweather-${version}";
|
||||
version = "1.21.0";
|
||||
version = "1.20.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://pub.mate-desktop.org/releases/${mate.getRelease version}/${name}.tar.xz";
|
||||
sha256 = "1vj2pgry6wdscdcpwwagqlsjf8rkh4id67iw7d9qk1pfbhb2sznl";
|
||||
sha256 = "1ksp1xn13m94sjnnrx2dyv7hlbgjbnbahwdyaq35r2419b366hxv";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig intltool ];
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "marco-${version}";
|
||||
version = "1.21.0";
|
||||
version = "1.20.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://pub.mate-desktop.org/releases/${mate.getRelease version}/${name}.tar.xz";
|
||||
sha256 = "1vg3dl7kqhzgspa2ykyql4j3bpki59769qrkakqfdcavb9j5c877";
|
||||
sha256 = "192nlr4ylisxisk0ljabm8v0a5sapdncj4gbw39q2fpr938ifs32";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "mate-applets-${version}";
|
||||
version = "1.21.0";
|
||||
version = "1.20.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://pub.mate-desktop.org/releases/${mate.getRelease version}/${name}.tar.xz";
|
||||
sha256 = "0jr66xrwjrlyh4hz6h5axh96pgxm8n1xyc0rmggah2fijs940rsb";
|
||||
sha256 = "0y5501wliipxf43p2q9917r3ird7azlrbcwnj2q2q2zy00hvvk5f";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "mate-calc-${version}";
|
||||
version = "1.21.0";
|
||||
version = "1.20.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://pub.mate-desktop.org/releases/${mate.getRelease version}/${name}.tar.xz";
|
||||
sha256 = "07mmc99wwgqbp15zrr6z7iz0frc388z19jwk28ymyzgn6bcc9cn6";
|
||||
sha256 = "0nv0q2c93rv36dhid7vf0w0rb6zdwyqaibfsmc7flj00qgsn3r5a";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -5,11 +5,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "mate-control-center-${version}";
|
||||
version = "1.21.0";
|
||||
version = "1.20.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://pub.mate-desktop.org/releases/${mate.getRelease version}/${name}.tar.xz";
|
||||
sha256 = "0m40jr1midh5fzk3k97sydihlqfqjvzxlgmkx8w2j30a09h7230w";
|
||||
sha256 = "1rjxndikj0w516nlvyzcss31l9qjwkzvns7ygasnjbl02bgml9a4";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "mate-desktop-${version}";
|
||||
version = "1.21.0";
|
||||
version = "1.20.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://pub.mate-desktop.org/releases/${mate.getRelease version}/${name}.tar.xz";
|
||||
sha256 = "0qd76p5zqgifiawkgv2casb9ll55j4qq4pfxgxj3j5zvjr3dgr47";
|
||||
sha256 = "073hn68f57ahif0znbx850x6ncsq50m7jg0sy1mllxjjqf3b1fxr";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "mate-icon-theme-${version}";
|
||||
version = "1.21.0";
|
||||
version = "1.20.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://pub.mate-desktop.org/releases/${mate.getRelease version}/${name}.tar.xz";
|
||||
sha256 = "170vir6h9sgsibd4kfq5qgz542qrw94q3qakqry77clls5wj6b62";
|
||||
sha256 = "10l58mjc2a69pm7srxvlav2b8b7nbzyvwjrlrk79a3gr6dd1mbk4";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig intltool iconnamingutils ];
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "mate-media-${version}";
|
||||
version = "1.21.0";
|
||||
version = "1.20.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://pub.mate-desktop.org/releases/${mate.getRelease version}/${name}.tar.xz";
|
||||
sha256 = "0mgx4xjarpyvyaw0p0jnh74447y6zd93fvpi12078vyqr25dsi43";
|
||||
sha256 = "06fka82smrphzj4dz9dw1566kmdscxvxl0rchj9qxg7aidy0rmnv";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
|
@ -2,16 +2,16 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "mate-menus-${version}";
|
||||
version = "1.21.0";
|
||||
version = "1.20.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://pub.mate-desktop.org/releases/${mate.getRelease version}/${name}.tar.xz";
|
||||
sha256 = "168f7jgm4kbnx92xh3iqvvrgpkv1q862xg27zxg40nkz5xhk95hx";
|
||||
sha256 = "18y4nka38dqqxycxpf7ig4vmrk4i05xqqjk4fxr1ghkj60xxyxz2";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig intltool ];
|
||||
nativeBuildInputs = [ pkgconfig intltool gobject-introspection ];
|
||||
|
||||
buildInputs = [ glib gobject-introspection python ];
|
||||
buildInputs = [ glib python ];
|
||||
|
||||
makeFlags = [
|
||||
"INTROSPECTION_GIRDIR=$(out)/share/gir-1.0/"
|
||||
|
@ -3,11 +3,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "mate-notification-daemon-${version}";
|
||||
version = "1.20.1";
|
||||
version = "1.20.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://pub.mate-desktop.org/releases/${mate.getRelease version}/${name}.tar.xz";
|
||||
sha256 = "0hwswgc3i6d7zvmj0as95xjjw431spxkf1d37mxwaf6j80gx0p78";
|
||||
sha256 = "0a60f67yjvlffrnviqgc64jz5l280f30h8br7wz2x415if5dmjyn";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user