Merge branch 'master' into staging

This commit is contained in:
Jan Malakhovski 2018-09-08 22:08:32 +00:00
commit b7bd0561be
311 changed files with 8379 additions and 3004 deletions

View File

@ -47,13 +47,9 @@
<para>
In Nixpkgs, these three platforms are defined as attribute sets under the
names <literal>buildPlatform</literal>, <literal>hostPlatform</literal>,
and <literal>targetPlatform</literal>. All three are always defined as
attributes in the standard environment, and at the top level. That means
one can get at them just like a dependency in a function that is imported
with <literal>callPackage</literal>:
<programlisting>{ stdenv, buildPlatform, hostPlatform, fooDep, barDep, .. }: ...buildPlatform...</programlisting>
, or just off <varname>stdenv</varname>:
names <literal>buildPlatform</literal>, <literal>hostPlatform</literal>, and
<literal>targetPlatform</literal>. They are always defined as attributes in
the standard environment. That means one can access them like:
<programlisting>{ stdenv, fooDep, barDep, .. }: ...stdenv.buildPlatform...</programlisting>
.
</para>

View File

@ -671,6 +671,8 @@ overrides = super: self: rec {
plugins = with availablePlugins; [ python perl ];
}
}</programlisting>
If the <literal>configure</literal> function returns an attrset without the <literal>plugins</literal>
attribute, <literal>availablePlugins</literal> will be used automatically.
</para>
<para>
@ -704,6 +706,55 @@ overrides = super: self: rec {
}; }
</programlisting>
</para>
<para>
WeeChat allows to set defaults on startup using the <literal>--run-command</literal>.
The <literal>configure</literal> method can be used to pass commands to the program:
<programlisting>weechat.override {
configure = { availablePlugins, ... }: {
init = ''
/set foo bar
/server add freenode chat.freenode.org
'';
};
}</programlisting>
Further values can be added to the list of commands when running
<literal>weechat --run-command "your-commands"</literal>.
</para>
<para>
Additionally it's possible to specify scripts to be loaded when starting <literal>weechat</literal>.
These will be loaded before the commands from <literal>init</literal>:
<programlisting>weechat.override {
configure = { availablePlugins, ... }: {
scripts = with pkgs.weechatScripts; [
weechat-xmpp weechat-matrix-bridge wee-slack
];
init = ''
/set plugins.var.python.jabber.key "val"
'':
};
}</programlisting>
</para>
<para>
In <literal>nixpkgs</literal> there's a subpackage which contains derivations for
WeeChat scripts. Such derivations expect a <literal>passthru.scripts</literal> attribute
which contains a list of all scripts inside the store path. Furthermore all scripts
have to live in <literal>$out/share</literal>. An exemplary derivation looks like this:
<programlisting>{ stdenv, fetchurl }:
stdenv.mkDerivation {
name = "exemplary-weechat-script";
src = fetchurl {
url = "https://scripts.tld/your-scripts.tar.gz";
sha256 = "...";
};
passthru.scripts = [ "foo.py" "bar.lua" ];
installPhase = ''
mkdir $out/share
cp foo.py $out/share
cp bar.lua $out/share
'';
}</programlisting>
</para>
</section>
<section xml:id="sec-citrix">
<title>Citrix Receiver</title>

44
lib/asserts.nix Normal file
View File

@ -0,0 +1,44 @@
{ lib }:
rec {
/* Print a trace message if pred is false.
Intended to be used to augment asserts with helpful error messages.
Example:
assertMsg false "nope"
=> false
stderr> trace: nope
assert (assertMsg ("foo" == "bar") "foo is not bar, silly"); ""
stderr> trace: foo is not bar, silly
stderr> assert failed at
Type:
assertMsg :: Bool -> String -> Bool
*/
# TODO(Profpatsch): add tests that check stderr
assertMsg = pred: msg:
if pred
then true
else builtins.trace msg false;
/* Specialized `assertMsg` for checking if val is one of the elements
of a list. Useful for checking enums.
Example:
let sslLibrary = "libressl"
in assertOneOf "sslLibrary" sslLibrary [ "openssl" "bearssl" ]
=> false
stderr> trace: sslLibrary must be one of "openssl", "bearssl", but is: "libressl"
Type:
assertOneOf :: String -> ComparableVal -> List ComparableVal -> Bool
*/
assertOneOf = name: val: xs: assertMsg
(lib.elem val xs)
"${name} must be one of ${
lib.generators.toPretty {} xs}, but is: ${
lib.generators.toPretty {} val}";
}

View File

@ -38,10 +38,11 @@ let
systems = callLibs ./systems;
# misc
asserts = callLibs ./asserts.nix;
debug = callLibs ./debug.nix;
generators = callLibs ./generators.nix;
misc = callLibs ./deprecated.nix;
# domain-specific
fetchers = callLibs ./fetchers.nix;
@ -60,7 +61,6 @@ let
boolToString mergeAttrs flip mapNullable inNixShell min max
importJSON warn info nixpkgsVersion version mod compare
splitByAndCompare functionArgs setFunctionArgs isFunction;
inherit (fixedPoints) fix fix' extends composeExtensions
makeExtensible makeExtensibleWithCustomName;
inherit (attrsets) attrByPath hasAttrByPath setAttrByPath
@ -117,6 +117,8 @@ let
unknownModule mkOption;
inherit (types) isType setType defaultTypeMerge defaultFunctor
isOptionType mkOptionType;
inherit (asserts)
assertMsg assertOneOf;
inherit (debug) addErrorContextToAttrs traceIf traceVal traceValFn
traceXMLVal traceXMLValMarked traceSeq traceSeqN traceValSeq
traceValSeqFn traceValSeqN traceValSeqNFn traceShowVal

View File

@ -509,7 +509,8 @@ rec {
=> 3
*/
last = list:
assert list != []; elemAt list (length list - 1);
assert lib.assertMsg (list != []) "lists.last: list must not be empty!";
elemAt list (length list - 1);
/* Return all elements but the last
@ -517,7 +518,9 @@ rec {
init [ 1 2 3 ]
=> [ 1 2 ]
*/
init = list: assert list != []; take (length list - 1) list;
init = list:
assert lib.assertMsg (list != []) "lists.init: list must not be empty!";
take (length list - 1) list;
/* return the image of the cross product of some lists by a function

View File

@ -410,7 +410,7 @@ rec {
components = splitString "/" url;
filename = lib.last components;
name = builtins.head (splitString sep filename);
in assert name != filename; name;
in assert name != filename; name;
/* Create an --{enable,disable}-<feat> string that can be passed to
standard GNU Autoconf scripts.
@ -468,7 +468,10 @@ rec {
strw = lib.stringLength str;
reqWidth = width - (lib.stringLength filler);
in
assert strw <= width;
assert lib.assertMsg (strw <= width)
"fixedWidthString: requested string length (${
toString width}) must not be shorter than actual length (${
toString strw})";
if strw == width then str else filler + fixedWidthString reqWidth filler str;
/* Format a number adding leading zeroes up to fixed width.
@ -501,7 +504,7 @@ rec {
isStorePath = x:
isCoercibleToString x
&& builtins.substring 0 1 (toString x) == "/"
&& dirOf (builtins.toPath x) == builtins.storeDir;
&& dirOf x == builtins.storeDir;
/* Convert string to int
Obviously, it is a bit hacky to use fromJSON that way.
@ -537,11 +540,10 @@ rec {
*/
readPathsFromFile = rootPath: file:
let
root = toString rootPath;
lines = lib.splitString "\n" (builtins.readFile file);
removeComments = lib.filter (line: line != "" && !(lib.hasPrefix "#" line));
relativePaths = removeComments lines;
absolutePaths = builtins.map (path: builtins.toPath (root + "/" + path)) relativePaths;
absolutePaths = builtins.map (path: rootPath + "/${path}") relativePaths;
in
absolutePaths;

View File

@ -112,7 +112,7 @@ runTests {
storePathAppendix = isStorePath
"${goodPath}/bin/python";
nonAbsolute = isStorePath (concatStrings (tail (stringToCharacters goodPath)));
asPath = isStorePath (builtins.toPath goodPath);
asPath = isStorePath goodPath;
otherPath = isStorePath "/something/else";
otherVals = {
attrset = isStorePath {};
@ -357,7 +357,7 @@ runTests {
int = 42;
bool = true;
string = ''fno"rd'';
path = /. + "/foo"; # toPath returns a string
path = /. + "/foo";
null_ = null;
function = x: x;
functionArgs = { arg ? 4, foo }: arg;

View File

@ -171,7 +171,7 @@ rec {
builtins.fromJSON (builtins.readFile path);
## Warnings and asserts
## Warnings
/* See https://github.com/NixOS/nix/issues/749. Eventually we'd like these
to expand to Nix builtins that carry metadata so that Nix can filter out

View File

@ -119,7 +119,9 @@ rec {
let
betweenDesc = lowest: highest:
"${toString lowest} and ${toString highest} (both inclusive)";
between = lowest: highest: assert lowest <= highest;
between = lowest: highest:
assert lib.assertMsg (lowest <= highest)
"ints.between: lowest must be smaller than highest";
addCheck int (x: x >= lowest && x <= highest) // {
name = "intBetween";
description = "integer between ${betweenDesc lowest highest}";
@ -439,7 +441,9 @@ rec {
# Either value of type `finalType` or `coercedType`, the latter is
# converted to `finalType` using `coerceFunc`.
coercedTo = coercedType: coerceFunc: finalType:
assert coercedType.getSubModules == null;
assert lib.assertMsg (coercedType.getSubModules == null)
"coercedTo: coercedType must not have submodules (its a ${
coercedType.description})";
mkOptionType rec {
name = "coercedTo";
description = "${finalType.description} or ${coercedType.description} convertible to it";

View File

@ -3396,6 +3396,11 @@
github = "relrod";
name = "Ricky Elrod";
};
renatoGarcia = {
email = "fgarcia.renato@gmail.com";
github = "renatoGarcia";
name = "Renato Garcia";
};
renzo = {
email = "renzocarbonara@gmail.com";
github = "k0001";
@ -3888,6 +3893,11 @@
github = "StillerHarpo";
name = "Florian Engel";
};
stites = {
email = "sam@stites.io";
github = "stites";
name = "Sam Stites";
};
stumoss = {
email = "samoss@gmail.com";
github = "stumoss";

View File

@ -283,6 +283,14 @@ $ nix-instantiate -E '(import &lt;nixpkgsunstable&gt; {}).gitFull'
from your config without any issues.
</para>
</listitem>
<listitem>
<para>
<literal>stdenv.system</literal> and <literal>system</literal> in nixpkgs now refer to the host platform instead of the build platform.
For native builds this is not change, let alone a breaking one.
For cross builds, it is a breaking change, and <literal>stdenv.buildPlatform.system</literal> can be used instead for the old behavior.
They should be using that anyways for clarity.
</para>
</listitem>
</itemizedlist>
</section>
@ -536,6 +544,13 @@ inherit (pkgs.nixos {
a new paragraph.
</para>
</listitem>
<listitem>
<para>
Top-level <literal>buildPlatform</literal>, <literal>hostPlatform</literal>, and <literal>targetPlatform</literal> in Nixpkgs are deprecated.
Please use their equivalents in <literal>stdenv</literal> instead:
<literal>stdenv.buildPlatform</literal>, <literal>stdenv.hostPlatform</literal>, and <literal>stdenv.targetPlatform</literal>.
</para>
</listitem>
</itemizedlist>
</section>
</section>

View File

@ -28,7 +28,7 @@
let extraArgs_ = extraArgs; pkgs_ = pkgs;
extraModules = let e = builtins.getEnv "NIXOS_EXTRA_MODULE_PATH";
in if e == "" then [] else [(import (builtins.toPath e))];
in if e == "" then [] else [(import e)];
in
let
@ -36,7 +36,11 @@ let
_file = ./eval-config.nix;
key = _file;
config = {
nixpkgs.localSystem = lib.mkDefault { inherit system; };
# Explicit `nixpkgs.system` or `nixpkgs.localSystem` should override
# this. Since the latter defaults to the former, the former should
# default to the argument. That way this new default could propagate all
# they way through, but has the last priority behind everything else.
nixpkgs.system = lib.mkDefault system;
_module.args.pkgs = lib.mkIf (pkgs_ != null) (lib.mkForce pkgs_);
};
};

View File

@ -163,15 +163,24 @@ in
/bin/sh
'';
# For resetting environment with `. /etc/set-environment` when needed
# and discoverability (see motivation of #30418).
environment.etc."set-environment".source = config.system.build.setEnvironment;
system.build.setEnvironment = pkgs.writeText "set-environment"
''
${exportedEnvVars}
''
# DO NOT EDIT -- this file has been generated automatically.
${cfg.extraInit}
# Prevent this file from being sourced by child shells.
export __NIXOS_SET_ENVIRONMENT_DONE=1
# ~/bin if it exists overrides other bin directories.
export PATH="$HOME/bin:$PATH"
'';
${exportedEnvVars}
${cfg.extraInit}
# ~/bin if it exists overrides other bin directories.
export PATH="$HOME/bin:$PATH"
'';
system.activationScripts.binsh = stringAfter [ "stdio" ]
''

View File

@ -23,7 +23,7 @@ with lib;
];
environment.extraSetup = ''
if [ -w $out/share/mime ]; then
if [ -w $out/share/mime ] && [ -d $out/share/mime/packages ]; then
XDG_DATA_DIRS=$out/share ${pkgs.shared-mime-info}/bin/update-mime-database -V $out/share/mime > /dev/null
fi

View File

@ -1,6 +1,6 @@
{
x86_64-linux = "/nix/store/r9i30v8nasafg2851wflg71ln49fw03y-nix-2.1";
i686-linux = "/nix/store/dsg3pr7wwrk51f7la9wgby173j18llqh-nix-2.1";
aarch64-linux = "/nix/store/m3qgnch4xin21pmd1azas8kkcp9rhkr6-nix-2.1";
x86_64-darwin = "/nix/store/n7fvy0k555gwkkdszdkhi3h0aahca8h3-nix-2.1";
x86_64-linux = "/nix/store/h180y3n5k1ypxgm1pcvj243qix5j45zz-nix-2.1.1";
i686-linux = "/nix/store/v2y4k4v9ml07jmfq739wyflapg3b7b5k-nix-2.1.1";
aarch64-linux = "/nix/store/v485craglq7xm5996ci8qy5dyc17dab0-nix-2.1.1";
x86_64-darwin = "/nix/store/lc3ymlix73kaad5srjdgaxp9ngr1sg6g-nix-2.1.1";
}

View File

@ -62,12 +62,11 @@ in
pkgs = mkOption {
defaultText = literalExample
''import "''${nixos}/.." {
inherit (config.nixpkgs) config overlays localSystem crossSystem;
inherit (cfg) config overlays localSystem crossSystem;
}
'';
default = import ../../.. {
localSystem = { inherit (cfg) system; } // cfg.localSystem;
inherit (cfg) config overlays crossSystem;
inherit (cfg) config overlays localSystem crossSystem;
};
type = pkgsType;
example = literalExample ''import <nixpkgs> {}'';
@ -140,8 +139,11 @@ in
localSystem = mkOption {
type = types.attrs; # TODO utilize lib.systems.parsedPlatform
default = { system = builtins.currentSystem; };
default = { inherit (cfg) system; };
example = { system = "aarch64-linux"; config = "aarch64-unknown-linux-gnu"; };
# Make sure that the final value has all fields for sake of other modules
# referring to this. TODO make `lib.systems` itself use the module system.
apply = lib.systems.elaborate;
defaultText = literalExample
''(import "''${nixos}/../lib").lib.systems.examples.aarch64-multiplatform'';
description = ''
@ -180,6 +182,7 @@ in
system = mkOption {
type = types.str;
example = "i686-linux";
default = { system = builtins.currentSystem; };
description = ''
Specifies the Nix platform type on which NixOS should be built.
It is better to specify <code>nixpkgs.localSystem</code> instead.
@ -196,6 +199,7 @@ in
</programlisting>
See <code>nixpkgs.localSystem</code> for more information.
Ignored when <code>nixpkgs.localSystem</code> is set.
Ignored when <code>nixpkgs.pkgs</code> is set.
'';
};

View File

@ -245,6 +245,7 @@
./services/desktops/gnome3/gnome-user-share.nix
./services/desktops/gnome3/gpaste.nix
./services/desktops/gnome3/gvfs.nix
./services/desktops/gnome3/rygel.nix
./services/desktops/gnome3/seahorse.nix
./services/desktops/gnome3/sushi.nix
./services/desktops/gnome3/tracker.nix
@ -406,6 +407,7 @@
./services/misc/taskserver
./services/misc/tzupdate.nix
./services/misc/uhub.nix
./services/misc/weechat.nix
./services/misc/xmr-stak.nix
./services/misc/zookeeper.nix
./services/monitoring/apcupsd.nix
@ -518,6 +520,7 @@
./services/networking/i2pd.nix
./services/networking/i2p.nix
./services/networking/iodine.nix
./services/networking/iperf3.nix
./services/networking/ircd-hybrid/default.nix
./services/networking/iwd.nix
./services/networking/keepalived/default.nix

View File

@ -126,7 +126,9 @@ in
programs.bash = {
shellInit = ''
${config.system.build.setEnvironment.text}
if [ -z "$__NIXOS_SET_ENVIRONMENT_DONE" ]; then
. ${config.system.build.setEnvironment}
fi
${cfge.shellInit}
'';
@ -166,11 +168,11 @@ in
# Read system-wide modifications.
if test -f /etc/profile.local; then
. /etc/profile.local
. /etc/profile.local
fi
if [ -n "''${BASH_VERSION:-}" ]; then
. /etc/bashrc
. /etc/bashrc
fi
'';
@ -191,12 +193,12 @@ in
# We are not always an interactive shell.
if [ -n "$PS1" ]; then
${cfg.interactiveShellInit}
${cfg.interactiveShellInit}
fi
# Read system-wide modifications.
if test -f /etc/bashrc.local; then
. /etc/bashrc.local
. /etc/bashrc.local
fi
'';

View File

@ -32,6 +32,8 @@ in
environment.etc = optionals (cfg.profiles != {})
(mapAttrsToList mkDconfProfile cfg.profiles);
services.dbus.packages = [ pkgs.gnome3.dconf ];
environment.variables.GIO_EXTRA_MODULES = optional cfg.enable
"${pkgs.gnome3.dconf.lib}/lib/gio/modules";
# https://github.com/NixOS/nixpkgs/pull/31891

View File

@ -27,7 +27,7 @@ in
'';
type = types.bool;
};
vendor.config.enable = mkOption {
type = types.bool;
default = true;
@ -43,7 +43,7 @@ in
Whether fish should use completion files provided by other packages.
'';
};
vendor.functions.enable = mkOption {
type = types.bool;
default = true;
@ -107,9 +107,11 @@ in
# This happens before $__fish_datadir/config.fish sets fish_function_path, so it is currently
# unset. We set it and then completely erase it, leaving its configuration to $__fish_datadir/config.fish
set fish_function_path ${pkgs.fish-foreign-env}/share/fish-foreign-env/functions $__fish_datadir/functions
# source the NixOS environment config
fenv source ${config.system.build.setEnvironment}
if [ -z "$__NIXOS_SET_ENVIRONMENT_DONE" ]
fenv source ${config.system.build.setEnvironment}
end
# clear fish_function_path so that it will be correctly set when we return to $__fish_datadir/config.fish
set -e fish_function_path
@ -123,7 +125,7 @@ in
set fish_function_path ${pkgs.fish-foreign-env}/share/fish-foreign-env/functions $fish_function_path
fenv source /etc/fish/foreign-env/shellInit > /dev/null
set -e fish_function_path[1]
${cfg.shellInit}
# and leave a note so we don't source this config section again from
@ -137,7 +139,7 @@ in
set fish_function_path ${pkgs.fish-foreign-env}/share/fish-foreign-env/functions $fish_function_path
fenv source /etc/fish/foreign-env/loginShellInit > /dev/null
set -e fish_function_path[1]
${cfg.loginShellInit}
# and leave a note so we don't source this config section again from
@ -149,12 +151,11 @@ in
status --is-interactive; and not set -q __fish_nixos_interactive_config_sourced
and begin
${fishAliases}
set fish_function_path ${pkgs.fish-foreign-env}/share/fish-foreign-env/functions $fish_function_path
fenv source /etc/fish/foreign-env/interactiveShellInit > /dev/null
set -e fish_function_path[1]
${cfg.promptInit}
${cfg.interactiveShellInit}
@ -170,7 +171,7 @@ in
++ optional cfg.vendor.config.enable "/share/fish/vendor_conf.d"
++ optional cfg.vendor.completions.enable "/share/fish/vendor_completions.d"
++ optional cfg.vendor.functions.enable "/share/fish/vendor_functions.d";
environment.systemPackages = [ pkgs.fish ];
environment.shells = [

View File

@ -70,7 +70,7 @@ in
promptInit = mkOption {
default = ''
if [ "$TERM" != dumb ]; then
autoload -U promptinit && promptinit && prompt walters
autoload -U promptinit && promptinit && prompt walters
fi
'';
description = ''
@ -116,7 +116,9 @@ in
if [ -n "$__ETC_ZSHENV_SOURCED" ]; then return; fi
export __ETC_ZSHENV_SOURCED=1
${config.system.build.setEnvironment.text}
if [ -z "$__NIXOS_SET_ENVIRONMENT_DONE" ]; then
. ${config.system.build.setEnvironment}
fi
${cfge.shellInit}
@ -124,7 +126,7 @@ in
# Read system-wide modifications.
if test -f /etc/zshenv.local; then
. /etc/zshenv.local
. /etc/zshenv.local
fi
'';
@ -143,7 +145,7 @@ in
# Read system-wide modifications.
if test -f /etc/zprofile.local; then
. /etc/zprofile.local
. /etc/zprofile.local
fi
'';
@ -169,7 +171,7 @@ in
# Tell zsh how to find installed completions
for p in ''${(z)NIX_PROFILES}; do
fpath+=($p/share/zsh/site-functions $p/share/zsh/$ZSH_VERSION/functions $p/share/zsh/vendor-completions)
fpath+=($p/share/zsh/site-functions $p/share/zsh/$ZSH_VERSION/functions $p/share/zsh/vendor-completions)
done
${optionalString cfg.enableGlobalCompInit "autoload -U compinit && compinit"}
@ -184,7 +186,7 @@ in
# Read system-wide modifications.
if test -f /etc/zshrc.local; then
. /etc/zshrc.local
. /etc/zshrc.local
fi
'';

View File

@ -0,0 +1,30 @@
# rygel service.
{ config, lib, pkgs, ... }:
with lib;
{
###### interface
options = {
services.gnome3.rygel = {
enable = mkOption {
default = false;
description = ''
Whether to enable Rygel UPnP Mediaserver.
You will need to also allow UPnP connections in firewall, see the following <link xlink:href="https://github.com/NixOS/nixpkgs/pull/45045#issuecomment-416030795">comment</link>.
'';
type = types.bool;
};
};
};
###### implementation
config = mkIf config.services.gnome3.rygel.enable {
environment.systemPackages = [ pkgs.gnome3.rygel ];
services.dbus.packages = [ pkgs.gnome3.rygel ];
systemd.packages = [ pkgs.gnome3.rygel ];
};
}

View File

@ -0,0 +1,56 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.services.weechat;
in
{
options.services.weechat = {
enable = mkEnableOption "weechat";
root = mkOption {
description = "Weechat state directory.";
type = types.str;
default = "/var/lib/weechat";
};
sessionName = mkOption {
description = "Name of the `screen' session for weechat.";
default = "weechat-screen";
type = types.str;
};
binary = mkOption {
description = "Binary to execute (by default \${weechat}/bin/weechat).";
example = literalExample ''
''${pkgs.weechat}/bin/weechat-headless
'';
default = "${pkgs.weechat}/bin/weechat";
};
};
config = mkIf cfg.enable {
users = {
groups.weechat = {};
users.weechat = {
createHome = true;
group = "weechat";
home = cfg.root;
isSystemUser = true;
};
};
systemd.services.weechat = {
environment.WEECHAT_HOME = cfg.root;
serviceConfig = {
User = "weechat";
Group = "weechat";
RemainAfterExit = "yes";
};
script = "exec ${pkgs.screen}/bin/screen -Dm -S ${cfg.sessionName} ${cfg.binary}";
wantedBy = [ "multi-user.target" ];
wants = [ "network.target" ];
};
};
meta.doc = ./weechat.xml;
}

View File

@ -0,0 +1,61 @@
<chapter 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="module-services-weechat">
<title>WeeChat</title>
<para><link xlink:href="https://weechat.org/">WeeChat</link> is a fast and extensible IRC client.</para>
<section><title>Basic Usage</title>
<para>
By default, the module creates a
<literal><link xlink:href="https://www.freedesktop.org/wiki/Software/systemd/">systemd</link></literal> unit
which runs the chat client in a detached
<literal><link xlink:href="https://www.gnu.org/software/screen/">screen</link></literal> session.
</para>
<para>
This can be done by enabling the <literal>weechat</literal> service:
<programlisting>
{ ... }:
{
<link linkend="opt-services.weechat.enable">services.weechat.enable</link> = true;
}
</programlisting>
</para>
<para>
The service is managed by a dedicated user
named <literal>weechat</literal> in the state directory
<literal>/var/lib/weechat</literal>.
</para>
</section>
<section><title>Re-attaching to WeeChat</title>
<para>
WeeChat runs in a screen session owned by a dedicated user. To explicitly
allow your another user to attach to this session, the <literal>screenrc</literal> needs to be tweaked
by adding <link xlink:href="https://www.gnu.org/software/screen/manual/html_node/Multiuser.html#Multiuser">multiuser</link> support:
<programlisting>
{
<link linkend="opt-programs.screen.screenrc">programs.screen.screenrc</link> = ''
multiuser on
acladd normal_user
'';
}
</programlisting>
Now, the session can be re-attached like this:
<programlisting>
screen -r weechat-screen
</programlisting>
</para>
<para>
<emphasis>The session name can be changed using <link linkend="opt-services.weechat.sessionName">services.weechat.sessionName.</link></emphasis>
</para>
</section>
</chapter>

View File

@ -17,9 +17,9 @@ let
launcher = writeScriptBin "riemann" ''
#!/bin/sh
exec ${jdk}/bin/java ${concatStringsSep "\n" cfg.extraJavaOpts} \
exec ${jdk}/bin/java ${concatStringsSep " " cfg.extraJavaOpts} \
-cp ${classpath} \
riemann.bin ${writeText "riemann-config.clj" riemannConfig}
riemann.bin ${cfg.configFile}
'';
in {
@ -37,7 +37,8 @@ in {
config = mkOption {
type = types.lines;
description = ''
Contents of the Riemann configuration file.
Contents of the Riemann configuration file. For more complicated
config you should use configFile.
'';
};
configFiles = mkOption {
@ -47,7 +48,15 @@ in {
Extra files containing Riemann configuration. These files will be
loaded at runtime by Riemann (with Clojure's
<literal>load-file</literal> function) at the end of the
configuration.
configuration if you use the config option, this is ignored if you
use configFile.
'';
};
configFile = mkOption {
type = types.str;
description = ''
A Riemann config file. Any files in the same directory as this file
will be added to the classpath by Riemann.
'';
};
extraClasspathEntries = mkOption {
@ -77,6 +86,10 @@ in {
group = "riemann";
};
services.riemann.configFile = mkDefault (
writeText "riemann-config.clj" riemannConfig
);
systemd.services.riemann = {
wantedBy = [ "multi-user.target" ];
path = [ inetutils ];
@ -84,6 +97,7 @@ in {
User = "riemann";
ExecStart = "${launcher}/bin/riemann";
};
serviceConfig.LimitNOFILE = 65536;
};
};

View File

@ -0,0 +1,87 @@
{ config, lib, pkgs, ... }: with lib;
let
cfg = config.services.iperf3;
api = {
enable = mkEnableOption "iperf3 network throughput testing server";
port = mkOption {
type = types.ints.u16;
default = 5201;
description = "Server port to listen on for iperf3 client requsts.";
};
affinity = mkOption {
type = types.nullOr types.ints.unsigned;
default = null;
description = "CPU affinity for the process.";
};
bind = mkOption {
type = types.nullOr types.str;
default = null;
description = "Bind to the specific interface associated with the given address.";
};
verbose = mkOption {
type = types.bool;
default = false;
description = "Give more detailed output.";
};
forceFlush = mkOption {
type = types.bool;
default = false;
description = "Force flushing output at every interval.";
};
debug = mkOption {
type = types.bool;
default = false;
description = "Emit debugging output.";
};
rsaPrivateKey = mkOption {
type = types.nullOr types.path;
default = null;
description = "Path to the RSA private key (not password-protected) used to decrypt authentication credentials from the client.";
};
authorizedUsersFile = mkOption {
type = types.nullOr types.path;
default = null;
description = "Path to the configuration file containing authorized users credentials to run iperf tests.";
};
extraFlags = mkOption {
type = types.listOf types.str;
default = [ ];
description = "Extra flags to pass to iperf3(1).";
};
};
imp = {
systemd.services.iperf3 = {
description = "iperf3 daemon";
unitConfig.Documentation = "man:iperf3(1) https://iperf.fr/iperf-doc.php";
wantedBy = [ "multi-user.target" ];
after = [ "network.target" ];
serviceConfig = {
Restart = "on-failure";
RestartSec = 2;
DynamicUser = true;
PrivateDevices = true;
CapabilityBoundingSet = "";
NoNewPrivileges = true;
ExecStart = ''
${pkgs.iperf3}/bin/iperf \
--server \
--port ${toString cfg.port} \
${optionalString (cfg.affinity != null) "--affinity ${toString cfg.affinity}"} \
${optionalString (cfg.bind != null) "--bind ${cfg.bind}"} \
${optionalString (cfg.rsaPrivateKey != null) "--rsa-private-key-path ${cfg.rsaPrivateKey}"} \
${optionalString (cfg.authorizedUsersFile != null) "--authorized-users-path ${cfg.authorizedUsersFile}"} \
${optionalString cfg.verbose "--verbose"} \
${optionalString cfg.debug "--debug"} \
${optionalString cfg.forceFlush "--forceflush"} \
${escapeShellArgs cfg.extraFlags}
'';
};
};
};
in {
options.services.iperf3 = api;
config = mkIf cfg.enable imp;
}

View File

@ -406,25 +406,25 @@ in {
{ source = configFile;
target = "NetworkManager/NetworkManager.conf";
}
{ source = "${networkmanager-openvpn}/etc/NetworkManager/VPN/nm-openvpn-service.name";
{ source = "${networkmanager-openvpn}/lib/NetworkManager/VPN/nm-openvpn-service.name";
target = "NetworkManager/VPN/nm-openvpn-service.name";
}
{ source = "${networkmanager-vpnc}/etc/NetworkManager/VPN/nm-vpnc-service.name";
{ source = "${networkmanager-vpnc}/lib/NetworkManager/VPN/nm-vpnc-service.name";
target = "NetworkManager/VPN/nm-vpnc-service.name";
}
{ source = "${networkmanager-openconnect}/etc/NetworkManager/VPN/nm-openconnect-service.name";
{ source = "${networkmanager-openconnect}/lib/NetworkManager/VPN/nm-openconnect-service.name";
target = "NetworkManager/VPN/nm-openconnect-service.name";
}
{ source = "${networkmanager-fortisslvpn}/etc/NetworkManager/VPN/nm-fortisslvpn-service.name";
{ source = "${networkmanager-fortisslvpn}/lib/NetworkManager/VPN/nm-fortisslvpn-service.name";
target = "NetworkManager/VPN/nm-fortisslvpn-service.name";
}
{ source = "${networkmanager-l2tp}/etc/NetworkManager/VPN/nm-l2tp-service.name";
{ source = "${networkmanager-l2tp}/lib/NetworkManager/VPN/nm-l2tp-service.name";
target = "NetworkManager/VPN/nm-l2tp-service.name";
}
{ source = "${networkmanager_strongswan}/etc/NetworkManager/VPN/nm-strongswan-service.name";
{ source = "${networkmanager_strongswan}/lib/NetworkManager/VPN/nm-strongswan-service.name";
target = "NetworkManager/VPN/nm-strongswan-service.name";
}
{ source = "${networkmanager-iodine}/etc/NetworkManager/VPN/nm-iodine-service.name";
{ source = "${networkmanager-iodine}/lib/NetworkManager/VPN/nm-iodine-service.name";
target = "NetworkManager/VPN/nm-iodine-service.name";
}
] ++ optional (cfg.appendNameservers == [] || cfg.insertNameservers == [])

View File

@ -3,78 +3,112 @@
with lib;
let
cfg = config.services.sks;
sksPkg = cfg.package;
in
{
in {
meta.maintainers = with maintainers; [ primeos calbrecht jcumming ];
options = {
services.sks = {
enable = mkEnableOption "sks";
enable = mkEnableOption ''
SKS (synchronizing key server for OpenPGP) and start the database
server. You need to create "''${dataDir}/dump/*.gpg" for the initial
import'';
package = mkOption {
default = pkgs.sks;
defaultText = "pkgs.sks";
type = types.package;
description = "
Which sks derivation to use.
";
description = "Which SKS derivation to use.";
};
dataDir = mkOption {
type = types.path;
default = "/var/db/sks";
example = "/var/lib/sks";
# TODO: The default might change to "/var/lib/sks" as this is more
# common. There's also https://github.com/NixOS/nixpkgs/issues/26256
# and "/var/db" is not FHS compliant (seems to come from BSD).
description = ''
Data directory (-basedir) for SKS, where the database and all
configuration files are located (e.g. KDB, PTree, membership and
sksconf).
'';
};
hkpAddress = mkOption {
default = [ "127.0.0.1" "::1" ];
type = types.listOf types.str;
description = "
Wich ip addresses the sks-keyserver is listening on.
";
description = ''
Domain names, IPv4 and/or IPv6 addresses to listen on for HKP
requests.
'';
};
hkpPort = mkOption {
default = 11371;
type = types.int;
description = "
Which port the sks-keyserver is listening on.
";
type = types.ints.u16;
description = "HKP port to listen on.";
};
webroot = mkOption {
type = types.nullOr types.path;
default = "${sksPkg.webSamples}/OpenPKG";
defaultText = "\${pkgs.sks.webSamples}/OpenPKG";
description = ''
Source directory (will be symlinked, if not null) for the files the
built-in webserver should serve. SKS (''${pkgs.sks.webSamples})
provides the following examples: "HTML5", "OpenPKG", and "XHTML+ES".
The index file can be named index.html, index.htm, index.xhtm, or
index.xhtml. Files with the extensions .css, .es, .js, .jpg, .jpeg,
.png, or .gif are supported. Subdirectories and filenames with
anything other than alphanumeric characters and the '.' character
will be ignored.
'';
};
};
};
config = mkIf cfg.enable {
environment.systemPackages = [ sksPkg ];
users.users.sks = {
createHome = true;
home = "/var/db/sks";
isSystemUser = true;
shell = "${pkgs.coreutils}/bin/true";
users = {
users.sks = {
isSystemUser = true;
description = "SKS user";
home = cfg.dataDir;
createHome = true;
group = "sks";
useDefaultShell = true;
packages = [ sksPkg pkgs.db ];
};
groups.sks = { };
};
systemd.services = let
hkpAddress = "'" + (builtins.concatStringsSep " " cfg.hkpAddress) + "'" ;
hkpPort = builtins.toString cfg.hkpPort;
home = config.users.users.sks.home;
user = config.users.users.sks.name;
in {
sks-keyserver = {
"sks-db" = {
description = "SKS database server";
after = [ "network.target" ];
wantedBy = [ "multi-user.target" ];
preStart = ''
mkdir -p ${home}/dump
${pkgs.sks}/bin/sks build ${home}/dump/*.gpg -n 10 -cache 100 || true #*/
${pkgs.sks}/bin/sks cleandb || true
${pkgs.sks}/bin/sks pbuild -cache 20 -ptree_cache 70 || true
${lib.optionalString (cfg.webroot != null)
"ln -sfT \"${cfg.webroot}\" web"}
mkdir -p dump
${sksPkg}/bin/sks build dump/*.gpg -n 10 -cache 100 || true #*/
${sksPkg}/bin/sks cleandb || true
${sksPkg}/bin/sks pbuild -cache 20 -ptree_cache 70 || true
'';
serviceConfig = {
WorkingDirectory = home;
User = user;
WorkingDirectory = "~";
User = "sks";
Group = "sks";
Restart = "always";
ExecStart = "${pkgs.sks}/bin/sks db -hkp_address ${hkpAddress} -hkp_port ${hkpPort}";
ExecStart = "${sksPkg}/bin/sks db -hkp_address ${hkpAddress} -hkp_port ${hkpPort}";
};
};
};

View File

@ -42,7 +42,7 @@ in
protocol = "tcp";
user = "root";
server = "${pkgs.tcp_wrappers}/bin/tcpd";
serverArgs = "${pkgs.heimdalFull}/bin/kadmind";
serverArgs = "${pkgs.heimdalFull}/libexec/heimdal/kadmind";
};
systemd.services.kdc = {
@ -51,13 +51,13 @@ in
preStart = ''
mkdir -m 0755 -p ${stateDir}
'';
script = "${heimdalFull}/bin/kdc";
script = "${heimdalFull}/libexec/heimdal/kdc";
};
systemd.services.kpasswdd = {
description = "Kerberos Password Changing daemon";
wantedBy = [ "multi-user.target" ];
script = "${heimdalFull}/bin/kpasswdd";
script = "${heimdalFull}/libexec/heimdal/kpasswdd";
};
};

View File

@ -66,7 +66,7 @@ in
'';
}];
security.wrappers = (import (builtins.toPath "${e.enlightenment}/e-wrappers.nix")).security.wrappers;
security.wrappers = (import "${e.enlightenment}/e-wrappers.nix").security.wrappers;
environment.etc = singleton
{ source = xcfg.xkbDir;

View File

@ -110,6 +110,7 @@ in {
services.gnome3.gnome-terminal-server.enable = mkDefault true;
services.gnome3.gnome-user-share.enable = mkDefault true;
services.gnome3.gvfs.enable = true;
services.gnome3.rygel.enable = mkDefault true;
services.gnome3.seahorse.enable = mkDefault true;
services.gnome3.sushi.enable = mkDefault true;
services.gnome3.tracker.enable = mkDefault true;

View File

@ -419,7 +419,7 @@ while (my $f = <$listActiveUsers>) {
my ($uid, $name) = ($+{uid}, $+{user});
print STDERR "reloading user units for $name...\n";
system("su", "-l", $name, "-c", "XDG_RUNTIME_DIR=/run/user/$uid @systemd@/bin/systemctl --user daemon-reload");
system("su", "-s", "@shell@", "-l", $name, "-c", "XDG_RUNTIME_DIR=/run/user/$uid @systemd@/bin/systemctl --user daemon-reload");
}
close $listActiveUsers;

View File

@ -115,6 +115,7 @@ let
inherit (pkgs) utillinux coreutils;
systemd = config.systemd.package;
inherit (pkgs.stdenv) shell;
inherit children;
kernelParams = config.boot.kernelParams;

View File

@ -208,7 +208,6 @@ let
"InitialCongestionWindow" "InitialAdvertisedReceiveWindow" "QuickAck"
"MTUBytes"
])
(assertHasField "Gateway")
];
checkDhcp = checkUnitConfig "DHCP" [
@ -249,13 +248,14 @@ let
# .network files have a [Link] section with different options than in .netlink files
checkNetworkLink = checkUnitConfig "Link" [
(assertOnlyFields [
"MACAddress" "MTUBytes" "ARP" "Unmanaged" "RequiredForOnline"
"MACAddress" "MTUBytes" "ARP" "Multicast" "Unmanaged" "RequiredForOnline"
])
(assertMacAddress "MACAddress")
(assertByteFormat "MTUBytes")
(assertValueOneOf "ARP" boolValues)
(assertValueOneOf "Multicast" boolValues)
(assertValueOneOf "Unmanaged" boolValues)
(assertValueOneOf "RquiredForOnline" boolValues)
(assertValueOneOf "RequiredForOnline" boolValues)
];

View File

@ -399,7 +399,7 @@ in rec {
tests.slurm = callTest tests/slurm.nix {};
tests.smokeping = callTest tests/smokeping.nix {};
tests.snapper = callTest tests/snapper.nix {};
tests.statsd = callTest tests/statsd.nix {};
#tests.statsd = callTest tests/statsd.nix {}; # statsd is broken: #45946
tests.strongswan-swanctl = callTest tests/strongswan-swanctl.nix {};
tests.sudo = callTest tests/sudo.nix {};
tests.systemd = callTest tests/systemd.nix {};

View File

@ -9,12 +9,16 @@ import ./make-test.nix ({ pkgs, ...} : {
};
testScript = ''
startAll;
$machine->waitForUnit("multi-user.target");
# multi-user.target wants novacomd.service, but let's make sure
$machine->waitForUnit("novacomd.service");
# Check status and try connecting with novacom
$machine->succeed("systemctl status novacomd.service >&2");
# to prevent non-deterministic failure,
# make sure the daemon is really listening
$machine->waitForOpenPort(6968);
$machine->succeed("novacom -l");
# Stop the daemon, double-check novacom fails if daemon isn't working
@ -23,6 +27,8 @@ import ./make-test.nix ({ pkgs, ...} : {
# And back again for good measure
$machine->startJob("novacomd");
# make sure the daemon is really listening
$machine->waitForOpenPort(6968);
$machine->succeed("novacom -l");
'';
})

View File

@ -102,11 +102,17 @@ import ./make-test.nix {
testScript = ''
startAll;
$client->waitForUnit("network.target");
$client->waitForUnit("network-online.target");
$smtp1->waitForUnit('opensmtpd');
$smtp2->waitForUnit('opensmtpd');
$smtp2->waitForUnit('dovecot2');
# To prevent sporadic failures during daemon startup, make sure
# services are listening on their ports before sending requests
$smtp1->waitForOpenPort(25);
$smtp2->waitForOpenPort(25);
$smtp2->waitForOpenPort(143);
$client->succeed('send-a-test-mail');
$smtp1->waitUntilFails('smtpctl show queue | egrep .');
$smtp2->waitUntilFails('smtpctl show queue | egrep .');

View File

@ -12,13 +12,13 @@ with stdenv.lib;
stdenv.mkDerivation rec {
name = "monero-gui-${version}";
version = "0.12.0.0";
version = "0.12.3.0";
src = fetchFromGitHub {
owner = "monero-project";
repo = "monero-gui";
rev = "v${version}";
sha256 = "1mg5ival8a2wdp14yib4wzqax4xyvd40zjy9anhszljds1439jhl";
sha256 = "1ry0455cgirkc6n46qnlv5p49axjllil78xmx6469nbp3a2r3z7i";
};
nativeBuildInputs = [ qmake pkgconfig ];
@ -70,7 +70,8 @@ stdenv.mkDerivation rec {
cp ${desktopItem}/share/applications/* $out/share/applications
# install translations
cp -r release/bin/translations $out/share/
mkdir -p $out/share/translations
cp translations/*.qm $out/share/translations/
# install icons
for n in 16 24 32 48 64 96 128 256; do

View File

@ -1,38 +1,27 @@
diff --git a/main.cpp b/main.cpp
index c03b160..a8ea263 100644
index 79223c0..e80b317 100644
--- a/main.cpp
+++ b/main.cpp
@@ -80,14 +80,16 @@ int main(int argc, char *argv[])
// qDebug() << "High DPI auto scaling - enabled";
//#endif
- // Log settings
- Monero::Wallet::init(argv[0], "monero-wallet-gui");
-// qInstallMessageHandler(messageHandler);
-
MainApp app(argc, argv);
qDebug() << "app startd";
+ // Log settings
+ QString logfile =
+ QStandardPaths::writableLocation(QStandardPaths::CacheLocation)
+ + "/monero-wallet-gui.log";
+ Monero::Wallet::init(argv[0], logfile.toUtf8().constData());
+
app.setApplicationName("monero-core");
app.setOrganizationDomain("getmonero.org");
app.setOrganizationName("monero-project");
diff --git a/src/libwalletqt/Wallet.cpp b/src/libwalletqt/Wallet.cpp
index 74649ce..fe1efc6 100644
--- a/src/libwalletqt/Wallet.cpp
+++ b/src/libwalletqt/Wallet.cpp
@@ -729,7 +729,7 @@ QString Wallet::getWalletLogPath() const
#ifdef Q_OS_MACOS
return QStandardPaths::standardLocations(QStandardPaths::HomeLocation).at(0) + "/Library/Logs/" + filename;
#else
- return QCoreApplication::applicationDirPath() + "/" + filename;
+ return QStandardPaths::writableLocation(QStandardPaths::CacheLocation) + filename;
@@ -115,6 +115,9 @@ int main(int argc, char *argv[])
QCommandLineOption logPathOption(QStringList() << "l" << "log-file",
QCoreApplication::translate("main", "Log to specified file"),
QCoreApplication::translate("main", "file"));
+ logPathOption.setDefaultValue(
+ QStandardPaths::writableLocation(QStandardPaths::CacheLocation)
+ + "/monero-wallet-gui.log");
parser.addOption(logPathOption);
parser.addHelpOption();
parser.process(app);
diff --git a/Logger.cpp b/Logger.cpp
index 660bafc..dae24d4 100644
--- a/Logger.cpp
+++ b/Logger.cpp
@@ -15,7 +15,7 @@ static const QString default_name = "monero-wallet-gui.log";
#elif defined(Q_OS_MAC)
static const QString osPath = QStandardPaths::standardLocations(QStandardPaths::HomeLocation).at(0) + "/Library/Logs";
#else // linux + bsd
- static const QString osPath = QStandardPaths::standardLocations(QStandardPaths::HomeLocation).at(0);
+ static const QString osPath = QStandardPaths::standardLocations(QStandardPaths::CacheLocation).at(0);
#endif
}

View File

@ -1,14 +1,13 @@
diff --git a/TranslationManager.cpp b/TranslationManager.cpp
index fa39d35..5a410f7 100644
index e7fc52a..83534cc 100644
--- a/TranslationManager.cpp
+++ b/TranslationManager.cpp
@@ -29,7 +29,7 @@ bool TranslationManager::setLanguage(const QString &language)
#ifdef Q_OS_MACX
QString dir = qApp->applicationDirPath() + "/../Resources/translations";
#else
@@ -25,7 +25,7 @@ bool TranslationManager::setLanguage(const QString &language)
return true;
}
- QString dir = qApp->applicationDirPath() + "/translations";
+ QString dir = qApp->applicationDirPath() + "/../share/translations";
#endif
QString filename = "monero-core_" + language;
qDebug("%s: loading translation file '%s' from '%s'",

View File

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, fetchpatch
{ stdenv, fetchgit
, cmake, pkgconfig, git
, boost, miniupnpc, openssl, unbound, cppzmq
, zeromq, pcsclite, readline
@ -11,25 +11,16 @@ with stdenv.lib;
stdenv.mkDerivation rec {
name = "monero-${version}";
version = "0.12.0.0";
version = "0.12.3.0";
src = fetchFromGitHub {
owner = "monero-project";
repo = "monero";
src = fetchgit {
url = "https://github.com/monero-project/monero.git";
rev = "v${version}";
sha256 = "1lc9mkrl1m8mdbvj88y8y5rv44vinxf7dyv221ndmw5c5gs5zfgk";
sha256 = "1609k1qn9xx37a92ai36rajds9cmdjlkqyka95hks5xjr3l5ca8i";
};
nativeBuildInputs = [ cmake pkgconfig git ];
patches = [
# fix daemon crash, remove with 0.12.1.0 update
(fetchpatch {
url = "https://github.com/monero-project/monero/commit/08343ab.diff";
sha256 = "0f1snrl2mk2czwk1ysympzr8ismjx39fcqgy13276vcmw0cfqi83";
})
];
buildInputs = [
boost miniupnpc openssl unbound
cppzmq zeromq pcsclite readline
@ -39,7 +30,7 @@ stdenv.mkDerivation rec {
"-DCMAKE_BUILD_TYPE=Release"
"-DBUILD_GUI_DEPS=ON"
"-DReadline_ROOT_DIR=${readline.dev}"
];
] ++ optional stdenv.isDarwin "-DBoost_USE_MULTITHREADED=OFF";
hardeningDisable = [ "fortify" ];

View File

@ -4,11 +4,11 @@
stdenv.mkDerivation rec {
name = "puredata-${version}";
version = "0.48-0";
version = "0.48-2";
src = fetchurl {
url = "http://msp.ucsd.edu/Software/pd-${version}.src.tar.gz";
sha256 = "0wy9kl2v00fl27x4mfzhbca415hpaisp6ls8a6mkl01qbw20krny";
sha256 = "0p86hncgzkrl437v2wch2fg9iyn6mnrgbn811sh9pwmrjj2f06v8";
};
nativeBuildInputs = [ autoreconfHook gettext makeWrapper ];

View File

@ -22,6 +22,8 @@ in stdenv.mkDerivation rec{
gst_all_1.gst-libav
];
NIX_CFLAGS_COMPILE="-Wno-error=format-nonliteral";
passthru = {
updateScript = gnome3.updateScript {
packageName = pname;

View File

@ -5,14 +5,14 @@
let
# TO UPDATE: just execute the ./update.sh script (won't do anything if there is no update)
# "rev" decides what is actually being downloaded
version = "1.0.88.353.g15c26ea1-14";
version = "1.0.83.316.ge96b6e67-5";
# To get the latest stable revision:
# curl -H 'X-Ubuntu-Series: 16' 'https://api.snapcraft.io/api/v1/snaps/details/spotify?channel=stable' | jq '.download_url,.version,.last_updated'
# To get general information:
# curl -H 'Snap-Device-Series: 16' 'https://api.snapcraft.io/v2/snaps/info/spotify' | jq '.'
# More exapmles of api usage:
# More examples of api usage:
# https://github.com/canonical-websites/snapcraft.io/blob/master/webapp/publisher/snaps/views.py
rev = "19";
rev = "17";
deps = [
@ -65,7 +65,7 @@ stdenv.mkDerivation {
# https://community.spotify.com/t5/Desktop-Linux/Redistribute-Spotify-on-Linux-Distributions/td-p/1695334
src = fetchurl {
url = "https://api.snapcraft.io/api/v1/snaps/download/pOBIoZ2LrCB3rDohMxoYGnbN14EHOgD7_${rev}.snap";
sha512 = "3a068cbe3c1fca84ae67e28830216f993aa459947517956897c3b3f63063005c9db646960e85185b149747ffc302060c208a7f9968ea69d50a3496067089f3db";
sha512 = "19bbr4142shsl4qrikf48vq7kyrd4k4jbsada13qxicxps46a9bx51vjm2hkijqv739c1gdkgzwx7llyk95z26lhrz53shm2n5ij8xi";
};
buildInputs = [ squashfsTools makeWrapper ];

View File

@ -4,12 +4,12 @@ with stdenv.lib;
stdenv.mkDerivation rec {
name = "kakoune-unstable-${version}";
version = "2018-08-05";
version = "2018.09.04";
src = fetchFromGitHub {
repo = "kakoune";
owner = "mawww";
rev = "ae75032936ed9ffa2bf14589fef115d3d684a7c6";
sha256 = "1qm6i8vzr4wjxxdvhr54pan0ysxq1sn880bz8p2w9y6qa91yd3m3";
rev = "v${version}";
sha256 = "08v55hh7whm6hx6a047gszh0h5g35k3r8r52aggv7r2ybzrrw6w1";
};
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ ncurses asciidoc docbook_xsl libxslt ];

View File

@ -0,0 +1,29 @@
{ stdenv, fetchFromGitHub }:
stdenv.mkDerivation rec {
name = "nanorc-${version}";
version = "2018-09-05";
src = fetchFromGitHub {
owner = "scopatz";
repo = "nanorc";
rev = "1e589cb729d24fba470228d429e6dde07973d597";
sha256 = "136yxr38lzrfv8bar0c6c56rh54q9s94zpwa19f425crh44drppl";
};
dontBuild = true;
installPhase = ''
mkdir -p $out/share
install *.nanorc $out/share/
'';
meta = {
description = "Improved Nano Syntax Highlighting Files";
homepage = https://github.com/scopatz/nanorc;
license = stdenv.lib.licenses.gpl3;
maintainers = with stdenv.lib.maintainers; [ nequissimus ];
platforms = stdenv.lib.platforms.all;
};
}

View File

@ -30,7 +30,7 @@ let
/* for compatibility with passing extraPythonPackages as a list; added 2018-07-11 */
compatFun = funOrList: (if builtins.isList funOrList then
(_: builtins.trace "passing a list as extraPythonPackages to the neovim wrapper is deprecated, pass a function as to python.withPackages instead" funOrList)
(_: lib.warn "passing a list as extraPythonPackages to the neovim wrapper is deprecated, pass a function as to python.withPackages instead" funOrList)
else funOrList);
extraPythonPackagesFun = compatFun extraPythonPackages;
extraPython3PackagesFun = compatFun extraPython3Packages;

View File

@ -4,11 +4,11 @@
stdenv.mkDerivation rec {
name = "okteta-${version}";
version = "0.25.2";
version = "0.25.3";
src = fetchurl {
url = "mirror://kde/stable/okteta/${version}/src/${name}.tar.xz";
sha256 = "00mw8gdqvn6vn6ir6kqnp7xi3lpn6iyp4f5aknxwq6mdcxgjmh1p";
sha256 = "0mm6pmk7k9c581b12a3wl0ayhadvyymfzmscy9x32b391qy9inai";
};
nativeBuildInputs = [ qtscript extra-cmake-modules kdoctools ];

View File

@ -5,13 +5,13 @@
buildPythonApplication rec {
pname = "rednotebook";
version = "2.3";
version = "2.6.1";
src = fetchFromGitHub {
owner = "jendrikseipp";
repo = "rednotebook";
rev = "v${version}";
sha256 = "0zkfid104hcsf20r6829v11wxdghqkd3j1zbgyvd1s7q4nxjn5lj";
sha256 = "1x6acx0hagsawx84cv55qz17p8qjpq1v1zaf8rmm6ifsslsxw91h";
};
# We have not packaged tests.

View File

@ -7,11 +7,11 @@
stdenv.mkDerivation rec {
name = "kipi-plugins-${version}";
version = "5.2.0";
version = "5.9.0";
src = fetchurl {
url = "http://download.kde.org/stable/digikam/digikam-${version}.tar.xz";
sha256 = "0q4j7iv20cxgfsr14qwzx05wbp2zkgc7cg2pi7ibcnwba70ky96g";
sha256 = "06qdalf2mwx2f43p3bljy3vn5bk8n3x539kha6ky2vzxvkp343b6";
};
prePatch = ''

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
name = "josm-${version}";
version = "14066";
version = "14178";
src = fetchurl {
url = "https://josm.openstreetmap.de/download/josm-snapshot-${version}.jar";
sha256 = "06mhaz5vr19ydqc5irhgcbl0s8fifwvaq60iz2nsnlxb1pw89xia";
sha256 = "08an4s8vbcd8vyinnvd7cxmgnrsy47j78a94nk6vq244gp7v5n0r";
};
buildInputs = [ jre10 makeWrapper ];

View File

@ -46,6 +46,10 @@ in with python.pkgs; buildPythonApplication rec {
nativeBuildInputs = [ setuptools_scm pkgs.glibcLocales ];
checkInputs = [ pytest ];
postInstall = ''
install -D misc/__khal $out/share/zsh/site-functions/__khal
'';
checkPhase = ''
py.test
'';

View File

@ -2,12 +2,12 @@
fontconfig, pkgconfig, ncurses, imagemagick, xsel,
libstartup_notification, libX11, libXrandr, libXinerama, libXcursor,
libxkbcommon, libXi, libXext, wayland-protocols, wayland,
which
which, dbus
}:
with python3Packages;
buildPythonApplication rec {
version = "0.11.3";
version = "0.12.0";
name = "kitty-${version}";
format = "other";
@ -15,13 +15,13 @@ buildPythonApplication rec {
owner = "kovidgoyal";
repo = "kitty";
rev = "v${version}";
sha256 = "1fql8ayxvip8hgq9gy0dhqfvngv13gh5bf71vnc3agd80kzq1n73";
sha256 = "1n2pi9pc903inls1fvz257q7wpif76rj394qkgq7pixpisijdyjm";
};
buildInputs = [
fontconfig glfw ncurses libunistring harfbuzz libX11
libXrandr libXinerama libXcursor libxkbcommon libXi libXext
wayland-protocols wayland
wayland-protocols wayland dbus
];
nativeBuildInputs = [ pkgconfig which sphinx ];

View File

@ -1,13 +1,12 @@
{ stdenv, fetchurl, fetchFromGitHub
{ stdenv, lib, fetchurl, fetchFromGitHub
, pkgconfig
, autoconf, automake, intltool, gettext
, gtk, vte
# "stable" or "git"
, flavour ? "stable"
}:
assert flavour == "stable" || flavour == "git";
assert lib.assertOneOf "flavour" flavour [ "stable" "git" ];
let
stuff =

View File

@ -2,11 +2,11 @@
, desktop-file-utils, libSM, imagemagick }:
stdenv.mkDerivation rec {
version = "18.05";
version = "18.08";
name = "mediainfo-gui-${version}";
src = fetchurl {
url = "https://mediaarea.net/download/source/mediainfo/${version}/mediainfo_${version}.tar.xz";
sha256 = "0rgsfplisf729n1j3fyg82wpw88aahisrddn5wq9yx8hz6m96h6r";
sha256 = "0l4bhrgwfn3da6cr0jz5vs17sk7k0bc26nk7hymv04xifns5999n";
};
nativeBuildInputs = [ autoreconfHook pkgconfig ];

View File

@ -1,11 +1,11 @@
{ stdenv, fetchurl, autoreconfHook, pkgconfig, libzen, libmediainfo, zlib }:
stdenv.mkDerivation rec {
version = "18.05";
version = "18.08";
name = "mediainfo-${version}";
src = fetchurl {
url = "https://mediaarea.net/download/source/mediainfo/${version}/mediainfo_${version}.tar.xz";
sha256 = "0rgsfplisf729n1j3fyg82wpw88aahisrddn5wq9yx8hz6m96h6r";
sha256 = "0l4bhrgwfn3da6cr0jz5vs17sk7k0bc26nk7hymv04xifns5999n";
};
nativeBuildInputs = [ autoreconfHook pkgconfig ];

View File

@ -1,17 +1,17 @@
{ stdenv, fetchurl, cmake, qtscript, qtwebkit, gdal, proj, routino, quazip }:
{ stdenv, fetchurl, cmake, qtscript, qtwebengine, gdal, proj, routino, quazip }:
stdenv.mkDerivation rec {
name = "qmapshack-${version}";
version = "1.11.1";
version = "1.12.0";
src = fetchurl {
url = "https://bitbucket.org/maproom/qmapshack/downloads/${name}.tar.gz";
sha256 = "0yqilfldmfw8m18jbkffv4ar1px6kjs0zlgb216bnhahcr1y8r9y";
sha256 = "0d5p60kq9pa2hfql4nr8p42n88lr42jrsryrsllvaj45b8b6kvih";
};
nativeBuildInputs = [ cmake ];
buildInputs = [ qtscript qtwebkit gdal proj routino quazip ];
buildInputs = [ qtscript qtwebengine gdal proj routino quazip ];
cmakeFlags = [
"-DROUTINO_XML_PATH=${routino}/share/routino"

View File

@ -1,4 +1,4 @@
{ stdenv, ninja, which, nodejs, fetchurl, fetchpatch, gnutar
{ stdenv, gn, ninja, which, nodejs, fetchurl, fetchpatch, gnutar
# default dependencies
, bzip2, flac, speex, libopus
@ -139,11 +139,6 @@ let
# (gentooPatch "<patch>" "0000000000000000000000000000000000000000000000000000000000000000")
./patches/fix-freetype.patch
./patches/nix_plugin_paths_68.patch
] ++ optionals (versionRange "68" "69") [
./patches/remove-webp-include-68.patch
(githubPatch "4d10424f9e2a06978cdd6cdf5403fcaef18e49fc" "11la1jycmr5b5rw89mzcdwznmd2qh28sghvz9klr1qhmsmw1vzjc")
(githubPatch "56cb5f7da1025f6db869e840ed34d3b98b9ab899" "04mp5r1yvdvdx6m12g3lw3z51bzh7m3gr73mhblkn4wxdbvi3dcs")
] ++ optionals (versionAtLeast version "69") [
./patches/remove-webp-include-69.patch
] ++ optional enableWideVine ./patches/widevine.patch;
@ -243,15 +238,11 @@ let
configurePhase = ''
runHook preConfigure
# Build gn
python tools/gn/bootstrap/bootstrap.py -v -s --no-clean
PATH="$PWD/out/Release:$PATH"
# This is to ensure expansion of $out.
libExecPath="${libExecPath}"
python build/linux/unbundle/replace_gn_files.py \
--system-libraries ${toString gnSystemLibraries}
gn gen --args=${escapeShellArg gnFlags} out/Release | tee gn-gen-outputs.txt
${gn}/bin/gn gen --args=${escapeShellArg gnFlags} out/Release | tee gn-gen-outputs.txt
# Fail if `gn gen` contains a WARNING.
grep -o WARNING gn-gen-outputs.txt && echo "Found gn WARNING, exiting nix build" && exit 1

View File

@ -1,12 +0,0 @@
--- a/third_party/blink/renderer/platform/image-encoders/image_encoder.h
+++ b/third_party/blink/renderer/platform/image-encoders/image_encoder.h
@@ -8,7 +8,7 @@
#include "third_party/blink/renderer/platform/platform_export.h"
#include "third_party/blink/renderer/platform/wtf/vector.h"
#include "third_party/libjpeg/jpeglib.h" // for JPEG_MAX_DIMENSION
-#include "third_party/libwebp/src/webp/encode.h" // for WEBP_MAX_DIMENSION
+#define WEBP_MAX_DIMENSION 16383
#include "third_party/skia/include/core/SkStream.h"
#include "third_party/skia/include/encode/SkJpegEncoder.h"
#include "third_party/skia/include/encode/SkPngEncoder.h"

View File

@ -1,18 +1,18 @@
# This file is autogenerated from update.sh in the same directory.
{
beta = {
sha256 = "0w5k1446j45796vj8p6kv5cdrkrxyr7rh8d8vavplfldbvg36bdw";
sha256bin64 = "0a7gmbcps3b85rhwgrvg41m9db2n3igwr4hncm7kcqnq5hr60v8s";
version = "69.0.3497.32";
sha256 = "0i3iz6c05ykqxbq58sx954nky0gd0schl7ik2r56p3jqsk8cfnhn";
sha256bin64 = "03k5y1nyzx26mxwxmdijkl2kj49vm5vhbxhakfxxjg3r1v0rsqrs";
version = "69.0.3497.81";
};
dev = {
sha256 = "15gk2jbjv3iy4hg4xm1f66x5jqfqh9f98wfzrcsd5ix3ki3f9g3c";
sha256bin64 = "1lir6q31dnjsbrz99bfx74r5j6f0c1a443ky1k0idbx6ysvr8nnm";
version = "70.0.3521.2";
sha256 = "1lx6dfd6w675b4kyrci8ikc8rfmjc1aqmm7bimxp3h4p97j5wml1";
sha256bin64 = "0fsxj9h25glp3akw0x2rc488w5zr5v5yvl6ry7fy8w70fqgynffj";
version = "70.0.3538.9";
};
stable = {
sha256 = "1676y2axl5ihvv8jid2i9wp4i4awxzij5nwvd5zx98506l3088bh";
sha256bin64 = "0d352maw1630g0hns3c0g0n95bp5iqh7nzs8bnv48kxz87snmpdj";
version = "68.0.3440.106";
sha256 = "0i3iz6c05ykqxbq58sx954nky0gd0schl7ik2r56p3jqsk8cfnhn";
sha256bin64 = "1f3shb85jynxq37vjxxkkxrjayqgvpss1zws5i28x6i9nygfzay7";
version = "69.0.3497.81";
};
}

View File

@ -20,10 +20,10 @@ rec {
firefox = common rec {
pname = "firefox";
version = "61.0.2";
version = "62.0";
src = fetchurl {
url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
sha512 = "3zzcxqjpsn2m5z4l66rxrq7yf58aii370jj8pcl50smcd55sfsyknnc20agbppsw4k4pnwycfn57im33swwkjzg0hk0h2ng4rvi42x2";
sha512 = "0byxslbgr37sm1ra3wywl5c2a39qbkjwc227yp4j2l930m5j86m5g7rmv8zm944vv5vnyzmwhym972si229fm2lwq74p4xam5rfv948";
};
patches = nixpkgsPatches ++ [
@ -60,6 +60,7 @@ rec {
meta = firefox.meta // {
description = "A web browser built from Firefox Extended Support Release source tree";
knownVulnerabilities = [ "Support ended in August 2018." ];
};
updateScript = callPackage ./update.nix {
attrPath = "firefox-esr-52-unwrapped";
@ -69,10 +70,10 @@ rec {
firefox-esr-60 = common rec {
pname = "firefox-esr";
version = "60.1.0esr";
version = "60.2.0esr";
src = fetchurl {
url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
sha512 = "2bg7zvkpy1x2ryiazvk4nn5m94v0addbhrcrlcf9djnqjf14rp5q50lbiymhxxz0988vgpicsvizifb8gb3hi7b8g17rdw6438ddhh6";
sha512 = "1nf7nsycvzafvy4jjli5xh59d2mac17gfx91a1jh86f41w6qcsi3lvkfa8xhxsq8wfdsmqk1f4hmqzyx63h4m691qji7838g2nk49k7";
};
patches = nixpkgsPatches ++ [

View File

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, qt, makeWrapper }:
{ stdenv, fetchFromGitHub, fetchpatch, qt, makeWrapper }:
stdenv.mkDerivation rec {
name = "qtchan-${version}";
@ -11,6 +11,13 @@ stdenv.mkDerivation rec {
sha256 = "0n94jd6b1y8v6x5lkinr9rzm4bjg9xh9m7zj3j73pgq829gpmj3a";
};
patches = [
(fetchpatch {
url = https://github.com/siavash119/qtchan/commit/718abeee5cf4aca8c99b35b26f43909362a29ee6.patch;
sha256 = "11b72l5njvfsyapd479hp4yfvwwb1mhq3f077hwgg0waz5l7n00z";
})
];
enableParallelBuilding = true;
nativeBuildInputs = [ qt.qmake makeWrapper ];
buildInputs = [ qt.qtbase ];

View File

@ -28,12 +28,12 @@ let
in python3Packages.buildPythonApplication rec {
pname = "qutebrowser";
version = "1.4.1";
version = "1.4.2";
# the release tarballs are different from the git checkout!
src = fetchurl {
url = "https://github.com/qutebrowser/qutebrowser/releases/download/v${version}/${pname}-${version}.tar.gz";
sha256 = "0n2z92vb91gpfchdm9wsm712r9grbvxwdp4npl5c1nbq247dxwm3";
sha256 = "1pnj47mllg1x34qakxs7s59x8mj262nfhdxgihsb2h2ywjq4fpgx";
};
# Needs tox
@ -71,15 +71,26 @@ in python3Packages.buildPythonApplication rec {
install -Dm644 doc/qutebrowser.1 "$out/share/man/man1/qutebrowser.1"
install -Dm644 misc/qutebrowser.desktop \
"$out/share/applications/qutebrowser.desktop"
# Install icons
for i in 16 24 32 48 64 128 256 512; do
install -Dm644 "icons/qutebrowser-''${i}x''${i}.png" \
"$out/share/icons/hicolor/''${i}x''${i}/apps/qutebrowser.png"
done
install -Dm644 icons/qutebrowser.svg \
"$out/share/icons/hicolor/scalable/apps/qutebrowser.svg"
# Install scripts
sed -i "s,/usr/bin/qutebrowser,$out/bin/qutebrowser,g" scripts/open_url_in_instance.sh
install -Dm755 -t "$out/share/qutebrowser/scripts/" scripts/open_url_in_instance.sh
install -Dm755 -t "$out/share/qutebrowser/userscripts/" misc/userscripts/*
install -Dm755 -t "$out/share/qutebrowser/scripts/" \
scripts/{importer.py,dictcli.py,keytester.py,open_url_in_instance.sh,utils.py}
# Install and patch python scripts
buildPythonPath "$out $propagatedBuildInputs"
for i in importer dictcli keytester utils; do
install -Dm755 -t "$out/share/qutebrowser/scripts/" scripts/$i.py
patchPythonScript "$out/share/qutebrowser/scripts/$i.py"
done
'';
postFixup = lib.optionalString (! withWebEngineDefault) ''

View File

@ -5,10 +5,10 @@ let
then "linux-amd64"
else "darwin-amd64";
checksum = if isLinux
then "1fk6w6sajdi6iphxrzi9r7xfyaf923nxcqnl01s6x3f611fjvbjn"
else "1jzgy641hm3khj0bakfbr5wd5zl3s7w5jb622fjv2jxwmnv7dxiv";
then "1zig6ihmxcaw2wsbdd85yf1zswqcifw0hvbp1zws7r5ihd4yv8hg"
else "1l8y9i8vhibhwbn5kn5qp722q4dcx464kymlzy2bkmhiqbxnnkkw";
pname = "helm";
version = "2.9.1";
version = "2.10.0";
in
stdenv.mkDerivation {
name = "${pname}-${version}";

View File

@ -3,7 +3,7 @@
buildGoPackage rec {
name = "kops-${version}";
version = "1.9.0";
version = "1.10.0";
goPackagePath = "k8s.io/kops";
@ -11,7 +11,7 @@ buildGoPackage rec {
rev = version;
owner = "kubernetes";
repo = "kops";
sha256 = "03avkm7gk2dqyvd7245qsca1sbhwk41j9yhc208gcmjgjhkx2vn7";
sha256 = "1ga83sbhvhcazran6xfwgv95sg8ygg2w59vql0yjicj8r2q01vqp";
};
buildInputs = [go-bindata];

View File

@ -13,13 +13,13 @@
}:
stdenv.mkDerivation rec {
name = "dino-unstable-2018-07-08";
name = "dino-unstable-2018-09-05";
src = fetchFromGitHub {
owner = "dino";
repo = "dino";
rev = "df8b5fcb722c4a33ed18cbbaafecb206f127b849";
sha256 = "1r7h9pxix0sylnwab7a8lir9h5yssk98128x2bzva77id9id33vi";
rev = "79e0aee5fdb90830fad748fdfae717cb5fbf91f9";
sha256 = "1sfh729fg6c5ds3rcma13paqnvv58jln34s93j74jnca19wgn7k5";
fetchSubmodules = true;
};

View File

@ -55,11 +55,11 @@ let
in stdenv.mkDerivation rec {
name = "signal-desktop-${version}";
version = "1.15.5";
version = "1.16.0";
src = fetchurl {
url = "https://updates.signal.org/desktop/apt/pool/main/s/signal-desktop/signal-desktop_${version}_amd64.deb";
sha256 = "1a63kyxbhdaz6izprg8wryvscmvfjii50xi1v5pxlf74x2pkxs8k";
sha256 = "0hw5h1m8fijhqybx0xijrkifn5wl50qibaxkn2mxqf4mjwlvaw9a";
};
phases = [ "unpackPhase" "installPhase" ];

View File

@ -14,7 +14,7 @@ in stdenv.mkDerivation rec {
sha256 = "0w0aiszjd58ynxpacwcgf052zpmbpcym4dhci64vbfgch6wryz0w";
};
patches = [ ./scons.patch ];
patches = [ ./qt-5.11.patch ./scons.patch ];
nativeBuildInputs = [ pkgconfig qttools scons ];
@ -28,6 +28,8 @@ in stdenv.mkDerivation rec {
NIX_CFLAGS_COMPILE = [
"-I${libxml2.dev}/include/libxml2"
"-I${miniupnpc}/include/miniupnpc"
"-I${qtwebkit.dev}/include/QtWebKit"
"-I${qtwebkit.dev}/include/QtWebKitWidgets"
];
buildPhase = ''

View File

@ -0,0 +1,10 @@
--- a/Swift/QtUI/UserSearch/QtUserSearchWindow.h
+++ b/Swift/QtUI/UserSearch/QtUserSearchWindow.h
@@ -8,6 +8,7 @@
#include <set>
+#include <QAbstractItemModel>
#include <QWizard>
#include <Swiften/Base/Override.h>

View File

@ -0,0 +1,110 @@
diff --git a/src/core/wee-command.c b/src/core/wee-command.c
index 91c3c068d..8105e4171 100644
--- a/src/core/wee-command.c
+++ b/src/core/wee-command.c
@@ -8345,10 +8345,20 @@ command_exec_list (const char *command_list)
void
command_startup (int plugins_loaded)
{
+ int i;
+
if (plugins_loaded)
{
command_exec_list (CONFIG_STRING(config_startup_command_after_plugins));
- command_exec_list (weechat_startup_commands);
+ if (weechat_startup_commands)
+ {
+ for (i = 0; i < weelist_size (weechat_startup_commands); i++)
+ {
+ command_exec_list (
+ weelist_string (
+ weelist_get (weechat_startup_commands, i)));
+ }
+ }
}
else
command_exec_list (CONFIG_STRING(config_startup_command_before_plugins));
diff --git a/src/core/weechat.c b/src/core/weechat.c
index f74598ad5..ff2e539d1 100644
--- a/src/core/weechat.c
+++ b/src/core/weechat.c
@@ -60,6 +60,7 @@
#include "wee-eval.h"
#include "wee-hdata.h"
#include "wee-hook.h"
+#include "wee-list.h"
#include "wee-log.h"
#include "wee-network.h"
#include "wee-proxy.h"
@@ -102,7 +103,8 @@ int weechat_no_gnutls = 0; /* remove init/deinit of gnutls */
/* (useful with valgrind/electric-f.)*/
int weechat_no_gcrypt = 0; /* remove init/deinit of gcrypt */
/* (useful with valgrind) */
-char *weechat_startup_commands = NULL; /* startup commands (-r flag) */
+struct t_weelist *weechat_startup_commands = NULL; /* startup commands */
+ /* (option -r) */
/*
@@ -152,9 +154,13 @@ weechat_display_usage ()
" -h, --help display this help\n"
" -l, --license display WeeChat license\n"
" -p, --no-plugin don't load any plugin at startup\n"
- " -r, --run-command <cmd> run command(s) after startup\n"
- " (many commands can be separated by "
- "semicolons)\n"
+ " -P, --plugins <plugins> load only these plugins at startup\n"
+ " (see /help weechat.plugin.autoload)\n"
+ " -r, --run-command <cmd> run command(s) after startup;\n"
+ " many commands can be separated by "
+ "semicolons,\n"
+ " this option can be given multiple "
+ "times\n"
" -s, --no-script don't load any script at startup\n"
" --upgrade upgrade WeeChat using session files "
"(see /help upgrade in WeeChat)\n"
@@ -276,9 +282,10 @@ weechat_parse_args (int argc, char *argv[])
{
if (i + 1 < argc)
{
- if (weechat_startup_commands)
- free (weechat_startup_commands);
- weechat_startup_commands = strdup (argv[++i]);
+ if (!weechat_startup_commands)
+ weechat_startup_commands = weelist_new ();
+ weelist_add (weechat_startup_commands, argv[++i],
+ WEECHAT_LIST_POS_END, NULL);
}
else
{
@@ -616,6 +623,8 @@ weechat_shutdown (int return_code, int crash)
free (weechat_home);
if (weechat_local_charset)
free (weechat_local_charset);
+ if (weechat_startup_commands)
+ weelist_free (weechat_startup_commands);
if (crash)
abort ();
diff --git a/src/core/weechat.h b/src/core/weechat.h
index 9420ff415..cbb565a03 100644
--- a/src/core/weechat.h
+++ b/src/core/weechat.h
@@ -96,6 +96,8 @@
/* name of environment variable with an extra lib dir */
#define WEECHAT_EXTRA_LIBDIR "WEECHAT_EXTRA_LIBDIR"
+struct t_weelist;
+
/* global variables and functions */
extern int weechat_headless;
extern int weechat_debug_core;
@@ -112,7 +114,7 @@ extern char *weechat_local_charset;
extern int weechat_plugin_no_dlclose;
extern int weechat_no_gnutls;
extern int weechat_no_gcrypt;
-extern char *weechat_startup_commands;
+extern struct t_weelist *weechat_startup_commands;
extern void weechat_term_check ();
extern void weechat_shutdown (int return_code, int crash);

View File

@ -12,7 +12,8 @@
, tclSupport ? true, tcl
, extraBuildInputs ? []
, configure ? { availablePlugins, ... }: { plugins = builtins.attrValues availablePlugins; }
, runCommand }:
, runCommand, buildEnv
}:
let
inherit (pythonPackages) python;
@ -29,12 +30,12 @@ let
weechat =
assert lib.all (p: p.enabled -> ! (builtins.elem null p.buildInputs)) plugins;
stdenv.mkDerivation rec {
version = "2.1";
version = "2.2";
name = "weechat-${version}";
src = fetchurl {
url = "http://weechat.org/files/src/weechat-${version}.tar.bz2";
sha256 = "0fq68wgynv2c3319gmzi0lz4ln4yrrk755y5mbrlr7fc1sx7ffd8";
sha256 = "0p4nhh7f7w4q77g7jm9i6fynndqlgjkc9dk5g1xb4gf9imiisqlg";
};
outputs = [ "out" "man" ] ++ map (p: p.name) enabledPlugins;
@ -69,6 +70,13 @@ let
done
'';
# remove when bumping to the latest version.
# This patch basically rebases `fcf7469d7664f37e94d5f6d0b3fe6fce6413f88c`
# from weechat upstream to weechat-2.2.
patches = [
./aggregate-commands.patch
];
meta = {
homepage = http://www.weechat.org/;
description = "A fast, light and extensible chat client";
@ -78,38 +86,38 @@ let
on https://nixos.org/nixpkgs/manual/#sec-weechat .
'';
license = stdenv.lib.licenses.gpl3;
maintainers = with stdenv.lib.maintainers; [ lovek323 garbas the-kenny lheckemann ];
maintainers = with stdenv.lib.maintainers; [ lovek323 garbas the-kenny lheckemann ma27 ];
platforms = stdenv.lib.platforms.unix;
};
};
in if configure == null then weechat else
let
perlInterpreter = perl;
config = configure {
availablePlugins = let
simplePlugin = name: {pluginFile = "${weechat.${name}}/lib/weechat/plugins/${name}.so";};
in rec {
python = {
pluginFile = "${weechat.python}/lib/weechat/plugins/python.so";
withPackages = pkgsFun: (python // {
extraEnv = ''
export PYTHONHOME="${pythonPackages.python.withPackages pkgsFun}"
'';
});
};
perl = (simplePlugin "perl") // {
availablePlugins = let
simplePlugin = name: {pluginFile = "${weechat.${name}}/lib/weechat/plugins/${name}.so";};
in rec {
python = {
pluginFile = "${weechat.python}/lib/weechat/plugins/python.so";
withPackages = pkgsFun: (python // {
extraEnv = ''
export PATH="${perlInterpreter}/bin:$PATH"
export PYTHONHOME="${pythonPackages.python.withPackages pkgsFun}"
'';
};
tcl = simplePlugin "tcl";
ruby = simplePlugin "ruby";
guile = simplePlugin "guile";
lua = simplePlugin "lua";
});
};
perl = (simplePlugin "perl") // {
extraEnv = ''
export PATH="${perlInterpreter}/bin:$PATH"
'';
};
tcl = simplePlugin "tcl";
ruby = simplePlugin "ruby";
guile = simplePlugin "guile";
lua = simplePlugin "lua";
};
inherit (config) plugins;
config = configure { inherit availablePlugins; };
plugins = config.plugins or (builtins.attrValues availablePlugins);
pluginsDir = runCommand "weechat-plugins" {} ''
mkdir -p $out/plugins
@ -117,13 +125,29 @@ in if configure == null then weechat else
ln -s $plugin $out/plugins
done
'';
in (writeScriptBin "weechat" ''
#!${stdenv.shell}
export WEECHAT_EXTRA_LIBDIR=${pluginsDir}
${lib.concatMapStringsSep "\n" (p: lib.optionalString (p ? extraEnv) p.extraEnv) plugins}
exec ${weechat}/bin/weechat "$@"
'') // {
name = weechat.name;
unwrapped = weechat;
meta = weechat.meta;
init = let
init = builtins.replaceStrings [ "\n" ] [ ";" ] (config.init or "");
mkScript = drv: lib.flip map drv.scripts (script: "/script load ${drv}/share/${script}");
scripts = builtins.concatStringsSep ";" (lib.foldl (scripts: drv: scripts ++ mkScript drv)
[ ] (config.scripts or []));
in "${scripts};${init}";
mkWeechat = bin: (writeScriptBin bin ''
#!${stdenv.shell}
export WEECHAT_EXTRA_LIBDIR=${pluginsDir}
${lib.concatMapStringsSep "\n" (p: lib.optionalString (p ? extraEnv) p.extraEnv) plugins}
exec ${weechat}/bin/${bin} "$@" --run-command ${lib.escapeShellArg init}
'') // {
inherit (weechat) name meta;
unwrapped = weechat;
};
in buildEnv {
name = "weechat-bin-env";
paths = [
(mkWeechat "weechat")
(mkWeechat "weechat-headless")
];
}

View File

@ -0,0 +1,13 @@
{ callPackage, luaPackages, pythonPackages }:
{
weechat-xmpp = callPackage ./weechat-xmpp {
inherit (pythonPackages) pydns;
};
weechat-matrix-bridge = callPackage ./weechat-matrix-bridge {
inherit (luaPackages) cjson;
};
wee-slack = callPackage ./wee-slack { };
}

View File

@ -0,0 +1,29 @@
{ stdenv, fetchFromGitHub }:
stdenv.mkDerivation rec {
name = "wee-slack-${version}";
version = "2.1.1";
src = fetchFromGitHub {
repo = "wee-slack";
owner = "wee-slack";
rev = "v${version}";
sha256 = "05caackz645aw6kljmiihiy7xz9jld8b9blwpmh0cnaihavgj1wc";
};
passthru.scripts = [ "wee_slack.py" ];
installPhase = ''
mkdir -p $out/share
cp wee_slack.py $out/share/wee_slack.py
'';
meta = with stdenv.lib; {
homepage = https://github.com/wee-slack/wee-slack;
license = licenses.mit;
maintainers = with maintainers; [ ma27 ];
description = ''
A WeeChat plugin for Slack.com. Synchronizes read markers, provides typing notification, search, etc..
'';
};
}

View File

@ -25,6 +25,8 @@ stdenv.mkDerivation {
--replace "__NIX_LIB_PATH__" "$out/lib/?.so"
'';
passthru.scripts = [ "olm.lua" "matrix.lua" ];
installPhase = ''
mkdir -p $out/{share,lib}

View File

@ -25,6 +25,8 @@ stdenv.mkDerivation {
})
];
passthru.scripts = [ "jabber.py" ];
meta = with stdenv.lib; {
description = "A fork of the jabber plugin for weechat";
homepage = "https://github.com/sleduc/weechat-xmpp";

View File

@ -9,11 +9,11 @@ let
isonum = fetchurl { url = http://www.oasis-open.org/docbook/xml/4.5/ent/isonum.ent; sha256 = "04b62dw2g3cj9i4vn9xyrsrlz8fpmmijq98dm0nrkky31bwbbrs3"; };
isogrk1 = fetchurl { url = http://www.oasis-open.org/docbook/xml/4.5/ent/isogrk1.ent; sha256 = "04b23anhs5wr62n4rgsjirzvw7rpjcsf8smz4ffzaqh3b0vw90vm"; };
in stdenv.mkDerivation rec {
name = "gnumeric-1.12.39";
name = "gnumeric-1.12.43";
src = fetchurl {
url = "mirror://gnome/sources/gnumeric/1.12/${name}.tar.xz";
sha256 = "26cceb7fa97dc7eee7181a79a6251a85b1f1464dcaaaf7624829f7439c5f7d3f";
sha256 = "87c9abd6260cf29401fa1e0fcce374e8c7bcd1986608e4049f6037c9d32b5fd5";
};
configureFlags = [ "--disable-component" ];

View File

@ -2,9 +2,9 @@
rec {
major = "6";
minor = "0";
patch = "5";
tweak = "2";
minor = "1";
patch = "0";
tweak = "3";
subdir = "${major}.${minor}.${patch}";
@ -12,6 +12,6 @@ rec {
src = fetchurl {
url = "https://download.documentfoundation.org/libreoffice/src/${subdir}/libreoffice-${version}.tar.xz";
sha256 = "16h60j7h9z48vfhhj22m64myksnrrgrnh0qc6i4bxgshmm8kkzdn";
sha256 = "54eccd268f75d62fa6ab78d25685719c109257e1c0f4d628eae92ec09632ebd8";
};
}

View File

@ -6,7 +6,7 @@
, openssl, gperf, cppunit, GConf, ORBit2, poppler, utillinux
, librsvg, gnome_vfs, libGLU_combined, bsh, CoinMP, libwps, libabw
, autoconf, automake, openldap, bash, hunspell, librdf_redland, nss, nspr
, libwpg, dbus-glib, glibc, qt4, clucene_core, libcdr, lcms, vigra
, libwpg, dbus-glib, qt4, clucene_core, libcdr, lcms, vigra
, unixODBC, mdds, sane-backends, mythes, libexttextcat, libvisio
, fontsConf, pkgconfig, bluez5, libtool, carlito
, libatomic_ops, graphite2, harfbuzz, libodfgen, libzmf
@ -34,22 +34,28 @@ let
};
srcs = {
third_party = [ (let md5 = "185d60944ea767075d27247c3162b3bc"; in fetchurl rec {
url = "https://dev-www.libreoffice.org/extern/${md5}-${name}";
sha256 = "1infwvv1p6i21scywrldsxs22f62x85mns4iq8h6vr6vlx3fdzga";
name = "unowinreg.dll";
}) ] ++ (map (x : ((fetchurl {inherit (x) url sha256 name;}) // {inherit (x) md5name md5;})) (import ./libreoffice-srcs.nix));
third_party =
map (x : ((fetchurl {inherit (x) url sha256 name;}) // {inherit (x) md5name md5;}))
((import ./libreoffice-srcs.nix) ++ [
(rec {
name = "unowinreg.dll";
url = "https://dev-www.libreoffice.org/extern/${md5name}";
sha256 = "1infwvv1p6i21scywrldsxs22f62x85mns4iq8h6vr6vlx3fdzga";
md5 = "185d60944ea767075d27247c3162b3bc";
md5name = "${md5}-${name}";
})
]);
translations = fetchSrc {
name = "translations";
sha256 = "1p8gb9jxv4n8ggksbfsqzdw5amxg575grxifsabhgjllpisjzrlr";
sha256 = "140i0q6nyi2l6nv2b3n7s7mggm2rb1ws3h9awa9y6m2iads54qm7";
};
# TODO: dictionaries
help = fetchSrc {
name = "help";
sha256 = "1dkzm766zi4msk6w35bvfk5b5bx1xyqg2wx58wklr5375kjv6ba9";
sha256 = "0ayssl5ivhyzxi3gz3h4yhp8hq7ihig6n6iijbks5f1sm7dwridv";
};
};
@ -58,26 +64,18 @@ in stdenv.mkDerivation rec {
inherit (primary-src) src;
# Openoffice will open libcups dynamically, so we link it directly
# to make its dlopen work.
# It also seems not to mention libdl explicitly in some places.
NIX_LDFLAGS = "-lcups -ldl";
# For some reason librdf_redland sometimes refers to rasqal.h instead
# of rasqal/rasqal.h
# And LO refers to gpgme++ by no-path name
NIX_CFLAGS_COMPILE="-I${librdf_rasqal}/include/rasqal -I${gpgme.dev}/include/gpgme++";
# If we call 'configure', 'make' will then call configure again without parameters.
# It's their system.
configureScript = "./autogen.sh";
dontUseCmakeConfigure = true;
NIX_CFLAGS_COMPILE = [ "-I${librdf_rasqal}/include/rasqal" ];
patches = [ ./xdg-open-brief.patch ];
postUnpack = ''
mkdir -v $sourceRoot/src
'' + (stdenv.lib.concatMapStrings (f: "ln -sfv ${f} $sourceRoot/src/${f.md5 or f.outputHash}-${f.name}\nln -sfv ${f} $sourceRoot/src/${f.name}\n") srcs.third_party)
'' + (lib.flip lib.concatMapStrings srcs.third_party (f: ''
ln -sfv ${f} $sourceRoot/src/${f.md5name}
ln -sfv ${f} $sourceRoot/src/${f.name}
''))
+ ''
ln -sv ${srcs.help} $sourceRoot/src/${srcs.help.name}
ln -svf ${srcs.translations} $sourceRoot/src/${srcs.translations.name}
@ -85,14 +83,20 @@ in stdenv.mkDerivation rec {
postPatch = ''
sed -e 's@/usr/bin/xdg-open@xdg-open@g' -i shell/source/unix/exec/shellexec.cxx
# configure checks for header 'gpgme++/gpgmepp_version.h',
# and if it is found (no matter where) uses a hardcoded path
# in what presumably is an effort to make it possible to write
# '#include <context.h>' instead of '#include <gpgmepp/context.h>'.
#
# Fix this path to point to where the headers can actually be found instead.
substituteInPlace configure.ac --replace \
'GPGMEPP_CFLAGS=-I/usr/include/gpgme++' \
'GPGMEPP_CFLAGS=-I${gpgme.dev}/include/gpgme++'
'';
QT4DIR = qt4;
# Fix boost 1.59 compat
# Try removing in the next version
CPPFLAGS = "-DBOOST_ERROR_CODE_HEADER_ONLY -DBOOST_SYSTEM_NO_DEPRECATED";
preConfigure = ''
configureFlagsArray=(
"--with-parallelism=$NIX_BUILD_CORES"
@ -101,69 +105,72 @@ in stdenv.mkDerivation rec {
chmod a+x ./bin/unpack-sources
patchShebangs .
# It is used only as an indicator of the proper current directory
touch solenv/inc/target.mk
# BLFS patch for Glibc 2.23 renaming isnan
sed -ire "s@isnan@std::&@g" xmloff/source/draw/ximp3dscene.cxx
# This is required as some cppunittests require fontconfig configured
cp "${fontsConf}" fonts.conf
sed -e '/include/i<include>${carlito}/etc/fonts/conf.d</include>' -i fonts.conf
export FONTCONFIG_FILE="$PWD/fonts.conf"
NOCONFIGURE=1 ./autogen.sh
'';
# fetch_Download_item tries to interpret the name as a variable name
# Let it do so…
postConfigure = ''
sed -e '1ilibreoffice-translations-${version}.tar.xz=libreoffice-translations-${version}.tar.xz' -i Makefile
sed -e '1ilibreoffice-help-${version}.tar.xz=libreoffice-help-${version}.tar.xz' -i Makefile
postConfigure =
# fetch_Download_item tries to interpret the name as a variable name, let it do so...
''
sed -e '1ilibreoffice-translations-${version}.tar.xz=libreoffice-translations-${version}.tar.xz' -i Makefile
sed -e '1ilibreoffice-help-${version}.tar.xz=libreoffice-help-${version}.tar.xz' -i Makefile
''
# Test fixups
# May need to be revisited/pruned, left alone for now.
+ ''
# unit test sd_tiledrendering seems to be fragile
# https://nabble.documentfoundation.org/libreoffice-5-0-failure-in-CUT-libreofficekit-tiledrendering-td4150319.html
echo > ./sd/CppunitTest_sd_tiledrendering.mk
sed -e /CppunitTest_sd_tiledrendering/d -i sd/Module_sd.mk
# one more fragile test?
sed -e '/CPPUNIT_TEST(testTdf96536);/d' -i sw/qa/extras/uiwriter/uiwriter.cxx
# this I actually hate, this should be a data consistency test!
sed -e '/CPPUNIT_TEST(testTdf115013);/d' -i sw/qa/extras/uiwriter/uiwriter.cxx
# rendering-dependent test
sed -e '/CPPUNIT_ASSERT_EQUAL(11148L, pOleObj->GetLogicRect().getWidth());/d ' -i sc/qa/unit/subsequent_filters-test.cxx
# tilde expansion in path processing checks the existence of $HOME
sed -e 's@OString sSysPath("~/tmp");@& return ; @' -i sal/qa/osl/file/osl_File.cxx
# rendering-dependent: on my computer the test table actually doesn't fit…
# interesting fact: test disabled on macOS by upstream
sed -re '/DECLARE_WW8EXPORT_TEST[(]testTableKeep, "tdf91083.odt"[)]/,+5d' -i ./sw/qa/extras/ww8export/ww8export.cxx
# Segfault on DB access — maybe temporarily acceptable for a new version of Fresh?
sed -e 's/CppunitTest_dbaccess_empty_stdlib_save//' -i ./dbaccess/Module_dbaccess.mk
# one more fragile test?
sed -e '/CPPUNIT_TEST(testTdf77014);/d' -i sw/qa/extras/uiwriter/uiwriter.cxx
# rendering-dependent tests
sed -e '/CPPUNIT_TEST(testCustomColumnWidthExportXLSX)/d' -i sc/qa/unit/subsequent_export-test.cxx
sed -e '/CPPUNIT_TEST(testColumnWidthExportFromODStoXLSX)/d' -i sc/qa/unit/subsequent_export-test.cxx
sed -e '/CPPUNIT_TEST(testChartImportXLS)/d' -i sc/qa/unit/subsequent_filters-test.cxx
sed -zre 's/DesktopLOKTest::testGetFontSubset[^{]*[{]/& return; /' -i desktop/qa/desktop_lib/test_desktop_lib.cxx
sed -z -r -e 's/DECLARE_OOXMLEXPORT_TEST[(]testFlipAndRotateCustomShape,[^)]*[)].[{]/& return;/' -i sw/qa/extras/ooxmlexport/ooxmlexport7.cxx
sed -z -r -e 's/DECLARE_OOXMLEXPORT_TEST[(]tdf105490_negativeMargins,[^)]*[)].[{]/& return;/' -i sw/qa/extras/ooxmlexport/ooxmlexport9.cxx
sed -z -r -e 's/DECLARE_OOXMLIMPORT_TEST[(]testTdf112443,[^)]*[)].[{]/& return;/' -i sw/qa/extras/ooxmlimport/ooxmlimport.cxx
sed -z -r -e 's/DECLARE_RTFIMPORT_TEST[(]testTdf108947,[^)]*[)].[{]/& return;/' -i sw/qa/extras/rtfimport/rtfimport.cxx
# not sure about this fragile test
sed -z -r -e 's/DECLARE_OOXMLEXPORT_TEST[(]testTDF87348,[^)]*[)].[{]/& return;/' -i sw/qa/extras/ooxmlexport/ooxmlexport7.cxx
''
# This to avoid using /lib:/usr/lib at linking
+ ''
sed -i '/gb_LinkTarget_LDFLAGS/{ n; /rpath-link/d;}' solenv/gbuild/platform/unxgcc.mk
# unit test sd_tiledrendering seems to be fragile
# https://nabble.documentfoundation.org/libreoffice-5-0-failure-in-CUT-libreofficekit-tiledrendering-td4150319.html
echo > ./sd/CppunitTest_sd_tiledrendering.mk
sed -e /CppunitTest_sd_tiledrendering/d -i sd/Module_sd.mk
# one more fragile test?
sed -e '/CPPUNIT_TEST(testTdf96536);/d' -i sw/qa/extras/uiwriter/uiwriter.cxx
# this I actually hate, this should be a data consistency test!
sed -e '/CPPUNIT_TEST(testTdf115013);/d' -i sw/qa/extras/uiwriter/uiwriter.cxx
# rendering-dependent test
sed -e '/CPPUNIT_ASSERT_EQUAL(11148L, pOleObj->GetLogicRect().getWidth());/d ' -i sc/qa/unit/subsequent_filters-test.cxx
# tilde expansion in path processing checks the existence of $HOME
sed -e 's@OString sSysPath("~/tmp");@& return ; @' -i sal/qa/osl/file/osl_File.cxx
# rendering-dependent: on my computer the test table actually doesn't fit…
# interesting fact: test disabled on macOS by upstream
sed -re '/DECLARE_WW8EXPORT_TEST[(]testTableKeep, "tdf91083.odt"[)]/,+5d' -i ./sw/qa/extras/ww8export/ww8export.cxx
# Segfault on DB access — maybe temporarily acceptable for a new version of Fresh?
sed -e 's/CppunitTest_dbaccess_empty_stdlib_save//' -i ./dbaccess/Module_dbaccess.mk
# one more fragile test?
sed -e '/CPPUNIT_TEST(testTdf77014);/d' -i sw/qa/extras/uiwriter/uiwriter.cxx
# rendering-dependent tests
sed -e '/CPPUNIT_TEST(testCustomColumnWidthExportXLSX)/d' -i sc/qa/unit/subsequent_export-test.cxx
sed -e '/CPPUNIT_TEST(testColumnWidthExportFromODStoXLSX)/d' -i sc/qa/unit/subsequent_export-test.cxx
sed -e '/CPPUNIT_TEST(testChartImportXLS)/d' -i sc/qa/unit/subsequent_filters-test.cxx
sed -zre 's/DesktopLOKTest::testGetFontSubset[^{]*[{]/& return; /' -i desktop/qa/desktop_lib/test_desktop_lib.cxx
sed -z -r -e 's/DECLARE_OOXMLEXPORT_TEST[(]testFlipAndRotateCustomShape,[^)]*[)].[{]/& return;/' -i sw/qa/extras/ooxmlexport/ooxmlexport7.cxx
sed -z -r -e 's/DECLARE_OOXMLEXPORT_TEST[(]tdf105490_negativeMargins,[^)]*[)].[{]/& return;/' -i sw/qa/extras/ooxmlexport/ooxmlexport9.cxx
sed -z -r -e 's/DECLARE_OOXMLIMPORT_TEST[(]testTdf112443,[^)]*[)].[{]/& return;/' -i sw/qa/extras/ooxmlimport/ooxmlimport.cxx
sed -z -r -e 's/DECLARE_RTFIMPORT_TEST[(]testTdf108947,[^)]*[)].[{]/& return;/' -i sw/qa/extras/rtfimport/rtfimport.cxx
# not sure about this fragile test
sed -z -r -e 's/DECLARE_OOXMLEXPORT_TEST[(]testTDF87348,[^)]*[)].[{]/& return;/' -i sw/qa/extras/ooxmlexport/ooxmlexport7.cxx
'';
find -name "*.cmd" -exec sed -i s,/lib:/usr/lib,, {} \;
'';
makeFlags = "SHELL=${bash}/bin/bash";
enableParallelBuilding = true;
buildPhase = ''
# This to avoid using /lib:/usr/lib at linking
sed -i '/gb_LinkTarget_LDFLAGS/{ n; /rpath-link/d;}' solenv/gbuild/platform/unxgcc.mk
find -name "*.cmd" -exec sed -i s,/lib:/usr/lib,, {} \;
make
make build-nocheck
'';
doCheck = true;
# It installs only things to $out/lib/libreoffice
postInstall = ''
mkdir -p $out/bin $out/share/desktop
@ -195,11 +202,11 @@ in stdenv.mkDerivation rec {
"--with-vendor=NixOS"
"--with-commons-logging-jar=${commonsLogging}/share/java/commons-logging-1.2.jar"
"--disable-report-builder"
"--disable-online-update"
"--enable-python=system"
"--enable-dbus"
"--enable-release-build"
(lib.enableFeature kdeIntegration "kde4")
"--with-package-format=installed"
"--enable-epm"
"--with-jdk-home=${jdk.home}"
"--with-ant-home=${ant}/lib/ant"
@ -213,9 +220,13 @@ in stdenv.mkDerivation rec {
"--with-system-openldap"
"--with-system-coinmp"
"--with-alloc=system"
# Without these, configure does not finish
"--without-junit"
"--disable-libnumbertext" # system-libnumbertext"
# I imagine this helps. Copied from go-oo.
# Modified on every upgrade, though
"--disable-odk"
@ -260,7 +271,7 @@ in stdenv.mkDerivation rec {
gst_all_1.gst-plugins-base glib
neon nspr nss openldap openssl ORBit2 pam perl pkgconfig poppler
python3 sablotron sane-backends unzip vigra which zip zlib
mdds bluez5 glibc libcmis libwps libabw libzmf libtool
mdds bluez5 libcmis libwps libabw libzmf libtool
libxshmfence libatomic_ops graphite2 harfbuzz gpgme utillinux
librevenge libe-book libmwaw glm glew ncurses epoxy
libodfgen CoinMP librdf_rasqal defaultIconTheme gettext

View File

@ -1,10 +1,10 @@
[
{
name = "libabw-0.1.1.tar.bz2";
url = "http://dev-www.libreoffice.org/src/libabw-0.1.1.tar.bz2";
sha256 = "7a3d3415cf82ab9894f601d1b3057c4615060304d5279efdec6275e01b96a199";
name = "libabw-0.1.2.tar.xz";
url = "http://dev-www.libreoffice.org/src/libabw-0.1.2.tar.xz";
sha256 = "0b72944d5af81dda0a5c5803ee84cbac4b81441a4d767aa57029adc6744c2485";
md5 = "";
md5name = "7a3d3415cf82ab9894f601d1b3057c4615060304d5279efdec6275e01b96a199-libabw-0.1.1.tar.bz2";
md5name = "0b72944d5af81dda0a5c5803ee84cbac4b81441a4d767aa57029adc6744c2485-libabw-0.1.2.tar.xz";
}
{
name = "commons-logging-1.2-src.tar.gz";
@ -28,11 +28,11 @@
md5name = "976a12a59bc286d634a21d7be0841cc74289ea9077aa1af46be19d1a6e844c19-apr-util-1.5.4.tar.gz";
}
{
name = "boost_1_63_0.tar.bz2";
url = "http://dev-www.libreoffice.org/src/boost_1_63_0.tar.bz2";
sha256 = "beae2529f759f6b3bf3f4969a19c2e9d6f0c503edcb2de4a61d1428519fcb3b0";
name = "boost_1_65_1.tar.bz2";
url = "http://dev-www.libreoffice.org/src/boost_1_65_1.tar.bz2";
sha256 = "9807a5d16566c57fd74fb522764e0b134a8bbe6b6e8967b83afefd30dcd3be81";
md5 = "";
md5name = "beae2529f759f6b3bf3f4969a19c2e9d6f0c503edcb2de4a61d1428519fcb3b0-boost_1_63_0.tar.bz2";
md5name = "9807a5d16566c57fd74fb522764e0b134a8bbe6b6e8967b83afefd30dcd3be81-boost_1_65_1.tar.bz2";
}
{
name = "breakpad.zip";
@ -56,18 +56,18 @@
md5name = "00b516f4704d4a7cb50a1d97e6e8e15b-bzip2-1.0.6.tar.gz";
}
{
name = "cairo-1.14.8.tar.xz";
url = "http://dev-www.libreoffice.org/src/cairo-1.14.8.tar.xz";
sha256 = "d1f2d98ae9a4111564f6de4e013d639cf77155baf2556582295a0f00a9bc5e20";
name = "cairo-1.14.10.tar.xz";
url = "http://dev-www.libreoffice.org/src/cairo-1.14.10.tar.xz";
sha256 = "7e87878658f2c9951a14fc64114d4958c0e65ac47530b8ac3078b2ce41b66a09";
md5 = "";
md5name = "d1f2d98ae9a4111564f6de4e013d639cf77155baf2556582295a0f00a9bc5e20-cairo-1.14.8.tar.xz";
md5name = "7e87878658f2c9951a14fc64114d4958c0e65ac47530b8ac3078b2ce41b66a09-cairo-1.14.10.tar.xz";
}
{
name = "libcdr-0.1.3.tar.bz2";
url = "http://dev-www.libreoffice.org/src/libcdr-0.1.3.tar.bz2";
sha256 = "5160bbbfefe52bd4880840fad2b07a512813e37bfaf8ccac062fca238f230f4d";
name = "libcdr-0.1.4.tar.xz";
url = "http://dev-www.libreoffice.org/src/libcdr-0.1.4.tar.xz";
sha256 = "e7a7e8b00a3df5798110024d7061fe9d1c3330277d2e4fa9213294f966a4a66d";
md5 = "";
md5name = "5160bbbfefe52bd4880840fad2b07a512813e37bfaf8ccac062fca238f230f4d-libcdr-0.1.3.tar.bz2";
md5name = "e7a7e8b00a3df5798110024d7061fe9d1c3330277d2e4fa9213294f966a4a66d-libcdr-0.1.4.tar.xz";
}
{
name = "clucene-core-2.3.3.4.tar.gz";
@ -90,13 +90,6 @@
md5 = "";
md5name = "86c798780b9e1f5921fe4efe651a93cb420623b45aa1fdff57af8c37f116113f-CoinMP-1.7.6.tgz";
}
{
name = "collada2gltf-master-cb1d97788a.tar.bz2";
url = "http://dev-www.libreoffice.org/src/4b87018f7fff1d054939d19920b751a0-collada2gltf-master-cb1d97788a.tar.bz2";
sha256 = "b0adb8e71aef80751b999c9c055e419a625c4a05184e407aef2aee28752ad8cb";
md5 = "4b87018f7fff1d054939d19920b751a0";
md5name = "4b87018f7fff1d054939d19920b751a0-collada2gltf-master-cb1d97788a.tar.bz2";
}
{
name = "cppunit-1.14.0.tar.gz";
url = "http://dev-www.libreoffice.org/src/cppunit-1.14.0.tar.gz";
@ -112,18 +105,18 @@
md5name = "1f467e5bb703f12cbbb09d5cf67ecf4a-converttexttonumber-1-5-0.oxt";
}
{
name = "curl-7.52.1.tar.gz";
url = "http://dev-www.libreoffice.org/src/curl-7.52.1.tar.gz";
sha256 = "a8984e8b20880b621f61a62d95ff3c0763a3152093a9f9ce4287cfd614add6ae";
name = "curl-7.60.0.tar.gz";
url = "http://dev-www.libreoffice.org/src/curl-7.60.0.tar.gz";
sha256 = "e9c37986337743f37fd14fe8737f246e97aec94b39d1b71e8a5973f72a9fc4f5";
md5 = "";
md5name = "a8984e8b20880b621f61a62d95ff3c0763a3152093a9f9ce4287cfd614add6ae-curl-7.52.1.tar.gz";
md5name = "e9c37986337743f37fd14fe8737f246e97aec94b39d1b71e8a5973f72a9fc4f5-curl-7.60.0.tar.gz";
}
{
name = "libe-book-0.1.2.tar.bz2";
url = "http://dev-www.libreoffice.org/src/libe-book-0.1.2.tar.bz2";
sha256 = "b710a57c633205b933015474d0ac0862253d1c52114d535dd09b20939a0d1850";
name = "libe-book-0.1.3.tar.xz";
url = "http://dev-www.libreoffice.org/src/libe-book-0.1.3.tar.xz";
sha256 = "7e8d8ff34f27831aca3bc6f9cc532c2f90d2057c778963b884ff3d1e34dfe1f9";
md5 = "";
md5name = "b710a57c633205b933015474d0ac0862253d1c52114d535dd09b20939a0d1850-libe-book-0.1.2.tar.bz2";
md5name = "7e8d8ff34f27831aca3bc6f9cc532c2f90d2057c778963b884ff3d1e34dfe1f9-libe-book-0.1.3.tar.xz";
}
{
name = "libepoxy-1.3.1.tar.bz2";
@ -140,18 +133,25 @@
md5name = "3ade8cfe7e59ca8e65052644fed9fca4-epm-3.7.tar.gz";
}
{
name = "libetonyek-0.1.6.tar.bz2";
url = "http://dev-www.libreoffice.org/src/libetonyek-0.1.6.tar.bz2";
sha256 = "032f53e8d7691e48a73ddbe74fa84c906ff6ff32a33e6ee2a935b6fdb6aecb78";
name = "libepubgen-0.1.0.tar.bz2";
url = "http://dev-www.libreoffice.org/src/libepubgen-0.1.0.tar.bz2";
sha256 = "730bd1cbeee166334faadbc06c953a67b145c3c4754a3b503482066dae4cd633";
md5 = "";
md5name = "032f53e8d7691e48a73ddbe74fa84c906ff6ff32a33e6ee2a935b6fdb6aecb78-libetonyek-0.1.6.tar.bz2";
md5name = "730bd1cbeee166334faadbc06c953a67b145c3c4754a3b503482066dae4cd633-libepubgen-0.1.0.tar.bz2";
}
{
name = "expat-2.2.3.tar.bz2";
url = "http://dev-www.libreoffice.org/src/expat-2.2.3.tar.bz2";
sha256 = "b31890fb02f85c002a67491923f89bda5028a880fd6c374f707193ad81aace5f";
name = "libetonyek-0.1.7.tar.xz";
url = "http://dev-www.libreoffice.org/src/libetonyek-0.1.7.tar.xz";
sha256 = "69dbe10d4426d52f09060d489f8eb90dfa1df592e82eb0698d9dbaf38cc734ac";
md5 = "";
md5name = "b31890fb02f85c002a67491923f89bda5028a880fd6c374f707193ad81aace5f-expat-2.2.3.tar.bz2";
md5name = "69dbe10d4426d52f09060d489f8eb90dfa1df592e82eb0698d9dbaf38cc734ac-libetonyek-0.1.7.tar.xz";
}
{
name = "expat-2.2.5.tar.bz2";
url = "http://dev-www.libreoffice.org/src/expat-2.2.5.tar.bz2";
sha256 = "d9dc32efba7e74f788fcc4f212a43216fc37cf5f23f4c2339664d473353aedf6";
md5 = "";
md5name = "d9dc32efba7e74f788fcc4f212a43216fc37cf5f23f4c2339664d473353aedf6-expat-2.2.5.tar.bz2";
}
{
name = "Firebird-3.0.0.32483-0.tar.bz2";
@ -161,11 +161,11 @@
md5name = "6994be3555e23226630c587444be19d309b25b0fcf1f87df3b4e3f88943e5860-Firebird-3.0.0.32483-0.tar.bz2";
}
{
name = "fontconfig-2.12.1.tar.bz2";
url = "http://dev-www.libreoffice.org/src/fontconfig-2.12.1.tar.bz2";
sha256 = "b449a3e10c47e1d1c7a6ec6e2016cca73d3bd68fbbd4f0ae5cc6b573f7d6c7f3";
name = "fontconfig-2.12.6.tar.bz2";
url = "http://dev-www.libreoffice.org/src/fontconfig-2.12.6.tar.bz2";
sha256 = "cf0c30807d08f6a28ab46c61b8dbd55c97d2f292cf88f3a07d3384687f31f017";
md5 = "";
md5name = "b449a3e10c47e1d1c7a6ec6e2016cca73d3bd68fbbd4f0ae5cc6b573f7d6c7f3-fontconfig-2.12.1.tar.bz2";
md5name = "cf0c30807d08f6a28ab46c61b8dbd55c97d2f292cf88f3a07d3384687f31f017-fontconfig-2.12.6.tar.bz2";
}
{
name = "crosextrafonts-20130214.tar.gz";
@ -216,20 +216,6 @@
md5 = "e7a384790b13c29113e22e596ade9687";
md5name = "e7a384790b13c29113e22e596ade9687-LinLibertineG-20120116.zip";
}
{
name = "open-sans-font-ttf-1.10.tar.gz";
url = "http://dev-www.libreoffice.org/src/7a15edea7d415ac5150ea403e27401fd-open-sans-font-ttf-1.10.tar.gz";
sha256 = "cc80fd415e57ecec067339beadd0eef9eaa45e65d3c51a922ba5f9172779bfb8";
md5 = "7a15edea7d415ac5150ea403e27401fd";
md5name = "7a15edea7d415ac5150ea403e27401fd-open-sans-font-ttf-1.10.tar.gz";
}
{
name = "pt-serif-font-1.0000W.tar.gz";
url = "http://dev-www.libreoffice.org/src/c3c1a8ba7452950636e871d25020ce0d-pt-serif-font-1.0000W.tar.gz";
sha256 = "6757feb23f889a82df59679d02b8ee1f907df0a0ac1c49cdb48ed737b60e5dfa";
md5 = "c3c1a8ba7452950636e871d25020ce0d";
md5name = "c3c1a8ba7452950636e871d25020ce0d-pt-serif-font-1.0000W.tar.gz";
}
{
name = "source-code-pro-2.030R-ro-1.050R-it.tar.gz";
url = "http://dev-www.libreoffice.org/src/907d6e99f241876695c19ff3db0b8923-source-code-pro-2.030R-ro-1.050R-it.tar.gz";
@ -252,18 +238,74 @@
md5name = "d1a08f7c10589f22740231017694af0a7a270760c8dec33d8d1c038e2be0a0c7-EmojiOneColor-SVGinOT-1.3.tar.gz";
}
{
name = "libfreehand-0.1.1.tar.bz2";
url = "http://dev-www.libreoffice.org/src/libfreehand-0.1.1.tar.bz2";
sha256 = "45dab0e5d632eb51eeb00847972ca03835d6791149e9e714f093a9df2b445877";
name = "noto-fonts-20171024.tar.gz";
url = "http://dev-www.libreoffice.org/src/noto-fonts-20171024.tar.gz";
sha256 = "29acc15a4c4d6b51201ba5d60f303dfbc2e5acbfdb70413c9ae1ed34fa259994";
md5 = "";
md5name = "45dab0e5d632eb51eeb00847972ca03835d6791149e9e714f093a9df2b445877-libfreehand-0.1.1.tar.bz2";
md5name = "29acc15a4c4d6b51201ba5d60f303dfbc2e5acbfdb70413c9ae1ed34fa259994-noto-fonts-20171024.tar.gz";
}
{
name = "freetype-2.7.1.tar.bz2";
url = "http://dev-www.libreoffice.org/src/freetype-2.7.1.tar.bz2";
sha256 = "3a3bb2c4e15ffb433f2032f50a5b5a92558206822e22bfe8cbe339af4aa82f88";
name = "culmus-0.131.tar.gz";
url = "http://dev-www.libreoffice.org/src/culmus-0.131.tar.gz";
sha256 = "dcf112cfcccb76328dcfc095f4d7c7f4d2f7e48d0eed5e78b100d1d77ce2ed1b";
md5 = "";
md5name = "3a3bb2c4e15ffb433f2032f50a5b5a92558206822e22bfe8cbe339af4aa82f88-freetype-2.7.1.tar.bz2";
md5name = "dcf112cfcccb76328dcfc095f4d7c7f4d2f7e48d0eed5e78b100d1d77ce2ed1b-culmus-0.131.tar.gz";
}
{
name = "libre-hebrew-1.0.tar.gz";
url = "http://dev-www.libreoffice.org/src/libre-hebrew-1.0.tar.gz";
sha256 = "f596257c1db706ce35795b18d7f66a4db99d427725f20e9384914b534142579a";
md5 = "";
md5name = "f596257c1db706ce35795b18d7f66a4db99d427725f20e9384914b534142579a-libre-hebrew-1.0.tar.gz";
}
{
name = "alef-1.001.tar.gz";
url = "http://dev-www.libreoffice.org/src/alef-1.001.tar.gz";
sha256 = "b98b67602a2c8880a1770f0b9e37c190f29a7e2ade5616784f0b89fbdb75bf52";
md5 = "";
md5name = "b98b67602a2c8880a1770f0b9e37c190f29a7e2ade5616784f0b89fbdb75bf52-alef-1.001.tar.gz";
}
{
name = "amiri-0.109.zip";
url = "http://dev-www.libreoffice.org/src/amiri-0.109.zip";
sha256 = "97ee6e40d87f4b31de15d9a93bb30bf27bf308f0814f4ee9c47365b027402ad6";
md5 = "";
md5name = "97ee6e40d87f4b31de15d9a93bb30bf27bf308f0814f4ee9c47365b027402ad6-amiri-0.109.zip";
}
{
name = "ttf-kacst_2.01+mry.tar.gz";
url = "http://dev-www.libreoffice.org/src/ttf-kacst_2.01+mry.tar.gz";
sha256 = "dca00f5e655f2f217a766faa73a81f542c5c204aa3a47017c3c2be0b31d00a56";
md5 = "";
md5name = "dca00f5e655f2f217a766faa73a81f542c5c204aa3a47017c3c2be0b31d00a56-ttf-kacst_2.01+mry.tar.gz";
}
{
name = "ReemKufi-0.6.tar.gz";
url = "http://dev-www.libreoffice.org/src/ReemKufi-0.6.tar.gz";
sha256 = "4dfbd8b227ea062ca1742fb15d707f0b74398f9ddb231892554f0959048e809b";
md5 = "";
md5name = "4dfbd8b227ea062ca1742fb15d707f0b74398f9ddb231892554f0959048e809b-ReemKufi-0.6.tar.gz";
}
{
name = "Scheherazade-2.100.zip";
url = "http://dev-www.libreoffice.org/src/Scheherazade-2.100.zip";
sha256 = "251c8817ceb87d9b661ce1d5b49e732a0116add10abc046be4b8ba5196e149b5";
md5 = "";
md5name = "251c8817ceb87d9b661ce1d5b49e732a0116add10abc046be4b8ba5196e149b5-Scheherazade-2.100.zip";
}
{
name = "libfreehand-0.1.2.tar.xz";
url = "http://dev-www.libreoffice.org/src/libfreehand-0.1.2.tar.xz";
sha256 = "0e422d1564a6dbf22a9af598535425271e583514c0f7ba7d9091676420de34ac";
md5 = "";
md5name = "0e422d1564a6dbf22a9af598535425271e583514c0f7ba7d9091676420de34ac-libfreehand-0.1.2.tar.xz";
}
{
name = "freetype-2.8.1.tar.bz2";
url = "http://dev-www.libreoffice.org/src/freetype-2.8.1.tar.bz2";
sha256 = "e5435f02e02d2b87bb8e4efdcaa14b1f78c9cf3ab1ed80f94b6382fb6acc7d78";
md5 = "";
md5name = "e5435f02e02d2b87bb8e4efdcaa14b1f78c9cf3ab1ed80f94b6382fb6acc7d78-freetype-2.8.1.tar.bz2";
}
{
name = "glm-0.9.4.6-libreoffice.zip";
@ -273,11 +315,11 @@
md5name = "bae83fa5dc7f081768daace6e199adc3-glm-0.9.4.6-libreoffice.zip";
}
{
name = "gpgme-1.8.0.tar.bz2";
url = "http://dev-www.libreoffice.org/src/gpgme-1.8.0.tar.bz2";
sha256 = "596097257c2ce22e747741f8ff3d7e24f6e26231fa198a41b2a072e62d1e5d33";
name = "gpgme-1.9.0.tar.bz2";
url = "http://dev-www.libreoffice.org/src/gpgme-1.9.0.tar.bz2";
sha256 = "1b29fedb8bfad775e70eafac5b0590621683b2d9869db994568e6401f4034ceb";
md5 = "";
md5name = "596097257c2ce22e747741f8ff3d7e24f6e26231fa198a41b2a072e62d1e5d33-gpgme-1.8.0.tar.bz2";
md5name = "1b29fedb8bfad775e70eafac5b0590621683b2d9869db994568e6401f4034ceb-gpgme-1.9.0.tar.bz2";
}
{
name = "graphite2-minimal-1.3.10.tgz";
@ -287,11 +329,11 @@
md5name = "aa5e58356cd084000609ebbd93fef456a1bc0ab9e46fea20e81552fb286232a9-graphite2-minimal-1.3.10.tgz";
}
{
name = "harfbuzz-1.4.8.tar.bz2";
url = "http://dev-www.libreoffice.org/src/harfbuzz-1.4.8.tar.bz2";
sha256 = "ccec4930ff0bb2d0c40aee203075447954b64a8c2695202413cc5e428c907131";
name = "harfbuzz-1.7.0.tar.bz2";
url = "http://dev-www.libreoffice.org/src/harfbuzz-1.7.0.tar.bz2";
sha256 = "042742d6ec67bc6719b69cf38a3fba24fbd120e207e3fdc18530dc730fb6a029";
md5 = "";
md5name = "ccec4930ff0bb2d0c40aee203075447954b64a8c2695202413cc5e428c907131-harfbuzz-1.4.8.tar.bz2";
md5name = "042742d6ec67bc6719b69cf38a3fba24fbd120e207e3fdc18530dc730fb6a029-harfbuzz-1.7.0.tar.bz2";
}
{
name = "hsqldb_1_8_0.zip";
@ -301,11 +343,11 @@
md5name = "17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip";
}
{
name = "hunspell-1.6.0.tar.gz";
url = "http://dev-www.libreoffice.org/src/047c3feb121261b76dc16cdb62f54483-hunspell-1.6.0.tar.gz";
sha256 = "512e7d2ee69dad0b35ca011076405e56e0f10963a02d4859dbcc4faf53ca68e2";
md5 = "047c3feb121261b76dc16cdb62f54483";
md5name = "047c3feb121261b76dc16cdb62f54483-hunspell-1.6.0.tar.gz";
name = "hunspell-1.6.2.tar.gz";
url = "http://dev-www.libreoffice.org/src/hunspell-1.6.2.tar.gz";
sha256 = "3cd9ceb062fe5814f668e4f22b2fa6e3ba0b339b921739541ce180cac4d6f4c4";
md5 = "";
md5name = "3cd9ceb062fe5814f668e4f22b2fa6e3ba0b339b921739541ce180cac4d6f4c4-hunspell-1.6.2.tar.gz";
}
{
name = "hyphen-2.8.8.tar.gz";
@ -315,11 +357,18 @@
md5name = "5ade6ae2a99bc1e9e57031ca88d36dad-hyphen-2.8.8.tar.gz";
}
{
name = "icu4c-58_1-src.tgz";
url = "http://dev-www.libreoffice.org/src/1901302aaff1c1633ef81862663d2917-icu4c-58_1-src.tgz";
sha256 = "0eb46ba3746a9c2092c8ad347a29b1a1b4941144772d13a88667a7b11ea30309";
md5 = "1901302aaff1c1633ef81862663d2917";
md5name = "1901302aaff1c1633ef81862663d2917-icu4c-58_1-src.tgz";
name = "icu4c-60_2-src.tgz";
url = "http://dev-www.libreoffice.org/src/icu4c-60_2-src.tgz";
sha256 = "f073ea8f35b926d70bb33e6577508aa642a8b316a803f11be20af384811db418";
md5 = "";
md5name = "f073ea8f35b926d70bb33e6577508aa642a8b316a803f11be20af384811db418-icu4c-60_2-src.tgz";
}
{
name = "icu4c-60_2-data.zip";
url = "http://dev-www.libreoffice.org/src/icu4c-60_2-data.zip";
sha256 = "68f42ad0c9e0a5a5af8eba0577ba100833912288bad6e4d1f42ff480bbcfd4a9";
md5 = "";
md5name = "68f42ad0c9e0a5a5af8eba0577ba100833912288bad6e4d1f42ff480bbcfd4a9-icu4c-60_2-data.zip";
}
{
name = "flow-engine-0.9.4.zip";
@ -399,18 +448,18 @@
md5name = "39bb3fcea1514f1369fcfc87542390fd-sacjava-1.3.zip";
}
{
name = "libjpeg-turbo-1.5.1.tar.gz";
url = "http://dev-www.libreoffice.org/src/libjpeg-turbo-1.5.1.tar.gz";
sha256 = "41429d3d253017433f66e3d472b8c7d998491d2f41caa7306b8d9a6f2a2c666c";
name = "libjpeg-turbo-1.5.2.tar.gz";
url = "http://dev-www.libreoffice.org/src/libjpeg-turbo-1.5.2.tar.gz";
sha256 = "9098943b270388727ae61de82adec73cf9f0dbb240b3bc8b172595ebf405b528";
md5 = "";
md5name = "41429d3d253017433f66e3d472b8c7d998491d2f41caa7306b8d9a6f2a2c666c-libjpeg-turbo-1.5.1.tar.gz";
md5name = "9098943b270388727ae61de82adec73cf9f0dbb240b3bc8b172595ebf405b528-libjpeg-turbo-1.5.2.tar.gz";
}
{
name = "language-subtag-registry-2017-12-14.tar.bz2";
url = "http://dev-www.libreoffice.org/src/language-subtag-registry-2017-12-14.tar.bz2";
sha256 = "0f87b9428cbc2d96d8e4f54a07e3858b4a428e5fec9396bc3b52fb9f248be362";
name = "language-subtag-registry-2018-03-30.tar.bz2";
url = "http://dev-www.libreoffice.org/src/language-subtag-registry-2018-03-30.tar.bz2";
sha256 = "b7ad618b7db518155f00490a11b861496864f18b23b4b537eb80bfe84ca6f854";
md5 = "";
md5name = "0f87b9428cbc2d96d8e4f54a07e3858b4a428e5fec9396bc3b52fb9f248be362-language-subtag-registry-2017-12-14.tar.bz2";
md5name = "b7ad618b7db518155f00490a11b861496864f18b23b4b537eb80bfe84ca6f854-language-subtag-registry-2018-03-30.tar.bz2";
}
{
name = "JLanguageTool-1.7.0.tar.bz2";
@ -448,25 +497,18 @@
md5name = "cf5091fa8e7dcdbe667335eb90a2cfdd0a3fe8f8c7c8d1ece44d9d055736a06a-libeot-0.01.tar.bz2";
}
{
name = "libexttextcat-3.4.4.tar.bz2";
url = "http://dev-www.libreoffice.org/src/10d61fbaa6a06348823651b1bd7940fe-libexttextcat-3.4.4.tar.bz2";
sha256 = "9595601c41051356d03d0a7d5dcad334fe1b420d221f6885d143c14bb8d62163";
md5 = "10d61fbaa6a06348823651b1bd7940fe";
md5name = "10d61fbaa6a06348823651b1bd7940fe-libexttextcat-3.4.4.tar.bz2";
name = "libexttextcat-3.4.5.tar.xz";
url = "http://dev-www.libreoffice.org/src/libexttextcat-3.4.5.tar.xz";
sha256 = "13fdbc9d4c489a4d0519e51933a1aa21fe3fb9eb7da191b87f7a63e82797dac8";
md5 = "";
md5name = "13fdbc9d4c489a4d0519e51933a1aa21fe3fb9eb7da191b87f7a63e82797dac8-libexttextcat-3.4.5.tar.xz";
}
{
name = "libgltf-0.1.0.tar.gz";
url = "http://dev-www.libreoffice.org/src/libgltf/libgltf-0.1.0.tar.gz";
sha256 = "119e730fbf002dd0eaafa4930167267d7d910aa17f29979ca9ca8b66625fd2da";
name = "libgpg-error-1.27.tar.bz2";
url = "http://dev-www.libreoffice.org/src/libgpg-error-1.27.tar.bz2";
sha256 = "4f93aac6fecb7da2b92871bb9ee33032be6a87b174f54abf8ddf0911a22d29d2";
md5 = "";
md5name = "119e730fbf002dd0eaafa4930167267d7d910aa17f29979ca9ca8b66625fd2da-libgltf-0.1.0.tar.gz";
}
{
name = "libgpg-error-1.26.tar.bz2";
url = "http://dev-www.libreoffice.org/src/libgpg-error-1.26.tar.bz2";
sha256 = "4c4bcbc90116932e3acd37b37812d8653b1b189c1904985898e860af818aee69";
md5 = "";
md5name = "4c4bcbc90116932e3acd37b37812d8653b1b189c1904985898e860af818aee69-libgpg-error-1.26.tar.bz2";
md5name = "4f93aac6fecb7da2b92871bb9ee33032be6a87b174f54abf8ddf0911a22d29d2-libgpg-error-1.27.tar.bz2";
}
{
name = "liblangtag-0.6.2.tar.bz2";
@ -483,25 +525,25 @@
md5name = "083daa92d8ee6f4af96a6143b12d7fc8fe1a547e14f862304f7281f8f7347483-ltm-1.0.zip";
}
{
name = "xmlsec1-1.2.24.tar.gz";
url = "http://dev-www.libreoffice.org/src/xmlsec1-1.2.24.tar.gz";
sha256 = "99a8643f118bb1261a72162f83e2deba0f4f690893b4b90e1be4f708e8d481cc";
name = "xmlsec1-1.2.25.tar.gz";
url = "http://dev-www.libreoffice.org/src/xmlsec1-1.2.25.tar.gz";
sha256 = "967ca83edf25ccb5b48a3c4a09ad3405a63365576503bf34290a42de1b92fcd2";
md5 = "";
md5name = "99a8643f118bb1261a72162f83e2deba0f4f690893b4b90e1be4f708e8d481cc-xmlsec1-1.2.24.tar.gz";
md5name = "967ca83edf25ccb5b48a3c4a09ad3405a63365576503bf34290a42de1b92fcd2-xmlsec1-1.2.25.tar.gz";
}
{
name = "libxml2-2.9.4.tar.gz";
url = "http://dev-www.libreoffice.org/src/ae249165c173b1ff386ee8ad676815f5-libxml2-2.9.4.tar.gz";
sha256 = "ffb911191e509b966deb55de705387f14156e1a56b21824357cdf0053233633c";
md5 = "ae249165c173b1ff386ee8ad676815f5";
md5name = "ae249165c173b1ff386ee8ad676815f5-libxml2-2.9.4.tar.gz";
name = "libxml2-2.9.8.tar.gz";
url = "http://dev-www.libreoffice.org/src/libxml2-2.9.8.tar.gz";
sha256 = "0b74e51595654f958148759cfef0993114ddccccbb6f31aee018f3558e8e2732";
md5 = "";
md5name = "0b74e51595654f958148759cfef0993114ddccccbb6f31aee018f3558e8e2732-libxml2-2.9.8.tar.gz";
}
{
name = "libxslt-1.1.29.tar.gz";
url = "http://dev-www.libreoffice.org/src/a129d3c44c022de3b9dcf6d6f288d72e-libxslt-1.1.29.tar.gz";
sha256 = "b5976e3857837e7617b29f2249ebb5eeac34e249208d31f1fbf7a6ba7a4090ce";
md5 = "a129d3c44c022de3b9dcf6d6f288d72e";
md5name = "a129d3c44c022de3b9dcf6d6f288d72e-libxslt-1.1.29.tar.gz";
name = "libxslt-1.1.32.tar.gz";
url = "http://dev-www.libreoffice.org/src/libxslt-1.1.32.tar.gz";
sha256 = "526ecd0abaf4a7789041622c3950c0e7f2c4c8835471515fd77eec684a355460";
md5 = "";
md5name = "526ecd0abaf4a7789041622c3950c0e7f2c4c8835471515fd77eec684a355460-libxslt-1.1.32.tar.gz";
}
{
name = "lp_solve_5.5.tar.gz";
@ -518,11 +560,11 @@
md5name = "a233181e03d3c307668b4c722d881661-mariadb_client-2.0.0-src.tar.gz";
}
{
name = "mdds-1.2.2.tar.bz2";
url = "http://dev-www.libreoffice.org/src/mdds-1.2.2.tar.bz2";
sha256 = "141e730b39110434b02cd844c5ad3442103f7c35f7e9a4d6a9f8af813594cc9d";
name = "mdds-1.3.1.tar.bz2";
url = "http://dev-www.libreoffice.org/src/mdds-1.3.1.tar.bz2";
sha256 = "dcb8cd2425567a5a5ec164afea475bce57784bca3e352ad4cbdd3d1a7e08e5a1";
md5 = "";
md5name = "141e730b39110434b02cd844c5ad3442103f7c35f7e9a4d6a9f8af813594cc9d-mdds-1.2.2.tar.bz2";
md5name = "dcb8cd2425567a5a5ec164afea475bce57784bca3e352ad4cbdd3d1a7e08e5a1-mdds-1.3.1.tar.bz2";
}
{
name = "mDNSResponder-576.30.4.tar.gz";
@ -532,18 +574,18 @@
md5name = "4737cb51378377e11d0edb7bcdd1bec79cbdaa7b27ea09c13e3006e58f8d92c0-mDNSResponder-576.30.4.tar.gz";
}
{
name = "libmspub-0.1.2.tar.bz2";
url = "http://dev-www.libreoffice.org/src/libmspub-0.1.2.tar.bz2";
sha256 = "26d488527ffbb0b41686d4bab756e3e6aaeb99f88adeb169d0c16d2cde96859a";
name = "libmspub-0.1.3.tar.xz";
url = "http://dev-www.libreoffice.org/src/libmspub-0.1.3.tar.xz";
sha256 = "f0225f0ff03f6bec4847d7c2d8719a36cafc4b97a09e504b610372cc5b981c97";
md5 = "";
md5name = "26d488527ffbb0b41686d4bab756e3e6aaeb99f88adeb169d0c16d2cde96859a-libmspub-0.1.2.tar.bz2";
md5name = "f0225f0ff03f6bec4847d7c2d8719a36cafc4b97a09e504b610372cc5b981c97-libmspub-0.1.3.tar.xz";
}
{
name = "libmwaw-0.3.11.tar.xz";
url = "http://dev-www.libreoffice.org/src/libmwaw-0.3.11.tar.xz";
sha256 = "4b483a196bbe82bc0f7cb4cdf70ef1cedb91139bd2e037eabaed4a4d6ed2299a";
name = "libmwaw-0.3.13.tar.xz";
url = "http://dev-www.libreoffice.org/src/libmwaw-0.3.13.tar.xz";
sha256 = "db55c728448f9c795cd71a0bb6043f6d4744e3e001b955a018a2c634981d5aea";
md5 = "";
md5name = "4b483a196bbe82bc0f7cb4cdf70ef1cedb91139bd2e037eabaed4a4d6ed2299a-libmwaw-0.3.11.tar.xz";
md5name = "db55c728448f9c795cd71a0bb6043f6d4744e3e001b955a018a2c634981d5aea-libmwaw-0.3.13.tar.xz";
}
{
name = "mysql-connector-c++-1.1.4.tar.gz";
@ -560,18 +602,18 @@
md5name = "a8c2c5b8f09e7ede322d5c602ff6a4b6-mythes-1.2.4.tar.gz";
}
{
name = "neon-0.30.1.tar.gz";
url = "http://dev-www.libreoffice.org/src/231adebe5c2f78fded3e3df6e958878e-neon-0.30.1.tar.gz";
sha256 = "00c626c0dc18d094ab374dbd9a354915bfe4776433289386ed489c2ec0845cdd";
md5 = "231adebe5c2f78fded3e3df6e958878e";
md5name = "231adebe5c2f78fded3e3df6e958878e-neon-0.30.1.tar.gz";
name = "neon-0.30.2.tar.gz";
url = "http://dev-www.libreoffice.org/src/neon-0.30.2.tar.gz";
sha256 = "db0bd8cdec329b48f53a6f00199c92d5ba40b0f015b153718d1b15d3d967fbca";
md5 = "";
md5name = "db0bd8cdec329b48f53a6f00199c92d5ba40b0f015b153718d1b15d3d967fbca-neon-0.30.2.tar.gz";
}
{
name = "nss-3.29.5-with-nspr-4.13.1.tar.gz";
url = "http://dev-www.libreoffice.org/src/nss-3.29.5-with-nspr-4.13.1.tar.gz";
sha256 = "8cb8624147737d1b4587c50bf058afbb6effc0f3c205d69b5ef4077b3bfed0e4";
name = "nss-3.33-with-nspr-4.17.tar.gz";
url = "http://dev-www.libreoffice.org/src/nss-3.33-with-nspr-4.17.tar.gz";
sha256 = "878d505ec0be577c45990c57eb5d2e5c8696bfa3412bd0fae193b275297bf5c4";
md5 = "";
md5name = "8cb8624147737d1b4587c50bf058afbb6effc0f3c205d69b5ef4077b3bfed0e4-nss-3.29.5-with-nspr-4.13.1.tar.gz";
md5name = "878d505ec0be577c45990c57eb5d2e5c8696bfa3412bd0fae193b275297bf5c4-nss-3.33-with-nspr-4.17.tar.gz";
}
{
name = "libodfgen-0.1.6.tar.bz2";
@ -595,32 +637,25 @@
md5name = "8249374c274932a21846fa7629c2aa9b-officeotron-0.7.4-master.jar";
}
{
name = "OpenCOLLADA-master-6509aa13af.tar.bz2";
url = "http://dev-www.libreoffice.org/src/OpenCOLLADA-master-6509aa13af.tar.bz2";
sha256 = "8f25d429237cde289a448c82a0a830791354ccce5ee40d77535642e46367d6c4";
name = "openldap-2.4.45.tgz";
url = "http://dev-www.libreoffice.org/src/openldap-2.4.45.tgz";
sha256 = "cdd6cffdebcd95161a73305ec13fc7a78e9707b46ca9f84fb897cd5626df3824";
md5 = "";
md5name = "8f25d429237cde289a448c82a0a830791354ccce5ee40d77535642e46367d6c4-OpenCOLLADA-master-6509aa13af.tar.bz2";
md5name = "cdd6cffdebcd95161a73305ec13fc7a78e9707b46ca9f84fb897cd5626df3824-openldap-2.4.45.tgz";
}
{
name = "openldap-2.4.44.tgz";
url = "http://dev-www.libreoffice.org/src/openldap-2.4.44.tgz";
sha256 = "d7de6bf3c67009c95525dde3a0212cc110d0a70b92af2af8e3ee800e81b88400";
name = "openssl-1.0.2m.tar.gz";
url = "http://dev-www.libreoffice.org/src/openssl-1.0.2m.tar.gz";
sha256 = "8c6ff15ec6b319b50788f42c7abc2890c08ba5a1cdcd3810eb9092deada37b0f";
md5 = "";
md5name = "d7de6bf3c67009c95525dde3a0212cc110d0a70b92af2af8e3ee800e81b88400-openldap-2.4.44.tgz";
md5name = "8c6ff15ec6b319b50788f42c7abc2890c08ba5a1cdcd3810eb9092deada37b0f-openssl-1.0.2m.tar.gz";
}
{
name = "openssl-1.0.2k.tar.gz";
url = "http://dev-www.libreoffice.org/src/openssl-1.0.2k.tar.gz";
sha256 = "6b3977c61f2aedf0f96367dcfb5c6e578cf37e7b8d913b4ecb6643c3cb88d8c0";
name = "liborcus-0.13.3.tar.gz";
url = "http://dev-www.libreoffice.org/src/liborcus-0.13.3.tar.gz";
sha256 = "62e76de1fd3101e77118732b860354121b40a87bbb1ebfeb8203477fffac16e9";
md5 = "";
md5name = "6b3977c61f2aedf0f96367dcfb5c6e578cf37e7b8d913b4ecb6643c3cb88d8c0-openssl-1.0.2k.tar.gz";
}
{
name = "liborcus-0.12.1.tar.gz";
url = "http://dev-www.libreoffice.org/src/liborcus-0.12.1.tar.gz";
sha256 = "676b1fedd721f64489650f5e76d7f98b750439914d87cae505b8163d08447908";
md5 = "";
md5name = "676b1fedd721f64489650f5e76d7f98b750439914d87cae505b8163d08447908-liborcus-0.12.1.tar.gz";
md5name = "62e76de1fd3101e77118732b860354121b40a87bbb1ebfeb8203477fffac16e9-liborcus-0.13.3.tar.gz";
}
{
name = "owncloud-android-library-0.9.4-no-binary-deps.tar.gz";
@ -630,18 +665,18 @@
md5name = "b18b3e3ef7fae6a79b62f2bb43cc47a5346b6330f6a383dc4be34439aca5e9fb-owncloud-android-library-0.9.4-no-binary-deps.tar.gz";
}
{
name = "libpagemaker-0.0.3.tar.bz2";
url = "http://dev-www.libreoffice.org/src/libpagemaker-0.0.3.tar.bz2";
sha256 = "3b5de037692f8e156777a75e162f6b110fa24c01749e4a66d7eb83f364e52a33";
name = "libpagemaker-0.0.4.tar.xz";
url = "http://dev-www.libreoffice.org/src/libpagemaker-0.0.4.tar.xz";
sha256 = "66adacd705a7d19895e08eac46d1e851332adf2e736c566bef1164e7a442519d";
md5 = "";
md5name = "3b5de037692f8e156777a75e162f6b110fa24c01749e4a66d7eb83f364e52a33-libpagemaker-0.0.3.tar.bz2";
md5name = "66adacd705a7d19895e08eac46d1e851332adf2e736c566bef1164e7a442519d-libpagemaker-0.0.4.tar.xz";
}
{
name = "pdfium-3064.tar.bz2";
url = "http://dev-www.libreoffice.org/src/pdfium-3064.tar.bz2";
sha256 = "ded806dc9e2a4005d8c0a6b7fcb232ab36221d72d9ff5b815e8244987299d883";
name = "pdfium-3235.tar.bz2";
url = "http://dev-www.libreoffice.org/src/pdfium-3235.tar.bz2";
sha256 = "7dc0d33fc24b1612865f5e173d48800ba3f2db891c57e3f92b9d2ce56ffeb72f";
md5 = "";
md5name = "ded806dc9e2a4005d8c0a6b7fcb232ab36221d72d9ff5b815e8244987299d883-pdfium-3064.tar.bz2";
md5name = "7dc0d33fc24b1612865f5e173d48800ba3f2db891c57e3f92b9d2ce56ffeb72f-pdfium-3235.tar.bz2";
}
{
name = "pixman-0.34.0.tar.gz";
@ -651,18 +686,18 @@
md5name = "e80ebae4da01e77f68744319f01d52a3-pixman-0.34.0.tar.gz";
}
{
name = "libpng-1.6.28.tar.gz";
url = "http://dev-www.libreoffice.org/src/libpng-1.6.28.tar.gz";
sha256 = "b6cec903e74e9fdd7b5bbcde0ab2415dd12f2f9e84d9e4d9ddd2ba26a41623b2";
name = "libpng-1.6.34.tar.xz";
url = "http://dev-www.libreoffice.org/src/libpng-1.6.34.tar.xz";
sha256 = "2f1e960d92ce3b3abd03d06dfec9637dfbd22febf107a536b44f7a47c60659f6";
md5 = "";
md5name = "b6cec903e74e9fdd7b5bbcde0ab2415dd12f2f9e84d9e4d9ddd2ba26a41623b2-libpng-1.6.28.tar.gz";
md5name = "2f1e960d92ce3b3abd03d06dfec9637dfbd22febf107a536b44f7a47c60659f6-libpng-1.6.34.tar.xz";
}
{
name = "poppler-0.56.0.tar.xz";
url = "http://dev-www.libreoffice.org/src/poppler-0.56.0.tar.xz";
sha256 = "869dbadf99ed882e776acbdbc06689d8a81872a2963440b1e8516cd7a2577173";
name = "poppler-0.66.0.tar.xz";
url = "http://dev-www.libreoffice.org/src/poppler-0.66.0.tar.xz";
sha256 = "2c096431adfb74bc2f53be466889b7646e1b599f28fa036094f3f7235cc9eae7";
md5 = "";
md5name = "869dbadf99ed882e776acbdbc06689d8a81872a2963440b1e8516cd7a2577173-poppler-0.56.0.tar.xz";
md5name = "2c096431adfb74bc2f53be466889b7646e1b599f28fa036094f3f7235cc9eae7-poppler-0.66.0.tar.xz";
}
{
name = "postgresql-9.2.1.tar.bz2";
@ -672,11 +707,18 @@
md5name = "c0b4799ea9850eae3ead14f0a60e9418-postgresql-9.2.1.tar.bz2";
}
{
name = "Python-3.5.4.tgz";
url = "http://dev-www.libreoffice.org/src/Python-3.5.4.tgz";
sha256 = "6ed87a8b6c758cc3299a8b433e8a9a9122054ad5bc8aad43299cff3a53d8ca44";
name = "Python-3.5.5.tar.xz";
url = "http://dev-www.libreoffice.org/src/Python-3.5.5.tar.xz";
sha256 = "063d2c3b0402d6191b90731e0f735c64830e7522348aeb7ed382a83165d45009";
md5 = "";
md5name = "6ed87a8b6c758cc3299a8b433e8a9a9122054ad5bc8aad43299cff3a53d8ca44-Python-3.5.4.tgz";
md5name = "063d2c3b0402d6191b90731e0f735c64830e7522348aeb7ed382a83165d45009-Python-3.5.5.tar.xz";
}
{
name = "libqxp-0.0.1.tar.xz";
url = "http://dev-www.libreoffice.org/src/libqxp-0.0.1.tar.xz";
sha256 = "8c257f6184ff94aefa7c9fa1cfae82083d55a49247266905c71c53e013f95c73";
md5 = "";
md5name = "8c257f6184ff94aefa7c9fa1cfae82083d55a49247266905c71c53e013f95c73-libqxp-0.0.1.tar.xz";
}
{
name = "raptor2-2.0.15.tar.gz";
@ -721,11 +763,11 @@
md5name = "6988d394b62c3494635b6f0760bc3079f9a0cd380baf0f6b075af1eb9fa5e700-serf-1.2.1.tar.bz2";
}
{
name = "libstaroffice-0.0.3.tar.xz";
url = "http://dev-www.libreoffice.org/src/libstaroffice-0.0.3.tar.xz";
sha256 = "bedeec104b4cc3896b3dfd1976dda5ce7392d1942bf8f5d2f7d796cc47e422c6";
name = "libstaroffice-0.0.5.tar.xz";
url = "http://dev-www.libreoffice.org/src/libstaroffice-0.0.5.tar.xz";
sha256 = "315507add58068aa6d5c437e7c2a6fd1abe684515915152c6cf338fc588da982";
md5 = "";
md5name = "bedeec104b4cc3896b3dfd1976dda5ce7392d1942bf8f5d2f7d796cc47e422c6-libstaroffice-0.0.3.tar.xz";
md5name = "315507add58068aa6d5c437e7c2a6fd1abe684515915152c6cf338fc588da982-libstaroffice-0.0.5.tar.xz";
}
{
name = "swingExSrc.zip";
@ -742,32 +784,32 @@
md5name = "0168229624cfac409e766913506961a8-ucpp-1.3.2.tar.gz";
}
{
name = "libvisio-0.1.5.tar.bz2";
url = "http://dev-www.libreoffice.org/src/libvisio-0.1.5.tar.bz2";
sha256 = "b83b7991a40b4e7f07d0cac7bb46ddfac84dece705fd18e21bfd119a09be458e";
name = "libvisio-0.1.6.tar.xz";
url = "http://dev-www.libreoffice.org/src/libvisio-0.1.6.tar.xz";
sha256 = "fe1002d3671d53c09bc65e47ec948ec7b67e6fb112ed1cd10966e211a8bb50f9";
md5 = "";
md5name = "b83b7991a40b4e7f07d0cac7bb46ddfac84dece705fd18e21bfd119a09be458e-libvisio-0.1.5.tar.bz2";
md5name = "fe1002d3671d53c09bc65e47ec948ec7b67e6fb112ed1cd10966e211a8bb50f9-libvisio-0.1.6.tar.xz";
}
{
name = "libwpd-0.10.1.tar.bz2";
url = "http://dev-www.libreoffice.org/src/libwpd-0.10.1.tar.bz2";
sha256 = "efc20361d6e43f9ff74de5f4d86c2ce9c677693f5da08b0a88d603b7475a508d";
name = "libwpd-0.10.2.tar.xz";
url = "http://dev-www.libreoffice.org/src/libwpd-0.10.2.tar.xz";
sha256 = "323f68beaf4f35e5a4d7daffb4703d0566698280109210fa4eaa90dea27d6610";
md5 = "";
md5name = "efc20361d6e43f9ff74de5f4d86c2ce9c677693f5da08b0a88d603b7475a508d-libwpd-0.10.1.tar.bz2";
md5name = "323f68beaf4f35e5a4d7daffb4703d0566698280109210fa4eaa90dea27d6610-libwpd-0.10.2.tar.xz";
}
{
name = "libwpg-0.3.1.tar.bz2";
url = "http://dev-www.libreoffice.org/src/libwpg-0.3.1.tar.bz2";
sha256 = "29049b95895914e680390717a243b291448e76e0f82fb4d2479adee5330fbb59";
name = "libwpg-0.3.2.tar.xz";
url = "http://dev-www.libreoffice.org/src/libwpg-0.3.2.tar.xz";
sha256 = "57faf1ab97d63d57383ac5d7875e992a3d190436732f4083310c0471e72f8c33";
md5 = "";
md5name = "29049b95895914e680390717a243b291448e76e0f82fb4d2479adee5330fbb59-libwpg-0.3.1.tar.bz2";
md5name = "57faf1ab97d63d57383ac5d7875e992a3d190436732f4083310c0471e72f8c33-libwpg-0.3.2.tar.xz";
}
{
name = "libwps-0.4.6.tar.xz";
url = "http://dev-www.libreoffice.org/src/libwps-0.4.6.tar.xz";
sha256 = "e48a7c2fd20048a0a8eaf69bad972575f8b9f06e7497c787463f127d332fccd0";
name = "libwps-0.4.8.tar.xz";
url = "http://dev-www.libreoffice.org/src/libwps-0.4.8.tar.xz";
sha256 = "e478e825ef33f6a434a19ff902c5469c9da7acc866ea0d8ab610a8b2aa94177e";
md5 = "";
md5name = "e48a7c2fd20048a0a8eaf69bad972575f8b9f06e7497c787463f127d332fccd0-libwps-0.4.6.tar.xz";
md5name = "e478e825ef33f6a434a19ff902c5469c9da7acc866ea0d8ab610a8b2aa94177e-libwps-0.4.8.tar.xz";
}
{
name = "xsltml_2.1.2.zip";
@ -784,10 +826,10 @@
md5name = "4ff941449631ace0d4d203e3483be9dbc9da454084111f97ea0a2114e19bf066-zlib-1.2.11.tar.xz";
}
{
name = "libzmf-0.0.1.tar.bz2";
url = "http://dev-www.libreoffice.org/src/libzmf-0.0.1.tar.bz2";
sha256 = "b69f7f6e94cf695c4b672ca65def4825490a1e7dee34c2126309b96d21a19e6b";
name = "libzmf-0.0.2.tar.xz";
url = "http://dev-www.libreoffice.org/src/libzmf-0.0.2.tar.xz";
sha256 = "27051a30cb057fdb5d5de65a1f165c7153dc76e27fe62251cbb86639eb2caf22";
md5 = "";
md5name = "b69f7f6e94cf695c4b672ca65def4825490a1e7dee34c2126309b96d21a19e6b-libzmf-0.0.1.tar.bz2";
md5name = "27051a30cb057fdb5d5de65a1f165c7153dc76e27fe62251cbb86639eb2caf22-libzmf-0.0.2.tar.xz";
}
]

View File

@ -28,11 +28,11 @@
md5name = "976a12a59bc286d634a21d7be0841cc74289ea9077aa1af46be19d1a6e844c19-apr-util-1.5.4.tar.gz";
}
{
name = "boost_1_65_1.tar.bz2";
url = "http://dev-www.libreoffice.org/src/boost_1_65_1.tar.bz2";
sha256 = "9807a5d16566c57fd74fb522764e0b134a8bbe6b6e8967b83afefd30dcd3be81";
name = "boost_1_66_0.tar.bz2";
url = "http://dev-www.libreoffice.org/src/boost_1_66_0.tar.bz2";
sha256 = "5721818253e6a0989583192f96782c4a98eb6204965316df9f5ad75819225ca9";
md5 = "";
md5name = "9807a5d16566c57fd74fb522764e0b134a8bbe6b6e8967b83afefd30dcd3be81-boost_1_65_1.tar.bz2";
md5name = "5721818253e6a0989583192f96782c4a98eb6204965316df9f5ad75819225ca9-boost_1_66_0.tar.bz2";
}
{
name = "breakpad.zip";
@ -133,18 +133,18 @@
md5name = "3ade8cfe7e59ca8e65052644fed9fca4-epm-3.7.tar.gz";
}
{
name = "libepubgen-0.1.0.tar.bz2";
url = "http://dev-www.libreoffice.org/src/libepubgen-0.1.0.tar.bz2";
sha256 = "730bd1cbeee166334faadbc06c953a67b145c3c4754a3b503482066dae4cd633";
name = "libepubgen-0.1.1.tar.xz";
url = "http://dev-www.libreoffice.org/src/libepubgen-0.1.1.tar.xz";
sha256 = "03e084b994cbeffc8c3dd13303b2cb805f44d8f2c3b79f7690d7e3fc7f6215ad";
md5 = "";
md5name = "730bd1cbeee166334faadbc06c953a67b145c3c4754a3b503482066dae4cd633-libepubgen-0.1.0.tar.bz2";
md5name = "03e084b994cbeffc8c3dd13303b2cb805f44d8f2c3b79f7690d7e3fc7f6215ad-libepubgen-0.1.1.tar.xz";
}
{
name = "libetonyek-0.1.7.tar.xz";
url = "http://dev-www.libreoffice.org/src/libetonyek-0.1.7.tar.xz";
sha256 = "69dbe10d4426d52f09060d489f8eb90dfa1df592e82eb0698d9dbaf38cc734ac";
name = "libetonyek-0.1.8.tar.xz";
url = "http://dev-www.libreoffice.org/src/libetonyek-0.1.8.tar.xz";
sha256 = "9dc92347aee0cc9ed57b175a3e21f9d96ebe55d30fecb10e841d1050794ed82d";
md5 = "";
md5name = "69dbe10d4426d52f09060d489f8eb90dfa1df592e82eb0698d9dbaf38cc734ac-libetonyek-0.1.7.tar.xz";
md5name = "9dc92347aee0cc9ed57b175a3e21f9d96ebe55d30fecb10e841d1050794ed82d-libetonyek-0.1.8.tar.xz";
}
{
name = "expat-2.2.5.tar.bz2";
@ -266,11 +266,11 @@
md5name = "b98b67602a2c8880a1770f0b9e37c190f29a7e2ade5616784f0b89fbdb75bf52-alef-1.001.tar.gz";
}
{
name = "amiri-0.109.zip";
url = "http://dev-www.libreoffice.org/src/amiri-0.109.zip";
sha256 = "97ee6e40d87f4b31de15d9a93bb30bf27bf308f0814f4ee9c47365b027402ad6";
name = "Amiri-0.111.zip";
url = "http://dev-www.libreoffice.org/src/Amiri-0.111.zip";
sha256 = "1fbfccced6348b5db2c1c21d5b319cd488e14d055702fa817a0f6cb83d882166";
md5 = "";
md5name = "97ee6e40d87f4b31de15d9a93bb30bf27bf308f0814f4ee9c47365b027402ad6-amiri-0.109.zip";
md5name = "1fbfccced6348b5db2c1c21d5b319cd488e14d055702fa817a0f6cb83d882166-Amiri-0.111.zip";
}
{
name = "ttf-kacst_2.01+mry.tar.gz";
@ -280,11 +280,11 @@
md5name = "dca00f5e655f2f217a766faa73a81f542c5c204aa3a47017c3c2be0b31d00a56-ttf-kacst_2.01+mry.tar.gz";
}
{
name = "ReemKufi-0.6.tar.gz";
url = "http://dev-www.libreoffice.org/src/ReemKufi-0.6.tar.gz";
sha256 = "4dfbd8b227ea062ca1742fb15d707f0b74398f9ddb231892554f0959048e809b";
name = "ReemKufi-0.7.zip";
url = "http://dev-www.libreoffice.org/src/ReemKufi-0.7.zip";
sha256 = "f60c6508d209ce4236d2d7324256c2ffddd480be7e3d6023770b93dc391a605f";
md5 = "";
md5name = "4dfbd8b227ea062ca1742fb15d707f0b74398f9ddb231892554f0959048e809b-ReemKufi-0.6.tar.gz";
md5name = "f60c6508d209ce4236d2d7324256c2ffddd480be7e3d6023770b93dc391a605f-ReemKufi-0.7.zip";
}
{
name = "Scheherazade-2.100.zip";
@ -329,11 +329,11 @@
md5name = "aa5e58356cd084000609ebbd93fef456a1bc0ab9e46fea20e81552fb286232a9-graphite2-minimal-1.3.10.tgz";
}
{
name = "harfbuzz-1.7.0.tar.bz2";
url = "http://dev-www.libreoffice.org/src/harfbuzz-1.7.0.tar.bz2";
sha256 = "042742d6ec67bc6719b69cf38a3fba24fbd120e207e3fdc18530dc730fb6a029";
name = "harfbuzz-1.7.4.tar.bz2";
url = "http://dev-www.libreoffice.org/src/harfbuzz-1.7.4.tar.bz2";
sha256 = "b5d6ac8415f97f3540d73f3f91c41c5c10f8a4d76350f11a7184062aae88ac0b";
md5 = "";
md5name = "042742d6ec67bc6719b69cf38a3fba24fbd120e207e3fdc18530dc730fb6a029-harfbuzz-1.7.0.tar.bz2";
md5name = "b5d6ac8415f97f3540d73f3f91c41c5c10f8a4d76350f11a7184062aae88ac0b-harfbuzz-1.7.4.tar.bz2";
}
{
name = "hsqldb_1_8_0.zip";
@ -357,18 +357,18 @@
md5name = "5ade6ae2a99bc1e9e57031ca88d36dad-hyphen-2.8.8.tar.gz";
}
{
name = "icu4c-60_2-src.tgz";
url = "http://dev-www.libreoffice.org/src/icu4c-60_2-src.tgz";
sha256 = "f073ea8f35b926d70bb33e6577508aa642a8b316a803f11be20af384811db418";
name = "icu4c-61_1-src.tgz";
url = "http://dev-www.libreoffice.org/src/icu4c-61_1-src.tgz";
sha256 = "d007f89ae8a2543a53525c74359b65b36412fa84b3349f1400be6dcf409fafef";
md5 = "";
md5name = "f073ea8f35b926d70bb33e6577508aa642a8b316a803f11be20af384811db418-icu4c-60_2-src.tgz";
md5name = "d007f89ae8a2543a53525c74359b65b36412fa84b3349f1400be6dcf409fafef-icu4c-61_1-src.tgz";
}
{
name = "icu4c-60_2-data.zip";
url = "http://dev-www.libreoffice.org/src/icu4c-60_2-data.zip";
sha256 = "68f42ad0c9e0a5a5af8eba0577ba100833912288bad6e4d1f42ff480bbcfd4a9";
name = "icu4c-61_1-data.zip";
url = "http://dev-www.libreoffice.org/src/icu4c-61_1-data.zip";
sha256 = "d149ed0985b5a6e16a9d8ed66f105dd58fd334c276779f74241cfa656ed2830a";
md5 = "";
md5name = "68f42ad0c9e0a5a5af8eba0577ba100833912288bad6e4d1f42ff480bbcfd4a9-icu4c-60_2-data.zip";
md5name = "d149ed0985b5a6e16a9d8ed66f105dd58fd334c276779f74241cfa656ed2830a-icu4c-61_1-data.zip";
}
{
name = "flow-engine-0.9.4.zip";
@ -455,11 +455,11 @@
md5name = "9098943b270388727ae61de82adec73cf9f0dbb240b3bc8b172595ebf405b528-libjpeg-turbo-1.5.2.tar.gz";
}
{
name = "language-subtag-registry-2018-03-30.tar.bz2";
url = "http://dev-www.libreoffice.org/src/language-subtag-registry-2018-03-30.tar.bz2";
sha256 = "b7ad618b7db518155f00490a11b861496864f18b23b4b537eb80bfe84ca6f854";
name = "language-subtag-registry-2018-04-23.tar.bz2";
url = "http://dev-www.libreoffice.org/src/language-subtag-registry-2018-04-23.tar.bz2";
sha256 = "14c21f4533ca74e3af9e09184d6756a750d0cd46099015ba8c595e48499aa878";
md5 = "";
md5name = "b7ad618b7db518155f00490a11b861496864f18b23b4b537eb80bfe84ca6f854-language-subtag-registry-2018-03-30.tar.bz2";
md5name = "14c21f4533ca74e3af9e09184d6756a750d0cd46099015ba8c595e48499aa878-language-subtag-registry-2018-04-23.tar.bz2";
}
{
name = "JLanguageTool-1.7.0.tar.bz2";
@ -476,11 +476,11 @@
md5name = "66d02b229d2ea9474e62c2b6cd6720fde946155cd1d0d2bffdab829790a0fb22-lcms2-2.8.tar.gz";
}
{
name = "libassuan-2.4.3.tar.bz2";
url = "http://dev-www.libreoffice.org/src/libassuan-2.4.3.tar.bz2";
sha256 = "22843a3bdb256f59be49842abf24da76700354293a066d82ade8134bb5aa2b71";
name = "libassuan-2.5.1.tar.bz2";
url = "http://dev-www.libreoffice.org/src/libassuan-2.5.1.tar.bz2";
sha256 = "47f96c37b4f2aac289f0bc1bacfa8bd8b4b209a488d3d15e2229cb6cc9b26449";
md5 = "";
md5name = "22843a3bdb256f59be49842abf24da76700354293a066d82ade8134bb5aa2b71-libassuan-2.4.3.tar.bz2";
md5name = "47f96c37b4f2aac289f0bc1bacfa8bd8b4b209a488d3d15e2229cb6cc9b26449-libassuan-2.5.1.tar.bz2";
}
{
name = "libatomic_ops-7_2d.zip";
@ -517,6 +517,13 @@
md5 = "";
md5name = "d6242790324f1432fb0a6fae71b6851f520b2c5a87675497cf8ea14c2924d52e-liblangtag-0.6.2.tar.bz2";
}
{
name = "libnumbertext-1.0.4.tar.xz";
url = "http://dev-www.libreoffice.org/src/libnumbertext-1.0.4.tar.xz";
sha256 = "349258f4c3a8b090893e847b978b22e8dc1343d4ada3bfba811b97144f1dd67b";
md5 = "";
md5name = "349258f4c3a8b090893e847b978b22e8dc1343d4ada3bfba811b97144f1dd67b-libnumbertext-1.0.4.tar.xz";
}
{
name = "ltm-1.0.zip";
url = "http://dev-www.libreoffice.org/src/ltm-1.0.zip";
@ -552,6 +559,13 @@
md5 = "26b3e95ddf3d9c077c480ea45874b3b8";
md5name = "26b3e95ddf3d9c077c480ea45874b3b8-lp_solve_5.5.tar.gz";
}
{
name = "lxml-4.1.1.tgz";
url = "http://dev-www.libreoffice.org/src/lxml-4.1.1.tgz";
sha256 = "940caef1ec7c78e0c34b0f6b94fe42d0f2022915ffc78643d28538a5cfd0f40e";
md5 = "";
md5name = "940caef1ec7c78e0c34b0f6b94fe42d0f2022915ffc78643d28538a5cfd0f40e-lxml-4.1.1.tgz";
}
{
name = "mariadb_client-2.0.0-src.tar.gz";
url = "http://dev-www.libreoffice.org/src/a233181e03d3c307668b4c722d881661-mariadb_client-2.0.0-src.tar.gz";
@ -574,18 +588,18 @@
md5name = "4737cb51378377e11d0edb7bcdd1bec79cbdaa7b27ea09c13e3006e58f8d92c0-mDNSResponder-576.30.4.tar.gz";
}
{
name = "libmspub-0.1.3.tar.xz";
url = "http://dev-www.libreoffice.org/src/libmspub-0.1.3.tar.xz";
sha256 = "f0225f0ff03f6bec4847d7c2d8719a36cafc4b97a09e504b610372cc5b981c97";
name = "libmspub-0.1.4.tar.xz";
url = "http://dev-www.libreoffice.org/src/libmspub-0.1.4.tar.xz";
sha256 = "ef36c1a1aabb2ba3b0bedaaafe717bf4480be2ba8de6f3894be5fd3702b013ba";
md5 = "";
md5name = "f0225f0ff03f6bec4847d7c2d8719a36cafc4b97a09e504b610372cc5b981c97-libmspub-0.1.3.tar.xz";
md5name = "ef36c1a1aabb2ba3b0bedaaafe717bf4480be2ba8de6f3894be5fd3702b013ba-libmspub-0.1.4.tar.xz";
}
{
name = "libmwaw-0.3.13.tar.xz";
url = "http://dev-www.libreoffice.org/src/libmwaw-0.3.13.tar.xz";
sha256 = "db55c728448f9c795cd71a0bb6043f6d4744e3e001b955a018a2c634981d5aea";
name = "libmwaw-0.3.14.tar.xz";
url = "http://dev-www.libreoffice.org/src/libmwaw-0.3.14.tar.xz";
sha256 = "aca8bf1ce55ed83adbea82c70d4c8bebe8139f334b3481bf5a6e407f91f33ce9";
md5 = "";
md5name = "db55c728448f9c795cd71a0bb6043f6d4744e3e001b955a018a2c634981d5aea-libmwaw-0.3.13.tar.xz";
md5name = "aca8bf1ce55ed83adbea82c70d4c8bebe8139f334b3481bf5a6e407f91f33ce9-libmwaw-0.3.14.tar.xz";
}
{
name = "mysql-connector-c++-1.1.4.tar.gz";
@ -644,18 +658,18 @@
md5name = "cdd6cffdebcd95161a73305ec13fc7a78e9707b46ca9f84fb897cd5626df3824-openldap-2.4.45.tgz";
}
{
name = "openssl-1.0.2m.tar.gz";
url = "http://dev-www.libreoffice.org/src/openssl-1.0.2m.tar.gz";
sha256 = "8c6ff15ec6b319b50788f42c7abc2890c08ba5a1cdcd3810eb9092deada37b0f";
name = "openssl-1.0.2o.tar.gz";
url = "http://dev-www.libreoffice.org/src/openssl-1.0.2o.tar.gz";
sha256 = "ec3f5c9714ba0fd45cb4e087301eb1336c317e0d20b575a125050470e8089e4d";
md5 = "";
md5name = "8c6ff15ec6b319b50788f42c7abc2890c08ba5a1cdcd3810eb9092deada37b0f-openssl-1.0.2m.tar.gz";
md5name = "ec3f5c9714ba0fd45cb4e087301eb1336c317e0d20b575a125050470e8089e4d-openssl-1.0.2o.tar.gz";
}
{
name = "liborcus-0.13.3.tar.gz";
url = "http://dev-www.libreoffice.org/src/liborcus-0.13.3.tar.gz";
sha256 = "62e76de1fd3101e77118732b860354121b40a87bbb1ebfeb8203477fffac16e9";
name = "liborcus-0.13.4.tar.gz";
url = "http://dev-www.libreoffice.org/src/liborcus-0.13.4.tar.gz";
sha256 = "bc01b1b3e9091416f498840d3c19a1aa2704b448100e7f6b80eefe88aab06d5b";
md5 = "";
md5name = "62e76de1fd3101e77118732b860354121b40a87bbb1ebfeb8203477fffac16e9-liborcus-0.13.3.tar.gz";
md5name = "bc01b1b3e9091416f498840d3c19a1aa2704b448100e7f6b80eefe88aab06d5b-liborcus-0.13.4.tar.gz";
}
{
name = "owncloud-android-library-0.9.4-no-binary-deps.tar.gz";
@ -672,11 +686,11 @@
md5name = "66adacd705a7d19895e08eac46d1e851332adf2e736c566bef1164e7a442519d-libpagemaker-0.0.4.tar.xz";
}
{
name = "pdfium-3235.tar.bz2";
url = "http://dev-www.libreoffice.org/src/pdfium-3235.tar.bz2";
sha256 = "7dc0d33fc24b1612865f5e173d48800ba3f2db891c57e3f92b9d2ce56ffeb72f";
name = "pdfium-3426.tar.bz2";
url = "http://dev-www.libreoffice.org/src/pdfium-3426.tar.bz2";
sha256 = "80331b48166501a192d65476932f17044eeb5f10faa6ea50f4f175169475c957";
md5 = "";
md5name = "7dc0d33fc24b1612865f5e173d48800ba3f2db891c57e3f92b9d2ce56ffeb72f-pdfium-3235.tar.bz2";
md5name = "80331b48166501a192d65476932f17044eeb5f10faa6ea50f4f175169475c957-pdfium-3426.tar.bz2";
}
{
name = "pixman-0.34.0.tar.gz";
@ -693,11 +707,11 @@
md5name = "2f1e960d92ce3b3abd03d06dfec9637dfbd22febf107a536b44f7a47c60659f6-libpng-1.6.34.tar.xz";
}
{
name = "poppler-0.59.0.tar.xz";
url = "http://dev-www.libreoffice.org/src/poppler-0.59.0.tar.xz";
sha256 = "a3d626b24cd14efa9864e12584b22c9c32f51c46417d7c10ca17651f297c9641";
name = "poppler-0.66.0.tar.xz";
url = "http://dev-www.libreoffice.org/src/poppler-0.66.0.tar.xz";
sha256 = "2c096431adfb74bc2f53be466889b7646e1b599f28fa036094f3f7235cc9eae7";
md5 = "";
md5name = "a3d626b24cd14efa9864e12584b22c9c32f51c46417d7c10ca17651f297c9641-poppler-0.59.0.tar.xz";
md5name = "2c096431adfb74bc2f53be466889b7646e1b599f28fa036094f3f7235cc9eae7-poppler-0.66.0.tar.xz";
}
{
name = "postgresql-9.2.1.tar.bz2";
@ -707,11 +721,11 @@
md5name = "c0b4799ea9850eae3ead14f0a60e9418-postgresql-9.2.1.tar.bz2";
}
{
name = "Python-3.5.4.tgz";
url = "http://dev-www.libreoffice.org/src/Python-3.5.4.tgz";
sha256 = "6ed87a8b6c758cc3299a8b433e8a9a9122054ad5bc8aad43299cff3a53d8ca44";
name = "Python-3.5.5.tar.xz";
url = "http://dev-www.libreoffice.org/src/Python-3.5.5.tar.xz";
sha256 = "063d2c3b0402d6191b90731e0f735c64830e7522348aeb7ed382a83165d45009";
md5 = "";
md5name = "6ed87a8b6c758cc3299a8b433e8a9a9122054ad5bc8aad43299cff3a53d8ca44-Python-3.5.4.tgz";
md5name = "063d2c3b0402d6191b90731e0f735c64830e7522348aeb7ed382a83165d45009-Python-3.5.5.tar.xz";
}
{
name = "libqxp-0.0.1.tar.xz";
@ -763,11 +777,11 @@
md5name = "6988d394b62c3494635b6f0760bc3079f9a0cd380baf0f6b075af1eb9fa5e700-serf-1.2.1.tar.bz2";
}
{
name = "libstaroffice-0.0.5.tar.xz";
url = "http://dev-www.libreoffice.org/src/libstaroffice-0.0.5.tar.xz";
sha256 = "315507add58068aa6d5c437e7c2a6fd1abe684515915152c6cf338fc588da982";
name = "libstaroffice-0.0.6.tar.xz";
url = "http://dev-www.libreoffice.org/src/libstaroffice-0.0.6.tar.xz";
sha256 = "6b00e1ed8194e6072be4441025d1b888e39365727ed5b23e0e8c92c4009d1ec4";
md5 = "";
md5name = "315507add58068aa6d5c437e7c2a6fd1abe684515915152c6cf338fc588da982-libstaroffice-0.0.5.tar.xz";
md5name = "6b00e1ed8194e6072be4441025d1b888e39365727ed5b23e0e8c92c4009d1ec4-libstaroffice-0.0.6.tar.xz";
}
{
name = "swingExSrc.zip";
@ -776,6 +790,13 @@
md5 = "35c94d2df8893241173de1d16b6034c0";
md5name = "35c94d2df8893241173de1d16b6034c0-swingExSrc.zip";
}
{
name = "twaindsm_2.4.1.orig.tar.gz";
url = "http://dev-www.libreoffice.org/src/twaindsm_2.4.1.orig.tar.gz";
sha256 = "82c818be771f242388457aa8c807e4b52aa84dc22b21c6c56184a6b4cbb085e6";
md5 = "";
md5name = "82c818be771f242388457aa8c807e4b52aa84dc22b21c6c56184a6b4cbb085e6-twaindsm_2.4.1.orig.tar.gz";
}
{
name = "ucpp-1.3.2.tar.gz";
url = "http://dev-www.libreoffice.org/src/0168229624cfac409e766913506961a8-ucpp-1.3.2.tar.gz";
@ -805,11 +826,11 @@
md5name = "57faf1ab97d63d57383ac5d7875e992a3d190436732f4083310c0471e72f8c33-libwpg-0.3.2.tar.xz";
}
{
name = "libwps-0.4.8.tar.xz";
url = "http://dev-www.libreoffice.org/src/libwps-0.4.8.tar.xz";
sha256 = "e478e825ef33f6a434a19ff902c5469c9da7acc866ea0d8ab610a8b2aa94177e";
name = "libwps-0.4.9.tar.xz";
url = "http://dev-www.libreoffice.org/src/libwps-0.4.9.tar.xz";
sha256 = "13beb0c733bb1544a542b6ab1d9d205f218e9a2202d1d4cac056f79f6db74922";
md5 = "";
md5name = "e478e825ef33f6a434a19ff902c5469c9da7acc866ea0d8ab610a8b2aa94177e-libwps-0.4.8.tar.xz";
md5name = "13beb0c733bb1544a542b6ab1d9d205f218e9a2202d1d4cac056f79f6db74922-libwps-0.4.9.tar.xz";
}
{
name = "xsltml_2.1.2.zip";

View File

@ -1,9 +1,9 @@
{ fetchurl }:
rec {
major = "5";
minor = "4";
patch = "7";
major = "6";
minor = "0";
patch = "6";
tweak = "2";
subdir = "${major}.${minor}.${patch}";
@ -12,6 +12,6 @@ rec {
src = fetchurl {
url = "https://download.documentfoundation.org/libreoffice/src/${subdir}/libreoffice-${version}.tar.xz";
sha256 = "0s9s4nhp2whwxis54jbxrf1dwpnpl95b9781d1pdj4xk5z9v90fv";
sha256 = "f1666430abf616a3813e4c886b51f157366f592102ae0e874abc17f3d58c6a8e";
};
}

View File

@ -1,14 +1,14 @@
{ stdenv, fetchurl, pam, python3, libxslt, perl, ArchiveZip
{ stdenv, fetchurl, pam, python3, libxslt, perl, ArchiveZip, gettext
, IOCompress, zlib, libjpeg, expat, freetype, libwpd
, libxml2, db, sablotron, curl, fontconfig, libsndfile, neon
, bison, flex, zip, unzip, gtk3, gtk2, libmspack, getopt, file, cairo, which
, icu, boost, jdk, ant, cups, xorg, libcmis, carlito
, openssl, gperf, cppunit, GConf, ORBit2, poppler
, icu, boost, jdk, ant, cups, xorg, libcmis
, openssl, gperf, cppunit, GConf, ORBit2, poppler, utillinux
, librsvg, gnome_vfs, libGLU_combined, bsh, CoinMP, libwps, libabw
, autoconf, automake, openldap, bash, hunspell, librdf_redland, nss, nspr
, libwpg, dbus-glib, glibc, qt4, clucene_core, libcdr, lcms, vigra
, libwpg, dbus-glib, qt4, clucene_core, libcdr, lcms, vigra
, unixODBC, mdds, sane-backends, mythes, libexttextcat, libvisio
, fontsConf, pkgconfig, bluez5, libtool
, fontsConf, pkgconfig, bluez5, libtool, carlito
, libatomic_ops, graphite2, harfbuzz, libodfgen, libzmf
, librevenge, libe-book, libmwaw, glm, glew, gst_all_1
, gdb, commonsLogging, librdf_rasqal, wrapGAppsHook
@ -34,22 +34,28 @@ let
};
srcs = {
third_party = [ (let md5 = "185d60944ea767075d27247c3162b3bc"; in fetchurl rec {
url = "https://dev-www.libreoffice.org/extern/${md5}-${name}";
sha256 = "1infwvv1p6i21scywrldsxs22f62x85mns4iq8h6vr6vlx3fdzga";
name = "unowinreg.dll";
}) ] ++ (map (x : ((fetchurl {inherit (x) url sha256 name;}) // {inherit (x) md5name md5;})) (import ./libreoffice-srcs-still.nix));
third_party =
map (x : ((fetchurl {inherit (x) url sha256 name;}) // {inherit (x) md5name md5;}))
((import ./libreoffice-srcs-still.nix) ++ [
(rec {
name = "unowinreg.dll";
url = "https://dev-www.libreoffice.org/extern/${md5name}";
sha256 = "1infwvv1p6i21scywrldsxs22f62x85mns4iq8h6vr6vlx3fdzga";
md5 = "185d60944ea767075d27247c3162b3bc";
md5name = "${md5}-${name}";
})
]);
translations = fetchSrc {
name = "translations";
sha256 = "05ixmqbs3pkdpyqcwadz9i3wg797vimsm75rmfby7z71wc3frcyk";
sha256 = "0hi7m5y9gxwqn5i2nsyqyz1vdiz2bxn26sd3i0958ghhwv3zqmdb";
};
# TODO: dictionaries
help = fetchSrc {
name = "help";
sha256 = "0ifyh4m8mwpkb16g6883ivk2s2qybr4s4s7pdjzp4cpx1nalzibl";
sha256 = "0pp8xs3mqna6fh1jd4h1xjyr4v0fsrik10rri5if5n3z1vfg0jby";
};
};
@ -58,26 +64,18 @@ in stdenv.mkDerivation rec {
inherit (primary-src) src;
# Openoffice will open libcups dynamically, so we link it directly
# to make its dlopen work.
# It also seems not to mention libdl explicitly in some places.
NIX_LDFLAGS = "-lcups -ldl";
# For some reason librdf_redland sometimes refers to rasqal.h instead
# of rasqal/rasqal.h
# And LO refers to gpgme++ by no-path name
NIX_CFLAGS_COMPILE="-I${librdf_rasqal}/include/rasqal -I${gpgme.dev}/include/gpgme++";
# If we call 'configure', 'make' will then call configure again without parameters.
# It's their system.
configureScript = "./autogen.sh";
dontUseCmakeConfigure = true;
NIX_CFLAGS_COMPILE = [ "-I${librdf_rasqal}/include/rasqal" ];
patches = [ ./xdg-open-brief.patch ];
postUnpack = ''
mkdir -v $sourceRoot/src
'' + (stdenv.lib.concatMapStrings (f: "ln -sfv ${f} $sourceRoot/src/${f.md5 or f.outputHash}-${f.name}\nln -sfv ${f} $sourceRoot/src/${f.name}\n") srcs.third_party)
'' + (lib.flip lib.concatMapStrings srcs.third_party (f: ''
ln -sfv ${f} $sourceRoot/src/${f.md5name}
ln -sfv ${f} $sourceRoot/src/${f.name}
''))
+ ''
ln -sv ${srcs.help} $sourceRoot/src/${srcs.help.name}
ln -svf ${srcs.translations} $sourceRoot/src/${srcs.translations.name}
@ -85,14 +83,20 @@ in stdenv.mkDerivation rec {
postPatch = ''
sed -e 's@/usr/bin/xdg-open@xdg-open@g' -i shell/source/unix/exec/shellexec.cxx
# configure checks for header 'gpgme++/gpgmepp_version.h',
# and if it is found (no matter where) uses a hardcoded path
# in what presumably is an effort to make it possible to write
# '#include <context.h>' instead of '#include <gpgmepp/context.h>'.
#
# Fix this path to point to where the headers can actually be found instead.
substituteInPlace configure.ac --replace \
'GPGMEPP_CFLAGS=-I/usr/include/gpgme++' \
'GPGMEPP_CFLAGS=-I${gpgme.dev}/include/gpgme++'
'';
QT4DIR = qt4;
# Fix boost 1.59 compat
# Try removing in the next version
CPPFLAGS = "-DBOOST_ERROR_CODE_HEADER_ONLY -DBOOST_SYSTEM_NO_DEPRECATED";
preConfigure = ''
configureFlagsArray=(
"--with-parallelism=$NIX_BUILD_CORES"
@ -101,68 +105,72 @@ in stdenv.mkDerivation rec {
chmod a+x ./bin/unpack-sources
patchShebangs .
# It is used only as an indicator of the proper current directory
touch solenv/inc/target.mk
# BLFS patch for Glibc 2.23 renaming isnan
sed -ire "s@isnan@std::&@g" xmloff/source/draw/ximp3dscene.cxx
# This is required as some cppunittests require fontconfig configured
cp "${fontsConf}" fonts.conf
sed -e '/include/i<include>${carlito}/etc/fonts/conf.d</include>' -i fonts.conf
export FONTCONFIG_FILE="$PWD/fonts.conf"
NOCONFIGURE=1 ./autogen.sh
'';
# fetch_Download_item tries to interpret the name as a variable name
# Let it do so…
postConfigure = ''
sed -e '1ilibreoffice-translations-${version}.tar.xz=libreoffice-translations-${version}.tar.xz' -i Makefile
sed -e '1ilibreoffice-help-${version}.tar.xz=libreoffice-help-${version}.tar.xz' -i Makefile
postConfigure =
# fetch_Download_item tries to interpret the name as a variable name, let it do so...
''
sed -e '1ilibreoffice-translations-${version}.tar.xz=libreoffice-translations-${version}.tar.xz' -i Makefile
sed -e '1ilibreoffice-help-${version}.tar.xz=libreoffice-help-${version}.tar.xz' -i Makefile
''
# Test fixups
# May need to be revisited/pruned, left alone for now.
+ ''
# unit test sd_tiledrendering seems to be fragile
# https://nabble.documentfoundation.org/libreoffice-5-0-failure-in-CUT-libreofficekit-tiledrendering-td4150319.html
echo > ./sd/CppunitTest_sd_tiledrendering.mk
sed -e /CppunitTest_sd_tiledrendering/d -i sd/Module_sd.mk
# one more fragile test?
sed -e '/CPPUNIT_TEST(testTdf96536);/d' -i sw/qa/extras/uiwriter/uiwriter.cxx
# this I actually hate, this should be a data consistency test!
sed -e '/CPPUNIT_TEST(testTdf115013);/d' -i sw/qa/extras/uiwriter/uiwriter.cxx
# rendering-dependent test
sed -e '/CPPUNIT_ASSERT_EQUAL(11148L, pOleObj->GetLogicRect().getWidth());/d ' -i sc/qa/unit/subsequent_filters-test.cxx
# tilde expansion in path processing checks the existence of $HOME
sed -e 's@OString sSysPath("~/tmp");@& return ; @' -i sal/qa/osl/file/osl_File.cxx
# rendering-dependent: on my computer the test table actually doesn't fit…
# interesting fact: test disabled on macOS by upstream
sed -re '/DECLARE_WW8EXPORT_TEST[(]testTableKeep, "tdf91083.odt"[)]/,+5d' -i ./sw/qa/extras/ww8export/ww8export.cxx
# Segfault on DB access — maybe temporarily acceptable for a new version of Fresh?
sed -e 's/CppunitTest_dbaccess_empty_stdlib_save//' -i ./dbaccess/Module_dbaccess.mk
# one more fragile test?
sed -e '/CPPUNIT_TEST(testTdf77014);/d' -i sw/qa/extras/uiwriter/uiwriter.cxx
# rendering-dependent tests
sed -e '/CPPUNIT_TEST(testCustomColumnWidthExportXLSX)/d' -i sc/qa/unit/subsequent_export-test.cxx
sed -e '/CPPUNIT_TEST(testColumnWidthExportFromODStoXLSX)/d' -i sc/qa/unit/subsequent_export-test.cxx
sed -e '/CPPUNIT_TEST(testChartImportXLS)/d' -i sc/qa/unit/subsequent_filters-test.cxx
sed -zre 's/DesktopLOKTest::testGetFontSubset[^{]*[{]/& return; /' -i desktop/qa/desktop_lib/test_desktop_lib.cxx
sed -z -r -e 's/DECLARE_OOXMLEXPORT_TEST[(]testFlipAndRotateCustomShape,[^)]*[)].[{]/& return;/' -i sw/qa/extras/ooxmlexport/ooxmlexport7.cxx
sed -z -r -e 's/DECLARE_OOXMLEXPORT_TEST[(]tdf105490_negativeMargins,[^)]*[)].[{]/& return;/' -i sw/qa/extras/ooxmlexport/ooxmlexport9.cxx
sed -z -r -e 's/DECLARE_OOXMLIMPORT_TEST[(]testTdf112443,[^)]*[)].[{]/& return;/' -i sw/qa/extras/ooxmlimport/ooxmlimport.cxx
sed -z -r -e 's/DECLARE_RTFIMPORT_TEST[(]testTdf108947,[^)]*[)].[{]/& return;/' -i sw/qa/extras/rtfimport/rtfimport.cxx
# not sure about this fragile test
sed -z -r -e 's/DECLARE_OOXMLEXPORT_TEST[(]testTDF87348,[^)]*[)].[{]/& return;/' -i sw/qa/extras/ooxmlexport/ooxmlexport7.cxx
''
# This to avoid using /lib:/usr/lib at linking
+ ''
sed -i '/gb_LinkTarget_LDFLAGS/{ n; /rpath-link/d;}' solenv/gbuild/platform/unxgcc.mk
# unit test sd_tiledrendering seems to be fragile
# https://nabble.documentfoundation.org/libreoffice-5-0-failure-in-CUT-libreofficekit-tiledrendering-td4150319.html
echo > ./sd/CppunitTest_sd_tiledrendering.mk
sed -e /CppunitTest_sd_tiledrendering/d -i sd/Module_sd.mk
# one more fragile test?
sed -e '/CPPUNIT_TEST(testTdf96536);/d' -i sw/qa/extras/uiwriter/uiwriter.cxx
# rendering-dependent test
sed -e '/CPPUNIT_ASSERT_EQUAL(11148L, pOleObj->GetLogicRect().getWidth());/d ' -i sc/qa/unit/subsequent_filters-test.cxx
# tilde expansion in path processing checks the existence of $HOME
sed -e 's@OString sSysPath("~/tmp");@& return ; @' -i sal/qa/osl/file/osl_File.cxx
# rendering-dependent: on my computer the test table actually doesn't fit…
# interesting fact: test disabled on macOS by upstream
sed -re '/DECLARE_WW8EXPORT_TEST[(]testTableKeep, "tdf91083.odt"[)]/,+5d' -i ./sw/qa/extras/ww8export/ww8export.cxx
# Segfault on DB access — maybe temporarily acceptable for a new version of Fresh?
sed -e 's/CppunitTest_dbaccess_empty_stdlib_save//' -i ./dbaccess/Module_dbaccess.mk
# one more fragile test?
sed -e '/CPPUNIT_TEST(testTdf77014);/d' -i sw/qa/extras/uiwriter/uiwriter.cxx
# rendering-dependent tests
sed -e '/CPPUNIT_TEST(testCustomColumnWidthExportXLSX)/d' -i sc/qa/unit/subsequent_export-test.cxx
sed -e '/CPPUNIT_TEST(testColumnWidthExportFromODStoXLSX)/d' -i sc/qa/unit/subsequent_export-test.cxx
sed -e '/CPPUNIT_TEST(testChartImportXLS)/d' -i sc/qa/unit/subsequent_filters-test.cxx
sed -zre 's/DesktopLOKTest::testGetFontSubset[^{]*[{]/& return; /' -i desktop/qa/desktop_lib/test_desktop_lib.cxx
sed -z -r -e 's/DECLARE_OOXMLEXPORT_TEST[(]testFlipAndRotateCustomShape,[^)]*[)].[{]/& return;/' -i sw/qa/extras/ooxmlexport/ooxmlexport7.cxx
sed -z -r -e 's/DECLARE_OOXMLEXPORT_TEST[(]tdf105490_negativeMargins,[^)]*[)].[{]/& return;/' -i sw/qa/extras/ooxmlexport/ooxmlexport9.cxx
# not sure about this fragile test
sed -z -r -e 's/DECLARE_OOXMLEXPORT_TEST[(]testTDF87348,[^)]*[)].[{]/& return;/' -i sw/qa/extras/ooxmlexport/ooxmlexport7.cxx
'';
find -name "*.cmd" -exec sed -i s,/lib:/usr/lib,, {} \;
'';
makeFlags = "SHELL=${bash}/bin/bash";
enableParallelBuilding = true;
buildPhase = ''
# This is required as some cppunittests require fontconfig configured
export FONTCONFIG_FILE=${fontsConf}
# This to avoid using /lib:/usr/lib at linking
sed -i '/gb_LinkTarget_LDFLAGS/{ n; /rpath-link/d;}' solenv/gbuild/platform/unxgcc.mk
find -name "*.cmd" -exec sed -i s,/lib:/usr/lib,, {} \;
make
make build-nocheck
'';
doCheck = true;
# It installs only things to $out/lib/libreoffice
postInstall = ''
mkdir -p $out/bin $out/share/desktop
@ -194,11 +202,11 @@ in stdenv.mkDerivation rec {
"--with-vendor=NixOS"
"--with-commons-logging-jar=${commonsLogging}/share/java/commons-logging-1.2.jar"
"--disable-report-builder"
"--disable-online-update"
"--enable-python=system"
"--enable-dbus"
"--enable-release-build"
(lib.enableFeature kdeIntegration "kde4")
"--with-package-format=installed"
"--enable-epm"
"--with-jdk-home=${jdk.home}"
"--with-ant-home=${ant}/lib/ant"
@ -212,6 +220,8 @@ in stdenv.mkDerivation rec {
"--with-system-openldap"
"--with-system-coinmp"
"--with-alloc=system"
# Without these, configure does not finish
"--without-junit"
@ -234,8 +244,10 @@ in stdenv.mkDerivation rec {
"--without-system-liblangtag"
"--without-system-libmspub"
"--without-system-libpagemaker"
"--without-system-libgltf"
"--without-system-libstaroffice"
"--without-system-libepubgen"
"--without-system-libqxp"
"--without-system-mdds"
# https://github.com/NixOS/nixpkgs/commit/5c5362427a3fa9aefccfca9e531492a8735d4e6f
"--without-system-orcus"
"--without-system-xmlsec"
@ -257,10 +269,10 @@ in stdenv.mkDerivation rec {
gst_all_1.gst-plugins-base glib
neon nspr nss openldap openssl ORBit2 pam perl pkgconfig poppler
python3 sablotron sane-backends unzip vigra which zip zlib
mdds bluez5 glibc libcmis libwps libabw libzmf libtool
libxshmfence libatomic_ops graphite2 harfbuzz gpgme
mdds bluez5 libcmis libwps libabw libzmf libtool
libxshmfence libatomic_ops graphite2 harfbuzz gpgme utillinux
librevenge libe-book libmwaw glm glew ncurses epoxy
libodfgen CoinMP librdf_rasqal defaultIconTheme
libodfgen CoinMP librdf_rasqal defaultIconTheme gettext
]
++ lib.optional kdeIntegration kdelibs4;
nativeBuildInputs = [ wrapGAppsHook gdb ];

View File

@ -12,7 +12,10 @@ stdenv.mkDerivation rec {
name = "gildas-${version}";
src = fetchurl {
url = "http://www.iram.fr/~gildas/dist/gildas-src-${srcVersion}.tar.gz";
# For each new release, the upstream developers of Gildas move the
# source code of the previous release to a different directory
urls = [ "http://www.iram.fr/~gildas/dist/gildas-src-${srcVersion}.tar.gz"
"http://www.iram.fr/~gildas/dist/archive/gildas/gildas-src-${srcVersion}.tar.gz" ];
sha256 = "0mg3wijrj8x1p912vkgrhxbypjx7aj9b1492yxvq2y3fxban6bj1";
};
@ -22,7 +25,9 @@ stdenv.mkDerivation rec {
buildInputs = [ gtk2-x11 lesstif cfitsio python27Env ];
patches = [ ./wrapper.patch ./return-error-code.patch ./clang.patch ./aarch64.patch ];
patches = [ ./wrapper.patch ./return-error-code.patch ./clang.patch ./aarch64.patch ./gag-font-bin-rule.patch ];
NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.cc.isClang "-Wno-unused-command-line-argument";
configurePhase=''
substituteInPlace admin/wrapper.sh --replace '%%OUT%%' $out

View File

@ -0,0 +1,13 @@
diff -ruN gildas-src-aug18a/kernel/etc/Makefile gildas-src-aug18a.gag-font-bin-rule/kernel/etc/Makefile
--- gildas-src-aug18a/kernel/etc/Makefile 2016-09-09 09:39:37.000000000 +0200
+++ gildas-src-aug18a.gag-font-bin-rule/kernel/etc/Makefile 2018-09-04 12:03:11.000000000 +0200
@@ -29,7 +29,8 @@
SEDEXE=sed -e 's?source tree?executable tree?g'
-$(datadir)/gag-font.bin: hershey-font.dat $(bindir)/hershey
+$(datadir)/gag-font.bin: hershey-font.dat $(bindir)/hershey \
+ $(gagintdir)/etc/gag.dico.gbl $(gagintdir)/etc/gag.dico.lcl
ifeq ($(GAG_ENV_KIND)-$(GAG_TARGET_KIND),cygwin-mingw)
$(bindir)/hershey `cygpath -w $(datadir)`/gag-font.bin
else

View File

@ -17,7 +17,7 @@ let
};
in
stdenv.mkDerivation rec {
version = "14.29.17";
version = "14.29.19";
pname = "jmol";
name = "${pname}-${version}";
@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
baseVersion = "${lib.versions.major version}.${lib.versions.minor version}";
in fetchurl {
url = "mirror://sourceforge/jmol/Jmol/Version%20${baseVersion}/Jmol%20${version}/Jmol-${version}-binary.tar.gz";
sha256 = "1dnxbvi8ha9z2ldymkjpxydd216afv6k7fdp3j70sql10zgy0isk";
sha256 = "0sfbbi6mgj9hqzvcz19cr5s96rna2f2b1nc1d4j28xvva7qaqjm5";
};
patchPhase = ''

View File

@ -20,8 +20,10 @@ stdenv.mkDerivation rec {
cp drgeo.desktop.in drgeo.desktop
'';
meta = {
meta = with stdenv.lib; {
description = "Interactive geometry program";
platforms = stdenv.lib.platforms.linux;
homepage = https://sourceforge.net/projects/ofset;
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View File

@ -15,7 +15,7 @@ stdenv.mkDerivation (rec {
dontAddPrefix = true;
configureFlags = [ "--prefix" "$(out)" ];
meta = {
meta = with stdenv.lib; {
description = "A program for proof-tree visualization";
longDescription = ''
Prooftree is a program for proof-tree visualization during interactive
@ -35,7 +35,8 @@ stdenv.mkDerivation (rec {
shift-click).
'';
homepage = http://askra.de/software/prooftree;
platforms = stdenv.lib.platforms.unix;
maintainers = [ stdenv.lib.maintainers.jwiegley ];
platforms = platforms.unix;
maintainers = [ maintainers.jwiegley ];
license = licenses.gpl3;
};
})

View File

@ -1,5 +1,5 @@
{ stdenv, lib, fetchgit, cmake
, opencv, gtest, openblas, liblapack
{ stdenv, lib, fetchurl, bash, cmake
, opencv, gtest, openblas, liblapack, perl
, cudaSupport ? false, cudatoolkit, nvidia_x11
, cudnnSupport ? false, cudnn
}:
@ -8,16 +8,17 @@ assert cudnnSupport -> cudaSupport;
stdenv.mkDerivation rec {
name = "mxnet-${version}";
version = "1.1.0";
version = "1.2.1";
# Submodules needed
src = fetchgit {
url = "https://github.com/apache/incubator-mxnet";
rev = "refs/tags/${version}";
sha256 = "1qgns0c70a1gfyil96h17ms736nwdkp9kv496gvs9pkzqzvr6cpz";
# Fetching from git does not work at the time (1.2.1) due to an
# incorrect hash in one of the submodules. The provided tarballs
# contain all necessary sources.
src = fetchurl {
url = "https://github.com/apache/incubator-mxnet/releases/download/${version}/apache-mxnet-src-${version}-incubating.tar.gz";
sha256 = "053zbdgs4j8l79ipdz461zc7wyfbfcflmi5bw7lj2q08zm1glnb2";
};
nativeBuildInputs = [ cmake ];
nativeBuildInputs = [ cmake perl ];
buildInputs = [ opencv gtest openblas liblapack ]
++ lib.optionals cudaSupport [ cudatoolkit nvidia_x11 ]
@ -30,9 +31,17 @@ stdenv.mkDerivation rec {
] else [ "-DUSE_CUDA=OFF" ])
++ lib.optional (!cudnnSupport) "-DUSE_CUDNN=OFF";
installPhase = ''
install -Dm755 libmxnet.so $out/lib/libmxnet.so
cp -r ../include $out
postPatch = ''
substituteInPlace 3rdparty/mkldnn/tests/CMakeLists.txt \
--replace "/bin/bash" "${bash}/bin/bash"
# Build against the system version of OpenMP.
# https://github.com/apache/incubator-mxnet/pull/12160
rm -rf 3rdparty/openmp
'';
postInstall = ''
rm "$out"/lib/*.a
'';
enableParallelBuilding = true;

View File

@ -41,6 +41,7 @@ stdenv.mkDerivation rec {
of the full GiNaC, and it is *only* meant to be used as a Python library.
'';
homepage = http://pynac.org;
license = licenses.gpl3;
maintainers = with maintainers; [ timokau ];
platforms = platforms.linux;
};

View File

@ -8,7 +8,8 @@
with stdenv.lib;
assert elem fileFormat ["lowerTriangularCsv" "upperTriangularCsv" "dipha"];
assert assertOneOf "fileFormat" fileFormat
["lowerTriangularCsv" "upperTriangularCsv" "dipha"];
assert useGoogleHashmap -> sparsehash != null;
let

View File

@ -21,7 +21,7 @@ let
sagelib = self.callPackage ./sagelib.nix {
inherit flint ecl arb;
inherit sage-src pynac singular;
inherit sage-src openblas-blas-pc openblas-cblas-pc openblas-lapack-pc pynac singular;
linbox = nixpkgs.linbox.override { withSage = true; };
};
@ -41,13 +41,13 @@ let
};
sage-env = self.callPackage ./sage-env.nix {
inherit sage-src python rWrapper ecl singular palp flint pynac pythonEnv;
inherit sage-src python rWrapper openblas-cblas-pc ecl singular palp flint pynac pythonEnv;
pkg-config = nixpkgs.pkgconfig; # not to confuse with pythonPackages.pkgconfig
};
sage-with-env = self.callPackage ./sage-with-env.nix {
inherit pythonEnv;
inherit sage-src pynac singular;
inherit sage-src openblas-blas-pc openblas-cblas-pc openblas-lapack-pc pynac singular;
pkg-config = nixpkgs.pkgconfig; # not to confuse with pythonPackages.pkgconfig
three = nodePackages_8_x.three;
};
@ -60,6 +60,10 @@ let
};
};
openblas-blas-pc = callPackage ./openblas-pc.nix { name = "blas"; };
openblas-cblas-pc = callPackage ./openblas-pc.nix { name = "cblas"; };
openblas-lapack-pc = callPackage ./openblas-pc.nix { name = "lapack"; };
sage-src = callPackage ./sage-src.nix {};
pythonRuntimeDeps = with python.pkgs; [

View File

@ -0,0 +1,17 @@
{ openblasCompat
, writeTextFile
, name
}:
writeTextFile {
name = "openblas-${name}-pc-${openblasCompat.version}";
destination = "/lib/pkgconfig/${name}.pc";
text = ''
Name: ${name}
Version: ${openblasCompat.version}
Description: ${name} for SageMath, provided by the OpenBLAS package.
Cflags: -I${openblasCompat}/include
Libs: -L${openblasCompat}/lib -lopenblas
'';
}

View File

@ -1,5 +1,5 @@
diff --git a/src/doc/en/faq/faq-usage.rst b/src/doc/en/faq/faq-usage.rst
index 79b4205fd3..9a89bd2136 100644
index 2347a1190d..f5b0fe71a4 100644
--- a/src/doc/en/faq/faq-usage.rst
+++ b/src/doc/en/faq/faq-usage.rst
@@ -338,7 +338,7 @@ ints. For example::
@ -174,7 +174,7 @@ index 5b89cd75ee..e50b2ea5d4 100644
This creates a random 5x5 matrix ``A``, and solves `Ax=b` where
``b=[0.0,1.0,2.0,3.0,4.0]``. There are many other routines in the :mod:`numpy.linalg`
diff --git a/src/sage/calculus/riemann.pyx b/src/sage/calculus/riemann.pyx
index df85cce43d..34ea164be0 100644
index 60f37f7557..4ac3dedf1d 100644
--- a/src/sage/calculus/riemann.pyx
+++ b/src/sage/calculus/riemann.pyx
@@ -1191,30 +1191,30 @@ cpdef complex_to_spiderweb(np.ndarray[COMPLEX_T, ndim = 2] z_values,
@ -248,7 +248,7 @@ index df85cce43d..34ea164be0 100644
TESTS::
diff --git a/src/sage/combinat/fully_packed_loop.py b/src/sage/combinat/fully_packed_loop.py
index 61b1003002..4baee9cbbd 100644
index 0a9bd61267..d2193cc2d6 100644
--- a/src/sage/combinat/fully_packed_loop.py
+++ b/src/sage/combinat/fully_packed_loop.py
@@ -72,11 +72,11 @@ def _make_color_list(n, colors=None, color_map=None, randomize=False):
@ -269,10 +269,10 @@ index 61b1003002..4baee9cbbd 100644
['blue', 'blue', 'red', 'blue', 'red', 'red', 'red', 'blue']
"""
diff --git a/src/sage/finance/time_series.pyx b/src/sage/finance/time_series.pyx
index c37700d14e..49b7298d0b 100644
index 28779365df..3ab0282861 100644
--- a/src/sage/finance/time_series.pyx
+++ b/src/sage/finance/time_series.pyx
@@ -109,8 +109,8 @@ cdef class TimeSeries:
@@ -111,8 +111,8 @@ cdef class TimeSeries:
sage: import numpy
sage: v = numpy.array([[1,2], [3,4]], dtype=float); v
@ -283,7 +283,7 @@ index c37700d14e..49b7298d0b 100644
sage: finance.TimeSeries(v)
[1.0000, 2.0000, 3.0000, 4.0000]
sage: finance.TimeSeries(v[:,0])
@@ -2098,14 +2098,14 @@ cdef class TimeSeries:
@@ -2100,14 +2100,14 @@ cdef class TimeSeries:
sage: w[0] = 20
sage: w
@ -301,7 +301,7 @@ index c37700d14e..49b7298d0b 100644
sage: v
[20.0000, -3.0000, 4.5000, -2.0000]
diff --git a/src/sage/functions/hyperbolic.py b/src/sage/functions/hyperbolic.py
index 931a4b41e4..bf33fc483d 100644
index aff552f450..7a6df931e7 100644
--- a/src/sage/functions/hyperbolic.py
+++ b/src/sage/functions/hyperbolic.py
@@ -214,7 +214,7 @@ class Function_coth(GinacFunction):
@ -341,7 +341,7 @@ index 931a4b41e4..bf33fc483d 100644
return arctanh(1.0 / x)
diff --git a/src/sage/functions/orthogonal_polys.py b/src/sage/functions/orthogonal_polys.py
index 017c85a96f..33fbb499c5 100644
index ed6365bef4..99b8b04dad 100644
--- a/src/sage/functions/orthogonal_polys.py
+++ b/src/sage/functions/orthogonal_polys.py
@@ -810,12 +810,12 @@ class Func_chebyshev_T(ChebyshevFunction):
@ -379,10 +379,10 @@ index 017c85a96f..33fbb499c5 100644
array([ 0.2 , -0.96])
"""
diff --git a/src/sage/functions/other.py b/src/sage/functions/other.py
index 679384c907..d63b295a4c 100644
index 1883daa3e6..9885222817 100644
--- a/src/sage/functions/other.py
+++ b/src/sage/functions/other.py
@@ -390,7 +390,7 @@ class Function_ceil(BuiltinFunction):
@@ -389,7 +389,7 @@ class Function_ceil(BuiltinFunction):
sage: import numpy
sage: a = numpy.linspace(0,2,6)
sage: ceil(a)
@ -391,7 +391,7 @@ index 679384c907..d63b295a4c 100644
Test pickling::
@@ -539,7 +539,7 @@ class Function_floor(BuiltinFunction):
@@ -553,7 +553,7 @@ class Function_floor(BuiltinFunction):
sage: import numpy
sage: a = numpy.linspace(0,2,6)
sage: floor(a)
@ -400,7 +400,7 @@ index 679384c907..d63b295a4c 100644
sage: floor(x)._sympy_()
floor(x)
@@ -840,7 +840,7 @@ def sqrt(x, *args, **kwds):
@@ -869,7 +869,7 @@ def sqrt(x, *args, **kwds):
sage: import numpy
sage: a = numpy.arange(2,5)
sage: sqrt(a)
@ -409,11 +409,35 @@ index 679384c907..d63b295a4c 100644
"""
if isinstance(x, float):
return math.sqrt(x)
diff --git a/src/sage/functions/spike_function.py b/src/sage/functions/spike_function.py
index 1e021de3fe..56635ca98f 100644
--- a/src/sage/functions/spike_function.py
+++ b/src/sage/functions/spike_function.py
@@ -157,7 +157,7 @@ class SpikeFunction:
sage: S = spike_function([(-3,4),(-1,1),(2,3)]); S
A spike function with spikes at [-3.0, -1.0, 2.0]
sage: P = S.plot_fft_abs(8)
- sage: p = P[0]; p.ydata
+ sage: p = P[0]; p.ydata # abs tol 1e-8
[5.0, 5.0, 3.367958691924177, 3.367958691924177, 4.123105625617661, 4.123105625617661, 4.759921664218055, 4.759921664218055]
"""
w = self.vector(samples = samples, xmin=xmin, xmax=xmax)
@@ -176,8 +176,8 @@ class SpikeFunction:
sage: S = spike_function([(-3,4),(-1,1),(2,3)]); S
A spike function with spikes at [-3.0, -1.0, 2.0]
sage: P = S.plot_fft_arg(8)
- sage: p = P[0]; p.ydata
- [0.0, 0.0, -0.211524990023434..., -0.211524990023434..., 0.244978663126864..., 0.244978663126864..., -0.149106180027477..., -0.149106180027477...]
+ sage: p = P[0]; p.ydata # abs tol 1e-8
+ [0.0, 0.0, -0.211524990023434, -0.211524990023434, 0.244978663126864, 0.244978663126864, -0.149106180027477, -0.149106180027477]
"""
w = self.vector(samples = samples, xmin=xmin, xmax=xmax)
xmin, xmax = self._ranges(xmin, xmax)
diff --git a/src/sage/functions/trig.py b/src/sage/functions/trig.py
index e7e7a311cd..e7ff78a9de 100644
index 501e7ff6b6..5f760912f0 100644
--- a/src/sage/functions/trig.py
+++ b/src/sage/functions/trig.py
@@ -731,7 +731,7 @@ class Function_arccot(GinacFunction):
@@ -724,7 +724,7 @@ class Function_arccot(GinacFunction):
sage: import numpy
sage: a = numpy.arange(2, 5)
sage: arccot(a)
@ -422,7 +446,7 @@ index e7e7a311cd..e7ff78a9de 100644
"""
return math.pi/2 - arctan(x)
@@ -787,7 +787,7 @@ class Function_arccsc(GinacFunction):
@@ -780,7 +780,7 @@ class Function_arccsc(GinacFunction):
sage: import numpy
sage: a = numpy.arange(2, 5)
sage: arccsc(a)
@ -431,7 +455,7 @@ index e7e7a311cd..e7ff78a9de 100644
"""
return arcsin(1.0/x)
@@ -845,7 +845,7 @@ class Function_arcsec(GinacFunction):
@@ -838,7 +838,7 @@ class Function_arcsec(GinacFunction):
sage: import numpy
sage: a = numpy.arange(2, 5)
sage: arcsec(a)
@ -440,7 +464,7 @@ index e7e7a311cd..e7ff78a9de 100644
"""
return arccos(1.0/x)
@@ -920,13 +920,13 @@ class Function_arctan2(GinacFunction):
@@ -913,13 +913,13 @@ class Function_arctan2(GinacFunction):
sage: a = numpy.linspace(1, 3, 3)
sage: b = numpy.linspace(3, 6, 3)
sage: atan2(a, b)
@ -458,10 +482,10 @@ index e7e7a311cd..e7ff78a9de 100644
TESTS::
diff --git a/src/sage/matrix/constructor.pyx b/src/sage/matrix/constructor.pyx
index 19a1d37df0..5780dfae1c 100644
index 12136f1773..491bf22e62 100644
--- a/src/sage/matrix/constructor.pyx
+++ b/src/sage/matrix/constructor.pyx
@@ -494,8 +494,8 @@ class MatrixFactory(object):
@@ -503,8 +503,8 @@ def matrix(*args, **kwds):
[7 8 9]
Full MatrixSpace of 3 by 3 dense matrices over Integer Ring
sage: n = matrix(QQ, 2, 2, [1, 1/2, 1/3, 1/4]).numpy(); n
@ -473,10 +497,31 @@ index 19a1d37df0..5780dfae1c 100644
[ 1 1/2]
[1/3 1/4]
diff --git a/src/sage/matrix/matrix_double_dense.pyx b/src/sage/matrix/matrix_double_dense.pyx
index 48e0a8a97f..1be5d35b19 100644
index 66e54a79a4..0498334f4b 100644
--- a/src/sage/matrix/matrix_double_dense.pyx
+++ b/src/sage/matrix/matrix_double_dense.pyx
@@ -2546,7 +2546,7 @@ cdef class Matrix_double_dense(Matrix_dense):
@@ -606,6 +606,9 @@ cdef class Matrix_double_dense(Matrix_dense):
[ 3.0 + 9.0*I 4.0 + 16.0*I 5.0 + 25.0*I]
[6.0 + 36.0*I 7.0 + 49.0*I 8.0 + 64.0*I]
sage: B.condition()
+ doctest:warning
+ ...
+ ComplexWarning: Casting complex values to real discards the imaginary part
203.851798...
sage: B.condition(p='frob')
203.851798...
@@ -654,9 +657,7 @@ cdef class Matrix_double_dense(Matrix_dense):
True
sage: B = A.change_ring(CDF)
sage: B.condition()
- Traceback (most recent call last):
- ...
- LinAlgError: Singular matrix
+ +Infinity
Improper values of ``p`` are caught. ::
@@ -2519,7 +2520,7 @@ cdef class Matrix_double_dense(Matrix_dense):
sage: P.is_unitary(algorithm='orthonormal')
Traceback (most recent call last):
...
@ -485,7 +530,7 @@ index 48e0a8a97f..1be5d35b19 100644
TESTS::
@@ -3662,8 +3662,8 @@ cdef class Matrix_double_dense(Matrix_dense):
@@ -3635,8 +3636,8 @@ cdef class Matrix_double_dense(Matrix_dense):
[0.0 1.0 2.0]
[3.0 4.0 5.0]
sage: m.numpy()
@ -496,7 +541,7 @@ index 48e0a8a97f..1be5d35b19 100644
Alternatively, numpy automatically calls this function (via
the magic :meth:`__array__` method) to convert Sage matrices
@@ -3674,16 +3674,16 @@ cdef class Matrix_double_dense(Matrix_dense):
@@ -3647,16 +3648,16 @@ cdef class Matrix_double_dense(Matrix_dense):
[0.0 1.0 2.0]
[3.0 4.0 5.0]
sage: numpy.array(m)
@ -518,10 +563,10 @@ index 48e0a8a97f..1be5d35b19 100644
dtype('complex128')
diff --git a/src/sage/matrix/special.py b/src/sage/matrix/special.py
index c698ba5e97..b743bab354 100644
index ccbd208810..c3f9a65093 100644
--- a/src/sage/matrix/special.py
+++ b/src/sage/matrix/special.py
@@ -705,7 +705,7 @@ def diagonal_matrix(arg0=None, arg1=None, arg2=None, sparse=True):
@@ -706,7 +706,7 @@ def diagonal_matrix(arg0=None, arg1=None, arg2=None, sparse=True):
sage: import numpy
sage: entries = numpy.array([1.2, 5.6]); entries
@ -530,7 +575,7 @@ index c698ba5e97..b743bab354 100644
sage: A = diagonal_matrix(3, entries); A
[1.2 0.0 0.0]
[0.0 5.6 0.0]
@@ -715,7 +715,7 @@ def diagonal_matrix(arg0=None, arg1=None, arg2=None, sparse=True):
@@ -716,7 +716,7 @@ def diagonal_matrix(arg0=None, arg1=None, arg2=None, sparse=True):
sage: j = numpy.complex(0,1)
sage: entries = numpy.array([2.0+j, 8.1, 3.4+2.6*j]); entries
@ -540,10 +585,10 @@ index c698ba5e97..b743bab354 100644
[2.0 + 1.0*I 0.0 0.0]
[ 0.0 8.1 0.0]
diff --git a/src/sage/modules/free_module_element.pyx b/src/sage/modules/free_module_element.pyx
index 230f142117..2ab1c0ae68 100644
index 37d92c1282..955d083b34 100644
--- a/src/sage/modules/free_module_element.pyx
+++ b/src/sage/modules/free_module_element.pyx
@@ -982,7 +982,7 @@ cdef class FreeModuleElement(Vector): # abstract base class
@@ -988,7 +988,7 @@ cdef class FreeModuleElement(Vector): # abstract base class
sage: v.numpy()
array([1, 2, 5/6], dtype=object)
sage: v.numpy(dtype=float)
@ -552,7 +597,7 @@ index 230f142117..2ab1c0ae68 100644
sage: v.numpy(dtype=int)
array([1, 2, 0])
sage: import numpy
@@ -993,7 +993,7 @@ cdef class FreeModuleElement(Vector): # abstract base class
@@ -999,7 +999,7 @@ cdef class FreeModuleElement(Vector): # abstract base class
be more efficient but may have unintended consequences::
sage: v.numpy(dtype=None)
@ -596,22 +641,6 @@ index 39fc2970de..2badf98284 100644
"""
if dtype is None or dtype is self._vector_numpy.dtype:
from copy import copy
diff --git a/src/sage/numerical/optimize.py b/src/sage/numerical/optimize.py
index 17b5ebb84b..92ce35c502 100644
--- a/src/sage/numerical/optimize.py
+++ b/src/sage/numerical/optimize.py
@@ -486,9 +486,9 @@ def minimize_constrained(func,cons,x0,gradient=None,algorithm='default', **args)
else:
min = optimize.fmin_tnc(f, x0, approx_grad=True, bounds=cons, messages=0, **args)[0]
elif isinstance(cons[0], function_type) or isinstance(cons[0], Expression):
- min = optimize.fmin_cobyla(f, x0, cons, iprint=0, **args)
+ min = optimize.fmin_cobyla(f, x0, cons, disp=0, **args)
elif isinstance(cons, function_type) or isinstance(cons, Expression):
- min = optimize.fmin_cobyla(f, x0, cons, iprint=0, **args)
+ min = optimize.fmin_cobyla(f, x0, cons, disp=0, **args)
return vector(RDF, min)
diff --git a/src/sage/plot/complex_plot.pyx b/src/sage/plot/complex_plot.pyx
index ad9693da62..758fb709b7 100644
--- a/src/sage/plot/complex_plot.pyx
@ -649,6 +678,76 @@ index ad9693da62..758fb709b7 100644
"""
import numpy
cdef unsigned int i, j, imax, jmax
diff --git a/src/sage/plot/histogram.py b/src/sage/plot/histogram.py
index 5d28473731..fc4b2046c0 100644
--- a/src/sage/plot/histogram.py
+++ b/src/sage/plot/histogram.py
@@ -53,10 +53,17 @@ class Histogram(GraphicPrimitive):
"""
import numpy as np
self.datalist=np.asarray(datalist,dtype=float)
+ if 'normed' in options:
+ from sage.misc.superseded import deprecation
+ deprecation(25260, "the 'normed' option is deprecated. Use 'density' instead.")
if 'linestyle' in options:
from sage.plot.misc import get_matplotlib_linestyle
options['linestyle'] = get_matplotlib_linestyle(
options['linestyle'], return_type='long')
+ if options.get('range', None):
+ # numpy.histogram performs type checks on "range" so this must be
+ # actual floats
+ options['range'] = [float(x) for x in options['range']]
GraphicPrimitive.__init__(self, options)
def get_minmax_data(self):
@@ -80,10 +87,14 @@ class Histogram(GraphicPrimitive):
{'xmax': 4.0, 'xmin': 0, 'ymax': 2, 'ymin': 0}
TESTS::
-
sage: h = histogram([10,3,5], normed=True)[0]
- sage: h.get_minmax_data() # rel tol 1e-15
- {'xmax': 10.0, 'xmin': 3.0, 'ymax': 0.4761904761904765, 'ymin': 0}
+ doctest:warning...:
+ DeprecationWarning: the 'normed' option is deprecated. Use 'density' instead.
+ See https://trac.sagemath.org/25260 for details.
+ sage: h.get_minmax_data()
+ doctest:warning ...:
+ VisibleDeprecationWarning: Passing `normed=True` on non-uniform bins has always been broken, and computes neither the probability density function nor the probability mass function. The result is only correct if the bins are uniform, when density=True will produce the same result anyway. The argument will be removed in a future version of numpy.
+ {'xmax': 10.0, 'xmin': 3.0, 'ymax': 0.476190476190..., 'ymin': 0}
"""
import numpy
@@ -152,7 +163,7 @@ class Histogram(GraphicPrimitive):
'rwidth': 'The relative width of the bars as a fraction of the bin width',
'cumulative': '(True or False) If True, then a histogram is computed in which each bin gives the counts in that bin plus all bins for smaller values. Negative values give a reversed direction of accumulation.',
'range': 'A list [min, max] which define the range of the histogram. Values outside of this range are treated as outliers and omitted from counts.',
- 'normed': 'Deprecated alias for density',
+ 'normed': 'Deprecated. Use density instead.',
'density': '(True or False) If True, the counts are normalized to form a probability density. (n/(len(x)*dbin)',
'weights': 'A sequence of weights the same length as the data list. If supplied, then each value contributes its associated weight to the bin count.',
'stacked': '(True or False) If True, multiple data are stacked on top of each other.',
@@ -199,7 +210,7 @@ class Histogram(GraphicPrimitive):
subplot.hist(self.datalist.transpose(), **options)
-@options(aspect_ratio='automatic',align='mid', weights=None, range=None, bins=10, edgecolor='black')
+@options(aspect_ratio='automatic', align='mid', weights=None, range=None, bins=10, edgecolor='black')
def histogram(datalist, **options):
"""
Computes and draws the histogram for list(s) of numerical data.
@@ -231,8 +242,9 @@ def histogram(datalist, **options):
- ``linewidth`` -- (float) width of the lines defining the bars
- ``linestyle`` -- (default: 'solid') Style of the line. One of 'solid'
or '-', 'dashed' or '--', 'dotted' or ':', 'dashdot' or '-.'
- - ``density`` -- (boolean - default: False) If True, the counts are
- normalized to form a probability density.
+ - ``density`` -- (boolean - default: False) If True, the result is the
+ value of the probability density function at the bin, normalized such
+ that the integral over the range is 1.
- ``range`` -- A list [min, max] which define the range of the
histogram. Values outside of this range are treated as outliers and
omitted from counts
diff --git a/src/sage/plot/line.py b/src/sage/plot/line.py
index 23f5e61446..3b1b51d7cf 100644
--- a/src/sage/plot/line.py
@ -718,7 +817,7 @@ index f3da57c370..3806f4b32f 100644
TESTS:
diff --git a/src/sage/probability/probability_distribution.pyx b/src/sage/probability/probability_distribution.pyx
index f66cd898b9..35995886d5 100644
index 1b119e323f..3290b00695 100644
--- a/src/sage/probability/probability_distribution.pyx
+++ b/src/sage/probability/probability_distribution.pyx
@@ -130,7 +130,17 @@ cdef class ProbabilityDistribution:
@ -741,10 +840,10 @@ index f66cd898b9..35995886d5 100644
import pylab
l = [float(self.get_random_element()) for _ in range(num_samples)]
diff --git a/src/sage/rings/rational.pyx b/src/sage/rings/rational.pyx
index a0bfe080f5..7d95e7a1a8 100644
index 12ca1b222b..9bad7dae0c 100644
--- a/src/sage/rings/rational.pyx
+++ b/src/sage/rings/rational.pyx
@@ -1056,7 +1056,7 @@ cdef class Rational(sage.structure.element.FieldElement):
@@ -1041,7 +1041,7 @@ cdef class Rational(sage.structure.element.FieldElement):
dtype('O')
sage: numpy.array([1, 1/2, 3/4])
@ -754,10 +853,10 @@ index a0bfe080f5..7d95e7a1a8 100644
if mpz_cmp_ui(mpq_denref(self.value), 1) == 0:
if mpz_fits_slong_p(mpq_numref(self.value)):
diff --git a/src/sage/rings/real_mpfr.pyx b/src/sage/rings/real_mpfr.pyx
index 4c630867a4..64e2187f5b 100644
index 9b90c8833e..1ce05b937d 100644
--- a/src/sage/rings/real_mpfr.pyx
+++ b/src/sage/rings/real_mpfr.pyx
@@ -1438,7 +1438,7 @@ cdef class RealNumber(sage.structure.element.RingElement):
@@ -1439,7 +1439,7 @@ cdef class RealNumber(sage.structure.element.RingElement):
sage: import numpy
sage: numpy.arange(10.0)
@ -767,10 +866,10 @@ index 4c630867a4..64e2187f5b 100644
dtype('float64')
sage: numpy.array([1.000000000000000000000000000000000000]).dtype
diff --git a/src/sage/schemes/elliptic_curves/height.py b/src/sage/schemes/elliptic_curves/height.py
index 3d270ebf9d..1144f168e3 100644
index de31fe9883..7a33ea6f5b 100644
--- a/src/sage/schemes/elliptic_curves/height.py
+++ b/src/sage/schemes/elliptic_curves/height.py
@@ -1623,18 +1623,18 @@ class EllipticCurveCanonicalHeight:
@@ -1627,18 +1627,18 @@ class EllipticCurveCanonicalHeight:
even::
sage: H.wp_on_grid(v,4)
@ -798,10 +897,10 @@ index 3d270ebf9d..1144f168e3 100644
tau = self.tau(v)
fk, err = self.fk_intervals(v, 15, CDF)
diff --git a/src/sage/symbolic/ring.pyx b/src/sage/symbolic/ring.pyx
index 2dcb0492b9..2b1a06385c 100644
index 9da38002e8..d61e74bf82 100644
--- a/src/sage/symbolic/ring.pyx
+++ b/src/sage/symbolic/ring.pyx
@@ -1135,7 +1135,7 @@ cdef class NumpyToSRMorphism(Morphism):
@@ -1136,7 +1136,7 @@ cdef class NumpyToSRMorphism(Morphism):
sage: cos(numpy.int('2'))
cos(2)
sage: numpy.cos(numpy.int('2'))

View File

@ -37,7 +37,7 @@
, lcalc
, rubiks
, flintqs
, openblasCompat
, openblas-cblas-pc
, flint
, gmp
, mpfr
@ -98,9 +98,9 @@ writeTextFile rec {
export PKG_CONFIG_PATH='${lib.concatStringsSep ":" (map (pkg: "${pkg}/lib/pkgconfig") [
# This is only needed in the src/sage/misc/cython.py test and I'm not sure if there's really a use-case
# for it outside of the tests. However since singular and openblas are runtime dependencies anyways
# it doesn't really hurt to include.
# and openblas-cblas-pc is tiny, it doesn't really hurt to include.
singular
openblasCompat
openblas-cblas-pc
])
}'
export SAGE_ROOT='${sage-src}'

View File

@ -94,9 +94,20 @@ stdenv.mkDerivation rec {
stripLen = 1;
})
# Only formatting changes.
(fetchpatch {
name = "matplotlib-2.2.2";
url = "https://git.sagemath.org/sage.git/patch?id=0d6244ed53b71aba861ce3d683d33e542c0bf0b0";
sha256 = "15x4cadxxlsdfh2sblgagqjj6ir13fgdzixxnwnvzln60saahb34";
})
(fetchpatch {
name = "scipy-1.1.0";
url = "https://git.sagemath.org/sage.git/patch?id=e0db968a51678b34ebd8d34906c7042900272378";
sha256 = "0kq5zxqphhrmavrmg830wdr7hwp1bkzdqlf3jfqfr8r8xq12qwf7";
})
# https://trac.sagemath.org/ticket/25260
./patches/numpy-1.14.3.patch
./patches/numpy-1.15.1.patch
# https://trac.sagemath.org/ticket/25862
./patches/eclib-20180710.patch

View File

@ -4,6 +4,9 @@
, sage-env
, sage-src
, openblasCompat
, openblas-blas-pc
, openblas-cblas-pc
, openblas-lapack-pc
, pkg-config
, three
, singular
@ -29,6 +32,9 @@ let
makeWrapper
pkg-config
openblasCompat # lots of segfaults with regular (64 bit) openblas
openblas-blas-pc
openblas-cblas-pc
openblas-lapack-pc
singular
three
pynac

View File

@ -3,6 +3,9 @@
, buildPythonPackage
, arb
, openblasCompat
, openblas-blas-pc
, openblas-cblas-pc
, openblas-lapack-pc
, brial
, cliquer
, cypari2
@ -56,7 +59,9 @@ buildPythonPackage rec {
nativeBuildInputs = [
iml
perl
openblasCompat
openblas-blas-pc
openblas-cblas-pc
openblas-lapack-pc
jupyter_core
];

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