mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-02-20 11:05:14 +00:00
Merge branch 'master' into staging-next
There's been some large rebuild on master. I don't really have time ATM to find what it was.
This commit is contained in:
commit
f504af072b
@ -103,8 +103,9 @@
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
mention-bot usually notifies GitHub users based on the submitted changes,
|
||||
but it can happen that it misses some of the package maintainers.
|
||||
<link xlink:href="https://help.github.com/articles/about-codeowners/">CODEOWNERS</link>
|
||||
will make GitHub notify users based on the submitted changes, but it can
|
||||
happen that it misses some of the package maintainers.
|
||||
</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
@ -376,8 +377,9 @@ $ nix-shell -p nox --run "nox-review -k pr PRNUMBER"
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
Mention-bot notify GitHub users based on the submitted changes, but it
|
||||
can happen that it miss some of the package maintainers.
|
||||
<link xlink:href="https://help.github.com/articles/about-codeowners/">CODEOWNERS</link>
|
||||
will make GitHub notify users based on the submitted changes, but it can
|
||||
happen that it misses some of the package maintainers.
|
||||
</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
@ -1689,6 +1689,11 @@
|
||||
github = "imalsogreg";
|
||||
name = "Greg Hale";
|
||||
};
|
||||
imuli = {
|
||||
email = "i@imu.li";
|
||||
github = "imuli";
|
||||
name = "Imuli";
|
||||
};
|
||||
infinisil = {
|
||||
email = "infinisil@icloud.com";
|
||||
github = "infinisil";
|
||||
@ -2094,6 +2099,11 @@
|
||||
github = "kuznero";
|
||||
name = "Roman Kuznetsov";
|
||||
};
|
||||
kylewlacy = {
|
||||
email = "kylelacy+nix@pm.me";
|
||||
github = "kylewlacy";
|
||||
name = "Kyle Lacy";
|
||||
};
|
||||
lasandell = {
|
||||
email = "lasandell@gmail.com";
|
||||
github = "lasandell";
|
||||
|
@ -73,6 +73,12 @@ $ nix-instantiate -E '(import <nixpkgsunstable> {}).gitFull'
|
||||
</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
There is a new <varname>services.foundationdb</varname> module for deploying
|
||||
<link xlink:href="https://www.foundationdb.org">FoundationDB</link> clusters.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
When enabled the <literal>iproute2</literal> will copy the files expected
|
||||
|
@ -536,6 +536,13 @@ if ($showHardwareConfig) {
|
||||
# Use the systemd-boot EFI boot loader.
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
EOF
|
||||
} elsif (-e "/boot/extlinux") {
|
||||
$bootLoaderConfig = <<EOF;
|
||||
# Use the extlinux boot loader. (NixOS wants to enable GRUB by default)
|
||||
boot.loader.grub.enable = false;
|
||||
# Enables the generation of /boot/extlinux/extlinux.conf
|
||||
boot.loader.generic-extlinux-compatible.enable = true;
|
||||
EOF
|
||||
} elsif ($virt ne "systemd-nspawn") {
|
||||
$bootLoaderConfig = <<EOF;
|
||||
|
@ -9,7 +9,6 @@ with lib;
|
||||
(mkRenamedOptionModule [ "system" "nixos" "stateVersion" ] [ "system" "stateVersion" ])
|
||||
(mkRenamedOptionModule [ "system" "nixos" "defaultChannel" ] [ "system" "defaultChannel" ])
|
||||
|
||||
(mkRenamedOptionModule [ "dysnomia" ] [ "services" "dysnomia" ])
|
||||
(mkRenamedOptionModule [ "environment" "x11Packages" ] [ "environment" "systemPackages" ])
|
||||
(mkRenamedOptionModule [ "environment" "enableBashCompletion" ] [ "programs" "bash" "enableCompletion" ])
|
||||
(mkRenamedOptionModule [ "environment" "nix" ] [ "nix" "package" ])
|
||||
|
@ -12,12 +12,10 @@
|
||||
|
||||
<para><emphasis>Maintainer:</emphasis> Austin Seipp</para>
|
||||
|
||||
<para><emphasis>Available version(s):</emphasis> 5.1.x</para>
|
||||
<para><emphasis>Available version(s):</emphasis> 5.1.x, 5.2.x, 6.0.x</para>
|
||||
|
||||
<para>FoundationDB (or "FDB") is a distributed, open source, high performance,
|
||||
transactional key-value store. It can store petabytes of data and deliver
|
||||
exceptional performance while maintaining consistency and ACID semantics
|
||||
(serializable transactions) over a large cluster.</para>
|
||||
<para>FoundationDB (or "FDB") is an open source, distributed, transactional
|
||||
key-value store.</para>
|
||||
|
||||
<section><title>Configuring and basic setup</title>
|
||||
|
||||
@ -26,12 +24,12 @@ exceptional performance while maintaining consistency and ACID semantics
|
||||
|
||||
<programlisting>
|
||||
services.foundationdb.enable = true;
|
||||
services.foundationdb.package = pkgs.foundationdb51; # FoundationDB 5.1.x
|
||||
services.foundationdb.package = pkgs.foundationdb52; # FoundationDB 5.2.x
|
||||
</programlisting>
|
||||
</para>
|
||||
|
||||
<para>The <option>services.foundationdb.package</option> option is required,
|
||||
and must always be specified. Because FoundationDB network protocols and
|
||||
and must always be specified. Due to the fact FoundationDB network protocols and
|
||||
on-disk storage formats may change between (major) versions, and upgrades must
|
||||
be explicitly handled by the user, you must always manually specify this
|
||||
yourself so that the NixOS module will use the proper version. Note that minor,
|
||||
@ -70,6 +68,40 @@ fdb>
|
||||
</programlisting>
|
||||
</para>
|
||||
|
||||
<para>You can also write programs using the available client libraries.
|
||||
For example, the following Python program can be run in order to grab the
|
||||
cluster status, as a quick example. (This example uses
|
||||
<command>nix-shell</command> shebang support to automatically supply the
|
||||
necessary Python modules).
|
||||
|
||||
<programlisting>
|
||||
a@link> cat fdb-status.py
|
||||
#! /usr/bin/env nix-shell
|
||||
#! nix-shell -i python -p python pythonPackages.foundationdb52
|
||||
|
||||
import fdb
|
||||
import json
|
||||
|
||||
def main():
|
||||
fdb.api_version(520)
|
||||
db = fdb.open()
|
||||
|
||||
@fdb.transactional
|
||||
def get_status(tr):
|
||||
return str(tr['\xff\xff/status/json'])
|
||||
|
||||
obj = json.loads(get_status(db))
|
||||
print('FoundationDB available: %s' % obj['client']['database_status']['available'])
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
a@link> chmod +x fdb-status.py
|
||||
a@link> ./fdb-status.py
|
||||
FoundationDB available: True
|
||||
a@link>
|
||||
</programlisting>
|
||||
</para>
|
||||
|
||||
<para>FoundationDB is run under the <command>foundationdb</command> user and
|
||||
group by default, but this may be changed in the NixOS configuration. The
|
||||
systemd unit <command>foundationdb.service</command> controls the
|
||||
@ -295,7 +327,6 @@ only undergone fairly basic testing of all the available functionality.</para>
|
||||
individual <command>fdbserver</command> processes. Currently, all server
|
||||
processes inherit all the global <command>fdbmonitor</command> settings.
|
||||
</para></listitem>
|
||||
<listitem><para>Python bindings are not currently installed.</para></listitem>
|
||||
<listitem><para>Ruby bindings are not currently installed.</para></listitem>
|
||||
<listitem><para>Go bindings are not currently installed.</para></listitem>
|
||||
</itemizedlist>
|
||||
@ -306,8 +337,9 @@ only undergone fairly basic testing of all the available functionality.</para>
|
||||
|
||||
<para>NixOS's FoundationDB module allows you to configure all of the most
|
||||
relevant configuration options for <command>fdbmonitor</command>, matching it
|
||||
quite closely. For a complete list of all options, check <command>man
|
||||
configuration.nix</command>.</para>
|
||||
quite closely. A complete list of options for the FoundationDB module may be
|
||||
found <link linkend="opt-services.foundationdb.enable">here</link>. You should
|
||||
also read the FoundationDB documentation as well.</para>
|
||||
|
||||
</section>
|
||||
|
||||
|
@ -47,7 +47,7 @@ in
|
||||
###### implementation
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
services.dysnomia.enable = true;
|
||||
dysnomia.enable = true;
|
||||
|
||||
environment.systemPackages = [ pkgs.disnix ] ++ optional cfg.useWebServiceInterface pkgs.DisnixWebService;
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.services.dysnomia;
|
||||
cfg = config.dysnomia;
|
||||
|
||||
printProperties = properties:
|
||||
concatMapStrings (propertyName:
|
||||
@ -69,7 +69,7 @@ let
|
||||
in
|
||||
{
|
||||
options = {
|
||||
services.dysnomia = {
|
||||
dysnomia = {
|
||||
|
||||
enable = mkOption {
|
||||
type = types.bool;
|
||||
@ -142,7 +142,7 @@ in
|
||||
|
||||
environment.systemPackages = [ cfg.package ];
|
||||
|
||||
services.dysnomia.package = pkgs.dysnomia.override (origArgs: {
|
||||
dysnomia.package = pkgs.dysnomia.override (origArgs: {
|
||||
enableApacheWebApplication = config.services.httpd.enable;
|
||||
enableAxis2WebService = config.services.tomcat.axis2.enable;
|
||||
enableEjabberdDump = config.services.ejabberd.enable;
|
||||
@ -153,7 +153,7 @@ in
|
||||
enableMongoDatabase = config.services.mongodb.enable;
|
||||
});
|
||||
|
||||
services.dysnomia.properties = {
|
||||
dysnomia.properties = {
|
||||
hostname = config.networking.hostName;
|
||||
inherit (config.nixpkgs.localSystem) system;
|
||||
|
||||
@ -171,7 +171,7 @@ in
|
||||
}}");
|
||||
};
|
||||
|
||||
services.dysnomia.containers = lib.recursiveUpdate ({
|
||||
dysnomia.containers = lib.recursiveUpdate ({
|
||||
process = {};
|
||||
wrapper = {};
|
||||
}
|
||||
|
@ -57,12 +57,6 @@ let
|
||||
--nodaemon --syslog --prefix=${name} --pidfile /run/${name}/${name}.pid ${name}
|
||||
'';
|
||||
|
||||
mkPidFileDir = name: ''
|
||||
mkdir -p /run/${name}
|
||||
chmod 0700 /run/${name}
|
||||
chown -R graphite:graphite /run/${name}
|
||||
'';
|
||||
|
||||
carbonEnv = {
|
||||
PYTHONPATH = let
|
||||
cenv = pkgs.python.buildEnv.override {
|
||||
@ -412,18 +406,16 @@ in {
|
||||
after = [ "network.target" ];
|
||||
environment = carbonEnv;
|
||||
serviceConfig = {
|
||||
RuntimeDirectory = name;
|
||||
ExecStart = "${pkgs.pythonPackages.twisted}/bin/twistd ${carbonOpts name}";
|
||||
User = "graphite";
|
||||
Group = "graphite";
|
||||
PermissionsStartOnly = true;
|
||||
PIDFile="/run/${name}/${name}.pid";
|
||||
};
|
||||
preStart = mkPidFileDir name + ''
|
||||
|
||||
mkdir -p ${cfg.dataDir}/whisper
|
||||
chmod 0700 ${cfg.dataDir}/whisper
|
||||
chown graphite:graphite ${cfg.dataDir}
|
||||
chown graphite:graphite ${cfg.dataDir}/whisper
|
||||
preStart = ''
|
||||
install -dm0700 -o graphite -g graphite ${cfg.dataDir}
|
||||
install -dm0700 -o graphite -g graphite ${cfg.dataDir}/whisper
|
||||
'';
|
||||
};
|
||||
})
|
||||
@ -436,12 +428,12 @@ in {
|
||||
after = [ "network.target" ];
|
||||
environment = carbonEnv;
|
||||
serviceConfig = {
|
||||
RuntimeDirectory = name;
|
||||
ExecStart = "${pkgs.pythonPackages.twisted}/bin/twistd ${carbonOpts name}";
|
||||
User = "graphite";
|
||||
Group = "graphite";
|
||||
PIDFile="/run/${name}/${name}.pid";
|
||||
};
|
||||
preStart = mkPidFileDir name;
|
||||
};
|
||||
})
|
||||
|
||||
@ -452,12 +444,12 @@ in {
|
||||
after = [ "network.target" ];
|
||||
environment = carbonEnv;
|
||||
serviceConfig = {
|
||||
RuntimeDirectory = name;
|
||||
ExecStart = "${pkgs.pythonPackages.twisted}/bin/twistd ${carbonOpts name}";
|
||||
User = "graphite";
|
||||
Group = "graphite";
|
||||
PIDFile="/run/${name}/${name}.pid";
|
||||
};
|
||||
preStart = mkPidFileDir name;
|
||||
};
|
||||
})
|
||||
|
||||
|
@ -14,6 +14,10 @@ let
|
||||
global = {
|
||||
"plugins directory" = "${wrappedPlugins}/libexec/netdata/plugins.d ${pkgs.netdata}/libexec/netdata/plugins.d";
|
||||
};
|
||||
web = {
|
||||
"web files owner" = "root";
|
||||
"web files group" = "root";
|
||||
};
|
||||
};
|
||||
mkConfig = generators.toINI {} (recursiveUpdate localConfig cfg.config);
|
||||
configFile = pkgs.writeText "netdata.conf" (if cfg.configText != null then cfg.configText else mkConfig);
|
||||
|
@ -23,7 +23,7 @@ let
|
||||
makeWrapper ${pkgs.lightdm_gtk_greeter}/sbin/lightdm-gtk-greeter \
|
||||
$out/greeter \
|
||||
--prefix PATH : "${pkgs.glibc.bin}/bin" \
|
||||
--set GDK_PIXBUF_MODULE_FILE "${pkgs.gdk_pixbuf.out}/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache" \
|
||||
--set GDK_PIXBUF_MODULE_FILE "${pkgs.librsvg.out}/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache" \
|
||||
--set GTK_PATH "${theme}:${pkgs.gtk3.out}" \
|
||||
--set GTK_EXE_PREFIX "${theme}" \
|
||||
--set GTK_DATA_PREFIX "${theme}" \
|
||||
|
@ -43,6 +43,7 @@ def write_loader_conf(profile, generation):
|
||||
f.write("default nixos-generation-%d\n" % (generation))
|
||||
if not @editor@:
|
||||
f.write("editor 0");
|
||||
f.write("console-mode @consoleMode@\n");
|
||||
os.rename("@efiSysMountPoint@/loader/loader.conf.tmp", "@efiSysMountPoint@/loader/loader.conf")
|
||||
|
||||
def profile_path(profile, generation, name):
|
||||
|
@ -22,6 +22,8 @@ let
|
||||
|
||||
editor = if cfg.editor then "True" else "False";
|
||||
|
||||
inherit (cfg) consoleMode;
|
||||
|
||||
inherit (efi) efiSysMountPoint canTouchEfiVariables;
|
||||
};
|
||||
in {
|
||||
@ -52,6 +54,38 @@ in {
|
||||
compatibility.
|
||||
'';
|
||||
};
|
||||
|
||||
consoleMode = mkOption {
|
||||
default = "keep";
|
||||
|
||||
type = types.enum [ "0" "1" "2" "auto" "max" "keep" ];
|
||||
|
||||
description = ''
|
||||
The resolution of the console. The following values are valid:
|
||||
</para>
|
||||
<para>
|
||||
<itemizedlist>
|
||||
<listitem><para>
|
||||
<literal>"0"</literal>: Standard UEFI 80x25 mode
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
<literal>"1"</literal>: 80x50 mode, not supported by all devices
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
<literal>"2"</literal>: The first non-standard mode provided by the device firmware, if any
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
<literal>"auto"</literal>: Pick a suitable mode automatically using heuristics
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
<literal>"max"</literal>: Pick the highest-numbered available mode
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
<literal>"keep"</literal>: Keep the mode selected by firmware (the default)
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
|
@ -55,6 +55,15 @@ with lib;
|
||||
'';
|
||||
};
|
||||
|
||||
device = mkOption {
|
||||
default = "TPPS/2 IBM TrackPoint";
|
||||
type = types.str;
|
||||
description = ''
|
||||
The device name of the trackpoint. You can check with xinput.
|
||||
Some newer devices (example x1c6) use "TPPS/2 Elan TrackPoint".
|
||||
'';
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
};
|
||||
@ -68,12 +77,12 @@ with lib;
|
||||
(mkIf cfg.enable {
|
||||
services.udev.extraRules =
|
||||
''
|
||||
ACTION=="add|change", SUBSYSTEM=="input", ATTR{name}=="TPPS/2 IBM TrackPoint", ATTR{device/speed}="${toString cfg.speed}", ATTR{device/sensitivity}="${toString cfg.sensitivity}"
|
||||
ACTION=="add|change", SUBSYSTEM=="input", ATTR{name}=="${cfg.device}", ATTR{device/speed}="${toString cfg.speed}", ATTR{device/sensitivity}="${toString cfg.sensitivity}"
|
||||
'';
|
||||
|
||||
system.activationScripts.trackpoint =
|
||||
''
|
||||
${config.systemd.package}/bin/udevadm trigger --attr-match=name="TPPS/2 IBM TrackPoint"
|
||||
${config.systemd.package}/bin/udevadm trigger --attr-match=name="${cfg.device}"
|
||||
'';
|
||||
})
|
||||
|
||||
@ -81,7 +90,7 @@ with lib;
|
||||
services.xserver.inputClassSections =
|
||||
[''
|
||||
Identifier "Trackpoint Wheel Emulation"
|
||||
MatchProduct "${if cfg.fakeButtons then "PS/2 Generic Mouse" else "ETPS/2 Elantech TrackPoint|Elantech PS/2 TrackPoint|TPPS/2 IBM TrackPoint|DualPoint Stick|Synaptics Inc. Composite TouchPad / TrackPoint|ThinkPad USB Keyboard with TrackPoint|USB Trackpoint pointing device|Composite TouchPad / TrackPoint"}"
|
||||
MatchProduct "${if cfg.fakeButtons then "PS/2 Generic Mouse" else "ETPS/2 Elantech TrackPoint|Elantech PS/2 TrackPoint|TPPS/2 IBM TrackPoint|DualPoint Stick|Synaptics Inc. Composite TouchPad / TrackPoint|ThinkPad USB Keyboard with TrackPoint|USB Trackpoint pointing device|Composite TouchPad / TrackPoint|${cfg.device}"}"
|
||||
MatchDevicePath "/dev/input/event*"
|
||||
Option "EmulateWheel" "true"
|
||||
Option "EmulateWheelButton" "2"
|
||||
|
@ -12,7 +12,9 @@ let
|
||||
'';
|
||||
});
|
||||
|
||||
pythonPackages = (super.python.override {
|
||||
# Override certifi so that it accepts fake certificate for Let's Encrypt
|
||||
# Need to override the attribute used by simp_le, which is python3Packages
|
||||
python3Packages = (super.python3.override {
|
||||
packageOverrides = lib.const (pysuper: {
|
||||
certifi = pysuper.certifi.overridePythonAttrs (attrs: {
|
||||
postPatch = (attrs.postPatch or "") + ''
|
||||
|
@ -19,8 +19,12 @@ import ./make-test.nix ({ pkgs, ...} : {
|
||||
startAll;
|
||||
|
||||
$netdata->waitForUnit("netdata.service");
|
||||
# check if netdata can read disk ops for root owned processes.
|
||||
# if > 0, successful. verifies both netdata working and
|
||||
|
||||
# check if the netdata main page loads.
|
||||
$netdata->succeed("curl --fail http://localhost:19999/");
|
||||
|
||||
# check if netdata can read disk ops for root owned processes.
|
||||
# if > 0, successful. verifies both netdata working and
|
||||
# apps.plugin has elevated capabilities.
|
||||
my $cmd = <<'CMD';
|
||||
curl -s http://localhost:19999/api/v1/data\?chart=users.pwrites | \
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchFromGitHub, cairo, fftw, gtkmm2, lv2, lvtk, pkgconfig, python }:
|
||||
{ stdenv, fetchFromGitHub, cairo, fftw, gtkmm2, lv2, lvtk, pkgconfig, python3 }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "ams-lv2-${version}";
|
||||
@ -12,13 +12,13 @@ stdenv.mkDerivation rec {
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ cairo fftw gtkmm2 lv2 lvtk python ];
|
||||
buildInputs = [ cairo fftw gtkmm2 lv2 lvtk ];
|
||||
|
||||
configurePhase = "python waf configure --prefix=$out";
|
||||
configurePhase = "${python3.interpreter} waf configure --prefix=$out";
|
||||
|
||||
buildPhase = "python waf";
|
||||
buildPhase = "${python3.interpreter} waf";
|
||||
|
||||
installPhase = "python waf install";
|
||||
installPhase = "${python3.interpreter} waf install";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "An LV2 port of the internal modules found in Alsa Modular Synth";
|
||||
|
65
pkgs/applications/audio/cadence/default.nix
Normal file
65
pkgs/applications/audio/cadence/default.nix
Normal file
@ -0,0 +1,65 @@
|
||||
{ stdenv
|
||||
, fetchurl
|
||||
, pkgconfig
|
||||
, qtbase
|
||||
, makeWrapper
|
||||
, jack2Full
|
||||
, python3Packages
|
||||
, a2jmidid
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "0.9.0";
|
||||
name = "cadence";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/falkTX/Cadence/archive/v${version}.tar.gz";
|
||||
sha256 = "07z1mnb0bmldb3i31bgw816pnvlvr9gawr51rpx3mhixg5wpiqzb";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
makeWrapper
|
||||
pkgconfig
|
||||
qtbase
|
||||
];
|
||||
|
||||
apps = [
|
||||
"cadence"
|
||||
"cadence-jacksettings"
|
||||
"cadence-pulse2loopback"
|
||||
"claudia"
|
||||
"cadence-aloop-daemon"
|
||||
"cadence-logs"
|
||||
"cadence-render"
|
||||
"catarina"
|
||||
"claudia-launcher"
|
||||
"cadence-pulse2jack"
|
||||
"cadence-session-start"
|
||||
"catia"
|
||||
];
|
||||
|
||||
makeFlags = ''
|
||||
PREFIX=""
|
||||
DESTDIR=$(out)
|
||||
'';
|
||||
|
||||
propagatedBuildInputs = with python3Packages; [ pyqt5 ];
|
||||
|
||||
postInstall = ''
|
||||
# replace with our own wrappers.
|
||||
for app in $apps; do
|
||||
rm $out/bin/$app
|
||||
makeWrapper ${python3Packages.python.interpreter} $out/bin/$app \
|
||||
--set PYTHONPATH "$PYTHONPATH:$out/share/cadence" \
|
||||
--add-flags "-O $out/share/cadence/src/$app.py"
|
||||
done
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = https://github.com/falkTX/Cadence/;
|
||||
description = "Collection of tools useful for audio production";
|
||||
license = stdenv.lib.licenses.mit;
|
||||
maintainers = with stdenv.lib.maintainers; [ genesis ];
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
@ -1,13 +1,18 @@
|
||||
{ fetchurl, stdenv, dpkg, xorg, alsaLib, makeWrapper, openssl, freetype
|
||||
{ fetchurl, stdenv, squashfsTools, xorg, alsaLib, makeWrapper, openssl, freetype
|
||||
, glib, pango, cairo, atk, gdk_pixbuf, gtk2, cups, nspr, nss, libpng
|
||||
, libgcrypt, systemd, fontconfig, dbus, expat, ffmpeg_0_10, curl, zlib, gnome3 }:
|
||||
|
||||
let
|
||||
# Please update the stable branch!
|
||||
# Latest version number can be found at:
|
||||
# http://repository-origin.spotify.com/pool/non-free/s/spotify-client/
|
||||
# Be careful not to pick the testing version.
|
||||
version = "1.0.80.480.g51b03ac3-13";
|
||||
# "rev" decides what is actually being downloaded
|
||||
version = "1.0.80.474.gef6b503e-7";
|
||||
# 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:
|
||||
# https://github.com/canonical-websites/snapcraft.io/blob/master/webapp/publisher/snaps/views.py
|
||||
rev = "16";
|
||||
|
||||
|
||||
deps = [
|
||||
alsaLib
|
||||
@ -49,12 +54,20 @@ in
|
||||
stdenv.mkDerivation {
|
||||
name = "spotify-${version}";
|
||||
|
||||
# fetch from snapcraft instead of the debian repository most repos fetch from.
|
||||
# That is a bit more cumbersome. But the debian repository only keeps the last
|
||||
# two versions, while snapcraft should provide versions indefinately:
|
||||
# https://forum.snapcraft.io/t/how-can-a-developer-remove-her-his-app-from-snap-store/512
|
||||
|
||||
# This is the next-best thing, since we're not allowed to re-distribute
|
||||
# spotify ourselves:
|
||||
# https://community.spotify.com/t5/Desktop-Linux/Redistribute-Spotify-on-Linux-Distributions/td-p/1695334
|
||||
src = fetchurl {
|
||||
url = "https://repository-origin.spotify.com/pool/non-free/s/spotify-client/spotify-client_${version}_amd64.deb";
|
||||
sha256 = "e32f4816ae79dbfa0c14086e76df3bc83d526402aac1dbba534127fc00fe50ea";
|
||||
url = "https://api.snapcraft.io/api/v1/snaps/download/pOBIoZ2LrCB3rDohMxoYGnbN14EHOgD7_${rev}.snap";
|
||||
sha512 = "45b7ab574b30fb368e0b6f4dd60addbfd1ddc02173b4f98b31c524eed49073432352a361e75959ce8e2f752231e93c79ca1b538c4bd295c935d1e2e0585d147f";
|
||||
};
|
||||
|
||||
buildInputs = [ dpkg makeWrapper ];
|
||||
buildInputs = [ squashfsTools makeWrapper ];
|
||||
|
||||
doConfigure = false;
|
||||
doBuild = false;
|
||||
@ -63,7 +76,23 @@ stdenv.mkDerivation {
|
||||
|
||||
unpackPhase = ''
|
||||
runHook preUnpack
|
||||
dpkg-deb -x $src .
|
||||
unsquashfs "$src" '/usr/share/spotify' '/usr/bin/spotify' '/meta/snap.yaml'
|
||||
cd squashfs-root
|
||||
if ! grep -q 'grade: stable' meta/snap.yaml; then
|
||||
# Unfortunately this check is not reliable: At the moment (2018-07-26) the
|
||||
# latest version in the "edge" channel is also marked as stable.
|
||||
echo "The snap package is marked as unstable:"
|
||||
grep 'grade: ' meta/snap.yaml
|
||||
echo "You probably chose the wrong revision."
|
||||
exit 1
|
||||
fi
|
||||
if ! grep -q '${version}' meta/snap.yaml; then
|
||||
echo "Package version differs from version found in snap metadata:"
|
||||
grep 'version: ' meta/snap.yaml
|
||||
echo "While the nix package specifies: ${version}."
|
||||
echo "You probably chose the wrong revision or forgot to update the nix version."
|
||||
exit 1
|
||||
fi
|
||||
runHook postUnpack
|
||||
'';
|
||||
|
||||
@ -75,6 +104,8 @@ stdenv.mkDerivation {
|
||||
mkdir -p $libdir
|
||||
mv ./usr/* $out/
|
||||
|
||||
cp meta/snap.yaml $out
|
||||
|
||||
# Work around Spotify referring to a specific minor version of
|
||||
# OpenSSL.
|
||||
|
||||
|
49
pkgs/applications/audio/spotify/update.sh
Normal file
49
pkgs/applications/audio/spotify/update.sh
Normal file
@ -0,0 +1,49 @@
|
||||
channel="stable" # stable/candidate/edge
|
||||
nixpkgs="$(git rev-parse --show-toplevel)"
|
||||
spotify_nix="$nixpkgs/pkgs/applications/audio/spotify/default.nix"
|
||||
|
||||
|
||||
|
||||
# create bash array from snap info
|
||||
snap_info=($(
|
||||
curl -H 'X-Ubuntu-Series: 16' \
|
||||
"https://api.snapcraft.io/api/v1/snaps/details/spotify?channel=$channel" \
|
||||
| jq --raw-output \
|
||||
'.revision,.download_sha512,.version,.last_updated'
|
||||
))
|
||||
|
||||
revision="${snap_info[0]}"
|
||||
sha512="${snap_info[1]}"
|
||||
version="${snap_info[2]}"
|
||||
last_updated="${snap_info[3]}"
|
||||
|
||||
# find the last commited version
|
||||
version_pre=$(
|
||||
git grep 'version\s*=' HEAD "$spotify_nix" \
|
||||
| sed -Ene 's/.*"(.*)".*/\1/p'
|
||||
)
|
||||
|
||||
if [[ "$version_pre" = "$version" ]]; then
|
||||
echo "Spotify is already up ot date"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
echo "Updating from ${version_pre} to ${version}, released on ${last_updated}"
|
||||
|
||||
# search-andreplace revision, hash and version
|
||||
sed --regexp-extended \
|
||||
-e 's/rev\s*=\s*"[0-9]+"\s*;/rev = "'"${revision}"'";/' \
|
||||
-e 's/sha512\s*=\s*".{128}"\s*;/sha512 = "'"${sha512}"'";/' \
|
||||
-e 's/version\s*=\s*".*"\s*;/version = "'"${version}"'";/' \
|
||||
-i "$spotify_nix"
|
||||
|
||||
if ! nix-build -A spotify "$nixpkgs"; then
|
||||
echo "The updated spotify failed to build."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
git add "$spotify_nix"
|
||||
# show diff for review
|
||||
git diff HEAD
|
||||
# prepare commit message, but allow edit
|
||||
git commit --edit --message "spotify: $version_pre -> $version"
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, pkgs, fetchurl, makeWrapper, gvfs, atomEnv}:
|
||||
{ stdenv, pkgs, fetchurl, makeWrapper, wrapGAppsHook, gvfs, gtk3, atomEnv }:
|
||||
|
||||
let
|
||||
common = pname: {version, sha256, beta ? null}:
|
||||
@ -14,7 +14,19 @@ let
|
||||
inherit sha256;
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
nativeBuildInputs = [
|
||||
wrapGAppsHook # Fix error: GLib-GIO-ERROR **: No GSettings schemas are installed on the system
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
gtk3 # Fix error: GLib-GIO-ERROR **: Settings schema 'org.gtk.Settings.FileChooser' is not installed
|
||||
];
|
||||
|
||||
preFixup = ''
|
||||
gappsWrapperArgs+=(
|
||||
--prefix "PATH" : "${gvfs}/bin" \
|
||||
)
|
||||
'';
|
||||
|
||||
buildCommand = ''
|
||||
mkdir -p $out/usr/
|
||||
@ -25,9 +37,6 @@ let
|
||||
rm -r $out/share/lintian
|
||||
rm -r $out/usr/
|
||||
sed -i "s/${pname})/.${pname}-wrapped)/" $out/bin/${pname}
|
||||
# sed -i "s/'${pname}'/'.${pname}-wrapped'/" $out/bin/${pname}
|
||||
wrapProgram $out/bin/${pname} \
|
||||
--prefix "PATH" : "${gvfs}/bin"
|
||||
|
||||
fixupPhase
|
||||
|
||||
|
@ -12,14 +12,14 @@ let
|
||||
};
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
version = "1.0";
|
||||
version = "1.1";
|
||||
name = "renderdoc-${version}";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "baldurk";
|
||||
repo = "renderdoc";
|
||||
rev = "v${version}";
|
||||
sha256 = "0l7pjxfrly4llryjnwk42dzx65n78wc98h56qm4yh04ja8fdbx2y";
|
||||
sha256 = "0kb9m1dm0mnglqyh1srvl0f1bgjghxzbqarn0xfqw49wphqwhmcd";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
|
@ -1,7 +1,8 @@
|
||||
{ stdenv, fetchFromGitHub, pythonPackages }:
|
||||
{ stdenv, fetchFromGitHub, python3Packages }:
|
||||
|
||||
pythonPackages.buildPythonApplication rec {
|
||||
name = "antfs-cli-unstable-2017-02-11";
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "antfs-cli";
|
||||
version = "unstable-2017-02-11";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://github.com/Tigge/antfs-cli;
|
||||
@ -17,5 +18,5 @@ pythonPackages.buildPythonApplication rec {
|
||||
sha256 = "0v8y64kldfbs809j1g9d75dd1vxq7mfxnp4b45pz8anpxhjf64fy";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ pythonPackages.openant ];
|
||||
propagatedBuildInputs = [ python3Packages.openant ];
|
||||
}
|
||||
|
@ -1,19 +1,19 @@
|
||||
{ stdenv, fetchFromGitHub, rustPlatform, cmake, CoreServices, cf-private }:
|
||||
{ stdenv, fetchFromGitHub, rustPlatform, cmake, pkgconfig, openssl, CoreServices, cf-private }:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
name = "gutenberg-${version}";
|
||||
version = "0.3.4";
|
||||
version = "0.4.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Keats";
|
||||
repo = "gutenberg";
|
||||
rev = "v${version}";
|
||||
sha256 = "1v26q1m3bx7mdmmwgd6p601ncf13rr4rrx9s06fiy8vnd0ar1vlf";
|
||||
sha256 = "1i2jcyq6afswxyjifhl5irv84licsad7c83yiy17454mplvrmyg2";
|
||||
};
|
||||
|
||||
cargoSha256 = "0cdy0wvibkpnmlqwxvn02a2k2vqy6zdqzflj2dh6g1cjbz1j8qh5";
|
||||
cargoSha256 = "0hzxwvb5m8mvpfxys4ikkaag6khflh5bfglmay11wf6ayighv834";
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
nativeBuildInputs = [ cmake pkgconfig openssl ];
|
||||
buildInputs = stdenv.lib.optionals stdenv.isDarwin [ CoreServices cf-private ];
|
||||
|
||||
postInstall = ''
|
||||
|
@ -1,14 +1,14 @@
|
||||
{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, libusb1, rtl-sdr }:
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
version = "2018-02-23";
|
||||
version = "18.05";
|
||||
name = "rtl_433-${version}";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "merbanan";
|
||||
repo = "rtl_433";
|
||||
rev = "51d275c";
|
||||
sha256 = "1j443wmws5xgc18s47bvw3pqljk747izypz52rmlrvs16v96cg2g";
|
||||
rev = "18.05";
|
||||
sha256 = "0vfhnjyrx6w1m8g1hww5vdz4zgdlhcaps9g0397mxlki4sm77wpc";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ autoreconfHook pkgconfig ];
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -9,15 +9,17 @@
|
||||
with lib;
|
||||
|
||||
let
|
||||
version = "3.9.0";
|
||||
version = "3.10.0";
|
||||
ver = stdenv.lib.elemAt (stdenv.lib.splitString "." version);
|
||||
versionMajor = ver 0;
|
||||
versionMinor = ver 1;
|
||||
versionPatch = ver 2;
|
||||
gitCommit = "191fece";
|
||||
gitCommit = "dd10d17";
|
||||
# version is in vendor/k8s.io/kubernetes/pkg/version/base.go
|
||||
k8sversion = "v1.9.1";
|
||||
k8sgitcommit = "a0ce1bc657";
|
||||
k8sversion = "v1.10.0";
|
||||
k8sgitcommit = "b81c8f8";
|
||||
k8sgitMajor = "0";
|
||||
k8sgitMinor = "1";
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "openshift-origin-${version}";
|
||||
inherit version;
|
||||
@ -26,7 +28,7 @@ in stdenv.mkDerivation rec {
|
||||
owner = "openshift";
|
||||
repo = "origin";
|
||||
rev = "v${version}";
|
||||
sha256 = "06k0zilfyvll7z34yirraslgpwgah9k6y5i6wgi7f00a79k76k78";
|
||||
sha256 = "13aglz005jl48z17vnggkvr39l5h6jcqgkfyvkaz4c3jakms1hi9";
|
||||
};
|
||||
|
||||
# go > 1.10
|
||||
@ -38,15 +40,15 @@ in stdenv.mkDerivation rec {
|
||||
patchPhase = ''
|
||||
patchShebangs ./hack
|
||||
|
||||
substituteInPlace pkg/oc/bootstrap/docker/host/host.go \
|
||||
substituteInPlace pkg/oc/clusterup/docker/host/host.go \
|
||||
--replace 'nsenter --mount=/rootfs/proc/1/ns/mnt findmnt' \
|
||||
'nsenter --mount=/rootfs/proc/1/ns/mnt ${utillinux}/bin/findmnt'
|
||||
|
||||
substituteInPlace pkg/oc/bootstrap/docker/host/host.go \
|
||||
substituteInPlace pkg/oc/clusterup/docker/host/host.go \
|
||||
--replace 'nsenter --mount=/rootfs/proc/1/ns/mnt mount' \
|
||||
'nsenter --mount=/rootfs/proc/1/ns/mnt ${utillinux}/bin/mount'
|
||||
|
||||
substituteInPlace pkg/oc/bootstrap/docker/host/host.go \
|
||||
substituteInPlace pkg/oc/clusterup/docker/host/host.go \
|
||||
--replace 'nsenter --mount=/rootfs/proc/1/ns/mnt mkdir' \
|
||||
'nsenter --mount=/rootfs/proc/1/ns/mnt ${coreutils}/bin/mkdir'
|
||||
'';
|
||||
@ -61,6 +63,8 @@ in stdenv.mkDerivation rec {
|
||||
echo "OS_GIT_COMMIT=${gitCommit}" >> os-version-defs
|
||||
echo "KUBE_GIT_VERSION=${k8sversion}" >> os-version-defs
|
||||
echo "KUBE_GIT_COMMIT=${k8sgitcommit}" >> os-version-defs
|
||||
echo "KUBE_GIT_MAJOR=${k8sgitMajor}" >> os-version-defs
|
||||
echo "KUBE_GIT_MINOR=${k8sgitMinor}" >> os-version-defs
|
||||
export OS_VERSION_FILE="os-version-defs"
|
||||
export CC=clang
|
||||
make all WHAT='${concatStringsSep " " components}'
|
||||
|
@ -3,9 +3,24 @@
|
||||
, dbus, libX11, xorg, libXi, libXcursor, libXdamage, libXrandr, libXcomposite
|
||||
, libXext, libXfixes, libXrender, libXtst, libXScrnSaver, nss, nspr, alsaLib
|
||||
, cups, expat, udev
|
||||
# Unfortunately this also overwrites the UI language (not just the spell
|
||||
# checking language!):
|
||||
, hunspellDicts, spellcheckerLanguage ? null # E.g. "de_DE"
|
||||
# For a full list of available languages:
|
||||
# $ cat pkgs/development/libraries/hunspell/dictionaries.nix | grep "dictFileName =" | awk '{ print $3 }'
|
||||
}:
|
||||
|
||||
let
|
||||
customLanguageWrapperArgs = (with lib;
|
||||
let
|
||||
# E.g. "de_DE" -> "de-de" (spellcheckerLanguage -> hunspellDict)
|
||||
spellLangComponents = splitString "_" spellcheckerLanguage;
|
||||
hunspellDict = elemAt spellLangComponents 0 + "-" + toLower (elemAt spellLangComponents 1);
|
||||
in if spellcheckerLanguage != null
|
||||
then ''
|
||||
--set HUNSPELL_DICTIONARIES "${hunspellDicts.${hunspellDict}}/share/hunspell" \
|
||||
--set LC_MESSAGES "${spellcheckerLanguage}"''
|
||||
else "");
|
||||
rpath = lib.makeLibraryPath [
|
||||
alsaLib
|
||||
atk
|
||||
@ -68,6 +83,7 @@ in stdenv.mkDerivation rec {
|
||||
--set-rpath ${rpath}:$out/libexec $out/libexec/signal-desktop
|
||||
wrapProgram $out/libexec/signal-desktop \
|
||||
--prefix XDG_DATA_DIRS : "${gtk3}/share/gsettings-schemas/${gtk3.name}/" \
|
||||
${customLanguageWrapperArgs} \
|
||||
"''${gappsWrapperArgs[@]}"
|
||||
|
||||
# Symlink to bin
|
||||
|
@ -14,7 +14,7 @@ in {
|
||||
stable = mkTelegram stableVersion;
|
||||
preview = mkTelegram (stableVersion // {
|
||||
stable = false;
|
||||
version = "1.3.11";
|
||||
sha256Hash = "057b7ccba7k2slzbp9xzcs3fni40x7gz3wy13xfgxywr12f04h1r";
|
||||
version = "1.3.12";
|
||||
sha256Hash = "00z4ljs4fvbk7sf8wv1v50kln26gv8q12x6q41ai9gfzkvq5f69a";
|
||||
});
|
||||
}
|
||||
|
@ -2,41 +2,59 @@
|
||||
, fetchurl
|
||||
, dbus
|
||||
, zlib, fontconfig
|
||||
, qtbase, qtmultimedia
|
||||
, libjson, libgpgerror
|
||||
, libX11, libxcb, libXau, libXdmcp, freetype, libbsd
|
||||
, pythonPackages, squashfsTools, makeDesktopItem
|
||||
}:
|
||||
|
||||
with stdenv.lib;
|
||||
let
|
||||
libPath = makeLibraryPath
|
||||
[ stdenv.cc.cc dbus libX11 zlib libX11 libxcb libXau libXdmcp freetype fontconfig libbsd ];
|
||||
[ stdenv.cc.cc qtbase qtmultimedia dbus libX11 zlib libX11 libxcb libXau libXdmcp freetype fontconfig libbsd libjson libgpgerror];
|
||||
|
||||
version = "2016-1-17";
|
||||
version = "2018-1-30";
|
||||
|
||||
mainbin = "SoulseekQt-" + (version) +"-"+ (if stdenv.is64bit then "64bit" else "32bit");
|
||||
srcs = {
|
||||
"i686-linux" = fetchurl {
|
||||
url = "https://www.dropbox.com/s/kebk1b5ib1m3xxw/${mainbin}.tgz";
|
||||
sha256 = "0r9rhnfslkgbw3l7fnc0rcfqjh58amgh5p33kwam0qvn1h1frnir";
|
||||
};
|
||||
|
||||
"x86_64-linux" = fetchurl {
|
||||
url = "https://www.dropbox.com/s/7qh902qv2sxyp6p/${mainbin}.tgz";
|
||||
sha256 = "05l3smpdvw8xdhv4v8a28j0yi1kvzhrha2ck23g4bl7x9wkay4cc";
|
||||
url = "https://www.dropbox.com/s/0vi87eef3ooh7iy/${mainbin}.tgz";
|
||||
sha256 = "0d1cayxr1a4j19bc5a3qp9pg22ggzmd55b6f5av3lc6lvwqqg4w6";
|
||||
};
|
||||
};
|
||||
|
||||
desktopItem = makeDesktopItem {
|
||||
name = "SoulseekQt";
|
||||
exec = "soulseekqt";
|
||||
icon = "$out/share/soulseekqt/";
|
||||
comment = "Official Qt SoulSeek client";
|
||||
desktopName = "SoulseekQt";
|
||||
genericName = "SoulseekQt";
|
||||
categories = "Network;";
|
||||
};
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
|
||||
name = "soulseekqt-${version}";
|
||||
inherit version;
|
||||
src = srcs."${stdenv.system}" or (throw "unsupported system: ${stdenv.system}");
|
||||
|
||||
sourceRoot = ".";
|
||||
buildPhase = ":"; # nothing to build
|
||||
dontBuild = true;
|
||||
|
||||
buildInputs = [ pythonPackages.binwalk squashfsTools ];
|
||||
|
||||
# avoid usage of appimagetool
|
||||
unpackCmd = ''
|
||||
export HOME=$(pwd) # workaround for binwalk
|
||||
tar xvf $curSrc && binwalk --quiet \
|
||||
${mainbin}.AppImage -D 'squashfs:.squashfs:unsquashfs %e'
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
cp ${mainbin} $out/bin/soulseekqt
|
||||
mkdir -p $out/{bin,share/soulseekqt}
|
||||
cd squashfs-root/
|
||||
cp -R soulseek.png translations $out/share/soulseekqt
|
||||
cp SoulseekQt $out/bin/soulseekqt
|
||||
'';
|
||||
|
||||
fixupPhase = ''
|
||||
@ -50,6 +68,6 @@ in stdenv.mkDerivation rec {
|
||||
homepage = http://www.soulseekqt.net;
|
||||
license = licenses.unfree;
|
||||
maintainers = [ maintainers.genesis ];
|
||||
platforms = [ "i686-linux" "x86_64-linux" ];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
};
|
||||
}
|
||||
|
@ -8,10 +8,6 @@ let
|
||||
# https://trac.sagemath.org/ticket/15980 for tracking of python3 support
|
||||
python = nixpkgs.python2.override {
|
||||
packageOverrides = self: super: {
|
||||
cypari2 = super.cypari2.override { inherit pari; };
|
||||
|
||||
cysignals = super.cysignals.override { inherit pari; };
|
||||
|
||||
# python packages that appear unmaintained and were not accepted into the nixpkgs
|
||||
# tree because of that. These packages are only dependencies of the more-or-less
|
||||
# deprecated sagenb. However sagenb is still a default dependency and the doctests
|
||||
@ -24,7 +20,7 @@ let
|
||||
pybrial = self.callPackage ./pybrial.nix {};
|
||||
|
||||
sagelib = self.callPackage ./sagelib.nix {
|
||||
inherit flint ecl pari eclib ntl arb;
|
||||
inherit flint ecl arb;
|
||||
inherit sage-src openblas-blas-pc openblas-cblas-pc openblas-lapack-pc pynac singular;
|
||||
linbox = nixpkgs.linbox.override { withSage = true; };
|
||||
};
|
||||
@ -38,20 +34,20 @@ let
|
||||
};
|
||||
|
||||
env-locations = self.callPackage ./env-locations.nix {
|
||||
inherit pari_data ecl pari;
|
||||
inherit pari_data ecl;
|
||||
inherit singular;
|
||||
three = nodePackages_8_x.three;
|
||||
mathjax = nodePackages_8_x.mathjax;
|
||||
};
|
||||
|
||||
sage-env = self.callPackage ./sage-env.nix {
|
||||
inherit sage-src python rWrapper openblas-cblas-pc ecl singular eclib pari palp flint pynac pythonEnv giac ntl;
|
||||
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 pari eclib pythonEnv ntl;
|
||||
inherit sage-src openblas-blas-pc openblas-cblas-pc openblas-lapack-pc pynac singular giac;
|
||||
inherit pythonEnv;
|
||||
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;
|
||||
};
|
||||
@ -106,41 +102,18 @@ let
|
||||
});
|
||||
};
|
||||
|
||||
# https://trac.sagemath.org/ticket/25532
|
||||
ntl = nixpkgs.ntl.overrideAttrs (oldAttrs: rec {
|
||||
name = "ntl-10.5.0";
|
||||
sourceRoot = "${name}/src";
|
||||
src = fetchurl {
|
||||
url = "http://www.shoup.net/ntl/${name}.tar.gz";
|
||||
sha256 = "1lmldaldgfr2b2a6585m3np5ds8bq1bis2s1ajycjm49vp4kc2xr";
|
||||
};
|
||||
});
|
||||
|
||||
giac = nixpkgs.giac.override { inherit ntl; };
|
||||
arb = nixpkgs.arb.override { inherit flint; };
|
||||
|
||||
# update causes issues
|
||||
# https://groups.google.com/forum/#!topic/sage-packaging/cS3v05Q0zso
|
||||
# https://trac.sagemath.org/ticket/24735
|
||||
singular = (nixpkgs.singular.override { inherit ntl flint; }).overrideAttrs (oldAttrs: {
|
||||
name = "singular-4.1.0p3";
|
||||
src = fetchurl {
|
||||
url = "http://www.mathematik.uni-kl.de/ftp/pub/Math/Singular/SOURCES/4-1-0/singular-4.1.0p3.tar.gz";
|
||||
sha256 = "105zs3zk46b1cps403ap9423rl48824ap5gyrdgmg8fma34680a4";
|
||||
};
|
||||
});
|
||||
singular = nixpkgs.singular.override { inherit flint; };
|
||||
|
||||
# *not* to confuse with the python package "pynac"
|
||||
# https://trac.sagemath.org/ticket/24838 (depends on arb update)
|
||||
pynac = nixpkgs.pynac.override { inherit singular flint; };
|
||||
|
||||
eclib = nixpkgs.eclib.override { inherit pari ntl; };
|
||||
|
||||
# With openblas (64 bit), the tests fail the same way as when sage is build with
|
||||
# openblas instead of openblasCompat. Apparently other packages somehow use flints
|
||||
# blas when it is available. Alternative would be to override flint to use
|
||||
# openblasCompat.
|
||||
flint = nixpkgs.flint.override { withBlas = false; inherit ntl; };
|
||||
flint = nixpkgs.flint.override { withBlas = false; };
|
||||
|
||||
# Multiple palp dimensions need to be available and sage expects them all to be
|
||||
# in the same folder.
|
||||
@ -165,15 +138,6 @@ let
|
||||
|
||||
# https://trac.sagemath.org/ticket/22191
|
||||
ecl = nixpkgs.ecl_16_1_2;
|
||||
|
||||
# sage currently uses an unreleased version of pari
|
||||
pari = (nixpkgs.pari.override { withThread = false; }).overrideAttrs (attrs: rec {
|
||||
version = "2.10-1280-g88fb5b3"; # on update remove pari-stackwarn patch from `sage-src.nix`
|
||||
src = fetchurl {
|
||||
url = "mirror://sageupstream/pari/pari-${version}.tar.gz";
|
||||
sha256 = "19gbsm8jqq3hraanbmsvzkbh88iwlqbckzbnga3y76r7k42akn7m";
|
||||
};
|
||||
});
|
||||
in
|
||||
python.pkgs.sage-wrapper // {
|
||||
doc = python.pkgs.sagedoc;
|
||||
|
@ -1,427 +0,0 @@
|
||||
commit c885927e25b29bd23869e02379c2918da430323e
|
||||
Author: Timo Kaufmann <timokau@zoho.com>
|
||||
Date: Sat Jun 30 02:26:15 2018 +0200
|
||||
|
||||
diff --git a/build/pkgs/arb/checksums.ini b/build/pkgs/arb/checksums.ini
|
||||
index 1924ee03c3..9323b97391 100644
|
||||
--- a/build/pkgs/arb/checksums.ini
|
||||
+++ b/build/pkgs/arb/checksums.ini
|
||||
@@ -1,4 +1,4 @@
|
||||
tarball=arb-VERSION.tar.gz
|
||||
-sha1=27476d0529e48a07d92da90bd0fb80dd18f443e3
|
||||
-md5=733285d9705d10b8024e551ffa81952f
|
||||
-cksum=2391183744
|
||||
+sha1=44eda7bf8eaa666c45b1fc2c1b5bd08756d94b58
|
||||
+md5=fa24de9fffe4394fb6a7a6792e2ecc5f
|
||||
+cksum=3689220688
|
||||
diff --git a/build/pkgs/arb/package-version.txt b/build/pkgs/arb/package-version.txt
|
||||
index c8810e9bdb..fb2c0766b7 100644
|
||||
--- a/build/pkgs/arb/package-version.txt
|
||||
+++ b/build/pkgs/arb/package-version.txt
|
||||
@@ -1 +1 @@
|
||||
-2.12.0.p0
|
||||
+2.13.0
|
||||
diff --git a/build/pkgs/arb/patches/arb-pie-hardening-conflict.patch b/build/pkgs/arb/patches/arb-pie-hardening-conflict.patch
|
||||
deleted file mode 100644
|
||||
index 3e5c0e708b..0000000000
|
||||
--- a/build/pkgs/arb/patches/arb-pie-hardening-conflict.patch
|
||||
+++ /dev/null
|
||||
@@ -1,17 +0,0 @@
|
||||
-In newer binutils, ld options -r and -pie conflict.
|
||||
-Patch due to Jörg-Volker Peetz
|
||||
-(source : https://groups.google.com/d/msg/sage-devel/TduebNoZuBE/sEULolL0BQAJ),
|
||||
-packaged by Emmanuel Charpentier
|
||||
-
|
||||
-diff -ru arb-2.8.1-orig/Makefile.subdirs arb-2.8.1-new/Makefile.subdirs
|
||||
---- arb-2.8.1-orig/Makefile.subdirs 2015-12-31 17:30:01.000000000 +0100
|
||||
-+++ arb-2.8.1-new/Makefile.subdirs 2016-11-07 18:50:34.540051779 +0100
|
||||
-@@ -52,7 +52,7 @@
|
||||
- $(QUIET_CC) $(CC) $(CFLAGS) $(INCS) -c $< -o $@ -MMD -MP -MF "$(BUILD_DIR)/$(MOD_DIR)_$*.d" -MT "$(BUILD_DIR)/$(MOD_DIR)_$*.d" -MT "$@"
|
||||
-
|
||||
- $(MOD_LOBJ): $(LOBJS)
|
||||
-- $(QUIET_CC) $(CC) $(ABI_FLAG) -Wl,-r $^ -o $@ -nostdlib
|
||||
-+ $(QUIET_CC) $(CC) $(ABI_FLAG) -r $^ -o $@ -nostdlib
|
||||
-
|
||||
- -include $(LOBJS:.lo=.d)
|
||||
-
|
||||
diff --git a/src/sage/rings/complex_arb.pyx b/src/sage/rings/complex_arb.pyx
|
||||
index 70d51e655a..00e7caea2c 100644
|
||||
--- a/src/sage/rings/complex_arb.pyx
|
||||
+++ b/src/sage/rings/complex_arb.pyx
|
||||
@@ -857,14 +857,14 @@ class ComplexBallField(UniqueRepresentation, Field):
|
||||
[0.500000000000000 +/- 2.09e-16]
|
||||
|
||||
sage: CBF.integral(lambda x, _: x.gamma(), 1 - CBF(i), 1 + CBF(i))
|
||||
- [+/- 3.95e-15] + [1.5723926694981 +/- 4.53e-14]*I
|
||||
+ [+/- 4...e-15] + [1.5723926694981 +/- 4...e-14]*I
|
||||
|
||||
sage: C = ComplexBallField(100)
|
||||
sage: C.integral(lambda x, _: x.cos() * x.sin(), 0, 1)
|
||||
[0.35403670913678559674939205737 +/- 8.89e-30]
|
||||
|
||||
sage: CBF.integral(lambda x, _: (x + x.exp()).sin(), 0, 8)
|
||||
- [0.34740017266 +/- 6.36e-12]
|
||||
+ [0.34740017266 +/- 6...e-12]
|
||||
|
||||
sage: C = ComplexBallField(2000)
|
||||
sage: C.integral(lambda x, _: (x + x.exp()).sin(), 0, 8) # long time
|
||||
@@ -879,14 +879,14 @@ class ComplexBallField(UniqueRepresentation, Field):
|
||||
....: else:
|
||||
....: return z.sqrt()
|
||||
sage: CBF.integral(my_sqrt, -1 + CBF(i), -1 - CBF(i))
|
||||
- [+/- 1.14e-14] + [-0.4752076627926 +/- 5.18e-14]*I
|
||||
+ [+/- 1.14e-14] + [-0.4752076627926 +/- 5...e-14]*I
|
||||
|
||||
Note, though, that proper handling of the ``analytic`` flag is required
|
||||
even when the path does not touch the branch cut::
|
||||
|
||||
sage: correct = CBF.integral(my_sqrt, 1, 2); correct
|
||||
[1.21895141649746 +/- 3.73e-15]
|
||||
- sage: RBF(integral(sqrt(x), x, 1, 2))
|
||||
+ sage: RBF(integral(sqrt(x), x, 1, 2)) # long time
|
||||
[1.21895141649746 +/- 1.79e-15]
|
||||
sage: wrong = CBF.integral(lambda z, _: z.sqrt(), 1, 2) # WRONG!
|
||||
sage: correct - wrong
|
||||
@@ -915,9 +915,9 @@ class ComplexBallField(UniqueRepresentation, Field):
|
||||
the integrand is unbounded::
|
||||
|
||||
sage: CBF.integral(lambda x, _: 1/x, -1, 1)
|
||||
- [+/- inf] + [+/- inf]*I
|
||||
+ nan + nan*I
|
||||
sage: CBF.integral(lambda x, _: 1/x, 10^-1000, 1)
|
||||
- [+/- inf] + [+/- inf]*I
|
||||
+ nan + nan*I
|
||||
sage: CBF.integral(lambda x, _: 1/x, 10^-1000, 1, abs_tol=1e-10)
|
||||
[2302.5850930 +/- 1.26e-8]
|
||||
|
||||
@@ -928,14 +928,15 @@ class ComplexBallField(UniqueRepresentation, Field):
|
||||
sage: CBF.integral(lambda x, _: x.exp(), -1020, -1010, abs_tol=1e-450)
|
||||
[2.304377150950e-439 +/- 9.74e-452]
|
||||
sage: CBF.integral(lambda x, _: x.exp(), -1020, -1010, abs_tol=0)
|
||||
- [2.304377150949e-439 +/- 7.53e-452]
|
||||
- sage: CBF.integral(lambda x, _: x.exp(), -1020, -1010, rel_tol=1e-4, abs_tol=0)
|
||||
- [2.30438e-439 +/- 3.90e-445]
|
||||
+ [2.304377150950e-439 +/- 7...e-452]
|
||||
+ sage: CBF.integral(lambda x, _: x.exp(), -1020, -1010, rel_tol=1e-2, abs_tol=0)
|
||||
+ [2.30438e-439 +/- 5.94e-445]
|
||||
|
||||
- sage: CBF.integral(lambda x, _: x*(1/x).sin(), 0, 1)
|
||||
- [+/- 0.644]
|
||||
- sage: CBF.integral(lambda x, _: x*(1/x).sin(), 0, 1, use_heap=True)
|
||||
- [0.3785300 +/- 4.32e-8]
|
||||
+ sage: epsi = CBF(1e-10)
|
||||
+ sage: CBF.integral(lambda x, _: x*(1/x).sin(), epsi, 1)
|
||||
+ [0.38 +/- 8.54e-3]
|
||||
+ sage: CBF.integral(lambda x, _: x*(1/x).sin(), epsi, 1, use_heap=True)
|
||||
+ [0.37853002 +/- 8.73e-9]
|
||||
|
||||
ALGORITHM:
|
||||
|
||||
@@ -951,12 +952,12 @@ class ComplexBallField(UniqueRepresentation, Field):
|
||||
|
||||
sage: i = QuadraticField(-1).gen()
|
||||
sage: CBF.integral(lambda x, _: (1 + i*x).gamma(), -1, 1)
|
||||
- [1.5723926694981 +/- 4.53e-14] + [+/- 3.95e-15]*I
|
||||
+ [1.5723926694981 +/- 4...e-14] + [+/- 4...e-15]*I
|
||||
|
||||
- sage: ComplexBallField(10000).integral(lambda x, _: x.sin(), 0, 1, rel_tol=1e-400)
|
||||
- [0.459... +/- ...e-4...]
|
||||
+ sage: ComplexBallField(10000).integral(lambda x, _: x.sin(), 0, 1, rel_tol=1e-300)
|
||||
+ [0.459... +/- ...e-3...]
|
||||
sage: CBF.integral(lambda x, _: x.sin(), 0, 100, rel_tol=10)
|
||||
- [+/- 7.61]
|
||||
+ [0.138 +/- 5.53e-4]
|
||||
|
||||
sage: ComplexBallField(10000).integral(lambda x, _: x.sin(), 0, 1, abs_tol=1e-400)
|
||||
[0.459697... +/- ...e-4...]
|
||||
@@ -2389,9 +2390,9 @@ cdef class ComplexBall(RingElement):
|
||||
sage: ~CBF(i/3)
|
||||
[-3.00000000000000 +/- 9.44e-16]*I
|
||||
sage: ~CBF(0)
|
||||
- [+/- inf]
|
||||
+ nan
|
||||
sage: ~CBF(RIF(10,11))
|
||||
- [0.1 +/- 9.53e-3]
|
||||
+ [0.1 +/- 9.10e-3]
|
||||
"""
|
||||
cdef ComplexBall res = self._new()
|
||||
if _do_sig(prec(self)): sig_on()
|
||||
@@ -2512,9 +2513,9 @@ cdef class ComplexBall(RingElement):
|
||||
sage: CBF(-2, 1)/CBF(1, 1/3)
|
||||
[-1.500000000000000 +/- 8.83e-16] + [1.500000000000000 +/- 5.64e-16]*I
|
||||
sage: CBF(2+I)/CBF(0)
|
||||
- [+/- inf] + [+/- inf]*I
|
||||
+ nan + nan*I
|
||||
sage: CBF(1)/CBF(0)
|
||||
- [+/- inf]
|
||||
+ nan
|
||||
sage: CBF(1)/CBF(RBF(0, 1.))
|
||||
nan
|
||||
"""
|
||||
@@ -2543,9 +2544,9 @@ cdef class ComplexBall(RingElement):
|
||||
sage: CBF(0)^(1/3)
|
||||
0
|
||||
sage: CBF(0)^(-1)
|
||||
- [+/- inf]
|
||||
+ nan
|
||||
sage: CBF(0)^(-2)
|
||||
- [+/- inf] + [+/- inf]*I
|
||||
+ nan + nan*I
|
||||
|
||||
TESTS::
|
||||
|
||||
@@ -2656,12 +2657,12 @@ cdef class ComplexBall(RingElement):
|
||||
sage: CBF(1).rising_factorial(5)
|
||||
120.0000000000000
|
||||
sage: CBF(1/3, 1/2).rising_factorial(300)
|
||||
- [-3.87949484514e+612 +/- 5.23e+600] + [-3.52042209763e+612 +/- 5.55e+600]*I
|
||||
+ [-3.87949484514e+612 +/- 5...e+600] + [-3.52042209763e+612 +/- 5...e+600]*I
|
||||
|
||||
sage: CBF(1).rising_factorial(-1)
|
||||
nan
|
||||
sage: CBF(1).rising_factorial(2**64)
|
||||
- [+/- 2.30e+347382171305201370464]
|
||||
+ [+/- 2.30e+347382171326740403407]
|
||||
sage: ComplexBallField(128)(1).rising_factorial(2**64)
|
||||
[2.343691126796861348e+347382171305201285713 +/- 4.71e+347382171305201285694]
|
||||
sage: CBF(1/2).rising_factorial(CBF(2,3))
|
||||
@@ -2700,7 +2701,7 @@ cdef class ComplexBall(RingElement):
|
||||
[1.000000000000000 +/- 2.83e-16] + [-0.441271200305303 +/- 2.82e-16]*I
|
||||
|
||||
sage: CBF('inf').log()
|
||||
- nan + nan*I
|
||||
+ [+/- inf]
|
||||
sage: CBF(2).log(0)
|
||||
nan + nan*I
|
||||
"""
|
||||
@@ -2808,7 +2809,7 @@ cdef class ComplexBall(RingElement):
|
||||
sage: CBF(pi/2, 1/10).tan()
|
||||
[+/- 2.87e-14] + [10.0333111322540 +/- 2.36e-14]*I
|
||||
sage: CBF(pi/2).tan()
|
||||
- [+/- inf]
|
||||
+ nan
|
||||
"""
|
||||
cdef ComplexBall res = self._new()
|
||||
if _do_sig(prec(self)): sig_on()
|
||||
@@ -2825,7 +2826,7 @@ cdef class ComplexBall(RingElement):
|
||||
sage: CBF(pi, 1/10).cot()
|
||||
[+/- 5.74e-14] + [-10.0333111322540 +/- 2.81e-14]*I
|
||||
sage: CBF(pi).cot()
|
||||
- [+/- inf]
|
||||
+ nan
|
||||
"""
|
||||
cdef ComplexBall res = self._new()
|
||||
if _do_sig(prec(self)): sig_on()
|
||||
@@ -3211,9 +3212,9 @@ cdef class ComplexBall(RingElement):
|
||||
1.000000000000000*I
|
||||
|
||||
sage: CBF(2+3*I).hypergeometric([1/4,1/3],[1/2])
|
||||
- [0.7871684267473 +/- 7.34e-14] + [0.2749254173721 +/- 9.23e-14]*I
|
||||
+ [0.7871684267473 +/- 7...e-14] + [0.2749254173721 +/- 9...e-14]*I
|
||||
sage: CBF(2+3*I).hypergeometric([1/4,1/3],[1/2],regularized=True)
|
||||
- [0.4441122268685 +/- 3.96e-14] + [0.1551100567338 +/- 5.75e-14]*I
|
||||
+ [0.4441122268685 +/- 3...e-14] + [0.1551100567338 +/- 5...e-14]*I
|
||||
|
||||
sage: CBF(5).hypergeometric([2,3], [-5])
|
||||
nan + nan*I
|
||||
@@ -4041,9 +4042,9 @@ cdef class ComplexBall(RingElement):
|
||||
|
||||
sage: phi = CBF(1,1)
|
||||
sage: (CBF.pi()/2).elliptic_e_inc(phi)
|
||||
- [1.283840957898 +/- 3.23e-13] + [-0.5317843366915 +/- 7.79e-14]*I
|
||||
+ [1.283840957898 +/- 3...e-13] + [-0.5317843366915 +/- 7...e-14]*I
|
||||
sage: phi.elliptic_e()
|
||||
- [1.2838409578982 +/- 5.90e-14] + [-0.5317843366915 +/- 3.35e-14]*I
|
||||
+ [1.2838409578982 +/- 5...e-14] + [-0.5317843366915 +/- 3...e-14]*I
|
||||
|
||||
sage: phi = CBF(2, 3/7)
|
||||
sage: (CBF.pi()/2).elliptic_e_inc(phi)
|
||||
@@ -4312,8 +4313,7 @@ cdef class ComplexBall(RingElement):
|
||||
sage: CBF(10).laguerre_L(3, 2)
|
||||
[-6.666666666667 +/- 4.15e-13]
|
||||
sage: CBF(5,7).laguerre_L(CBF(2,3), CBF(1,-2))
|
||||
- [5515.315030271 +/- 4.37e-10] + [-12386.942845271 +/- 5.47e-10]*I
|
||||
-
|
||||
+ [5515.315030271 +/- 4...e-10] + [-12386.942845271 +/- 5...e-10]*I
|
||||
"""
|
||||
cdef ComplexBall my_n = self._parent.coerce(n)
|
||||
cdef ComplexBall my_m = self._parent.coerce(m)
|
||||
@@ -4357,9 +4357,9 @@ cdef class ComplexBall(RingElement):
|
||||
EXAMPLES::
|
||||
|
||||
sage: CBF(1/2).legendre_P(5)
|
||||
- [0.08984375000000000 +/- 4.5...e-18]
|
||||
+ [0.0898437500000000 +/- 7...e-17]
|
||||
sage: CBF(1,2).legendre_P(CBF(2,3), CBF(0,1))
|
||||
- [0.10996180744364 +/- 7.45e-15] + [0.14312767804055 +/- 8.38e-15]*I
|
||||
+ [0.10996180744364 +/- 7.12e-15] + [0.14312767804055 +/- 8.07e-15]*I
|
||||
sage: CBF(-10).legendre_P(5, 325/100)
|
||||
[-22104403.487377 +/- 6.81e-7] + [53364750.687392 +/- 7.25e-7]*I
|
||||
sage: CBF(-10).legendre_P(5, 325/100, type=3)
|
||||
@@ -4393,9 +4393,9 @@ cdef class ComplexBall(RingElement):
|
||||
sage: CBF(1/2).legendre_Q(5)
|
||||
[0.55508089057168 +/- 2.79e-15]
|
||||
sage: CBF(1,2).legendre_Q(CBF(2,3), CBF(0,1))
|
||||
- [0.167678710 +/- 4.60e-10] + [-0.161558598 +/- 7.47e-10]*I
|
||||
+ [0.167678710 +/- 3.91e-10] + [-0.161558598 +/- 6.77e-10]*I
|
||||
sage: CBF(-10).legendre_Q(5, 325/100)
|
||||
- [-83825154.36008 +/- 4.94e-6] + [-34721515.80396 +/- 5.40e-6]*I
|
||||
+ [-83825154.36008 +/- 5.02e-6] + [-34721515.80396 +/- 5.42e-6]*I
|
||||
sage: CBF(-10).legendre_Q(5, 325/100, type=3)
|
||||
[-4.797306921692e-6 +/- 6.82e-19] + [-4.797306921692e-6 +/- 6.57e-19]*I
|
||||
|
||||
diff --git a/src/sage/rings/polynomial/polynomial_complex_arb.pyx b/src/sage/rings/polynomial/polynomial_complex_arb.pyx
|
||||
index c436d4705b..ef611a566b 100644
|
||||
--- a/src/sage/rings/polynomial/polynomial_complex_arb.pyx
|
||||
+++ b/src/sage/rings/polynomial/polynomial_complex_arb.pyx
|
||||
@@ -543,7 +543,7 @@ cdef class Polynomial_complex_arb(Polynomial):
|
||||
sage: (1 - x/3).inverse_series_trunc(3)
|
||||
([0.1111111111111111 +/- 5.99e-17])*x^2 + ([0.3333333333333333 +/- 7.04e-17])*x + 1.000000000000000
|
||||
sage: x.inverse_series_trunc(1)
|
||||
- [+/- inf]
|
||||
+ nan
|
||||
sage: Pol(0).inverse_series_trunc(2)
|
||||
(nan + nan*I)*x + nan + nan*I
|
||||
|
||||
@@ -671,7 +671,7 @@ cdef class Polynomial_complex_arb(Polynomial):
|
||||
sage: pol._sqrt_series(2)
|
||||
([+/- 7.51e-3] + [+/- 0.501]*I)*x + [+/- 5.01e-3] + [+/- 1.01]*I
|
||||
sage: x._sqrt_series(2)
|
||||
- ([+/- inf] + [+/- inf]*I)*x
|
||||
+ (nan + nan*I)*x
|
||||
"""
|
||||
cdef Polynomial_complex_arb res = self._new()
|
||||
if n < 0:
|
||||
diff --git a/src/sage/rings/real_arb.pyx b/src/sage/rings/real_arb.pyx
|
||||
index c9f68e38d7..76e3037a9a 100644
|
||||
--- a/src/sage/rings/real_arb.pyx
|
||||
+++ b/src/sage/rings/real_arb.pyx
|
||||
@@ -161,7 +161,7 @@ values and should be preferred::
|
||||
|
||||
sage: RBF(NaN) < RBF(infinity)
|
||||
False
|
||||
- sage: 1/RBF(0) <= RBF(infinity)
|
||||
+ sage: RBF(0).add_error(infinity) <= RBF(infinity)
|
||||
True
|
||||
|
||||
TESTS::
|
||||
@@ -252,6 +252,8 @@ cdef void mpfi_to_arb(arb_t target, const mpfi_t source, const long precision):
|
||||
(+infinity, +infinity)
|
||||
sage: RBF(RIF(-infinity)).endpoints()
|
||||
(-infinity, -infinity)
|
||||
+ sage: RBF(RIF(-infinity, infinity)).endpoints()
|
||||
+ (-infinity, +infinity)
|
||||
sage: RIF(RBF(infinity)).endpoints()
|
||||
(+infinity, +infinity)
|
||||
sage: RIF(RBF(-infinity)).endpoints()
|
||||
@@ -266,10 +268,11 @@ cdef void mpfi_to_arb(arb_t target, const mpfi_t source, const long precision):
|
||||
if _do_sig(precision): sig_on()
|
||||
mpfi_get_left(left, source)
|
||||
mpfi_get_right(right, source)
|
||||
- arb_set_interval_mpfr(target, left, right, precision)
|
||||
- # Work around weakness of arb_set_interval_mpfr(tgt, inf, inf)
|
||||
- if mpfr_equal_p(left, right):
|
||||
- mag_zero(arb_radref(target))
|
||||
+ if mpfr_inf_p(left) and mpfr_inf_p(right) and mpfr_sgn(left) < 0 < mpfr_sgn(right):
|
||||
+ # Work around a weakness of arb_set_interval_mpfr(tgt, -inf, inf)
|
||||
+ arb_zero_pm_inf(target)
|
||||
+ else:
|
||||
+ arb_set_interval_mpfr(target, left, right, precision)
|
||||
if _do_sig(precision): sig_off()
|
||||
|
||||
mpfr_clear(left)
|
||||
@@ -649,17 +652,15 @@ class RealBallField(UniqueRepresentation, Field):
|
||||
EXAMPLES::
|
||||
|
||||
sage: RBF.some_elements()
|
||||
- [1.000000000000000,
|
||||
- [0.3333333333333333 +/- 7.04e-17],
|
||||
+ [0, 1.000000000000000, [0.3333333333333333 +/- 7.04e-17],
|
||||
[-4.733045976388941e+363922934236666733021124 +/- 3.46e+363922934236666733021108],
|
||||
- [+/- inf],
|
||||
- [+/- inf],
|
||||
- nan]
|
||||
+ [+/- inf], [+/- inf], [+/- inf], nan]
|
||||
"""
|
||||
import sage.symbolic.constants
|
||||
- return [self(1), self(1)/3,
|
||||
+ inf = self(sage.rings.infinity.Infinity)
|
||||
+ return [self(0), self(1), self(1)/3,
|
||||
-self(2)**(Integer(2)**80),
|
||||
- self(sage.rings.infinity.Infinity), ~self(0),
|
||||
+ inf, -inf, self.zero().add_error(inf),
|
||||
self.element_class(self, sage.symbolic.constants.NotANumber())]
|
||||
|
||||
def _sum_of_products(self, terms):
|
||||
@@ -881,7 +882,7 @@ class RealBallField(UniqueRepresentation, Field):
|
||||
sage: RBF.gamma(5)
|
||||
24.00000000000000
|
||||
sage: RBF.gamma(10**20)
|
||||
- [+/- 5.92e+1956570551809674821757]
|
||||
+ [+/- 5.50e+1956570552410610660600]
|
||||
sage: RBF.gamma(1/3)
|
||||
[2.678938534707747 +/- 8.99e-16]
|
||||
sage: RBF.gamma(-5)
|
||||
@@ -2247,7 +2248,7 @@ cdef class RealBall(RingElement):
|
||||
sage: inf = RBF(+infinity)
|
||||
sage: other_inf = RBF(+infinity, 42.r)
|
||||
sage: neg_inf = RBF(-infinity)
|
||||
- sage: extended_line = 1/RBF(0)
|
||||
+ sage: extended_line = RBF(0).add_error(infinity)
|
||||
sage: exact_nan = inf - inf
|
||||
sage: exact_nan.mid(), exact_nan.rad()
|
||||
(NaN, 0.00000000)
|
||||
@@ -2659,7 +2660,7 @@ cdef class RealBall(RingElement):
|
||||
sage: ~RBF(5)
|
||||
[0.2000000000000000 +/- 4.45e-17]
|
||||
sage: ~RBF(0)
|
||||
- [+/- inf]
|
||||
+ nan
|
||||
sage: RBF(RIF(-0.1,0.1))
|
||||
[+/- 0.101]
|
||||
|
||||
@@ -2739,7 +2740,7 @@ cdef class RealBall(RingElement):
|
||||
sage: RBF(pi)/RBF(e)
|
||||
[1.155727349790922 +/- 8.43e-16]
|
||||
sage: RBF(2)/RBF(0)
|
||||
- [+/- inf]
|
||||
+ nan
|
||||
"""
|
||||
cdef RealBall res = self._new()
|
||||
if _do_sig(prec(self)): sig_on()
|
||||
@@ -2765,7 +2766,7 @@ cdef class RealBall(RingElement):
|
||||
sage: RBF(-1)^(1/3)
|
||||
nan
|
||||
sage: RBF(0)^(-1)
|
||||
- [+/- inf]
|
||||
+ nan
|
||||
sage: RBF(-e)**RBF(pi)
|
||||
nan
|
||||
|
||||
@@ -3129,7 +3130,7 @@ cdef class RealBall(RingElement):
|
||||
sage: RBF(1).tan()
|
||||
[1.557407724654902 +/- 3.26e-16]
|
||||
sage: RBF(pi/2).tan()
|
||||
- [+/- inf]
|
||||
+ nan
|
||||
"""
|
||||
cdef RealBall res = self._new()
|
||||
if _do_sig(prec(self)): sig_on()
|
||||
@@ -3146,7 +3147,7 @@ cdef class RealBall(RingElement):
|
||||
sage: RBF(1).cot()
|
||||
[0.642092615934331 +/- 4.79e-16]
|
||||
sage: RBF(pi).cot()
|
||||
- [+/- inf]
|
||||
+ nan
|
||||
"""
|
||||
cdef RealBall res = self._new()
|
||||
if _do_sig(prec(self)): sig_on()
|
||||
@@ -3257,7 +3258,7 @@ cdef class RealBall(RingElement):
|
||||
sage: RBF(1).coth()
|
||||
[1.313035285499331 +/- 4.97e-16]
|
||||
sage: RBF(0).coth()
|
||||
- [+/- inf]
|
||||
+ nan
|
||||
"""
|
||||
cdef RealBall res = self._new()
|
||||
if _do_sig(prec(self)): sig_on()
|
@ -0,0 +1,15 @@
|
||||
diff --git a/build/pkgs/openblas/package-version.txt b/build/pkgs/openblas/package-version.txt
|
||||
index 3bc45c25d4..7c7c224887 100644
|
||||
--- a/src/sage/schemes/elliptic_curves/padics.py
|
||||
+++ b/src/sage/schemes/elliptic_curves/padics.py
|
||||
@@ -292,8 +292,8 @@ def padic_regulator(self, p, prec=20, height=None, check_hypotheses=True):
|
||||
|
||||
sage: max_prec = 30 # make sure we get past p^2 # long time
|
||||
sage: full = E.padic_regulator(5, max_prec) # long time
|
||||
- sage: for prec in range(1, max_prec): # long time
|
||||
- ....: assert E.padic_regulator(5, prec) == full # long time
|
||||
+ sage: for prec in range(1, max_prec): # known bug (#25969) # long time
|
||||
+ ....: assert E.padic_regulator(5, prec) == full # known bug (#25969) # long time
|
||||
|
||||
A case where the generator belongs to the formal group already
|
||||
(:trac:`3632`)::
|
@ -1,48 +0,0 @@
|
||||
diff --git a/src/sage/interfaces/maxima_abstract.py b/src/sage/interfaces/maxima_abstract.py
|
||||
index 961c20aaac..3d601d8939 100644
|
||||
--- a/src/sage/interfaces/maxima_abstract.py
|
||||
+++ b/src/sage/interfaces/maxima_abstract.py
|
||||
@@ -1743,7 +1743,7 @@ class MaximaAbstractElement(ExtraTabCompletion, InterfaceElement):
|
||||
sage: y,d = var('y,d')
|
||||
sage: f = function('f')
|
||||
sage: latex(maxima(derivative(f(x*y), x)))
|
||||
- \left(\left.{{{\it \partial}}\over{{\it \partial}\, {\it t_0}}}\,f\left({\it t_0}\right) \right|_{{\it t_0}={\it x}\, {\it y}}\right)\,{\it y}
|
||||
+ \left(\left.{{{\it \partial}}\over{{\it \partial}\, {\it t}_{0}}}\,f\left({\it t}_{0}\right) \right|_{{\it t}_{0}={\it x}\, {\it y}}\right)\,{\it y}
|
||||
sage: latex(maxima(derivative(f(x,y,d), d,x,x,y)))
|
||||
{{{\it \partial}^4}\over{{\it \partial}\,{\it d}\, {\it \partial}\,{\it x}^2\,{\it \partial}\, {\it y}}}\,f\left({\it x} , {\it y} , {\it d}\right)
|
||||
sage: latex(maxima(d/(d-2)))
|
||||
diff --git a/src/sage/manifolds/differentiable/metric.py b/src/sage/manifolds/differentiable/metric.py
|
||||
index 3cd6ad3235..1e18af1a6b 100644
|
||||
--- a/src/sage/manifolds/differentiable/metric.py
|
||||
+++ b/src/sage/manifolds/differentiable/metric.py
|
||||
@@ -993,7 +993,7 @@ class PseudoRiemannianMetric(TensorField):
|
||||
2-dimensional differentiable manifold S^2
|
||||
sage: g.riemann()[:]
|
||||
[[[[0, 0], [0, 0]], [[0, sin(th)^2], [-sin(th)^2, 0]]],
|
||||
- [[[0, (cos(th)^2 - 1)/sin(th)^2], [1, 0]], [[0, 0], [0, 0]]]]
|
||||
+ [[[0, -1], [1, 0]], [[0, 0], [0, 0]]]]
|
||||
|
||||
In dimension 2, the Riemann tensor can be expressed entirely in terms of
|
||||
the Ricci scalar `r`:
|
||||
diff --git a/src/sage/symbolic/expression.pyx b/src/sage/symbolic/expression.pyx
|
||||
index dfb8751467..27402e54ab 100644
|
||||
--- a/src/sage/symbolic/expression.pyx
|
||||
+++ b/src/sage/symbolic/expression.pyx
|
||||
@@ -7154,7 +7154,7 @@ cdef class Expression(CommutativeRingElement):
|
||||
sage: ex = lcm(sin(x)^2 - 1, sin(x)^2 + sin(x)); ex
|
||||
(sin(x)^2 + sin(x))*(sin(x)^2 - 1)/(sin(x) + 1)
|
||||
sage: ex.simplify_full()
|
||||
- -cos(x)^2*sin(x)
|
||||
+ sin(x)^3 - sin(x)
|
||||
|
||||
TESTS:
|
||||
|
||||
@@ -10004,7 +10004,7 @@ cdef class Expression(CommutativeRingElement):
|
||||
|
||||
sage: f=tan(3*x)
|
||||
sage: f.simplify_trig()
|
||||
- (4*cos(x)^2 - 1)*sin(x)/(4*cos(x)^3 - 3*cos(x))
|
||||
+ -(4*cos(x)^2 - 1)*sin(x)/(4*cos(x)*sin(x)^2 - cos(x))
|
||||
sage: f.simplify_trig(False)
|
||||
sin(3*x)/cos(3*x)
|
||||
|
@ -0,0 +1,18 @@
|
||||
diff --git a/src/sage/libs/pari/__init__.py b/src/sage/libs/pari/__init__.py
|
||||
index e451766474..77eda66097 100644
|
||||
--- a/src/sage/libs/pari/__init__.py
|
||||
+++ b/src/sage/libs/pari/__init__.py
|
||||
@@ -205,6 +205,13 @@ def _get_pari_instance():
|
||||
# messages in Sage.
|
||||
P.default("debugmem", 0)
|
||||
|
||||
+ # Make sure pari doesn't use threads, regardless of how it was compiled.
|
||||
+ # Threads cause some doctest failures (memory issues). Those could probably
|
||||
+ # be solved without disabling threads. But that would require figuring out
|
||||
+ # some sensible values for `threadsizemax`. See
|
||||
+ # https://pari.math.u-bordeaux.fr/dochtml/html/GP_defaults.html
|
||||
+ P.default("nbthreads", 1)
|
||||
+
|
||||
return P
|
||||
|
||||
pari = _get_pari_instance()
|
@ -1,479 +0,0 @@
|
||||
diff --git a/src/sage/calculus/calculus.py b/src/sage/calculus/calculus.py
|
||||
index 3a417d9d5c..fadaadbaf6 100644
|
||||
--- a/src/sage/calculus/calculus.py
|
||||
+++ b/src/sage/calculus/calculus.py
|
||||
@@ -231,7 +231,7 @@ Another example::
|
||||
sage: f(x=3)
|
||||
arcsinh(1)
|
||||
sage: f.derivative(x)
|
||||
- 1/3/sqrt(1/9*x^2 + 1)
|
||||
+ 1/sqrt(x^2 + 9)
|
||||
|
||||
We compute the length of the parabola from 0 to 2::
|
||||
|
||||
@@ -1509,8 +1509,8 @@ def laplace(ex, t, s, algorithm='maxima'):
|
||||
Testing SymPy::
|
||||
|
||||
sage: laplace(t^n, t, s, algorithm='sympy')
|
||||
- (s^(-n)*gamma(n + 1)/s, 0, -re(n) < 1)
|
||||
-
|
||||
+ (gamma(n + 1)/(s*s^n), 0, -re(n) < 1)
|
||||
+
|
||||
Testing Maxima::
|
||||
|
||||
sage: laplace(t^n, t, s, algorithm='maxima')
|
||||
diff --git a/src/sage/functions/hypergeometric.py b/src/sage/functions/hypergeometric.py
|
||||
index 1fc2db5c94..f3e49b9cdb 100644
|
||||
--- a/src/sage/functions/hypergeometric.py
|
||||
+++ b/src/sage/functions/hypergeometric.py
|
||||
@@ -34,7 +34,7 @@ Simplification (note that ``simplify_full`` does not yet call
|
||||
sage: a.simplify_hypergeometric()
|
||||
1/((-e^x + 1)^e^x)
|
||||
sage: a.simplify_hypergeometric(algorithm='sage')
|
||||
- (-e^x + 1)^(-e^x)
|
||||
+ 1/((-e^x + 1)^e^x)
|
||||
|
||||
Equality testing::
|
||||
|
||||
@@ -145,7 +145,7 @@ Series expansions of confluent hypergeometric functions::
|
||||
|
||||
sage: hypergeometric_M(2, 2, x).series(x, 3)
|
||||
1 + 1*x + 1/2*x^2 + Order(x^3)
|
||||
- sage: hypergeometric_U(2, 2, x).series(x == 3, 100).subs(x=1).n()
|
||||
+ sage: hypergeometric_U(2, 2, x).series(x == 3, 100).subs(x=1).n() # known bug (see :trac:`25688`)
|
||||
0.403652637676806
|
||||
sage: hypergeometric_U(2, 2, 1).n()
|
||||
0.403652637676806
|
||||
@@ -773,7 +773,7 @@ def closed_form(hyp):
|
||||
sage: closed_form(hypergeometric([], [], z))
|
||||
e^z
|
||||
sage: closed_form(hypergeometric([a], [], z))
|
||||
- (-z + 1)^(-a)
|
||||
+ 1/((-z + 1)^a)
|
||||
sage: closed_form(hypergeometric([1, 1, 2], [1, 1], z))
|
||||
(z - 1)^(-2)
|
||||
sage: closed_form(hypergeometric([2, 3], [1], x))
|
||||
@@ -1121,7 +1121,7 @@ class Hypergeometric_U(BuiltinFunction):
|
||||
sage: var('a b z')
|
||||
(a, b, z)
|
||||
sage: hypergeometric_U(a, b, z).generalized()
|
||||
- z^(-a)*hypergeometric((a, a - b + 1), (), -1/z)
|
||||
+ hypergeometric((a, a - b + 1), (), -1/z)/z^a
|
||||
sage: hypergeometric_U(1, 3, 1/2).generalized()
|
||||
2*hypergeometric((1, -1), (), -2)
|
||||
sage: hypergeometric_U(3, I, 2).generalized()
|
||||
diff --git a/src/sage/functions/log.py b/src/sage/functions/log.py
|
||||
index 75d1bf8060..61968582af 100644
|
||||
--- a/src/sage/functions/log.py
|
||||
+++ b/src/sage/functions/log.py
|
||||
@@ -518,17 +518,17 @@ class Function_polylog(GinacFunction):
|
||||
|
||||
sage: BF = RealBallField(100)
|
||||
sage: polylog(2, BF(1/3))
|
||||
- [0.36621322997706348761674629766 +/- 4.51e-30]
|
||||
+ [0.36621322997706348761674629766... +/- ...]
|
||||
sage: polylog(2, BF(4/3))
|
||||
- nan
|
||||
+ [2.27001825336107090380391448586 +/- 5.64e-30] + [-0.90377988538400159956755721265 +/- 8.39e-30]*I
|
||||
sage: parent(_)
|
||||
- Real ball field with 100 bits of precision
|
||||
+ Complex ball field with 100 bits of precision
|
||||
sage: polylog(2, CBF(1/3))
|
||||
- [0.366213229977063 +/- 5.85e-16]
|
||||
+ [0.366213229977063 +/- ...]
|
||||
sage: parent(_)
|
||||
Complex ball field with 53 bits of precision
|
||||
sage: polylog(2, CBF(1))
|
||||
- [1.644934066848226 +/- 6.59e-16]
|
||||
+ [1.644934066848226 +/- ...]
|
||||
sage: parent(_)
|
||||
Complex ball field with 53 bits of precision
|
||||
"""
|
||||
diff --git a/src/sage/functions/trig.py b/src/sage/functions/trig.py
|
||||
index e7e7a311cd..1f2926d6c9 100644
|
||||
--- a/src/sage/functions/trig.py
|
||||
+++ b/src/sage/functions/trig.py
|
||||
@@ -529,13 +529,8 @@ class Function_arcsin(GinacFunction):
|
||||
arcsin
|
||||
sage: asin(complex(1,1))
|
||||
(0.6662394324925152+1.0612750619050357j)
|
||||
-
|
||||
- Check that :trac:`22823` is fixed::
|
||||
-
|
||||
- sage: bool(asin(SR(2.1)) == NaN)
|
||||
- True
|
||||
- sage: asin(SR(2.1)).is_real()
|
||||
- False
|
||||
+ sage: asin(SR(2.1))
|
||||
+ 1.57079632679490 - 1.37285914424258*I
|
||||
"""
|
||||
GinacFunction.__init__(self, 'arcsin', latex_name=r"\arcsin",
|
||||
conversions=dict(maxima='asin', sympy='asin', fricas="asin", giac="asin"))
|
||||
@@ -595,13 +590,8 @@ class Function_arccos(GinacFunction):
|
||||
arccos
|
||||
sage: acos(complex(1,1))
|
||||
(0.9045568943023814-1.0612750619050357j)
|
||||
-
|
||||
- Check that :trac:`22823` is fixed::
|
||||
-
|
||||
- sage: bool(acos(SR(2.1)) == NaN)
|
||||
- True
|
||||
- sage: acos(SR(2.1)).is_real()
|
||||
- False
|
||||
+ sage: acos(SR(2.1))
|
||||
+ 1.37285914424258*I
|
||||
"""
|
||||
GinacFunction.__init__(self, 'arccos', latex_name=r"\arccos",
|
||||
conversions=dict(maxima='acos', sympy='acos', fricas='acos', giac='acos'))
|
||||
@@ -807,7 +797,7 @@ class Function_arcsec(GinacFunction):
|
||||
sage: arcsec(2).n(100)
|
||||
1.0471975511965977461542144611
|
||||
sage: arcsec(1/2).n(100)
|
||||
- NaN
|
||||
+ 1.3169578969248167086250463473*I
|
||||
sage: RDF(arcsec(2)) # abs tol 1e-15
|
||||
1.0471975511965976
|
||||
sage: arcsec(1 + I)
|
||||
@@ -958,7 +948,9 @@ class Function_arctan2(GinacFunction):
|
||||
sage: atan2(0,0,hold=True)
|
||||
arctan2(0, 0)
|
||||
sage: atan2(0,0,hold=True).n()
|
||||
- NaN
|
||||
+ Traceback (most recent call last):
|
||||
+ ...
|
||||
+ RuntimeError: atan2(): division by zero
|
||||
|
||||
Check if :trac:`10062` is fixed, this was caused by
|
||||
``(I*I).is_positive()`` returning ``True``::
|
||||
diff --git a/src/sage/geometry/hyperbolic_space/hyperbolic_geodesic.py b/src/sage/geometry/hyperbolic_space/hyperbolic_geodesic.py
|
||||
index 3b5c8d1729..1c6b73a16c 100644
|
||||
--- a/src/sage/geometry/hyperbolic_space/hyperbolic_geodesic.py
|
||||
+++ b/src/sage/geometry/hyperbolic_space/hyperbolic_geodesic.py
|
||||
@@ -1422,8 +1422,10 @@ class HyperbolicGeodesicUHP(HyperbolicGeodesic):
|
||||
expressions do not generate runtime errors. ::
|
||||
|
||||
sage: g=HyperbolicPlane().UHP().get_geodesic(-1+I,1+I)
|
||||
- sage: g.midpoint()
|
||||
- Point in UHP 1/2*(sqrt(2)*e^(1/2*arccosh(3)) - sqrt(2) + (I - 1)*e^(1/2*arccosh(3)) + I - 1)/((1/4*I - 1/4)*sqrt(2)*e^(1/2*arccosh(3)) - (1/4*I - 1/4)*sqrt(2) + 1/2*e^(1/2*arccosh(3)) + 1/2)
|
||||
+ sage: point = g.midpoint(); point
|
||||
+ Point in UHP -1/2*(sqrt(2)*...
|
||||
+ sage: QQbar(point.coordinates()).radical_expression()
|
||||
+ I*sqrt(2)
|
||||
|
||||
Check that floating points remain floating points
|
||||
in :meth:`midpoint` ::
|
||||
diff --git a/src/sage/interfaces/fricas.py b/src/sage/interfaces/fricas.py
|
||||
index 82aae78e37..8501ea2a18 100644
|
||||
--- a/src/sage/interfaces/fricas.py
|
||||
+++ b/src/sage/interfaces/fricas.py
|
||||
@@ -1084,14 +1084,14 @@ class FriCASElement(ExpectElement):
|
||||
0.451026811796262,
|
||||
0.732815101786507,
|
||||
0.837981225008390,
|
||||
- NaN,
|
||||
- NaN,
|
||||
+ 1.57079632679490 - 0.467145308103262*I,
|
||||
+ 0.467145308103262*I,
|
||||
1.11976951499863,
|
||||
0.451026811796262,
|
||||
0.732815101786507,
|
||||
0.837981225008390,
|
||||
- NaN,
|
||||
- NaN]
|
||||
+ 1.57079632679490 - 0.467145308103262*I,
|
||||
+ 0.467145308103262*I]
|
||||
sage: l = [tanh, sinh, cosh, coth, sech, csch, asinh, acosh, atanh, acoth, asech, acsch, arcsinh, arccosh, arctanh, arccoth, arcsech, arccsch]
|
||||
sage: [f(x)._fricas_().sage().subs(x=0.9) for f in l] # optional - fricas
|
||||
[0.716297870199024,
|
||||
diff --git a/src/sage/libs/pynac/pynac.pyx b/src/sage/libs/pynac/pynac.pyx
|
||||
index 9e9d8f664b..e3406f007e 100644
|
||||
--- a/src/sage/libs/pynac/pynac.pyx
|
||||
+++ b/src/sage/libs/pynac/pynac.pyx
|
||||
@@ -1824,7 +1824,7 @@ cdef py_atan2(x, y):
|
||||
sage: atan2(CC(I), CC(I+1))
|
||||
0.553574358897045 + 0.402359478108525*I
|
||||
sage: atan2(CBF(I), CBF(I+1))
|
||||
- [0.55357435889705 +/- 5.58e-15] + [0.402359478108525 +/- 7.11e-16]*I
|
||||
+ [0.55357435889705 +/- ...] + [0.402359478108525 +/- ...]*I
|
||||
|
||||
Check that :trac:`23776` is fixed and RDF input gives real output::
|
||||
|
||||
diff --git a/src/sage/matrix/matrix_symbolic_dense.pyx b/src/sage/matrix/matrix_symbolic_dense.pyx
|
||||
index 46a15e53eb..7a0beb437b 100644
|
||||
--- a/src/sage/matrix/matrix_symbolic_dense.pyx
|
||||
+++ b/src/sage/matrix/matrix_symbolic_dense.pyx
|
||||
@@ -200,7 +200,7 @@ cdef class Matrix_symbolic_dense(Matrix_generic_dense):
|
||||
sage: eval, [evec], mult = es[0]
|
||||
sage: delta = eval*evec - evec*A
|
||||
sage: abs(abs(delta)) < 1e-10
|
||||
- sqrt(9/25*((2*sqrt(6) - 3)*(sqrt(6) - 2) + 7*sqrt(6) - 18)^2 + 9/25*((sqrt(6) - 2)*(sqrt(6) - 4) + 6*sqrt(6) - 14)^2) < (1.00000000000000e-10)
|
||||
+ 3/5*sqrt(((2*sqrt(6) - 3)*(sqrt(6) - 2) + 7*sqrt(6) - 18)^2 + ((sqrt(6) - 2)*(sqrt(6) - 4) + 6*sqrt(6) - 14)^2) < (1.00000000000000e-10)
|
||||
sage: abs(abs(delta)).n() < 1e-10
|
||||
True
|
||||
|
||||
diff --git a/src/sage/modules/matrix_morphism.py b/src/sage/modules/matrix_morphism.py
|
||||
index 17a1d6e290..03892ceec0 100644
|
||||
--- a/src/sage/modules/matrix_morphism.py
|
||||
+++ b/src/sage/modules/matrix_morphism.py
|
||||
@@ -214,9 +214,9 @@ class MatrixMorphism_abstract(sage.categories.morphism.Morphism):
|
||||
sage: f((1, 0))
|
||||
Traceback (most recent call last):
|
||||
...
|
||||
- TypeError: Unable to coerce entries (=[1.00000000000000*I, 0.000000000000000]) to coefficients in Real Field with 53 bits of precision
|
||||
+ TypeError: Unable to coerce entries (=[1.00000000000000*I, 0]) to coefficients in Real Field with 53 bits of precision
|
||||
sage: f((1, 0), coerce=False)
|
||||
- (1.00000000000000*I, 0.000000000000000)
|
||||
+ (1.00000000000000*I, 0)
|
||||
|
||||
"""
|
||||
if self.domain().is_ambient():
|
||||
diff --git a/src/sage/plot/plot.py b/src/sage/plot/plot.py
|
||||
index 77cdeb8c46..e501e74036 100644
|
||||
--- a/src/sage/plot/plot.py
|
||||
+++ b/src/sage/plot/plot.py
|
||||
@@ -2061,7 +2061,7 @@ def _plot(funcs, xrange, parametric=False,
|
||||
plot properly (:trac:`13246`)::
|
||||
|
||||
sage: parametric_plot((x, arcsec(x)), (x, -2, 2))
|
||||
- Graphics object consisting of 1 graphics primitive
|
||||
+ Graphics object consisting of 2 graphics primitives
|
||||
|
||||
"""
|
||||
from sage.plot.colors import Color
|
||||
diff --git a/src/sage/repl/display/formatter.py b/src/sage/repl/display/formatter.py
|
||||
index 8ce2e839d7..948207c95e 100644
|
||||
--- a/src/sage/repl/display/formatter.py
|
||||
+++ b/src/sage/repl/display/formatter.py
|
||||
@@ -25,11 +25,11 @@ generally, all sage expression as an ASCII art object::
|
||||
sage: shell = get_test_shell()
|
||||
sage: shell.run_cell('%display ascii_art')
|
||||
sage: shell.run_cell('integral(x^2/pi^x, x)')
|
||||
- / 2 2 \ -x*log(pi)
|
||||
- -\x *log (pi) + 2*x*log(pi) + 2/*e
|
||||
- ---------------------------------------------
|
||||
- 3
|
||||
- log (pi)
|
||||
+ -x / 2 2 \
|
||||
+ -pi *\x *log (pi) + 2*x*log(pi) + 2/
|
||||
+ --------------------------------------
|
||||
+ 3
|
||||
+ log (pi)
|
||||
sage: shell.run_cell("i = var('i')")
|
||||
sage: shell.run_cell('sum(i*x^i, i, 0, 10)')
|
||||
10 9 8 7 6 5 4 3 2
|
||||
diff --git a/src/sage/rings/asymptotic/asymptotics_multivariate_generating_functions.py b/src/sage/rings/asymptotic/asymptotics_multivariate_generating_functions.py
|
||||
index d8ebbf4f76..8c60f65e99 100644
|
||||
--- a/src/sage/rings/asymptotic/asymptotics_multivariate_generating_functions.py
|
||||
+++ b/src/sage/rings/asymptotic/asymptotics_multivariate_generating_functions.py
|
||||
@@ -151,8 +151,8 @@ A multiple point example (Example 6.5 of [RaWi2012]_)::
|
||||
[(x + 2*y - 1, 1), (2*x + y - 1, 1)])
|
||||
sage: F1 = decomp[1]
|
||||
sage: F1.asymptotics(p, alpha, 2)
|
||||
- (-3*((2*a^2 - 5*a*b + 2*b^2)*r^2 + (a + b)*r + 3)*((1/3)^(-a)*(1/3)^(-b))^r,
|
||||
- (1/3)^(-a)*(1/3)^(-b), -3*(2*a^2 - 5*a*b + 2*b^2)*r^2 - 3*(a + b)*r - 9)
|
||||
+ (-3*((2*a^2 - 5*a*b + 2*b^2)*r^2 + (a + b)*r + 3)*(1/((1/3)^a*(1/3)^b))^r,
|
||||
+ 1/((1/3)^a*(1/3)^b), -3*(2*a^2 - 5*a*b + 2*b^2)*r^2 - 3*(a + b)*r - 9)
|
||||
sage: alpha = [4, 3]
|
||||
sage: decomp = F.asymptotic_decomposition(alpha)
|
||||
sage: F1 = decomp[1]
|
||||
@@ -2159,7 +2159,7 @@ class FractionWithFactoredDenominator(RingElement):
|
||||
sage: p = {x: 1/3, y: 1/3}
|
||||
sage: alpha = (var('a'), var('b'))
|
||||
sage: F.asymptotics_multiple(p, alpha, 2, var('r')) # long time
|
||||
- (3*((1/3)^(-a)*(1/3)^(-b))^r*e^(2/3), (1/3)^(-a)*(1/3)^(-b), 3*e^(2/3))
|
||||
+ (3*(1/((1/3)^a*(1/3)^b))^r*e^(2/3), 1/((1/3)^a*(1/3)^b), 3*e^(2/3))
|
||||
"""
|
||||
from itertools import product
|
||||
from sage.calculus.functions import jacobian
|
||||
diff --git a/src/sage/stats/basic_stats.py b/src/sage/stats/basic_stats.py
|
||||
index 16a268a02c..5fd244e93b 100644
|
||||
--- a/src/sage/stats/basic_stats.py
|
||||
+++ b/src/sage/stats/basic_stats.py
|
||||
@@ -183,7 +183,7 @@ def std(v, bias=False):
|
||||
sage: std([])
|
||||
NaN
|
||||
sage: std([I, sqrt(2), 3/5])
|
||||
- sqrt(1/450*(10*sqrt(2) - 5*I - 3)^2 + 1/450*(5*sqrt(2) - 10*I + 3)^2 + 1/450*(5*sqrt(2) + 5*I - 6)^2)
|
||||
+ 1/15*sqrt(1/2)*sqrt((10*sqrt(2) - 5*I - 3)^2 + (5*sqrt(2) - 10*I + 3)^2 + (5*sqrt(2) + 5*I - 6)^2)
|
||||
sage: std([RIF(1.0103, 1.0103), RIF(2)])
|
||||
0.6998235813403261?
|
||||
sage: import numpy
|
||||
diff --git a/src/sage/symbolic/expression.pyx b/src/sage/symbolic/expression.pyx
|
||||
index ab4c05de3a..60f0dc549a 100644
|
||||
--- a/src/sage/symbolic/expression.pyx
|
||||
+++ b/src/sage/symbolic/expression.pyx
|
||||
@@ -622,7 +622,7 @@ cdef class Expression(CommutativeRingElement):
|
||||
sage: x^(-5)
|
||||
x^(-5)
|
||||
sage: x^(-y)
|
||||
- x^(-y)
|
||||
+ 1/(x^y)
|
||||
sage: 2*x^(-1)
|
||||
2/x
|
||||
sage: i*x
|
||||
@@ -3621,14 +3621,14 @@ cdef class Expression(CommutativeRingElement):
|
||||
sage: repl_dict = {b_0: b_0, b_3: b_1, b_2: b_3, b_1: b_2}
|
||||
sage: P = precomp.substitute(repl_dict)
|
||||
sage: P.expand()
|
||||
- -2^(-b_0)*2^(-b_2)*2^b_3 - 2^b_0*2^(-b_2)*2^b_3 -
|
||||
- 2^(-b_0)*2^b_2*2^b_3 + 2^b_0*2^b_2*2^b_3 - 2*2^(-b_0)*2^(-b_2)
|
||||
- - 2*2^b_0*2^(-b_2) - 2*2^(-b_0)*2^b_2 + 2*2^b_0*2^b_2 +
|
||||
- 2^(-b_0)*2^b_3 + 2^b_0*2^b_3 + 2^(-b_2)*2^b_3 + 2^b_2*2^b_3 +
|
||||
- 2*2^(-b_0) + 2*2^b_0 + 2*2^(-b_2) + 2*2^b_2 - 9*2^b_3 -
|
||||
- 2^(-b_0)*2^(-b_2)/2^b_3 - 2^b_0*2^(-b_2)/2^b_3 -
|
||||
- 2^(-b_0)*2^b_2/2^b_3 + 2^b_0*2^b_2/2^b_3 + 2^(-b_0)/2^b_3 +
|
||||
- 2^b_0/2^b_3 + 2^(-b_2)/2^b_3 + 2^b_2/2^b_3 - 9/2^b_3 - 18
|
||||
+ 2^b_0*2^b_2*2^b_3 + 2*2^b_0*2^b_2 + 2^b_0*2^b_3 + 2^b_2*2^b_3 +
|
||||
+ 2*2^b_0 + 2*2^b_2 - 9*2^b_3 + 2^b_0*2^b_2/2^b_3 -
|
||||
+ 2^b_0*2^b_3/2^b_2 - 2^b_2*2^b_3/2^b_0 - 2*2^b_0/2^b_2 -
|
||||
+ 2*2^b_2/2^b_0 + 2^b_0/2^b_3 + 2^b_2/2^b_3 + 2^b_3/2^b_0 +
|
||||
+ 2^b_3/2^b_2 + 2/2^b_0 + 2/2^b_2 - 2^b_0/(2^b_2*2^b_3) -
|
||||
+ 2^b_2/(2^b_0*2^b_3) - 9/2^b_3 - 2^b_3/(2^b_0*2^b_2) -
|
||||
+ 2/(2^b_0*2^b_2) + 1/(2^b_0*2^b_3) + 1/(2^b_2*2^b_3) -
|
||||
+ 1/(2^b_0*2^b_2*2^b_3) - 18
|
||||
|
||||
sage: _0,b_1,b_2=var('b_0,b_1,b_2')
|
||||
sage: f = 1/27*b_2^2/(2^b_2)^2 + 1/27*b_1^2/(2^b_1)^2 + \
|
||||
@@ -3809,7 +3809,7 @@ cdef class Expression(CommutativeRingElement):
|
||||
|
||||
sage: x = SR.symbol('x', domain='real')
|
||||
sage: (x^3)^(1/3)
|
||||
- (x^3)^(1/3)
|
||||
+ x
|
||||
sage: (x^4)^(1/4)
|
||||
abs(x)
|
||||
sage: (x^8)^(1/4)
|
||||
@@ -3872,7 +3872,7 @@ cdef class Expression(CommutativeRingElement):
|
||||
sage: 2^(x/log(2))
|
||||
e^x
|
||||
sage: 2^(-x^2/2/log(2))
|
||||
- e^(-1/2*x^2)
|
||||
+ 1/e^(1/2*x^2)
|
||||
sage: x^(x/log(x))
|
||||
x^(x/log(x))
|
||||
sage: assume(x > 0)
|
||||
@@ -4816,18 +4816,24 @@ cdef class Expression(CommutativeRingElement):
|
||||
sage: ((x+y)^(x+y)).match(w0^w0)
|
||||
{$0: x + y}
|
||||
sage: t = ((a+b)*(a+c)).match((a+w0)*(a+w1))
|
||||
- sage: t[w0], t[w1]
|
||||
- (c, b)
|
||||
+ sage: set([t[w0], t[w1]]) == set([b, c])
|
||||
+ True
|
||||
sage: ((a+b)*(a+c)).match((w0+b)*(w0+c))
|
||||
{$0: a}
|
||||
sage: t = ((a+b)*(a+c)).match((w0+w1)*(w0+w2))
|
||||
- sage: t[w0], t[w1], t[w2]
|
||||
- (a, c, b)
|
||||
- sage: print(((a+b)*(a+c)).match((w0+w1)*(w1+w2)))
|
||||
- None
|
||||
+ sage: t[w0]
|
||||
+ a
|
||||
+ sage: set([t[w1], t[w2]]) == set([b, c])
|
||||
+ True
|
||||
+ sage: t = ((a+b)*(a+c)).match((w0+w1)*(w1+w2))
|
||||
+ sage: t[w1]
|
||||
+ a
|
||||
+ sage: set([t[w0], t[w2]]) == set([b, c])
|
||||
+ True
|
||||
sage: t = (a*(x+y)+a*z+b).match(a*w0+w1)
|
||||
- sage: t[w0], t[w1]
|
||||
- (x + y, a*z + b)
|
||||
+ sage: s = set([t[w0], t[w1]])
|
||||
+ sage: s == set([x+y, a*z+b]) or s == set([z, a*(x+y)+b])
|
||||
+ True
|
||||
sage: print((a+b+c+d+f+g).match(c))
|
||||
None
|
||||
sage: (a+b+c+d+f+g).has(c)
|
||||
@@ -4836,7 +4842,7 @@ cdef class Expression(CommutativeRingElement):
|
||||
{$0: a + b + d + f + g}
|
||||
sage: (a+b+c+d+f+g).match(c+g+w0)
|
||||
{$0: a + b + d + f}
|
||||
- sage: (a+b).match(a+b+w0)
|
||||
+ sage: (a+b).match(a+b+w0) # known bug
|
||||
{$0: 0}
|
||||
sage: print((a*b^2).match(a^w0*b^w1))
|
||||
None
|
||||
@@ -5009,7 +5015,7 @@ cdef class Expression(CommutativeRingElement):
|
||||
a^3 + b^3 + (x + y)^3
|
||||
|
||||
sage: t.subs(w0 == w0^2)
|
||||
- (x^2 + y^2)^18 + a^16 + b^16
|
||||
+ a^8 + b^8 + (x^2 + y^2)^6
|
||||
|
||||
sage: t.subs(a == b, b == c)
|
||||
(x + y)^3 + b^2 + c^2
|
||||
@@ -8392,9 +8398,13 @@ cdef class Expression(CommutativeRingElement):
|
||||
sage: SR(I).arctan2(1)
|
||||
arctan2(I, 1)
|
||||
sage: SR(CDF(0,1)).arctan2(1)
|
||||
- NaN + +infinity*I
|
||||
- sage: SR(1).arctan2(CDF(0,1)) # known bug
|
||||
- 0.7853981633974484 - 19.012501686914433*I
|
||||
+ Traceback (most recent call last):
|
||||
+ ...
|
||||
+ ValueError: power::eval(): division by zero
|
||||
+ sage: SR(1).arctan2(CDF(0,1))
|
||||
+ Traceback (most recent call last):
|
||||
+ ...
|
||||
+ ValueError: power::eval(): division by zero
|
||||
|
||||
sage: arctan2(0,oo)
|
||||
0
|
||||
@@ -8656,7 +8666,7 @@ cdef class Expression(CommutativeRingElement):
|
||||
1/2*I*pi
|
||||
sage: SR(1/2).arccosh()
|
||||
arccosh(1/2)
|
||||
- sage: SR(CDF(1/2)).arccosh() # rel tol 1e-15
|
||||
+ sage: SR(CDF(1/2)).arccosh() # rel tol 1e-15
|
||||
1.0471975511965976*I
|
||||
sage: maxima('acosh(0.5)')
|
||||
1.04719755119659...*%i
|
||||
@@ -11687,7 +11697,7 @@ cdef class Expression(CommutativeRingElement):
|
||||
sage: a.solve(t)
|
||||
[]
|
||||
sage: b = a.canonicalize_radical(); b
|
||||
- -23040.0*(-2.0*e^(1800*t) + 25.0*e^(900*t) - 32.0)*e^(-2400*t)
|
||||
+ (46080.0*e^(1800*t) - 576000.0*e^(900*t) + 737280.0)*e^(-2400*t)
|
||||
sage: b.solve(t)
|
||||
[]
|
||||
sage: b.solve(t, to_poly_solve=True)
|
||||
@@ -12163,14 +12173,14 @@ cdef class Expression(CommutativeRingElement):
|
||||
|
||||
sage: (n,k,j)=var('n,k,j')
|
||||
sage: sum(binomial(n,k)*binomial(k-1,j)*(-1)**(k-1-j),k,j+1,n)
|
||||
- -(-1)^(-j)*sum((-1)^k*binomial(k - 1, j)*binomial(n, k), k, j + 1, n)
|
||||
+ -(-1)^j*sum((-1)^k*binomial(k - 1, j)*binomial(n, k), k, j + 1, n)
|
||||
sage: assume(j>-1)
|
||||
sage: sum(binomial(n,k)*binomial(k-1,j)*(-1)**(k-1-j),k,j+1,n)
|
||||
1
|
||||
sage: forget()
|
||||
sage: assume(n>=j)
|
||||
sage: sum(binomial(n,k)*binomial(k-1,j)*(-1)**(k-1-j),k,j+1,n)
|
||||
- -(-1)^(-j)*sum((-1)^k*binomial(k - 1, j)*binomial(n, k), k, j + 1, n)
|
||||
+ -(-1)^j*sum((-1)^k*binomial(k - 1, j)*binomial(n, k), k, j + 1, n)
|
||||
sage: forget()
|
||||
sage: assume(j==-1)
|
||||
sage: sum(binomial(n,k)*binomial(k-1,j)*(-1)**(k-1-j),k,j+1,n)
|
||||
@@ -12178,7 +12188,7 @@ cdef class Expression(CommutativeRingElement):
|
||||
sage: forget()
|
||||
sage: assume(j<-1)
|
||||
sage: sum(binomial(n,k)*binomial(k-1,j)*(-1)**(k-1-j),k,j+1,n)
|
||||
- -(-1)^(-j)*sum((-1)^k*binomial(k - 1, j)*binomial(n, k), k, j + 1, n)
|
||||
+ -(-1)^j*sum((-1)^k*binomial(k - 1, j)*binomial(n, k), k, j + 1, n)
|
||||
sage: forget()
|
||||
|
||||
Check that :trac:`16176` is fixed::
|
||||
diff --git a/src/sage/symbolic/relation.py b/src/sage/symbolic/relation.py
|
||||
index da6f0eef42..4bd65ef572 100644
|
||||
--- a/src/sage/symbolic/relation.py
|
||||
+++ b/src/sage/symbolic/relation.py
|
||||
@@ -895,7 +895,7 @@ def solve(f, *args, **kwds):
|
||||
sage: (r[0][x], r[0][y])
|
||||
(2*lambert_w(1/2), 1)
|
||||
sage: solve(-2*x**3 + 4*x**2 - 2*x + 6 > 0, x, algorithm='sympy')
|
||||
- [x < (1/6*sqrt(77) + 79/54)^(1/3) + 1/9/(1/6*sqrt(77) + 79/54)^(1/3) + 2/3]
|
||||
+ [x < 1/3*(1/2)^(1/3)*(9*sqrt(77) + 79)^(1/3) + 2/3*(1/2)^(2/3)/(9*sqrt(77) + 79)^(1/3) + 2/3]
|
||||
sage: solve(sqrt(2*x^2 - 7) - (3 - x),x,algorithm='sympy')
|
||||
[x == -8, x == 2]
|
||||
sage: solve(sqrt(2*x + 9) - sqrt(x + 1) - sqrt(x + 4),x,algorithm='sympy')
|
@ -1,40 +0,0 @@
|
||||
diff --git a/src/sage/tests/py3_syntax.py b/src/sage/tests/py3_syntax.py
|
||||
index e564860b48..86ab3725f9 100644
|
||||
--- a/src/sage/tests/py3_syntax.py
|
||||
+++ b/src/sage/tests/py3_syntax.py
|
||||
@@ -179,15 +179,30 @@ class Python3SyntaxTest(SortedDirectoryWalkerABC):
|
||||
sage: py3_syntax = Python3SyntaxTest()
|
||||
sage: py3_syntax.test(src.name)
|
||||
Invalid Python 3 syntax found:
|
||||
- File "...py", line 1
|
||||
- print "invalid print statement"
|
||||
- ^
|
||||
- SyntaxError: Missing parentheses in call to 'print'
|
||||
+ Missing parentheses in call to 'print'...
|
||||
sage: os.unlink(src.name)
|
||||
"""
|
||||
+
|
||||
+ # compile all given files in memory, printing all errors
|
||||
+ # inspired by the py_compile module (but without writing to file)
|
||||
+ script = """
|
||||
+import sys
|
||||
+import importlib.machinery
|
||||
+rv = 0
|
||||
+for file in sys.argv[1:]:
|
||||
+ loader = importlib.machinery.SourceFileLoader('<sage_test>', file)
|
||||
+ source_bytes = loader.get_data(file)
|
||||
+ try:
|
||||
+ code = loader.source_to_code(source_bytes, file)
|
||||
+ except Exception as err:
|
||||
+ print(err)
|
||||
+ rv = 1
|
||||
+sys.exit(rv)
|
||||
+"""
|
||||
cmd = [
|
||||
'python3',
|
||||
- '-m', 'py_compile'
|
||||
+ '-c',
|
||||
+ script,
|
||||
] + list(filenames)
|
||||
process = subprocess.Popen(
|
||||
cmd,
|
@ -1,31 +0,0 @@
|
||||
From 7419e0246230594ebfd5e7a2fe6b80d67abfc98a Mon Sep 17 00:00:00 2001
|
||||
From: Jeroen Demeyer <jdemeyer@cage.ugent.be>
|
||||
Date: Tue, 20 Mar 2018 10:40:41 +0100
|
||||
Subject: Fix sphinxify doctests
|
||||
|
||||
---
|
||||
sagenb/misc/sphinxify.py | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/sagenb/misc/sphinxify.py b/sagenb/misc/sphinxify.py
|
||||
index 4f76d41..15623d9 100644
|
||||
--- a/sagenb/misc/sphinxify.py
|
||||
+++ b/sagenb/misc/sphinxify.py
|
||||
@@ -47,11 +47,11 @@ def sphinxify(docstring, format='html'):
|
||||
|
||||
sage: from sage.misc.sphinxify import sphinxify
|
||||
sage: sphinxify('A test')
|
||||
- '...<div class="docstring">\n \n <p>A test</p>\n\n\n</div>'
|
||||
+ '<div class="docstring">\n \n <p>A test</p>\n\n\n</div>'
|
||||
sage: sphinxify('**Testing**\n`monospace`')
|
||||
- '...<div class="docstring"...<strong>Testing</strong>\n<span class="math"...</p>\n\n\n</div>'
|
||||
+ '<div class="docstring"...<strong>Testing</strong>\n<span class="math notranslate"...</p>\n\n\n</div>'
|
||||
sage: sphinxify('`x=y`')
|
||||
- '...<div class="docstring">\n \n <p><span class="math">x=y</span></p>\n\n\n</div>'
|
||||
+ '<div class="docstring">\n \n <p><span class="math notranslate">x=y</span></p>\n\n\n</div>'
|
||||
sage: sphinxify('`x=y`', format='text')
|
||||
'x=y\n'
|
||||
sage: sphinxify(':math:`x=y`', format='text')
|
||||
--
|
||||
cgit v1.0-1-gd88e
|
||||
|
@ -0,0 +1,274 @@
|
||||
diff --git a/src/sage/interfaces/singular.py b/src/sage/interfaces/singular.py
|
||||
index 9d65c9fa6c..a028bbe719 100644
|
||||
--- a/src/sage/interfaces/singular.py
|
||||
+++ b/src/sage/interfaces/singular.py
|
||||
@@ -654,7 +654,7 @@ class Singular(ExtraTabCompletion, Expect):
|
||||
|
||||
s = Expect.eval(self, x, **kwds)
|
||||
|
||||
- if s.find("error") != -1 or s.find("Segment fault") != -1:
|
||||
+ if s.find("error occurred") != -1 or s.find("Segment fault") != -1:
|
||||
raise SingularError('Singular error:\n%s'%s)
|
||||
|
||||
if get_verbose() > 0:
|
||||
@@ -1079,7 +1079,7 @@ class Singular(ExtraTabCompletion, Expect):
|
||||
sage: S = singular.ring('real', '(a,b)', 'lp')
|
||||
sage: singular.current_ring()
|
||||
polynomial ring, over a field, global ordering
|
||||
- // coefficients: float
|
||||
+ // coefficients: Float()
|
||||
// number of vars : 2
|
||||
// block 1 : ordering lp
|
||||
// : names a b
|
||||
@@ -1157,7 +1157,7 @@ class Singular(ExtraTabCompletion, Expect):
|
||||
sage: singular._tab_completion()
|
||||
['exteriorPower',
|
||||
...
|
||||
- 'flintZ']
|
||||
+ 'crossprod']
|
||||
"""
|
||||
p = re.compile("// *([a-z0-9A-Z_]*).*") #compiles regular expression
|
||||
proclist = self.eval("listvar(proc)").splitlines()
|
||||
@@ -1183,7 +1183,7 @@ class Singular(ExtraTabCompletion, Expect):
|
||||
EXAMPLES::
|
||||
|
||||
sage: singular.version()
|
||||
- "Singular ... version 4.1.0 ...
|
||||
+ "Singular ... version 4...
|
||||
"""
|
||||
return singular_version()
|
||||
|
||||
@@ -1562,7 +1562,7 @@ class SingularElement(ExtraTabCompletion, ExpectElement):
|
||||
elif charstr[0] in ['0', 'QQ']:
|
||||
from sage.all import QQ
|
||||
br = QQ
|
||||
- elif charstr[0]=='real':
|
||||
+ elif charstr[0].startswith('Float'):
|
||||
from sage.all import RealField, ceil, log
|
||||
prec = singular.eval('ringlist(basering)[1][2][1]')
|
||||
br = RealField(ceil((ZZ(prec)+1)/log(2,10)))
|
||||
@@ -1750,7 +1750,7 @@ class SingularElement(ExtraTabCompletion, ExpectElement):
|
||||
|
||||
# Singular 4 puts parentheses around floats and sign outside them
|
||||
charstr = self.parent().eval('charstr(basering)').split(',',1)
|
||||
- if charstr[0] in ['real', 'complex']:
|
||||
+ if charstr[0]=='complex' or charstr[0].startswith('Float'):
|
||||
for i in range(coeff_start, 2 * coeff_start):
|
||||
singular_poly_list[i] = singular_poly_list[i].replace('(','').replace(')','')
|
||||
|
||||
@@ -1992,7 +1992,7 @@ class SingularElement(ExtraTabCompletion, ExpectElement):
|
||||
sage: S = singular.ring('real', '(a,b)', 'lp')
|
||||
sage: singular.current_ring()
|
||||
polynomial ring, over a field, global ordering
|
||||
- // coefficients: float
|
||||
+ // coefficients: Float()
|
||||
// number of vars : 2
|
||||
// block 1 : ordering lp
|
||||
// : names a b
|
||||
@@ -2072,7 +2072,7 @@ class SingularElement(ExtraTabCompletion, ExpectElement):
|
||||
sage: R._tab_completion()
|
||||
['exteriorPower',
|
||||
...
|
||||
- 'flintZ']
|
||||
+ 'crossprod']
|
||||
"""
|
||||
return self.parent()._tab_completion()
|
||||
|
||||
@@ -2358,7 +2358,7 @@ def singular_version():
|
||||
EXAMPLES::
|
||||
|
||||
sage: singular.version()
|
||||
- "Singular ... version 4.1.0 ...
|
||||
+ "Singular ... version 4...
|
||||
"""
|
||||
return singular.eval('system("--version");')
|
||||
|
||||
diff --git a/src/sage/libs/singular/decl.pxd b/src/sage/libs/singular/decl.pxd
|
||||
index 4b658c4807..d863740419 100644
|
||||
--- a/src/sage/libs/singular/decl.pxd
|
||||
+++ b/src/sage/libs/singular/decl.pxd
|
||||
@@ -170,7 +170,7 @@ cdef extern from "singular/Singular/libsingular.h":
|
||||
|
||||
int n_NumberOfParameters(const n_Procs_s* r)
|
||||
|
||||
- ctypedef struct poly "polyrec":
|
||||
+ ctypedef struct poly "spolyrec":
|
||||
poly *next
|
||||
number *coef
|
||||
unsigned long exp[1]
|
||||
@@ -630,9 +630,13 @@ cdef extern from "singular/Singular/libsingular.h":
|
||||
# return p*q, destroys p and q
|
||||
poly *p_Mult_q(poly *p, poly *q, ring *r)
|
||||
|
||||
+ # polynomial division, ignoring the rest
|
||||
+ # via singclap_pdivide resp. idLift, destroys p,q
|
||||
+ poly *p_Divide(poly *p, poly *q, ring *r)
|
||||
+
|
||||
# divide monomial p by monomial q, p,q const
|
||||
|
||||
- poly *pDivide(poly *p,poly *q)
|
||||
+ poly *pMDivide(poly *p,poly *q)
|
||||
|
||||
# return the i-th power of p; p destroyed, requires global ring
|
||||
|
||||
diff --git a/src/sage/rings/polynomial/multi_polynomial_libsingular.pyx b/src/sage/rings/polynomial/multi_polynomial_libsingular.pyx
|
||||
index 2a8d9ae021..aeff53af6c 100644
|
||||
--- a/src/sage/rings/polynomial/multi_polynomial_libsingular.pyx
|
||||
+++ b/src/sage/rings/polynomial/multi_polynomial_libsingular.pyx
|
||||
@@ -190,8 +190,8 @@ from sage.libs.singular.decl cimport (
|
||||
n_IsUnit, n_Invers,
|
||||
p_ISet, rChangeCurrRing, p_Copy, p_Init, p_SetCoeff, p_Setm, p_SetExp, p_Add_q,
|
||||
p_NSet, p_GetCoeff, p_Delete, p_GetExp, pNext, rRingVar, omAlloc0, omStrDup,
|
||||
- omFree, pDivide, p_SetCoeff0, n_Init, p_DivisibleBy, pLcm, p_LmDivisibleBy,
|
||||
- pDivide, p_IsConstant, p_ExpVectorEqual, p_String, p_LmInit, n_Copy,
|
||||
+ omFree, pMDivide, p_Divide, p_SetCoeff0, n_Init, p_DivisibleBy, pLcm, p_LmDivisibleBy,
|
||||
+ pMDivide, p_IsConstant, p_ExpVectorEqual, p_String, p_LmInit, n_Copy,
|
||||
p_IsUnit, p_Series, p_Head, idInit, fast_map_common_subexp, id_Delete,
|
||||
p_IsHomogeneous, p_Homogen, p_Totaldegree,pLDeg1_Totaldegree, singclap_pdivide, singclap_factorize,
|
||||
idLift, IDELEMS, On, Off, SW_USE_CHINREM_GCD, SW_USE_EZGCD,
|
||||
@@ -1693,8 +1693,8 @@ cdef class MPolynomialRing_libsingular(MPolynomialRing_base):
|
||||
if not g._poly:
|
||||
raise ZeroDivisionError
|
||||
|
||||
- if r!=currRing: rChangeCurrRing(r) # pDivide
|
||||
- res = pDivide(f._poly, g._poly)
|
||||
+ if r!=currRing: rChangeCurrRing(r) # pMDivide
|
||||
+ res = pMDivide(f._poly, g._poly)
|
||||
if coeff:
|
||||
if r.cf.type == n_unknown or r.cf.cfDivBy(p_GetCoeff(f._poly, r), p_GetCoeff(g._poly, r), r.cf):
|
||||
n = r.cf.cfDiv( p_GetCoeff(f._poly, r) , p_GetCoeff(g._poly, r), r.cf)
|
||||
@@ -1853,8 +1853,8 @@ cdef class MPolynomialRing_libsingular(MPolynomialRing_base):
|
||||
and (<MPolynomial_libsingular>g) \
|
||||
and g.parent() is self \
|
||||
and p_LmDivisibleBy((<MPolynomial_libsingular>g)._poly, m, r):
|
||||
- if r!=currRing: rChangeCurrRing(r) # pDivide
|
||||
- flt = pDivide(f._poly, (<MPolynomial_libsingular>g)._poly)
|
||||
+ if r!=currRing: rChangeCurrRing(r) # pMDivide
|
||||
+ flt = pMDivide(f._poly, (<MPolynomial_libsingular>g)._poly)
|
||||
#p_SetCoeff(flt, n_Div( p_GetCoeff(f._poly, r) , p_GetCoeff((<MPolynomial_libsingular>g)._poly, r), r), r)
|
||||
p_SetCoeff(flt, n_Init(1, r), r)
|
||||
return new_MP(self,flt), g
|
||||
@@ -4023,16 +4023,6 @@ cdef class MPolynomial_libsingular(MPolynomial):
|
||||
Traceback (most recent call last):
|
||||
...
|
||||
NotImplementedError: Division of multivariate polynomials over non fields by non-monomials not implemented.
|
||||
-
|
||||
- TESTS::
|
||||
-
|
||||
- sage: P.<x,y> = ZZ[]
|
||||
- sage: p = 3*(-x^8*y^2 - x*y^9 + 6*x^8*y + 17*x^2*y^6 - x^3*y^2)
|
||||
- sage: q = 7*(x^2 + x*y + y^2 + 1)
|
||||
- sage: p*q//q == p
|
||||
- True
|
||||
- sage: p*q//p == q
|
||||
- True
|
||||
"""
|
||||
cdef MPolynomialRing_libsingular parent = self._parent
|
||||
cdef ring *r = self._parent_ring
|
||||
@@ -4052,13 +4042,18 @@ cdef class MPolynomial_libsingular(MPolynomial):
|
||||
_right = <MPolynomial_libsingular>right
|
||||
|
||||
if r.cf.type != n_unknown:
|
||||
+ if r.cf.type == n_Z:
|
||||
+ P = parent.change_ring(RationalField())
|
||||
+ f = P(self)//P(right)
|
||||
+ CM = list(f)
|
||||
+ return parent(sum([c.floor()*m for c,m in CM]))
|
||||
if _right.is_monomial():
|
||||
p = _self._poly
|
||||
quo = p_ISet(0,r)
|
||||
- if r != currRing: rChangeCurrRing(r) # pDivide
|
||||
+ if r != currRing: rChangeCurrRing(r) # pMDivide
|
||||
while p:
|
||||
if p_DivisibleBy(_right._poly, p, r):
|
||||
- temp = pDivide(p, _right._poly)
|
||||
+ temp = pMDivide(p, _right._poly)
|
||||
p_SetCoeff0(temp, n_Copy(p_GetCoeff(p, r), r), r)
|
||||
quo = p_Add_q(quo, temp, r)
|
||||
p = pNext(p)
|
||||
@@ -4794,6 +4789,8 @@ cdef class MPolynomial_libsingular(MPolynomial):
|
||||
sage: p = -x*y + x*z + 54*x - 2
|
||||
sage: (5*p^2).lcm(3*p) == 15*p^2
|
||||
True
|
||||
+ sage: lcm(2*x,2*x*y)
|
||||
+ 2*x*y
|
||||
"""
|
||||
cdef ring *_ring = self._parent_ring
|
||||
cdef poly *ret
|
||||
@@ -4821,9 +4818,7 @@ cdef class MPolynomial_libsingular(MPolynomial):
|
||||
if _ring!=currRing: rChangeCurrRing(_ring) # singclap_gcd
|
||||
gcd = singclap_gcd(p_Copy(self._poly, _ring), p_Copy(_g._poly, _ring), _ring )
|
||||
prod = pp_Mult_qq(self._poly, _g._poly, _ring)
|
||||
- ret = singclap_pdivide(prod , gcd , _ring)
|
||||
- p_Delete(&prod, _ring)
|
||||
- p_Delete(&gcd, _ring)
|
||||
+ ret = p_Divide(prod, gcd, _ring)
|
||||
if count >= 20:
|
||||
sig_off()
|
||||
return new_MP(self._parent, ret)
|
||||
@@ -4866,7 +4861,7 @@ cdef class MPolynomial_libsingular(MPolynomial):
|
||||
sage: f.quo_rem(y)
|
||||
(2*x^2, x + 1)
|
||||
sage: f.quo_rem(3*x)
|
||||
- (2*x*y + 1, -4*x^2*y - 2*x + 1)
|
||||
+ (0, 2*x^2*y + x + 1)
|
||||
|
||||
TESTS::
|
||||
|
||||
@@ -4888,7 +4883,7 @@ cdef class MPolynomial_libsingular(MPolynomial):
|
||||
if right.is_zero():
|
||||
raise ZeroDivisionError
|
||||
|
||||
- if not self._parent._base.is_field() and not is_IntegerRing(self._parent._base):
|
||||
+ if not self._parent._base.is_field():
|
||||
py_quo = self//right
|
||||
py_rem = self - right*py_quo
|
||||
return py_quo, py_rem
|
||||
diff --git a/src/sage/rings/polynomial/plural.pyx b/src/sage/rings/polynomial/plural.pyx
|
||||
index d5439f7f08..ad20ebcca0 100644
|
||||
--- a/src/sage/rings/polynomial/plural.pyx
|
||||
+++ b/src/sage/rings/polynomial/plural.pyx
|
||||
@@ -998,7 +998,7 @@ cdef class NCPolynomialRing_plural(Ring):
|
||||
if not g._poly:
|
||||
raise ZeroDivisionError
|
||||
|
||||
- res = pDivide(f._poly,g._poly)
|
||||
+ res = pMDivide(f._poly,g._poly)
|
||||
if coeff:
|
||||
if (r.cf.type == n_unknown) or r.cf.cfDivBy(p_GetCoeff(f._poly, r), p_GetCoeff(g._poly, r), r.cf):
|
||||
n = r.cf.cfDiv( p_GetCoeff(f._poly, r) , p_GetCoeff(g._poly, r), r.cf)
|
||||
@@ -1193,7 +1193,7 @@ cdef class NCPolynomialRing_plural(Ring):
|
||||
if isinstance(g, NCPolynomial_plural) \
|
||||
and (<NCPolynomial_plural>g) \
|
||||
and p_LmDivisibleBy((<NCPolynomial_plural>g)._poly, m, r):
|
||||
- flt = pDivide(f._poly, (<NCPolynomial_plural>g)._poly)
|
||||
+ flt = pMDivide(f._poly, (<NCPolynomial_plural>g)._poly)
|
||||
#p_SetCoeff(flt, n_Div( p_GetCoeff(f._poly, r) , p_GetCoeff((<NCPolynomial_plural>g)._poly, r), r), r)
|
||||
p_SetCoeff(flt, n_Init(1, r), r)
|
||||
return new_NCP(self,flt), g
|
||||
diff --git a/src/sage/rings/polynomial/polynomial_singular_interface.py b/src/sage/rings/polynomial/polynomial_singular_interface.py
|
||||
index 9331169f8b..f753610fd3 100644
|
||||
--- a/src/sage/rings/polynomial/polynomial_singular_interface.py
|
||||
+++ b/src/sage/rings/polynomial/polynomial_singular_interface.py
|
||||
@@ -81,8 +81,8 @@ class PolynomialRing_singular_repr:
|
||||
sage: R.<x,y> = PolynomialRing(CC)
|
||||
sage: singular(R)
|
||||
polynomial ring, over a field, global ordering
|
||||
- // coefficients: float[I](complex:15 digits, additional 0 digits)/(I^2+1)
|
||||
- // number of vars : 2
|
||||
+ // coefficients: real[I](complex:15 digits, additional 0 digits)/(I^2+1)
|
||||
+ // number of vars : 2
|
||||
// block 1 : ordering dp
|
||||
// : names x y
|
||||
// block 2 : ordering C
|
||||
@@ -90,8 +90,8 @@ class PolynomialRing_singular_repr:
|
||||
sage: R.<x,y> = PolynomialRing(RealField(100))
|
||||
sage: singular(R)
|
||||
polynomial ring, over a field, global ordering
|
||||
- // coefficients: float
|
||||
- // number of vars : 2
|
||||
+ // coefficients: Float()
|
||||
+ // number of vars : 2
|
||||
// block 1 : ordering dp
|
||||
// : names x y
|
||||
// block 2 : ordering C
|
@ -1,62 +0,0 @@
|
||||
diff --git a/src/bin/sage b/src/bin/sage
|
||||
index 397f30cbed..3fc473c343 100755
|
||||
--- a/src/bin/sage
|
||||
+++ b/src/bin/sage
|
||||
@@ -980,8 +980,11 @@ if [ "$1" = '-rsyncdist' -o "$1" = "--rsyncdist" ]; then
|
||||
fi
|
||||
|
||||
if [ "$1" = "-docbuild" -o "$1" = "--docbuild" ]; then
|
||||
+ # Redirect stdin from /dev/null. This helps with running TeX which
|
||||
+ # tends to ask interactive questions if something goes wrong. These
|
||||
+ # cause the build to hang. If stdin is /dev/null, TeX just aborts.
|
||||
shift
|
||||
- exec sage-python23 -m "sage_setup.docbuild" "$@"
|
||||
+ exec sage-python23 -m sage_setup.docbuild "$@" </dev/null
|
||||
fi
|
||||
|
||||
if [ "$1" = '-gdb' -o "$1" = "--gdb" ]; then
|
||||
diff --git a/src/doc/common/conf.py b/src/doc/common/conf.py
|
||||
index 25f94f7b7d..3f07474d9b 100644
|
||||
--- a/src/doc/common/conf.py
|
||||
+++ b/src/doc/common/conf.py
|
||||
@@ -627,7 +627,7 @@ def call_intersphinx(app, env, node, contnode):
|
||||
sage: for line in open(thematic_index).readlines():
|
||||
....: if "padics" in line:
|
||||
....: sys.stdout.write(line)
|
||||
- <li><a class="reference external" href="../reference/padics/sage/rings/padics/tutorial.html#sage-rings-padics-tutorial" title="(in Sage Reference Manual: p-Adics ...)"><span>Introduction to the -adics</span></a></li>
|
||||
+ <li><a class="reference external" href="../reference/padics/sage/rings/padics/tutorial.html#sage-rings-padics-tutorial" title="(in Sage Reference Manual: p-Adics v...)"><span>Introduction to the -adics</span></a></li>
|
||||
"""
|
||||
debug_inf(app, "???? Trying intersphinx for %s"%node['reftarget'])
|
||||
builder = app.builder
|
||||
diff --git a/src/sage/misc/sphinxify.py b/src/sage/misc/sphinxify.py
|
||||
index 4f76d4113a..8f426b5989 100644
|
||||
--- a/src/sage/misc/sphinxify.py
|
||||
+++ b/src/sage/misc/sphinxify.py
|
||||
@@ -47,11 +47,11 @@ def sphinxify(docstring, format='html'):
|
||||
|
||||
sage: from sage.misc.sphinxify import sphinxify
|
||||
sage: sphinxify('A test')
|
||||
- '...<div class="docstring">\n \n <p>A test</p>\n\n\n</div>'
|
||||
+ '<div class="docstring">\n \n <p>A test</p>\n\n\n</div>'
|
||||
sage: sphinxify('**Testing**\n`monospace`')
|
||||
- '...<div class="docstring"...<strong>Testing</strong>\n<span class="math"...</p>\n\n\n</div>'
|
||||
+ '<div class="docstring"...<strong>Testing</strong>\n<span class="math...</p>\n\n\n</div>'
|
||||
sage: sphinxify('`x=y`')
|
||||
- '...<div class="docstring">\n \n <p><span class="math">x=y</span></p>\n\n\n</div>'
|
||||
+ '<div class="docstring">\n \n <p><span class="math notranslate nohighlight">x=y</span></p>\n\n\n</div>'
|
||||
sage: sphinxify('`x=y`', format='text')
|
||||
'x=y\n'
|
||||
sage: sphinxify(':math:`x=y`', format='text')
|
||||
diff --git a/src/sage_setup/docbuild/sphinxbuild.py b/src/sage_setup/docbuild/sphinxbuild.py
|
||||
index fda76a4174..d3413239dd 100644
|
||||
--- a/src/sage_setup/docbuild/sphinxbuild.py
|
||||
+++ b/src/sage_setup/docbuild/sphinxbuild.py
|
||||
@@ -207,7 +207,7 @@ def runsphinx():
|
||||
try:
|
||||
sys.stdout = SageSphinxLogger(sys.stdout, os.path.basename(output_dir))
|
||||
sys.stderr = SageSphinxLogger(sys.stderr, os.path.basename(output_dir))
|
||||
- sphinx.cmdline.main(sys.argv)
|
||||
+ sphinx.cmdline.main(sys.argv[1:])
|
||||
finally:
|
||||
sys.stdout = saved_stdout
|
||||
sys.stderr = saved_stderr
|
@ -0,0 +1,46 @@
|
||||
commit f02714d4aea80e17cb8df62bab75d7c1a1b61a8e
|
||||
Author: Timo Kaufmann <timokau@zoho.com>
|
||||
Date: Mon Jul 9 18:26:18 2018 +0200
|
||||
|
||||
Don't attempt to create dirs when showing pkg info
|
||||
|
||||
The script dir cannot be assumed to be writeable after installation.
|
||||
|
||||
diff --git a/build/bin/sage-spkg b/build/bin/sage-spkg
|
||||
index f3e02aeae5..190d558ad1 100755
|
||||
--- a/build/bin/sage-spkg
|
||||
+++ b/build/bin/sage-spkg
|
||||
@@ -167,14 +167,6 @@ if [ -z "$SAGE_BUILD_DIR" ]; then
|
||||
export SAGE_BUILD_DIR="$SAGE_LOCAL/var/tmp/sage/build"
|
||||
fi
|
||||
|
||||
-for dir in "$SAGE_SPKG_INST" "$SAGE_SPKG_SCRIPTS"; do
|
||||
- mkdir -p "$dir"
|
||||
- if [ $? -ne 0 ]; then
|
||||
- error_msg "Error creating directory $dir"
|
||||
- exit 1
|
||||
- fi
|
||||
-done
|
||||
-
|
||||
|
||||
# Remove '.' from PYTHONPATH, which may also come from SAGE_PATH, to avoid
|
||||
# trouble with setuptools / easy_install (cf. #10192, #10176):
|
||||
@@ -563,11 +555,13 @@ fi
|
||||
# Setup directories
|
||||
##################################################################
|
||||
|
||||
-mkdir -p "$SAGE_BUILD_DIR"
|
||||
-if [ $? -ne 0 ]; then
|
||||
- error_msg "Error creating directory $SAGE_BUILD_DIR"
|
||||
- exit 1
|
||||
-fi
|
||||
+for dir in "$SAGE_SPKG_INST" "$SAGE_SPKG_SCRIPTS" "$SAGE_BUILD_DIR"; do
|
||||
+ mkdir -p "$dir"
|
||||
+ if [ $? -ne 0 ]; then
|
||||
+ error_msg "Error creating directory $dir"
|
||||
+ exit 1
|
||||
+ fi
|
||||
+done
|
||||
|
||||
# Trac #5852: check write permissions
|
||||
if [ ! -w "$SAGE_BUILD_DIR" ]; then
|
@ -1,13 +0,0 @@
|
||||
diff --git a/src/sage/misc/package.py b/src/sage/misc/package.py
|
||||
index 7ff4f21675..1d72168833 100644
|
||||
--- a/src/sage/misc/package.py
|
||||
+++ b/src/sage/misc/package.py
|
||||
@@ -350,7 +350,7 @@ def package_versions(package_type, local=False):
|
||||
sage: 'gap' in std
|
||||
True
|
||||
sage: std['zn_poly']
|
||||
- ('0.9.p11', '0.9.p11')
|
||||
+ ('0.9', '0.9.p11')
|
||||
"""
|
||||
return {pkg['name']: (pkg['installed_version'], pkg['remote_version']) for pkg in list_packages(package_type, local=local).values()}
|
||||
|
@ -3,17 +3,20 @@
|
||||
, fetchpatch
|
||||
}:
|
||||
stdenv.mkDerivation rec {
|
||||
version = "8.2";
|
||||
version = "8.3";
|
||||
name = "sage-src-${version}";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "sagemath";
|
||||
repo = "sage";
|
||||
rev = version;
|
||||
sha256 = "0d7vc16s7dj23an2cb8v5bhbnc6nsw20qhnnxr0xh8qg629027b8";
|
||||
sha256 = "0mbm99m5xry21xpi4q3q96gx392liwbifywf5awvl0j85a7rkfyx";
|
||||
};
|
||||
|
||||
nixPatches = [
|
||||
# https://trac.sagemath.org/ticket/25809
|
||||
./patches/spkg-scripts.patch
|
||||
|
||||
# https://trac.sagemath.org/ticket/25309
|
||||
(fetchpatch {
|
||||
name = "spkg-paths.patch";
|
||||
@ -26,14 +29,7 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "14s50yg3hpw9cp3v581dx7zfmpm2j972im7x30iwki8k45mjvk3i";
|
||||
})
|
||||
|
||||
# https://trac.sagemath.org/ticket/25328
|
||||
# https://trac.sagemath.org/ticket/25546
|
||||
# https://trac.sagemath.org/ticket/25722
|
||||
(fetchpatch {
|
||||
name = "install-jupyter-kernel-in-correct-prefix.patch";
|
||||
url = "https://git.sagemath.org/sage.git/patch?id=72167b98e3f64326df6b2c78785df25539472fcc";
|
||||
sha256 = "0pscnjhm7r2yr2rxnv4kkkq626vwaja720lixa3m3w9rwlxll5a7";
|
||||
})
|
||||
./patches/test-in-tmpdir.patch
|
||||
|
||||
# https://trac.sagemath.org/ticket/25358
|
||||
@ -43,27 +39,13 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "1hhannz7xzprijakn2w2d0rhd5zv2zikik9p51i87bas3nc658f7";
|
||||
})
|
||||
|
||||
# https://trac.sagemath.org/ticket/25357 rebased on 8.2
|
||||
./patches/python3-syntax-without-write.patch
|
||||
|
||||
# https://trac.sagemath.org/ticket/25314
|
||||
(fetchpatch {
|
||||
name = "make-qepcad-test-optional.patch";
|
||||
url = "https://git.sagemath.org/sage.git/patch/?h=fe294c58bd035ef427e268901d54a6faa0058138";
|
||||
sha256 = "003d5baf5c0n5rfg010ijwkwz8kg0s414cxwczs2vhdayxdixbix";
|
||||
})
|
||||
|
||||
# Unfortunately inclusion in upstream sage was rejected. Instead the bug was
|
||||
# fixed in python, but of course not backported to 2.7. So we'll probably
|
||||
# have to keep this around until 2.7 is deprecated.
|
||||
# https://trac.sagemath.org/ticket/25316
|
||||
# https://github.com/python/cpython/pull/7476
|
||||
./patches/python-5755-hotpatch.patch
|
||||
|
||||
# https://trac.sagemath.org/ticket/25354
|
||||
# https://trac.sagemath.org/ticket/25531
|
||||
(fetchpatch {
|
||||
name = "cysignals-include.patch";
|
||||
url = "https://git.sagemath.org/sage.git/patch/?h=28778bd25a37c80884d2b24e0683fb2989300cef";
|
||||
sha256 = "0fiiiw91pgs8avm9ggj8hb64bhqzl6jcw094d94nhirmh8w2jmc5";
|
||||
})
|
||||
|
||||
# https://trac.sagemath.org/ticket/25315
|
||||
(fetchpatch {
|
||||
name = "find-libraries-in-dyld-library-path.patch";
|
||||
@ -71,16 +53,13 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "1k3afq3qlzmgqwx6rzs5wv153vv9dsf5rk8pi61g57l3r3npbjmc";
|
||||
})
|
||||
|
||||
# Pari upstream has since accepted a patch, so this patch won't be necessary once sage updates pari.
|
||||
# https://trac.sagemath.org/ticket/25312
|
||||
./patches/pari-stackwarn.patch
|
||||
|
||||
# https://trac.sagemath.org/ticket/25311
|
||||
./patches/zn_poly_version.patch
|
||||
|
||||
# https://trac.sagemath.org/ticket/25345
|
||||
# (upstream patch doesn't apply on 8.2 source)
|
||||
./patches/dochtml-optional.patch
|
||||
|
||||
# work with pari with threads enabled at compile time (disable them at runtime)
|
||||
# https://trac.sagemath.org/ticket/26002
|
||||
./patches/pari-no-threads.patch
|
||||
];
|
||||
|
||||
packageUpgradePatches = [
|
||||
@ -106,87 +85,55 @@ stdenv.mkDerivation rec {
|
||||
# the last version.
|
||||
./patches/eclib-regulator-precision.patch
|
||||
|
||||
# sphinx 1.6 -> 1.7 upgrade
|
||||
# https://trac.sagemath.org/ticket/24935
|
||||
./patches/sphinx-1.7.patch
|
||||
|
||||
# Adapt hashes to new boost version
|
||||
# https://trac.sagemath.org/ticket/22243
|
||||
# (this ticket doesn't only upgrade boost but also avoids this problem in the future)
|
||||
(fetchpatch {
|
||||
name = "boost-upgrade.patch";
|
||||
url = "https://git.sagemath.org/sage.git/patch?id=a24a9c6b30b93957333a3116196214a931325b69";
|
||||
sha256 = "0z3870g2ms2a81vnw08dc2i4k7jr62w8fggvcdwaavgd1wvdxwfl";
|
||||
})
|
||||
|
||||
# gfan 0.6.2
|
||||
# https://trac.sagemath.org/ticket/23353
|
||||
(fetchpatch {
|
||||
name = "gfan-update.patch";
|
||||
url = "https://git.sagemath.org/sage.git/patch/?h=420215fc469cde733ec7a339e59b78ad6eec804c&id=112498a293ea2bf563e41aed35f1aa608f01b349";
|
||||
sha256 = "0ga3hkx8cr23dpc919lgvpi5lmy0d728jkq9z6kf0fl9s8g31mxb";
|
||||
})
|
||||
|
||||
# New glpk version has new warnings, filter those out until upstream sage has found a solution
|
||||
# https://trac.sagemath.org/ticket/24824
|
||||
./patches/pari-stackwarn.patch # not actually necessary since tha pari upgrade, but necessary for the glpk patch to apply
|
||||
(fetchpatch {
|
||||
url = "https://salsa.debian.org/science-team/sagemath/raw/58bbba93a807ca2933ca317501d093a1bb4b84db/debian/patches/dt-version-glpk-4.65-ignore-warnings.patch";
|
||||
sha256 = "0b9293v73wb4x13wv5zwyjgclc01zn16msccfzzi6znswklgvddp";
|
||||
stripLen = 1;
|
||||
})
|
||||
|
||||
# https://trac.sagemath.org/ticket/25329
|
||||
(fetchpatch {
|
||||
name = "dont-check-exact-glpk-version.patch";
|
||||
url = "https://git.sagemath.org/sage.git/patch?id2=8bdc326ba57d1bb9664f63cf165a9e9920cc1afc&id=89d068d8d77316bfffa6bf8e9ebf70b3b3b88e5c";
|
||||
sha256 = "00knwxs6fmymfgfl0q5kcavmxm9sf90a4r76y35n5s55gj8pl918";
|
||||
})
|
||||
|
||||
# https://trac.sagemath.org/ticket/25355
|
||||
(fetchpatch {
|
||||
name = "maxima-5.41.0.patch";
|
||||
url = "https://git.sagemath.org/sage.git/patch/?id=87328023c4739abdf24108038201e3fa9bdfc739";
|
||||
sha256 = "0hxi7qr5mfx1bc32r8j7iba4gzd7c6v63asylyf5cbyp86azpb7i";
|
||||
})
|
||||
|
||||
# Update cddlib from 0.94g to 0.94h.
|
||||
# https://trac.sagemath.org/ticket/25341 (doesn't apply to 8.2 sources)
|
||||
(fetchpatch {
|
||||
url = "https://salsa.debian.org/science-team/sagemath/raw/58bbba93a807ca2933ca317501d093a1bb4b84db/debian/patches/u2-version-cddlib-094h.patch";
|
||||
sha256 = "0fmw7pzbaxs2dshky6iw9pr8i23p9ih2y2lw661qypdrxh5xw03k";
|
||||
stripLen = 1;
|
||||
})
|
||||
(fetchpatch {
|
||||
name = "revert-cddlib-doctest-changes.patch";
|
||||
url = "https://git.sagemath.org/sage.git/patch/?id=269c1e1551285566b8ba7a2b890989e5590e9f11";
|
||||
sha256 = "12bcjhq7hm2pmmj2bgjvcffjyls2x7q61ivlnaj5v5bsvhc183iy";
|
||||
revert = true;
|
||||
})
|
||||
|
||||
|
||||
# Only formatting changes.
|
||||
# https://trac.sagemath.org/ticket/25260
|
||||
./patches/numpy-1.14.3.patch
|
||||
|
||||
# https://trac.sagemath.org/ticket/24374
|
||||
(fetchpatch {
|
||||
name = "networkx-2.1.patch";
|
||||
url = "https://salsa.debian.org/science-team/sagemath/raw/487df9ae48ca1d93d9b1cb3af8745d31e30fb741/debian/patches/u0-version-networkx-2.1.patch";
|
||||
sha256 = "1xxxawygbgxgvlv7b4w8hhzgdnva4rhmgdxaiaa3pwdwln0yc750";
|
||||
stripLen = 1;
|
||||
})
|
||||
|
||||
# https://trac.sagemath.org/ticket/24927 rebased
|
||||
./patches/arb-2.13.0.patch
|
||||
|
||||
# https://trac.sagemath.org/ticket/24838 rebased
|
||||
./patches/pynac-0.7.22.patch
|
||||
|
||||
# https://trac.sagemath.org/ticket/25862
|
||||
./patches/eclib-20180710.patch
|
||||
|
||||
# https://trac.sagemath.org/ticket/24735
|
||||
./patches/singular-4.1.1p2.patch
|
||||
|
||||
# https://trac.sagemath.org/ticket/25567 and dependency #25635
|
||||
(fetchpatch {
|
||||
name = "pari-upgrade-dependency.patch";
|
||||
url = "https://git.sagemath.org/sage.git/patch/?id=6995e7cae1b3476ad0145f8dfc897cf91f0c3c4d";
|
||||
sha256 = "1dvhabl1c9pwd9xkjvbjjg15mvb14b24p1f3cby1mlqk34d4lrs6";
|
||||
})
|
||||
(fetchpatch {
|
||||
name = "pari-2.11.0.patch";
|
||||
url = "https://git.sagemath.org/sage.git/patch/?id=7af4748cab37d651eaa88be501db88f4a5ffc584";
|
||||
sha256 = "13f740ly3c19gcmhjngiycvmc3mcfj61y00i6jv0wmfgpm2z3ank";
|
||||
})
|
||||
|
||||
# ntl upgrade
|
||||
(fetchpatch {
|
||||
name = "lcalc-c++11.patch";
|
||||
url = "https://git.archlinux.org/svntogit/community.git/plain/trunk/sagemath-lcalc-c++11.patch?h=packages/sagemath&id=0e31ae526ab7c6b5c0bfacb3f8b1c4fd490035aa";
|
||||
sha256 = "0p5wnvbx65i7cp0bjyaqgp4rly8xgnk12pqwaq3dqby0j2bk6ijb";
|
||||
})
|
||||
|
||||
# cddlib 0.94i -> 0.94j
|
||||
(fetchpatch {
|
||||
name = "cddlib-0.94j.patch";
|
||||
url = "https://git.sagemath.org/sage.git/patch/?id=2ab1546b3e21d1d0ab3b4fcd58576848b3a2d888";
|
||||
sha256 = "1c5gnasq7y9xxj762bn79bis0zi8d9bgg7jzlf64ifixsrc5cymb";
|
||||
})
|
||||
];
|
||||
|
||||
patches = nixPatches ++ packageUpgradePatches;
|
||||
patches = nixPatches ++ packageUpgradePatches ++ [
|
||||
./patches/known-padics-bug.patch
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
# make sure shebangs etc are fixed, but sage-python23 still works
|
||||
|
@ -3,7 +3,7 @@
|
||||
let
|
||||
name = "scilab-bin-${ver}";
|
||||
|
||||
ver = "5.5.2";
|
||||
ver = "6.0.1";
|
||||
|
||||
majorVer = builtins.elemAt (lib.splitString "." ver) 0;
|
||||
|
||||
@ -24,9 +24,9 @@ stdenv.mkDerivation rec {
|
||||
url = "https://www.scilab.org/download/${ver}/scilab-${ver}.bin.linux-${architecture}.tar.gz";
|
||||
sha256 =
|
||||
if stdenv.system == "i686-linux" then
|
||||
"6143a95ded40411a35630a89b365875a6526cd4db1e2865ac5612929a7db937a"
|
||||
"0fgjc2ak3b2qi6yin3fy50qwk2bcj0zbz1h4lyyic9n1n1qcliib"
|
||||
else if stdenv.system == "x86_64-linux" then
|
||||
"c0dd7a5f06ec7a1df7a6b1b8b14407ff7f45e56821dff9b3c46bd09d4df8d350"
|
||||
"1scswlznc14vyzg0gqa1q9gcpwx05kz1sbn563463mzkdp7nd35d"
|
||||
else
|
||||
badArch;
|
||||
};
|
||||
|
@ -1,5 +1,6 @@
|
||||
{ stdenv, fetchurl, gmp, bison, perl, ncurses, readline, coreutils, pkgconfig
|
||||
, lib
|
||||
, fetchpatch
|
||||
, autoreconfHook
|
||||
, file
|
||||
, flint
|
||||
@ -36,6 +37,18 @@ stdenv.mkDerivation rec {
|
||||
patchShebangs .
|
||||
'';
|
||||
|
||||
patches = [
|
||||
# NTL error handler was introduced in the library part, preventing users of
|
||||
# the library from implementing their own error handling
|
||||
# https://www.singular.uni-kl.de/forum/viewtopic.php?t=2769
|
||||
(fetchpatch {
|
||||
name = "move_error_handler_out_of_libsingular.patch";
|
||||
# rebased version of https://github.com/Singular/Sources/commit/502cf86d0bb2a96715be6764774b64a69c1ca34c.patch
|
||||
url = "https://git.sagemath.org/sage.git/plain/build/pkgs/singular/patches/singular-ntl-error-handler.patch?h=50b9ae2fd233c30860e1cbb3e63a26f2cc10560a";
|
||||
sha256 = "0vgh4m9zn1kjl0br68n04j4nmn5i1igfn28cph0chnwf7dvr9194";
|
||||
})
|
||||
];
|
||||
|
||||
# For reference (last checked on commit 75f460d):
|
||||
# https://github.com/Singular/Sources/blob/spielwiese/doc/Building-Singular-from-source.md
|
||||
# https://github.com/Singular/Sources/blob/spielwiese/doc/external-packages-dynamic-modules.md
|
||||
|
@ -171,9 +171,12 @@ in stdenv.mkDerivation rec {
|
||||
|
||||
buildPhase = ''
|
||||
python3 ${waf} build
|
||||
'' + optionalString stdenv.isDarwin ''
|
||||
python3 TOOLS/osxbundle.py -s build/mpv
|
||||
'';
|
||||
|
||||
installPhase =
|
||||
# Ensure youtube-dl is available in $PATH for mpv
|
||||
wrapperFlags =
|
||||
let
|
||||
getPath = type : "${luasocket}/lib/lua/${lua.luaversion}/?.${type};" +
|
||||
"${luasocket}/share/lua/${lua.luaversion}/?.${type}";
|
||||
@ -181,24 +184,32 @@ in stdenv.mkDerivation rec {
|
||||
luaCPath = getPath "so";
|
||||
in
|
||||
''
|
||||
python3 ${waf} install
|
||||
|
||||
# Use a standard font
|
||||
mkdir -p $out/share/mpv
|
||||
ln -s ${freefont_ttf}/share/fonts/truetype/FreeSans.ttf $out/share/mpv/subfont.ttf
|
||||
# Ensure youtube-dl is available in $PATH for MPV
|
||||
wrapProgram $out/bin/mpv \
|
||||
--prefix LUA_PATH : "${luaPath}" \
|
||||
--prefix LUA_CPATH : "${luaCPath}" \
|
||||
'' + optionalString youtubeSupport ''
|
||||
--prefix PATH : "${youtube-dl}/bin" \
|
||||
'' + optionalString vapoursynthSupport ''
|
||||
--prefix PYTHONPATH : "${vapoursynth}/lib/${python3.libPrefix}/site-packages:$PYTHONPATH"
|
||||
'' + ''
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
python3 ${waf} install
|
||||
|
||||
# Use a standard font
|
||||
mkdir -p $out/share/mpv
|
||||
ln -s ${freefont_ttf}/share/fonts/truetype/FreeSans.ttf $out/share/mpv/subfont.ttf
|
||||
wrapProgram "$out/bin/mpv" \
|
||||
${wrapperFlags}
|
||||
|
||||
cp TOOLS/umpv $out/bin
|
||||
wrapProgram $out/bin/umpv \
|
||||
--set MPV "$out/bin/mpv"
|
||||
|
||||
'' + optionalString stdenv.isDarwin ''
|
||||
mkdir -p $out/Applications
|
||||
cp -r build/mpv.app $out/Applications
|
||||
wrapProgram "$out/Applications/mpv.app/Contents/MacOS/mpv" \
|
||||
${wrapperFlags}
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
86
pkgs/applications/video/plex-media-player/default.nix
Normal file
86
pkgs/applications/video/plex-media-player/default.nix
Normal file
@ -0,0 +1,86 @@
|
||||
{ stdenv, fetchFromGitHub, fetchurl, makeDesktopItem, pkgconfig, cmake, python3
|
||||
, libX11, libXrandr, qtbase, qtwebchannel, qtwebengine, qtx11extras
|
||||
, libvdpau, SDL2, mpv, libGL }:
|
||||
let
|
||||
# During compilation, a CMake bundle is downloaded from `artifacts.plex.tv`,
|
||||
# which then downloads a handful of web client-related files. To enable
|
||||
# sandboxed builds, we manually download them and save them so these files
|
||||
# are fetched ahead-of-time instead of during the CMake build. Whenever
|
||||
# plex-media-player is updated, the versions for these files are changed,
|
||||
# so the build IDs (and SHAs) below will need to be updated!
|
||||
depSrcs = rec {
|
||||
webClientBuildId = "56-23317d81e49651";
|
||||
webClientDesktopBuildId = "3.57.1-1e49651";
|
||||
webClientTvBuildId = "3.60.1-23317d8";
|
||||
|
||||
webClient = fetchurl {
|
||||
url = "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/buildid.cmake";
|
||||
sha256 = "1a48a65zzdx347kfnxriwkb0yjlhvn2g8jkda5pz10r3lwja0gbi";
|
||||
};
|
||||
webClientDesktopHash = fetchurl {
|
||||
url = "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/web-client-desktop-${webClientDesktopBuildId}.tar.xz.sha1";
|
||||
sha256 = "04wdgpsh33y8hyjhjrfw6ymf9g002jny7hvhld4xp33lwxhd2j5w";
|
||||
};
|
||||
webClientDesktop = fetchurl {
|
||||
url = "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/web-client-desktop-${webClientDesktopBuildId}.tar.xz";
|
||||
sha256 = "1asw9f84z9sm3w7ifnc7j631j84rgx23c6msmn2dnw48ckv3bj2z";
|
||||
};
|
||||
webClientTvHash = fetchurl {
|
||||
url = "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/web-client-tv-${webClientTvBuildId}.tar.xz.sha1";
|
||||
sha256 = "0d1hsvmpwczwx442f8qdvfr8c3w84630j9qwpg2y4qm423sgdvja";
|
||||
};
|
||||
webClientTv = fetchurl {
|
||||
url = "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/web-client-tv-${webClientTvBuildId}.tar.xz";
|
||||
sha256 = "1ih3l5paf1jl68b1xq3iqqmvs3m07fybz57hcz4f78v0gwq2kryq";
|
||||
};
|
||||
};
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "plex-media-player-${version}";
|
||||
version = "2.14.1.880";
|
||||
vsnHash = "301a4b6c";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "plexinc";
|
||||
repo = "plex-media-player";
|
||||
rev = "v${version}-${vsnHash}";
|
||||
sha256 = "0xz41r697vl6s3qvy6jwriv3pb9cfy61j6sydvdq121x5a0jnh9a";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig cmake python3 ];
|
||||
buildInputs = [ libX11 libXrandr qtbase qtwebchannel qtwebengine qtx11extras
|
||||
libvdpau SDL2 mpv libGL ];
|
||||
|
||||
desktopItem = makeDesktopItem {
|
||||
name = "plex-media-player";
|
||||
exec = "plexmediaplayer";
|
||||
icon = "plex-media-player";
|
||||
comment = "View your media";
|
||||
desktopName = "Plex Media Player";
|
||||
genericName = "Media Player";
|
||||
categories = "AudioVideo;Video;Player;TV;";
|
||||
};
|
||||
|
||||
preConfigure = with depSrcs; ''
|
||||
mkdir -p build/dependencies
|
||||
ln -s ${webClient} build/dependencies/buildid-${webClientBuildId}.cmake
|
||||
ln -s ${webClientDesktopHash} build/dependencies/web-client-desktop-${webClientDesktopBuildId}.tar.xz.sha1
|
||||
ln -s ${webClientDesktop} build/dependencies/web-client-desktop-${webClientDesktopBuildId}.tar.xz
|
||||
ln -s ${webClientTvHash} build/dependencies/web-client-tv-${webClientTvBuildId}.tar.xz.sha1
|
||||
ln -s ${webClientTv} build/dependencies/web-client-tv-${webClientTvBuildId}.tar.xz
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
mkdir -p $out/share/{applications,pixmaps}
|
||||
cp ${src}/resources/images/icon.png $out/share/pixmaps/plex-media-player.png
|
||||
cp ${desktopItem}/share/applications/* $out/share/applications
|
||||
'';
|
||||
|
||||
cmakeFlags = [ "-DCMAKE_BUILD_TYPE=RelWithDebInfo" "-DQTROOT=${qtbase}" ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Streaming media player for Plex";
|
||||
license = licenses.gpl2;
|
||||
maintainers = with maintainers; [ kylewlacy ];
|
||||
homepage = https://plex.tv;
|
||||
};
|
||||
}
|
@ -1,20 +1,20 @@
|
||||
{ stdenv, fetchFromGitHub, SDL2, frei0r, gettext, mlt, jack1, pkgconfig, qtbase
|
||||
, qtmultimedia, qtwebkit, qtx11extras, qtwebsockets, qtquickcontrols
|
||||
, qtgraphicaleffects, libmlt
|
||||
, qmake, makeWrapper, fetchpatch, qttools }:
|
||||
, qmake, makeWrapper, qttools }:
|
||||
|
||||
assert stdenv.lib.versionAtLeast libmlt.version "6.8.0";
|
||||
assert stdenv.lib.versionAtLeast mlt.version "6.8.0";
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "shotcut-${version}";
|
||||
version = "18.06.02";
|
||||
version = "18.08";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "mltframework";
|
||||
repo = "shotcut";
|
||||
rev = "v${version}";
|
||||
sha256 = "1pqpgsb8ix1akq326chf46vvl5h02dwmdskskf2n6impygsy4x7v";
|
||||
sha256 = "1p2s4avm3bl5ippmgfzkkbb2w0xs4vhk2wbcd22g7bh1zq9w190n";
|
||||
};
|
||||
|
||||
enableParallelBuilding = true;
|
||||
@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
|
||||
];
|
||||
|
||||
NIX_CFLAGS_COMPILE = "-I${libmlt}/include/mlt++ -I${libmlt}/include/mlt";
|
||||
qmakeFlags = [ "QMAKE_LRELEASE=${stdenv.lib.getDev qttools}/bin/lrelease" ];
|
||||
qmakeFlags = [ "QMAKE_LRELEASE=${stdenv.lib.getDev qttools}/bin/lrelease" "SHOTCUT_VERSION=${version}" ];
|
||||
|
||||
prePatch = ''
|
||||
sed 's_shotcutPath, "qmelt"_"${mlt}/bin/melt"_' -i src/jobs/meltjob.cpp
|
||||
@ -35,12 +35,6 @@ stdenv.mkDerivation rec {
|
||||
sed "s_/usr/bin/nice_''${NICE}_" -i src/jobs/meltjob.cpp src/jobs/ffmpegjob.cpp
|
||||
'';
|
||||
|
||||
patches = [ (fetchpatch {
|
||||
url = https://github.com/mltframework/shotcut/commit/f304b7403cc7beb57b1610afd9c5c8173749e80b.patch;
|
||||
name = "qt511.patch";
|
||||
sha256 = "1ynvyjchcb33a33x4w1ddnah2gyzmnm125ailgg6xy60lqsnsmp9";
|
||||
} ) ];
|
||||
|
||||
postInstall = ''
|
||||
mkdir -p $out/share/shotcut
|
||||
cp -r src/qml $out/share/shotcut/
|
||||
|
@ -34,56 +34,48 @@ let
|
||||
};
|
||||
in stdenv.lib.mapAttrs mkVariant {
|
||||
adventor = {
|
||||
displayName = "Adventor";
|
||||
version = "2_501";
|
||||
sha256 = "0qjg3x0adfppyx3x33cm07ww9i9sl88xaq07m7wfip8rmyp567fn";
|
||||
outputHash = "117h6f02m1r54b4f1a98q5kkjchl5pv9ibm1jla6xrzhk2pchb27";
|
||||
abbreviation = "qag";
|
||||
};
|
||||
bonum = {
|
||||
displayName = "Bonum";
|
||||
version = "2.004";
|
||||
sha256 = "0qbrs98knx4h0b297c5n3vav4mkal1a95ai2dzmdc10pghfzl8vv";
|
||||
outputHash = "0bid8gzwz50ylmm8jyqf9s4nfvy6cp1x34wbyrh4gyk1ki6hf3z1";
|
||||
abbreviation = "qbk";
|
||||
};
|
||||
chorus = {
|
||||
displayName = "Chorus";
|
||||
version = "2.003";
|
||||
sha256 = "1b0zak27fzmapwbf2jasvsd95vhnqyc92n985d1lc1ivwja1zgfa";
|
||||
outputHash = "0fqifd45c1ys6y98b66lmldfbv7wjb2414fs9swicv4n7xvl3cp1";
|
||||
abbreviation = "qzc";
|
||||
};
|
||||
cursor = {
|
||||
displayName = "Cursor";
|
||||
version = "2.004";
|
||||
sha256 = "0ck3jm33bk2xsxp5d2irzd3j24zb49f0gnjvd1nikg1ivk8w85ng";
|
||||
outputHash = "0i76835xqlkrnlx303mx63m0f4899j056c2ag2fl6p9qk8s4rskp";
|
||||
abbreviation = "qcr";
|
||||
};
|
||||
heros = {
|
||||
displayName = "Heros";
|
||||
version = "2.004";
|
||||
sha256 = "1fj2srxxf6ap913y5yd3dn4jzg828j7381gifs39nm5lnzmgw78y";
|
||||
outputHash = "16y76ab46fxm9k8wfmwx4w0cl96yrmjywz587lyr08s0agp1v3kf";
|
||||
abbreviation = "qhv";
|
||||
};
|
||||
pagella = {
|
||||
displayName = "Pagella";
|
||||
version ="2_501";
|
||||
sha256 = "1kccaxs3vk93la2pz4nv05hx1x3diyla49cz4l33zifdcp2zgg9d";
|
||||
outputHash = "1nnjsgplimh29502pkd19rvfg93x31svxxmx4x7h51njrx1j8qa8";
|
||||
abbreviation = "qpl";
|
||||
};
|
||||
schola = {
|
||||
displayName = "Schola";
|
||||
version = "2.005";
|
||||
sha256 = "05z3gk4mm0sa7wwjcv31j2xlzqhwhcncpamn0kn9y0221cdknyp8";
|
||||
outputHash = "1yqq1ngcylhldrh1v35l439k72szq9m4gx6g0wh235fk65chb2bm";
|
||||
abbreviation = "qcs";
|
||||
};
|
||||
termes = {
|
||||
displayName = "Termes";
|
||||
version = "2.004";
|
||||
sha256 = "1aq3yqbgkc3z20dkcqyhicsyq0afbgg4l397z96sd8a16jyz2x8k";
|
||||
outputHash = "1igw821m601h8937pix6yish4d8fxmz3h4j9hripf41bxsiafzzg";
|
||||
|
47
pkgs/desktops/gnome-3/apps/gnome-todo/default.nix
Normal file
47
pkgs/desktops/gnome-3/apps/gnome-todo/default.nix
Normal file
@ -0,0 +1,47 @@
|
||||
{ stdenv, fetchurl, meson, ninja, pkgconfig, wrapGAppsHook
|
||||
, gettext, gnome3, glib, gtk, libpeas
|
||||
, gnome-online-accounts, gsettings-desktop-schemas
|
||||
, evolution-data-server, libxml2, libsoup, libical, rest, json-glib }:
|
||||
|
||||
let
|
||||
pname = "gnome-todo";
|
||||
version = "3.28.1";
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${pname}/${gnome3.versionBranch version}/${name}.tar.xz";
|
||||
sha256 = "08ygqbib72jlf9y0a16k54zz51sncpq2wa18wp81v46q8301ymy7";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
meson ninja pkgconfig gettext wrapGAppsHook
|
||||
];
|
||||
buildInputs = [
|
||||
glib gtk libpeas gnome-online-accounts
|
||||
gsettings-desktop-schemas gnome3.defaultIconTheme
|
||||
# Plug-ins
|
||||
evolution-data-server libxml2 libsoup libical
|
||||
rest json-glib
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
chmod +x meson_post_install.py
|
||||
patchShebangs meson_post_install.py
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
updateScript = gnome3.updateScript {
|
||||
packageName = pname;
|
||||
attrPath = "gnome3.${pname}";
|
||||
};
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Personal task manager for GNOME";
|
||||
homepage = https://wiki.gnome.org/Apps/Todo;
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = gnome3.maintainers;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
@ -30,7 +30,7 @@ lib.makeScope pkgs.newScope (self: with self; {
|
||||
nautilus-sendto dconf-editor vinagre gnome-weather gnome-logs
|
||||
gnome-maps gnome-characters gnome-calendar accerciser gnome-nettool
|
||||
gnome-getting-started-docs gnome-packagekit gnome-software
|
||||
gnome-power-manager gnome-usage
|
||||
gnome-power-manager gnome-todo gnome-usage
|
||||
];
|
||||
|
||||
gamesPackages = with gnome3; [ swell-foop lightsoff iagno
|
||||
@ -291,6 +291,8 @@ lib.makeScope pkgs.newScope (self: with self; {
|
||||
|
||||
gnome-sound-recorder = callPackage ./apps/gnome-sound-recorder { };
|
||||
|
||||
gnome-todo = callPackage ./apps/gnome-todo {};
|
||||
|
||||
gnome-weather = callPackage ./apps/gnome-weather { };
|
||||
|
||||
nautilus-sendto = callPackage ./apps/nautilus-sendto { };
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, lib, fetchurl
|
||||
{ stdenv, lib, fetchurl, fetchpatch
|
||||
, coq, ocamlPackages
|
||||
, tools ? stdenv.cc
|
||||
}:
|
||||
@ -7,11 +7,11 @@ assert lib.versionAtLeast ocamlPackages.ocaml.version "4.02";
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "compcert-${version}";
|
||||
version = "3.2";
|
||||
version = "3.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://compcert.inria.fr/release/${name}.tgz";
|
||||
sha256 = "11q4121s0rxva63njjwya7syfx9w0p4hzr6avh8s57vfbrcakc93";
|
||||
sha256 = "16xrqcwak1v1fk5ndx6jf1yvxv3adsr7p7z34gfm2mpggxnq0xwn";
|
||||
};
|
||||
|
||||
buildInputs = [ coq ]
|
||||
@ -19,9 +19,10 @@ stdenv.mkDerivation rec {
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
postPatch = ''
|
||||
sed -i -e 's/8\.6\.1|8\.7\.0|8\.7\.1)/8.6.1|8.7.0|8.7.1|8.7.2)/' configure
|
||||
'';
|
||||
patches = [ (fetchpatch {
|
||||
url = "https://github.com/AbsInt/CompCert/commit/679ecfeaa24c0615fa1999e9582bf2af6a9f35e7.patch";
|
||||
sha256 = "04yrn6dp57aw6lmlr4yssjlx9cxix0mlmaw7gfhwyz5bzqc2za1a";
|
||||
})];
|
||||
|
||||
configurePhase = ''
|
||||
substituteInPlace ./configure --replace '{toolprefix}gcc' '{toolprefix}cc'
|
||||
|
@ -264,11 +264,13 @@ self: super: builtins.intersectAttrs super {
|
||||
}
|
||||
);
|
||||
|
||||
llvm-hs = super.llvm-hs.override { llvm-config = pkgs.llvm; };
|
||||
llvm-hs_6_3_0 = super.llvm-hs_6_3_0.override {
|
||||
llvm-config = pkgs.llvm_6;
|
||||
llvm-hs-pure = super.llvm-hs-pure_6_2_1;
|
||||
};
|
||||
llvm-hs =
|
||||
let dontCheckDarwin = if pkgs.stdenv.isDarwin
|
||||
then dontCheck
|
||||
else pkgs.lib.id;
|
||||
in dontCheckDarwin (super.llvm-hs.override {
|
||||
llvm-config = pkgs.llvm_6;
|
||||
});
|
||||
|
||||
# Needs help finding LLVM.
|
||||
spaceprobe = addBuildTool super.spaceprobe self.llvmPackages.llvm;
|
||||
|
@ -153,6 +153,8 @@
|
||||
|
||||
protobuf = callPackage ./protobuf.nix {};
|
||||
|
||||
quantities = callPackage ./quantities.nix {};
|
||||
|
||||
rationals = callPackage ./rationals.nix {};
|
||||
|
||||
recursion_schemes = callPackage ./recursion_schemes.nix {};
|
||||
|
22
pkgs/development/idris-modules/quantities.nix
Normal file
22
pkgs/development/idris-modules/quantities.nix
Normal file
@ -0,0 +1,22 @@
|
||||
{ build-idris-package
|
||||
, fetchFromGitHub
|
||||
, lib
|
||||
}:
|
||||
build-idris-package {
|
||||
name = "quantities";
|
||||
version = "2018-04-17";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "timjb";
|
||||
repo = "quantities";
|
||||
rev = "76bb872bd89122043083351993140ae26eb91ead";
|
||||
sha256 = "0fv12kdi9089b4kkr6inhqvs2s8x62nv5vqj76wzk8hy0lrzylzj";
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Type-safe physical computations and unit conversions in Idris";
|
||||
homepage = https://github.com/timjb/quantities;
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ imuli ];
|
||||
};
|
||||
}
|
@ -40,6 +40,8 @@ in
|
||||
rm -vf rebar
|
||||
ln -s ${rebar}/bin/rebar rebar
|
||||
|
||||
patchShebangs lib/elixir/generate_app.escript || true
|
||||
|
||||
substituteInPlace Makefile \
|
||||
--replace "/usr/local" $out
|
||||
'';
|
||||
|
@ -1,36 +1,27 @@
|
||||
{ stdenv, fetchpatch, fetchFromGitHub, meson, ninja, pkgconfig, gettext
|
||||
, xmlto, docbook_xsl, docbook_xml_dtd_45, libxslt
|
||||
, libstemmer, glib, xapian, libxml2, libyaml, gobjectIntrospection
|
||||
, pcre, itstool
|
||||
, pcre, itstool, gperf, vala
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "appstream-${version}";
|
||||
version = "0.11.8";
|
||||
version = "0.12.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ximion";
|
||||
repo = "appstream";
|
||||
rev = "APPSTREAM_${stdenv.lib.replaceStrings ["."] ["_"] version}";
|
||||
sha256 = "07vzz57g1p5byj2jfg17y5n3il0g07d9wkiynzwra71mcxar1p08";
|
||||
sha256 = "1g15c4bhyl730rgaiqia3jppraixh05c3yx098lyilidbddxp5xb";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# drop this in version 0.11.9 and above
|
||||
(fetchpatch {
|
||||
name = "define-location-and-soname.patch";
|
||||
url = "https://github.com/ximion/appstream/commit/3e58f9c9.patch";
|
||||
sha256 = "1ffgbdfg80yq5vahjrvdd4f8xsp32ksm9vyasfmc7hzhx294s78w";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
meson ninja pkgconfig gettext
|
||||
libxslt xmlto docbook_xsl docbook_xml_dtd_45
|
||||
gobjectIntrospection itstool
|
||||
gobjectIntrospection itstool vala
|
||||
];
|
||||
|
||||
buildInputs = [ libstemmer pcre glib xapian libxml2 libyaml ];
|
||||
buildInputs = [ libstemmer pcre glib xapian libxml2 libyaml gperf ];
|
||||
|
||||
prePatch = ''
|
||||
substituteInPlace meson.build \
|
||||
@ -43,7 +34,7 @@ stdenv.mkDerivation rec {
|
||||
mesonFlags = [
|
||||
"-Dapidocs=false"
|
||||
"-Ddocs=false"
|
||||
"-Dgir=false"
|
||||
"-Dvapi=true"
|
||||
];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "appstream-qt-${version}";
|
||||
inherit (appstream) version src patches prePatch;
|
||||
inherit (appstream) version src prePatch;
|
||||
|
||||
buildInputs = appstream.buildInputs ++ [ appstream qtbase ];
|
||||
|
||||
|
@ -1,55 +1,33 @@
|
||||
{ stdenv
|
||||
, fetchurl
|
||||
, fetchpatch
|
||||
, fetchFromGitHub
|
||||
, gmp
|
||||
, autoreconfHook
|
||||
, texlive
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "cddlib-${version}";
|
||||
version = "0.94i";
|
||||
src = let
|
||||
fileVersion = stdenv.lib.replaceStrings ["."] [""] version;
|
||||
in fetchurl {
|
||||
# Might switch to github in the future, see
|
||||
# https://trac.sagemath.org/ticket/21952#comment:20
|
||||
urls = [
|
||||
"http://archive.ubuntu.com/ubuntu/pool/universe/c/cddlib/cddlib_${fileVersion}.orig.tar.gz"
|
||||
"ftp://ftp.math.ethz.ch/users/fukudak/cdd/cddlib-${fileVersion}.tar.gz"
|
||||
];
|
||||
sha256 = "00zdgiqb91vx6gd2103h3ijij0llspsxc6zz3iw2bll39fvkl4xq";
|
||||
version = "0.94j";
|
||||
src = fetchFromGitHub {
|
||||
owner = "cddlib";
|
||||
repo = "cddlib";
|
||||
rev = "${version}";
|
||||
sha256 = "1z03ljy3rrr0qq5gq54vynnif6fn0xhn05g90nnv0dpyc3ps8lzp";
|
||||
};
|
||||
buildInputs = [gmp];
|
||||
nativeBuildInputs = [
|
||||
autoreconfHook
|
||||
texlive.combined.scheme-small # for building the documentation
|
||||
];
|
||||
# compute reduced H and V representation of polytope
|
||||
# this patch is included by most distributions (Debian, Conda, ArchLinux, SageMath)
|
||||
# proposed upstream (no answer yet): https://github.com/cddlib/cddlib/pull/3
|
||||
both_reps_c = (fetchurl {
|
||||
name = "cdd_both_reps.c";
|
||||
url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/sci-libs/cddlib/files/cdd_both_reps.c?id=56bd759df1d0c750a065b8c845e93d5dfa6b549d";
|
||||
sha256 = "0r9yc5bgiz8i72c6vsn2y2mjk5581iw94gji9v7lg16kzzgrk9x0";
|
||||
});
|
||||
preAutoreconf = ''
|
||||
# Required by sage.geometry.polyhedron
|
||||
cp ${both_reps_c} src/cdd_both_reps.c
|
||||
cp ${both_reps_c} src-gmp/cdd_both_reps.c
|
||||
'';
|
||||
patches = [
|
||||
# add the cdd_both_reps binary
|
||||
(fetchpatch {
|
||||
name = "add-cdd_both_reps-binary.patch";
|
||||
url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/sci-libs/cddlib/files/cddlib-094h-add-cdd_both_reps-binary.patch?id=78e3a61a68c916450aa4e5ceecd20041583af901";
|
||||
sha256 = "162ni2fr7dpbdkz0b5nizxq7qr5k1i1d75g0smiylpzfb0hb761a";
|
||||
})
|
||||
];
|
||||
meta = {
|
||||
# No actual checks yet (2018-05-05), but maybe one day.
|
||||
# Requested here: https://github.com/cddlib/cddlib/issues/25
|
||||
doCheck = true;
|
||||
meta = with stdenv.lib; {
|
||||
inherit version;
|
||||
description = ''An implementation of the Double Description Method for generating all vertices of a convex polyhedron'';
|
||||
license = stdenv.lib.licenses.gpl2Plus ;
|
||||
maintainers = [stdenv.lib.maintainers.raskin];
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = with maintainers; [raskin timokau];
|
||||
platforms = platforms.linux;
|
||||
homepage = https://www.inf.ethz.ch/personal/fukudak/cdd_home/index.html;
|
||||
};
|
||||
}
|
||||
|
@ -1,11 +1,15 @@
|
||||
{ stdenv, fetchurl, fetchpatch, zlib, expat, gettext }:
|
||||
{ stdenv, fetchurl, fetchFromGitHub, fetchpatch, zlib, expat, gettext
|
||||
, autoconf }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "exiv2-0.26";
|
||||
name = "exiv2-0.26.2018.06.09";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.exiv2.org/builds/${name}-trunk.tar.gz";
|
||||
sha256 = "1yza317qxd8yshvqnay164imm0ks7cvij8y8j86p1gqi1153qpn7";
|
||||
#url = "http://www.exiv2.org/builds/${name}-trunk.tar.gz";
|
||||
src = fetchFromGitHub rec {
|
||||
owner = "exiv2";
|
||||
repo = "exiv2";
|
||||
rev = "4aa57ad";
|
||||
sha256 = "1kblpxbi4wlb0l57xmr7g23zn9adjmfswhs6kcwmd7skwi2yivcd";
|
||||
};
|
||||
|
||||
patches = [
|
||||
@ -16,25 +20,36 @@ stdenv.mkDerivation rec {
|
||||
+ "/sha512/${sha512}/${patchname}";
|
||||
sha512 = "3f9242dbd4bfa9dcdf8c9820243b13dc14990373a800c4ebb6cf7eac5653cfef"
|
||||
+ "e6f2c47a94fbee4ed24f0d8c2842729d721f6100a2b215e0f663c89bfefe9e32";
|
||||
})
|
||||
(fetchpatch {
|
||||
# many CVEs - see https://github.com/Exiv2/exiv2/pull/120
|
||||
url = "https://patch-diff.githubusercontent.com/raw/Exiv2/exiv2/pull/120.patch";
|
||||
sha256 = "1szl22xmh12hibzaqf2zi8zl377x841m52x4jm5lziw6j8g81sj8";
|
||||
excludes = [ "test/bugfixes-test.sh" ];
|
||||
})
|
||||
})
|
||||
# Two backports from master, submitted as https://github.com/Exiv2/exiv2/pull/398
|
||||
(fetchpatch {
|
||||
name = "CVE-2018-12264.diff";
|
||||
url = "https://github.com/vcunat/exiv2/commit/fd18e853.diff";
|
||||
sha256 = "0y7ahh45lpaiazjnfllndfaa5pyixh6z4kcn2ywp7qy4ra7qpwdr";
|
||||
})
|
||||
(fetchpatch {
|
||||
name = "CVE-2018-12265.diff";
|
||||
url = "https://github.com/vcunat/exiv2/commit/9ed1671bd4.diff";
|
||||
sha256 = "1cn446pfcgsh1bn9vxikkkcy1cqq7ghz2w291h1094ydqg6w7q6w";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = "patchShebangs ./src/svn_version.sh";
|
||||
|
||||
preConfigure = "make config"; # needed because not using tarball
|
||||
|
||||
outputs = [ "out" "dev" ];
|
||||
|
||||
nativeBuildInputs = [ gettext ];
|
||||
nativeBuildInputs = [
|
||||
gettext
|
||||
autoconf # needed because not using tarball
|
||||
];
|
||||
propagatedBuildInputs = [ zlib expat ];
|
||||
|
||||
meta = {
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://www.exiv2.org/;
|
||||
description = "A library and command-line utility to manage image metadata";
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
platforms = platforms.all;
|
||||
license = licenses.gpl2;
|
||||
};
|
||||
}
|
||||
|
53
pkgs/development/libraries/libunity/default.nix
Normal file
53
pkgs/development/libraries/libunity/default.nix
Normal file
@ -0,0 +1,53 @@
|
||||
{ stdenv, fetchurl, pkgconfig, automake, autoconf, libtool
|
||||
, glib, vala, dee, gobjectIntrospection, libdbusmenu-glib
|
||||
, gtk3, intltool, gnome-common, python3, icu }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "libunity";
|
||||
version = "7.1.4";
|
||||
|
||||
name = "${pname}-${version}";
|
||||
|
||||
outputs = [ "out" "dev" ];
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://launchpad.net/ubuntu/+archive/primary/+files/${pname}_${version}+15.10.20151002.orig.tar.gz";
|
||||
sha256 = "1sf98qcjkxfibxk03firnc12dm6il8jzaq5763qam8ydg4li4gij";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoconf
|
||||
automake
|
||||
gnome-common
|
||||
gobjectIntrospection
|
||||
intltool
|
||||
libtool
|
||||
pkgconfig
|
||||
python3
|
||||
vala
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
glib
|
||||
gtk3
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [ dee libdbusmenu-glib ];
|
||||
|
||||
preConfigure = "NOCONFIGURE=1 ./autogen.sh";
|
||||
|
||||
configureFlags = [
|
||||
"--disable-static"
|
||||
"--with-pygi-overrides-dir=$(out)/${python3.sitePackages}/gi/overrides"
|
||||
];
|
||||
|
||||
NIX_LDFLAGS = "-L${icu}/lib";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A library for instrumenting and integrating with all aspects of the Unity shell";
|
||||
homepage = https://launchpad.net/libunity;
|
||||
license = licenses.lgpl3;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ worldofpeace ];
|
||||
};
|
||||
}
|
@ -52,6 +52,9 @@ in stdenv.mkDerivation rec {
|
||||
install -Dm644 *.jar $out/share/java
|
||||
install -Dm644 sdk/include/* $out/include
|
||||
install -Dm644 sdk/demo/* $out/share/${name}/demo
|
||||
|
||||
# PECL::oci8 will not build without this
|
||||
ln -s $out/lib/libclntsh.so.12.1 $out/lib/libclntsh.so
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
23
pkgs/development/libraries/prototypejs/default.nix
Normal file
23
pkgs/development/libraries/prototypejs/default.nix
Normal file
@ -0,0 +1,23 @@
|
||||
{ stdenv, fetchurl, ... }:
|
||||
let
|
||||
version = "1.7.3.0";
|
||||
in fetchurl {
|
||||
name = "prototype-${version}.js";
|
||||
url = "https://ajax.googleapis.com/ajax/libs/prototype/${version}/prototype.js";
|
||||
sha256 = "0q43vvrsb22h4jvavs1gk3v4ps61yx9k85b5n6q9mxivhmxprg26";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A foundation for ambitious web user interfaces";
|
||||
longDescription = ''
|
||||
Prototype takes the complexity out of client-side web
|
||||
programming. Built to solve real-world problems, it adds
|
||||
useful extensions to the browser scripting environment
|
||||
and provides elegant APIs around the clumsy interfaces
|
||||
of Ajax and the Document Object Model.
|
||||
'';
|
||||
homepage = http://prototypejs.org/;
|
||||
downloadPage = http://prototypejs.org/download/;
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ das_j ];
|
||||
};
|
||||
}
|
@ -57,6 +57,18 @@ stdenv.mkDerivation rec {
|
||||
|
||||
# based on gentoos makefile patch -- fix paths, adhere to flags
|
||||
./makefile.patch
|
||||
|
||||
# (fetchpatch {
|
||||
# name = "default-double.patch";
|
||||
# url = "https://github.com/dimpase/lcalc/pull/1/commits/0500c67b6aa1f492715591669f6647c8f7a3ea59.patch";
|
||||
# sha256 = "0dqwmxpm9wb53qbypsyfkgsvk2f8nf67sydphd4dkc2vw4yz6vla";
|
||||
# })
|
||||
|
||||
(fetchpatch {
|
||||
name = "c++11.patch";
|
||||
url = "https://git.archlinux.org/svntogit/community.git/plain/trunk/lcalc-c++11.patch?h=packages/lcalc&id=3607b97df5a8c231191115b0cb5c62426b339e71";
|
||||
sha256 = "1ccrl61lv2vvx8ggldq54m5d0n1iy6mym7qz0i8nj6yj0dshnpk3";
|
||||
})
|
||||
];
|
||||
|
||||
installFlags = [
|
||||
|
@ -0,0 +1,34 @@
|
||||
{ stdenv
|
||||
, fetchFromGitHub
|
||||
, autoreconfHook
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "1.0";
|
||||
name = "libbraiding-${version}";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "miguelmarco";
|
||||
repo = "libbraiding";
|
||||
rev = version;
|
||||
sha256 = "0l68rikfr7k2l547gb3pp3g8cj5zzxwipm79xrb5r8ffj466ydxg";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoreconfHook
|
||||
];
|
||||
|
||||
# no tests included for now (2018-08-05), but can't hurt to activate
|
||||
doCheck = true;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://github.com/miguelmarco/libbraiding/;
|
||||
description = "C++ library for computations on braid groups";
|
||||
longDescription = ''
|
||||
A library to compute several properties of braids, including centralizer and conjugacy check.
|
||||
'';
|
||||
license = licenses.gpl3;
|
||||
maintainers = with maintainers; [ timokau ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
@ -0,0 +1,35 @@
|
||||
{ stdenv
|
||||
, fetchFromGitHub
|
||||
, autoreconfHook
|
||||
, boehmgc
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "1.02r5";
|
||||
name = "llibhomfly-${version}";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "miguelmarco";
|
||||
repo = "libhomfly";
|
||||
rev = version;
|
||||
sha256 = "1szv8iwlhvmy3saigi15xz8vgch92p2lbsm6440v5s8vxj455bvd";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
boehmgc
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoreconfHook
|
||||
];
|
||||
|
||||
doCheck = true;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://github.com/miguelmarco/libhomfly/;
|
||||
description = "Library to compute the homfly polynomial of knots and links";
|
||||
license = licenses.unlicense;
|
||||
maintainers = with maintainers; [ timokau ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
30
pkgs/development/python-modules/basiciw/default.nix
Normal file
30
pkgs/development/python-modules/basiciw/default.nix
Normal file
@ -0,0 +1,30 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, gcc
|
||||
, wirelesstools
|
||||
, isPy27
|
||||
, isPyPy
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "basiciw";
|
||||
version = "0.2.2";
|
||||
|
||||
disabled = isPy27 || isPyPy;
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "1ajmflvvlkflrcmqmkrx0zaira84z8kv4ssb2jprfwvjh8vfkysb";
|
||||
};
|
||||
|
||||
buildInputs = [ gcc ];
|
||||
propagatedBuildInputs = [ wirelesstools ];
|
||||
|
||||
meta = {
|
||||
description = "Get info about wireless interfaces using libiw";
|
||||
homepage = https://github.com/enkore/basiciw;
|
||||
platforms = lib.platforms.linux;
|
||||
license = lib.licenses.gpl2;
|
||||
};
|
||||
}
|
43
pkgs/development/python-modules/beaker/default.nix
Normal file
43
pkgs/development/python-modules/beaker/default.nix
Normal file
@ -0,0 +1,43 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchFromGitHub
|
||||
, nose
|
||||
, mock
|
||||
, webtest
|
||||
, sqlalchemy
|
||||
, pycrypto
|
||||
, isPy27
|
||||
, funcsigs
|
||||
, pycryptopp
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "Beaker";
|
||||
version = "1.8.0";
|
||||
|
||||
# The pypy release do not contains the tests
|
||||
src = fetchFromGitHub {
|
||||
owner = "bbangert";
|
||||
repo = "beaker";
|
||||
rev = "${version}";
|
||||
sha256 = "17yfr7a307n8rdl09was4j60xqk2s0hk0hywdkigrpj4qnw0is7g";
|
||||
};
|
||||
|
||||
buildInputs =
|
||||
[ nose
|
||||
mock
|
||||
webtest
|
||||
];
|
||||
propagatedBuildInputs = [
|
||||
sqlalchemy
|
||||
pycrypto
|
||||
] ++ lib.optionals (isPy27) [
|
||||
funcsigs
|
||||
pycryptopp
|
||||
];
|
||||
|
||||
meta = {
|
||||
description = "A Session and Caching library with WSGI Middleware";
|
||||
maintainers = with lib.maintainers; [ garbas domenkozar ];
|
||||
};
|
||||
}
|
@ -2,6 +2,7 @@
|
||||
, stdenv
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, fetchpatch
|
||||
# Build dependencies
|
||||
, glibcLocales
|
||||
# Test dependencies
|
||||
@ -36,6 +37,16 @@ buildPythonPackage rec {
|
||||
substituteInPlace setup.py --replace "'gnureadline'" " "
|
||||
'';
|
||||
|
||||
patches = [
|
||||
# improve cython support, needed by sage, accepted upstream
|
||||
# https://github.com/ipython/ipython/pull/11139
|
||||
(fetchpatch {
|
||||
name = "signature-use-inspect.patch";
|
||||
url = "https://github.com/ipython/ipython/commit/8d399b98d3ed5c765835594100c4d36fb2f739dc.patch";
|
||||
sha256 = "1r7v9clwwbskmj4y160vcj6g0vzqbvnj4y1bm2n4bskafapm42g0";
|
||||
})
|
||||
];
|
||||
|
||||
buildInputs = [ glibcLocales ];
|
||||
|
||||
checkInputs = [ nose pygments testpath ] ++ lib.optional isPy27 mock;
|
||||
|
@ -16,7 +16,7 @@ buildPythonPackage rec {
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "af3a3252bc58f8642a641601ba59096c22e4aa49cdc1ed4b0df2314f4f027f0d";
|
||||
sha256 = "00x28z6diw06gakb5isbfha5z2n63yyncv4za303nsgzxvlihmx0";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ blessings mozterm six ];
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ lib, buildPythonPackage, fetchPypi, isPy3k }:
|
||||
{ lib, buildPythonPackage, fetchPypi, isPy3k, six }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "mozterm";
|
||||
@ -7,6 +7,8 @@ buildPythonPackage rec {
|
||||
# name 'unicode' is not defined
|
||||
disabled = isPy3k;
|
||||
|
||||
propagatedBuildInputs = [six];
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "b1e91acec188de07c704dbb7b0100a7be5c1e06567b3beb67f6ea11d00a483a4";
|
||||
|
@ -11,22 +11,22 @@ GEM
|
||||
nokogiri (1.8.4)
|
||||
mini_portile2 (~> 2.3.0)
|
||||
parallel (1.12.1)
|
||||
parser (2.5.1.0)
|
||||
parser (2.5.1.2)
|
||||
ast (~> 2.4.0)
|
||||
powerpack (0.1.2)
|
||||
rainbow (3.0.0)
|
||||
reverse_markdown (1.1.0)
|
||||
nokogiri
|
||||
rubocop (0.58.0)
|
||||
rubocop (0.58.2)
|
||||
jaro_winkler (~> 1.5.1)
|
||||
parallel (~> 1.10)
|
||||
parser (>= 2.5)
|
||||
parser (>= 2.5, != 2.5.1.1)
|
||||
powerpack (~> 0.1)
|
||||
rainbow (>= 2.2.2, < 4.0)
|
||||
ruby-progressbar (~> 1.7)
|
||||
unicode-display_width (~> 1.0, >= 1.0.1)
|
||||
ruby-progressbar (1.9.0)
|
||||
solargraph (0.23.3)
|
||||
solargraph (0.23.6)
|
||||
coderay (~> 1.1)
|
||||
eventmachine (~> 1.2, >= 1.2.5)
|
||||
htmlentities (~> 4.3, >= 4.3.4)
|
||||
@ -40,7 +40,7 @@ GEM
|
||||
thor (0.20.0)
|
||||
tilt (2.0.8)
|
||||
unicode-display_width (1.4.0)
|
||||
yard (0.9.14)
|
||||
yard (0.9.15)
|
||||
|
||||
PLATFORMS
|
||||
ruby
|
||||
|
@ -76,10 +76,10 @@
|
||||
dependencies = ["ast"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1af7aa1c2npi8dkshgm3f8qyacabm94ckrdz7b8vd3f8zzswqzp9";
|
||||
sha256 = "1zp89zg7iypncszxsjp8kiccrpbdf728jl449g6cnfkz990fyb5k";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.5.1.0";
|
||||
version = "2.5.1.2";
|
||||
};
|
||||
powerpack = {
|
||||
source = {
|
||||
@ -110,10 +110,10 @@
|
||||
dependencies = ["jaro_winkler" "parallel" "parser" "powerpack" "rainbow" "ruby-progressbar" "unicode-display_width"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "091simr4pvxnkm472ixk5lqbnhgznvmhjpjf98ppbx1r68a4mcp3";
|
||||
sha256 = "0fc1fw9z98qd91ipsh9hdvpcb401qvkhw518s35l8a67sv4vdnj3";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.58.0";
|
||||
version = "0.58.2";
|
||||
};
|
||||
ruby-progressbar = {
|
||||
source = {
|
||||
@ -127,10 +127,10 @@
|
||||
dependencies = ["coderay" "eventmachine" "htmlentities" "kramdown" "parser" "reverse_markdown" "rubocop" "thor" "tilt" "yard"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1145g6x04fwmg8n51lsk7ybig31scndlj1i2i4lbrj9621bbqxfz";
|
||||
sha256 = "01lh5vibr277vhhrgk6zl09ivb262c1qpk54ahzhc40zs309842b";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.23.3";
|
||||
version = "0.23.6";
|
||||
};
|
||||
thor = {
|
||||
source = {
|
||||
@ -159,9 +159,9 @@
|
||||
yard = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "08kww2m1izjq56q2va2my0x3f3f0xsg6f07b6sgb4nl0scr6y10q";
|
||||
sha256 = "145pbc0x95s6x296kh1wp5ykwy6srfcz946dgj83s35g8p52z4q4";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.9.14";
|
||||
version = "0.9.15";
|
||||
};
|
||||
}
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "yarn-${version}";
|
||||
version = "1.9.2";
|
||||
version = "1.9.4";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://github.com/yarnpkg/yarn/releases/download/v${version}/yarn-v${version}.tar.gz";
|
||||
sha256 = "0bk006zs1bk6nwj9x07ry314fgxi21sk79h1paljbs6yzrv62h4g";
|
||||
sha256 = "0lxncqvz66167ijhsi76ds2yp8140d9ywn89y5vm92010irsgs20";
|
||||
};
|
||||
|
||||
buildInputs = [ nodejs ];
|
||||
|
@ -3,14 +3,14 @@
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
repo = "caprice32";
|
||||
version = "unstable-2018-02-10";
|
||||
rev = "53de69543300f81af85df32cbd21bb5c68cab61e";
|
||||
version = "unstable-2018-03-05";
|
||||
rev = "317fe638111e245d67e301f6f295094d3c859a70";
|
||||
name = "${repo}-${version}";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
inherit rev repo;
|
||||
owner = "ColinPitrat";
|
||||
sha256 = "12yv56blm49qmshpk4mgc802bs51wv2ra87hmcbf2wxma39c45fy";
|
||||
sha256 = "1bywpmkizixcnr057k8zq9nlw0zhcmwkiriln0krgdcm7d3h9b86";
|
||||
};
|
||||
|
||||
postPatch = "substituteInPlace cap32.cfg --replace /usr/local $out";
|
||||
|
@ -100,6 +100,15 @@ in rec {
|
||||
dependencies = [ pkgs.fpp ];
|
||||
};
|
||||
|
||||
fzf-tmux-url = buildTmuxPluginFrom2Nix {
|
||||
pluginName = "fzf-tmux-url";
|
||||
src = fetchgit {
|
||||
url = "https://github.com/wfxr/tmux-fzf-url";
|
||||
rev = "ecd518eec1067234598c01e655b048ff9d06ef2f";
|
||||
sha256 = "0png8hdv91y2nivq5vdii2192mb2qcrkwwn69lzxrdnbfa27qrgv";
|
||||
};
|
||||
};
|
||||
|
||||
logging = buildTmuxPluginFrom2Nix {
|
||||
pluginName = "logging";
|
||||
src = fetchgit {
|
||||
|
@ -1,39 +1,24 @@
|
||||
{ stdenv, fetchFromGitHub, gcc, gmp, libsigsegv, openssl, automake, autoconf, ragel,
|
||||
cmake, re2c, libtool, ncurses, perl, zlib, python2, curl }:
|
||||
{ stdenv, fetchFromGitHub, curl, git, gmp, libsigsegv, meson, ncurses, ninja
|
||||
, openssl, pkgconfig, re2c, zlib
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "urbit-${version}";
|
||||
version = "0.4.5";
|
||||
version = "0.6.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "urbit";
|
||||
repo = "urbit";
|
||||
rev = "v${version}";
|
||||
sha256 = "1zgxgqbz74nsgfyrvsnjj6xxpb64mrnby7bb5qy733sy04gmzgik";
|
||||
rev = "urbit-${version}";
|
||||
sha256 = "158mz6c6y5z1b6piid8hvrl5mcqh8q1ny185gz51jayia51azmgs";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
buildInputs = with stdenv.lib; [
|
||||
gcc gmp libsigsegv openssl automake autoconf ragel cmake re2c libtool
|
||||
ncurses perl zlib python2 curl
|
||||
];
|
||||
nativeBuildInputs = [ pkgconfig ninja meson ];
|
||||
buildInputs = [ curl git gmp libsigsegv ncurses openssl re2c zlib ];
|
||||
|
||||
# uses 'readdir_r' deprecated by glibc 2.24
|
||||
NIX_CFLAGS_COMPILE = "-Wno-error=deprecated-declarations";
|
||||
|
||||
configurePhase = ''
|
||||
:
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
sed -i 's/-lcurses/-lncurses/' Makefile
|
||||
mkdir -p $out
|
||||
cp -r . $out/
|
||||
cd $out
|
||||
make
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
:
|
||||
postPatch = ''
|
||||
patchShebangs .
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
@ -1,5 +1,5 @@
|
||||
{ stdenv, fetchurl, pkgconfig, dbus, glib, alsaLib,
|
||||
pythonPackages, readline, udev, libical,
|
||||
python3, readline, udev, libical,
|
||||
systemd, enableWiimote ? false, enableMidi ? false }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
@ -10,12 +10,12 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "048r91vx9gs5nwwbah2s0xig04nwk14c5s0vb7qmaqdvighsmz2z";
|
||||
};
|
||||
|
||||
pythonPath = with pythonPackages; [
|
||||
pythonPath = with python3.pkgs; [
|
||||
dbus-python pygobject2 pygobject3 recursivePthLoader
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
dbus glib alsaLib pythonPackages.python pythonPackages.wrapPython
|
||||
dbus glib alsaLib python3 python3.pkgs.wrapPython
|
||||
readline udev libical
|
||||
];
|
||||
|
||||
|
@ -88,7 +88,7 @@ let
|
||||
separateDebugInfo = true;
|
||||
enableParallelBuilding = true;
|
||||
|
||||
makeFlags = [ "all" "fdb_java" ]
|
||||
makeFlags = [ "all" "fdb_java" "fdb_python" ]
|
||||
# Don't compile FDBLibTLS if we don't need it in 6.0 or later;
|
||||
# it gets statically linked in
|
||||
++ lib.optional (!lib.versionAtLeast version "6.0") [ "fdb_c" ]
|
||||
@ -106,17 +106,28 @@ let
|
||||
|
||||
installPhase = ''
|
||||
mkdir -vp $out/{bin,libexec/plugins} $lib/{lib,share/java} $dev/include/foundationdb
|
||||
mkdir -vp $python/lib/${python.libPrefix}/site-packages
|
||||
|
||||
cp -v ./lib/libfdb_c.so $lib/lib
|
||||
'' + lib.optionalString (!lib.versionAtLeast version "6.0") ''
|
||||
# we only copy the TLS library on < 6.0, since it's compiled-in otherwise
|
||||
cp -v ./lib/libFDBLibTLS.so $out/libexec/plugins/FDBLibTLS.so
|
||||
'' + ''
|
||||
|
||||
# C API
|
||||
cp -v ./lib/libfdb_c.so $lib/lib
|
||||
cp -v ./bindings/c/foundationdb/fdb_c.h $dev/include/foundationdb
|
||||
cp -v ./bindings/c/foundationdb/fdb_c_options.g.h $dev/include/foundationdb
|
||||
|
||||
# java
|
||||
cp -v ./bindings/java/foundationdb-client.jar $lib/share/java/fdb-java.jar
|
||||
|
||||
# python
|
||||
rm -f ./bindings/python/fdb/*.pth # remove useless files
|
||||
cp -R ./bindings/python/fdb $python/lib/${python.libPrefix}/site-packages/fdb
|
||||
# symlink a copy of the shared object into place, so that impl.py can load it
|
||||
ln -sv $lib/lib/libfdb_c.so $python/lib/${python.libPrefix}/site-packages/fdb/libfdb_c.so
|
||||
|
||||
# binaries
|
||||
for x in fdbbackup fdbcli fdbserver fdbmonitor; do
|
||||
cp -v "./bin/$x" $out/bin;
|
||||
done
|
||||
@ -128,7 +139,7 @@ let
|
||||
ln -sfv $out/bin/fdbbackup $out/libexec/backup_agent
|
||||
'';
|
||||
|
||||
outputs = [ "out" "lib" "dev" ];
|
||||
outputs = [ "out" "lib" "dev" "python" ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Open source, distributed, transactional key-value store";
|
||||
@ -148,16 +159,15 @@ in with builtins; {
|
||||
};
|
||||
|
||||
foundationdb52 = makeFdb rec {
|
||||
version = "5.2.6";
|
||||
version = "5.2.8";
|
||||
branch = "release-5.2";
|
||||
rev = "refs/tags/v5.2.6"; # seemed to be tagged incorrectly
|
||||
sha256 = "1q3lq1hqq0f53n51gd4cw5cpayyw65dmkfplhsw1m5mghymzmskk";
|
||||
sha256 = "1kbmmhk2m9486r4kyjlc7bb3wd50204i0p6dxcmvl6pbp1bs0wlb";
|
||||
};
|
||||
|
||||
foundationdb60 = makeFdb rec {
|
||||
version = "6.0.3pre2446_${substring 0 8 rev}";
|
||||
version = "6.0.4pre2497_${substring 0 8 rev}";
|
||||
branch = "release-6.0";
|
||||
rev = "dd5481fb60ee1652986b2a028b31dcbb6cb171b5";
|
||||
sha256 = "0mhlb728badk1h3410jbhy7f48m3jjnjna26wwyw5680xz72d6dm";
|
||||
rev = "73d64cb244714c19bcc651122f6e7a9236aa11b5";
|
||||
sha256 = "1jzmrf9kj0brqddlmxvzhj27r6843790jnqwkv1s3ri21fqb3hs7";
|
||||
};
|
||||
}
|
||||
|
@ -2,7 +2,7 @@
|
||||
# Do not edit!
|
||||
|
||||
{
|
||||
version = "0.74.2";
|
||||
version = "0.75.1";
|
||||
components = {
|
||||
"abode" = ps: with ps; [ ];
|
||||
"ads" = ps: with ps; [ ];
|
||||
@ -47,6 +47,7 @@
|
||||
"august" = ps: with ps; [ ];
|
||||
"auth" = ps: with ps; [ aiohttp-cors ];
|
||||
"auth.indieauth" = ps: with ps; [ ];
|
||||
"auth.login_flow" = ps: with ps; [ ];
|
||||
"automation" = ps: with ps; [ ];
|
||||
"automation.event" = ps: with ps; [ ];
|
||||
"automation.homeassistant" = ps: with ps; [ ];
|
||||
@ -128,6 +129,7 @@
|
||||
"binary_sensor.skybell" = ps: with ps; [ ];
|
||||
"binary_sensor.sleepiq" = ps: with ps; [ ];
|
||||
"binary_sensor.spc" = ps: with ps; [ ];
|
||||
"binary_sensor.tahoma" = ps: with ps; [ ];
|
||||
"binary_sensor.tapsaff" = ps: with ps; [ ];
|
||||
"binary_sensor.tcp" = ps: with ps; [ ];
|
||||
"binary_sensor.tellduslive" = ps: with ps; [ ];
|
||||
@ -225,10 +227,12 @@
|
||||
"climate.proliphix" = ps: with ps; [ ];
|
||||
"climate.radiotherm" = ps: with ps; [ ];
|
||||
"climate.sensibo" = ps: with ps; [ ];
|
||||
"climate.spider" = ps: with ps; [ ];
|
||||
"climate.tado" = ps: with ps; [ ];
|
||||
"climate.tesla" = ps: with ps; [ ];
|
||||
"climate.toon" = ps: with ps; [ ];
|
||||
"climate.touchline" = ps: with ps; [ ];
|
||||
"climate.tuya" = ps: with ps; [ ];
|
||||
"climate.venstar" = ps: with ps; [ ];
|
||||
"climate.vera" = ps: with ps; [ ];
|
||||
"climate.wink" = ps: with ps; [ ];
|
||||
@ -259,6 +263,8 @@
|
||||
"counter" = ps: with ps; [ ];
|
||||
"cover" = ps: with ps; [ ];
|
||||
"cover.abode" = ps: with ps; [ ];
|
||||
"cover.aladdin_connect" = ps: with ps; [ ];
|
||||
"cover.brunt" = ps: with ps; [ ];
|
||||
"cover.command_line" = ps: with ps; [ ];
|
||||
"cover.demo" = ps: with ps; [ ];
|
||||
"cover.garadget" = ps: with ps; [ ];
|
||||
@ -282,6 +288,7 @@
|
||||
"cover.tellduslive" = ps: with ps; [ ];
|
||||
"cover.tellstick" = ps: with ps; [ ];
|
||||
"cover.template" = ps: with ps; [ ];
|
||||
"cover.tuya" = ps: with ps; [ ];
|
||||
"cover.velbus" = ps: with ps; [ ];
|
||||
"cover.vera" = ps: with ps; [ ];
|
||||
"cover.wink" = ps: with ps; [ ];
|
||||
@ -375,6 +382,7 @@
|
||||
"fan.isy994" = ps: with ps; [ ];
|
||||
"fan.mqtt" = ps: with ps; [ paho-mqtt ];
|
||||
"fan.template" = ps: with ps; [ ];
|
||||
"fan.tuya" = ps: with ps; [ ];
|
||||
"fan.velbus" = ps: with ps; [ ];
|
||||
"fan.wink" = ps: with ps; [ ];
|
||||
"fan.xiaomi_miio" = ps: with ps; [ construct ];
|
||||
@ -482,6 +490,7 @@
|
||||
"light.enocean" = ps: with ps; [ ];
|
||||
"light.eufy" = ps: with ps; [ ];
|
||||
"light.flux_led" = ps: with ps; [ ];
|
||||
"light.futurenow" = ps: with ps; [ ];
|
||||
"light.greenwave" = ps: with ps; [ ];
|
||||
"light.group" = ps: with ps; [ ];
|
||||
"light.hive" = ps: with ps; [ ];
|
||||
@ -518,6 +527,7 @@
|
||||
"light.rpi_gpio_pwm" = ps: with ps; [ ];
|
||||
"light.scsgate" = ps: with ps; [ ];
|
||||
"light.sensehat" = ps: with ps; [ ];
|
||||
"light.sisyphus" = ps: with ps; [ ];
|
||||
"light.skybell" = ps: with ps; [ ];
|
||||
"light.tellduslive" = ps: with ps; [ ];
|
||||
"light.tellstick" = ps: with ps; [ ];
|
||||
@ -620,6 +630,7 @@
|
||||
"media_player.russound_rio" = ps: with ps; [ ];
|
||||
"media_player.russound_rnet" = ps: with ps; [ ];
|
||||
"media_player.samsungtv" = ps: with ps; [ wakeonlan ];
|
||||
"media_player.sisyphus" = ps: with ps; [ ];
|
||||
"media_player.snapcast" = ps: with ps; [ ];
|
||||
"media_player.songpal" = ps: with ps; [ ];
|
||||
"media_player.sonos" = ps: with ps; [ soco ];
|
||||
@ -770,6 +781,7 @@
|
||||
"scene.litejet" = ps: with ps; [ ];
|
||||
"scene.lutron_caseta" = ps: with ps; [ ];
|
||||
"scene.tahoma" = ps: with ps; [ ];
|
||||
"scene.tuya" = ps: with ps; [ ];
|
||||
"scene.velux" = ps: with ps; [ ];
|
||||
"scene.vera" = ps: with ps; [ ];
|
||||
"scene.wink" = ps: with ps; [ ];
|
||||
@ -896,6 +908,7 @@
|
||||
"sensor.loopenergy" = ps: with ps; [ ];
|
||||
"sensor.luftdaten" = ps: with ps; [ luftdaten ];
|
||||
"sensor.lyft" = ps: with ps; [ ];
|
||||
"sensor.magicseaweed" = ps: with ps; [ ];
|
||||
"sensor.melissa" = ps: with ps; [ ];
|
||||
"sensor.metoffice" = ps: with ps; [ ];
|
||||
"sensor.mfi" = ps: with ps; [ ];
|
||||
@ -1048,6 +1061,7 @@
|
||||
"shell_command" = ps: with ps; [ ];
|
||||
"shiftr" = ps: with ps; [ paho-mqtt ];
|
||||
"shopping_list" = ps: with ps; [ aiohttp-cors ];
|
||||
"sisyphus" = ps: with ps; [ ];
|
||||
"skybell" = ps: with ps; [ ];
|
||||
"sleepiq" = ps: with ps; [ ];
|
||||
"smappee" = ps: with ps; [ ];
|
||||
@ -1055,6 +1069,7 @@
|
||||
"sonos" = ps: with ps; [ soco ];
|
||||
"spaceapi" = ps: with ps; [ aiohttp-cors ];
|
||||
"spc" = ps: with ps; [ websockets ];
|
||||
"spider" = ps: with ps; [ ];
|
||||
"splunk" = ps: with ps; [ ];
|
||||
"statsd" = ps: with ps; [ statsd ];
|
||||
"sun" = ps: with ps; [ ];
|
||||
@ -1128,6 +1143,7 @@
|
||||
"switch.skybell" = ps: with ps; [ ];
|
||||
"switch.smappee" = ps: with ps; [ ];
|
||||
"switch.snmp" = ps: with ps; [ pysnmp ];
|
||||
"switch.spider" = ps: with ps; [ ];
|
||||
"switch.tahoma" = ps: with ps; [ ];
|
||||
"switch.tellduslive" = ps: with ps; [ ];
|
||||
"switch.tellstick" = ps: with ps; [ ];
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ lib, fetchFromGitHub, python3
|
||||
{ lib, fetchFromGitHub, fetchpatch, python3
|
||||
|
||||
# Look up dependencies of specified components in component-packages.nix
|
||||
, extraComponents ? []
|
||||
@ -29,10 +29,10 @@ let
|
||||
};
|
||||
});
|
||||
voluptuous = super.voluptuous.overridePythonAttrs (oldAttrs: rec {
|
||||
version = "0.11.1";
|
||||
version = "0.11.5";
|
||||
src = oldAttrs.src.override {
|
||||
inherit version;
|
||||
sha256 = "af7315c9fa99e0bfd195a21106c82c81619b42f0bd9b6e287b797c6b6b6a9918";
|
||||
sha256 = "567a56286ef82a9d7ae0628c5842f65f516abcb496e74f3f59f1d7b28df314ef";
|
||||
};
|
||||
});
|
||||
attrs = super.attrs.overridePythonAttrs (oldAttrs: rec {
|
||||
@ -74,7 +74,7 @@ let
|
||||
extraBuildInputs = extraPackages py.pkgs;
|
||||
|
||||
# Don't forget to run parse-requirements.py after updating
|
||||
hassVersion = "0.74.2";
|
||||
hassVersion = "0.75.1";
|
||||
|
||||
in with py.pkgs; buildPythonApplication rec {
|
||||
pname = "homeassistant";
|
||||
@ -89,7 +89,16 @@ in with py.pkgs; buildPythonApplication rec {
|
||||
owner = "home-assistant";
|
||||
repo = "home-assistant";
|
||||
rev = version;
|
||||
sha256 = "02wdvkcl4zjw009a5ylblk5blpf5rhlvch8vsg4cx07sj9xgjzmw";
|
||||
sha256 = "1slm2r48yh4l57wnvalin6mnk3id2phsaqpd4qy0c0ksqc61ffqk";
|
||||
};
|
||||
|
||||
# Upgrade voluptuous to 0.11.5
|
||||
# Needed because voluptuous-0.11.3 requires pypandoc
|
||||
# See https://github.com/home-assistant/home-assistant/pull/15830#issuecomment-410485197
|
||||
patches = fetchpatch {
|
||||
name = "upgrade-voluptuous.patch";
|
||||
url = https://github.com/home-assistant/home-assistant/commit/9ea3be4dc112fb45544fa089cb367c7f4f91b5f0.patch;
|
||||
sha256 = "0wacs9aifdysw6jpz86d6cqah8spi48pwwcbydj9l8zxndzqp6na";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "home-assistant-frontend";
|
||||
version = "20180720.0";
|
||||
version = "20180804.0";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "4a9d570cfc1d6b0e4b914897197d6772d48aa38b10202a648e79c5fb2a6a0293";
|
||||
sha256 = "50a9e74efe2b56fbc34fba07205829e0ea77315183e85c235d177cabff3b62ee";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ user-agents ];
|
||||
|
@ -1,6 +1,6 @@
|
||||
{ callPackage, ... }@args:
|
||||
|
||||
callPackage ./generic.nix (args // {
|
||||
version = "1.15.1";
|
||||
sha256 = "0q2lkpnfqf74p22vrcldx0gcnss3is7rnp54fgpvhcpqsxc6h867";
|
||||
version = "1.15.2";
|
||||
sha256 = "145dcypq8dqc5as03iy1ycwifwynq9p4i8m56fn7g0myryp0kfpf";
|
||||
})
|
||||
|
@ -94,6 +94,16 @@
|
||||
'';
|
||||
};
|
||||
|
||||
lua-upstream = {
|
||||
src = fetchFromGitHub {
|
||||
owner = "openresty";
|
||||
repo = "lua-upstream-nginx-module";
|
||||
rev = "v0.07";
|
||||
sha256 = "1gqccg8airli3i9103zv1zfwbjm27h235qjabfbfqk503rjamkpk";
|
||||
};
|
||||
inputs = [ pkgs.luajit ];
|
||||
};
|
||||
|
||||
modsecurity = {
|
||||
src = "${pkgs.modsecurity_standalone.nginx}/nginx/modsecurity";
|
||||
inputs = [ pkgs.curl pkgs.apr pkgs.aprutil pkgs.apacheHttpd pkgs.yajl ];
|
||||
@ -215,6 +225,33 @@
|
||||
};
|
||||
};
|
||||
|
||||
stream-sts = {
|
||||
src = fetchFromGitHub {
|
||||
owner = "vozlt";
|
||||
repo = "nginx-module-stream-sts";
|
||||
rev = "v0.1.1";
|
||||
sha256 = "1jdj1kik6l3rl9nyx61xkqk7hmqbncy0rrqjz3dmjqsz92y8zaya";
|
||||
};
|
||||
};
|
||||
|
||||
sts = {
|
||||
src = fetchFromGitHub {
|
||||
owner = "vozlt";
|
||||
repo = "nginx-module-sts";
|
||||
rev = "v0.1.1";
|
||||
sha256 = "0nvb29641x1i7mdbydcny4qwlvdpws38xscxirajd2x7nnfdflrk";
|
||||
};
|
||||
};
|
||||
|
||||
sysguard = {
|
||||
src = fetchFromGitHub {
|
||||
owner = "vozlt";
|
||||
repo = "nginx-module-sysguard";
|
||||
rev = "e512897f5aba4f79ccaeeebb51138f1704a58608";
|
||||
sha256 = "19c6w6wscbq9phnx7vzbdf4ay6p2ys0g7kp2rmc9d4fb53phrhfx";
|
||||
};
|
||||
};
|
||||
|
||||
upstream-check = {
|
||||
src = fetchFromGitHub {
|
||||
owner = "yaoweibin";
|
||||
@ -234,6 +271,15 @@
|
||||
inputs = [ pkgs.msgpuck.dev pkgs.yajl ];
|
||||
};
|
||||
|
||||
url = {
|
||||
src = fetchFromGitHub {
|
||||
owner = "vozlt";
|
||||
repo = "nginx-module-url";
|
||||
rev = "9299816ca6bc395625c3683fbd2aa7b916bfe91e";
|
||||
sha256 = "0mk1gjmfnry6hgdsnlavww9bn7223idw50jlkhh5k00q5509w4ip";
|
||||
};
|
||||
};
|
||||
|
||||
vts = {
|
||||
src = fetchFromGitHub {
|
||||
owner = "vozlt";
|
||||
|
@ -27,7 +27,7 @@
|
||||
, opusSupport ? true, libopus
|
||||
, soundcloudSupport ? true, yajl
|
||||
, nfsSupport ? true, libnfs
|
||||
, smbSupport ? true, smbclient
|
||||
, smbSupport ? true, samba
|
||||
}:
|
||||
|
||||
assert avahiSupport -> avahi != null && dbus != null;
|
||||
@ -85,7 +85,7 @@ in stdenv.mkDerivation rec {
|
||||
++ opt opusSupport libopus
|
||||
++ opt soundcloudSupport yajl
|
||||
++ opt (!stdenv.isDarwin && nfsSupport) libnfs
|
||||
++ opt (!stdenv.isDarwin && smbSupport) smbclient;
|
||||
++ opt (!stdenv.isDarwin && smbSupport) samba;
|
||||
|
||||
nativeBuildInputs = [ autoreconfHook pkgconfig ];
|
||||
|
||||
|
@ -22,14 +22,14 @@ galeraLibs = buildEnv {
|
||||
};
|
||||
|
||||
common = rec { # attributes common to both builds
|
||||
version = "10.3.8";
|
||||
version = "10.2.16";
|
||||
|
||||
src = fetchurl {
|
||||
urls = [
|
||||
"https://downloads.mariadb.org/f/mariadb-${version}/source/mariadb-${version}.tar.gz"
|
||||
"https://downloads.mariadb.com/MariaDB/mariadb-${version}/source/mariadb-${version}.tar.gz"
|
||||
];
|
||||
sha256 = "1f0syfrv0my7sm8cbpic00ldy90psimy8yvm0ld82bfi2isw3gih";
|
||||
sha256 = "1i2dwpp96ywjk147qqpcad8vqcy4rxmfbv2cb8ww3sffpa9yx0n1";
|
||||
name = "mariadb-${version}.tar.gz";
|
||||
};
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, writeScriptBin, lib, fetchurl, git, cacert
|
||||
{ stdenv, writeScriptBin, makeWrapper, lib, fetchurl, git, cacert, libpng, libjpeg, libwebp
|
||||
, erlang, openssl, expat, libyaml, bash, gnused, gnugrep, coreutils, utillinux, procps, gd
|
||||
, flock
|
||||
, withMysql ? false
|
||||
@ -24,17 +24,17 @@ let
|
||||
ctlpath = lib.makeBinPath [ bash gnused gnugrep coreutils utillinux procps ];
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
version = "18.01";
|
||||
version = "18.06";
|
||||
name = "ejabberd-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://www.process-one.net/downloads/ejabberd/${version}/${name}.tgz";
|
||||
sha256 = "01i2n8mlgw293jdf4172f9q8ca8m35vysjws791p7nynpfdb4cn6";
|
||||
sha256 = "1c4h6qrckihm8v4vm52h31j5dxg7247vk374rwz41idfb25vx7dc";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ fakegit ];
|
||||
|
||||
buildInputs = [ erlang openssl expat libyaml gd ]
|
||||
buildInputs = [ erlang openssl expat libyaml gd makeWrapper ]
|
||||
++ lib.optional withSqlite sqlite
|
||||
++ lib.optional withPam pam
|
||||
++ lib.optional withZlib zlib
|
||||
@ -75,7 +75,7 @@ in stdenv.mkDerivation rec {
|
||||
|
||||
outputHashMode = "recursive";
|
||||
outputHashAlgo = "sha256";
|
||||
outputHash = "1v3h0c7kfifb6wsfxyv5j1wc7rlxbb7r0pgd4s340wiyxnllzzhk";
|
||||
outputHash = "1bk3yd10cq6vlgmh2qawl82m29yi5zcbsdlz17xyy76sg2ka622a";
|
||||
};
|
||||
|
||||
configureFlags =
|
||||
@ -106,6 +106,7 @@ in stdenv.mkDerivation rec {
|
||||
-e 's,\(^ *JOT=\).*,\1,' \
|
||||
-e 's,\(^ *CONNLOCKDIR=\).*,\1/var/lock/ejabberdctl,' \
|
||||
$out/sbin/ejabberdctl
|
||||
wrapProgram $out/lib/eimp-*/priv/bin/eimp --prefix LD_LIBRARY_PATH : "${stdenv.lib.makeLibraryPath [ libpng libjpeg libwebp ]}"
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
@ -2,16 +2,16 @@
|
||||
|
||||
buildGoPackage rec {
|
||||
name = "antibody-${version}";
|
||||
version = "3.5.1";
|
||||
version = "3.6.1";
|
||||
rev = "v${version}";
|
||||
|
||||
|
||||
goPackagePath = "github.com/getantibody/antibody";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
inherit rev;
|
||||
owner = "getantibody";
|
||||
repo = "antibody";
|
||||
sha256 = "0bqq59vnnm80jiqlhn7wfyzj96nkv8k9zp8i4sgcj8gvk1zq2lbc";
|
||||
sha256 = "1xlaf3440hs1ffa23ja0fc185sj0rxjv0808ib8li3rq2qfkd0k8";
|
||||
};
|
||||
|
||||
goDeps = ./deps.nix;
|
||||
|
@ -1,17 +1,19 @@
|
||||
{ stdenv, pythonPackages, bash }:
|
||||
|
||||
pythonPackages.buildPythonApplication rec {
|
||||
pname = "simp_le-client";
|
||||
version = "0.8.0";
|
||||
{ stdenv, python3Packages, bash }:
|
||||
|
||||
src = pythonPackages.fetchPypi {
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "simp_le-client";
|
||||
version = "0.9.0";
|
||||
|
||||
src = python3Packages.fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "0nv9mm99rm8i9flgfgwvmajbsxb5rm162nfxlq3wk66bbbyr6y1i";
|
||||
sha256 = "1yxfznd78zkg2f657v520zj5w4dvq5n594d0kpm4lra8xnpg4zcv";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
# drop upper bound of acme requirement
|
||||
sed -ri "s/'(acme>=[^,]+),<[^']+'/'\1'/" setup.py
|
||||
# drop upper bound of idna requirement
|
||||
sed -ri "s/'(idna)<[^']+'/'\1'/" setup.py
|
||||
substituteInPlace simp_le.py \
|
||||
--replace "/bin/sh" "${bash}/bin/sh"
|
||||
'';
|
||||
@ -20,14 +22,13 @@ pythonPackages.buildPythonApplication rec {
|
||||
$out/bin/simp_le --test
|
||||
'';
|
||||
|
||||
propagatedBuildInputs = with pythonPackages; [ acme setuptools_scm josepy ];
|
||||
propagatedBuildInputs = with python3Packages; [ acme setuptools_scm josepy idna ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://github.com/zenhack/simp_le;
|
||||
description = "Simple Let's Encrypt client";
|
||||
license = licenses.gpl3;
|
||||
maintainers = with maintainers; [ gebner makefu ];
|
||||
platforms = platforms.all;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
||||
|
||||
|
@ -19,7 +19,15 @@ stdenv.mkDerivation rec {
|
||||
# remaps /etc/passwd to a trivial file, but we can't do that on Darwin so I do this
|
||||
# instead. In this case, I pass in the very imaginative "submitter" as the submitter name
|
||||
|
||||
patchPhase = let
|
||||
patches = [
|
||||
# CVE-2018-1000097
|
||||
(fetchurl {
|
||||
url = "https://sources.debian.org/data/main/s/sharutils/1:4.15.2-2+deb9u1/debian/patches/01-fix-heap-buffer-overflow-cve-2018-1000097.patch";
|
||||
sha256 = "19g0sxc8g79aj5gd5idz5409311253jf2q8wqkasf0handdvsbxx";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = let
|
||||
# This evaluates to a string containing:
|
||||
#
|
||||
# substituteInPlace tests/shar-2 --replace '${SHAR}' '${SHAR} -s submitter'
|
||||
|
@ -1,6 +1,6 @@
|
||||
{ lib, buildPythonApplication, fetchFromGitHub, protobuf, roundup }:
|
||||
{ lib, python2, fetchFromGitHub, roundup }:
|
||||
|
||||
buildPythonApplication rec {
|
||||
python2.pkgs.buildPythonApplication rec {
|
||||
pname = "ddar";
|
||||
version = "1.0";
|
||||
|
||||
@ -23,7 +23,7 @@ buildPythonApplication rec {
|
||||
make -f Makefile.prep synctus/ddar_pb2.py
|
||||
'';
|
||||
|
||||
propagatedBuildInputs = [ protobuf ];
|
||||
propagatedBuildInputs = with python2.pkgs; [ protobuf ];
|
||||
|
||||
checkInputs = [ roundup ];
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchurl, coreutils, python, duplicity, gawk, gnupg1, bash
|
||||
{ stdenv, fetchurl, coreutils, python2, duplicity, gawk, gnupg1, bash
|
||||
, gnugrep, txt2man, makeWrapper, which
|
||||
}:
|
||||
|
||||
@ -19,7 +19,7 @@ stdenv.mkDerivation {
|
||||
mkdir -p "$out/share/man/man1"
|
||||
install -vD duply "$out/bin"
|
||||
wrapProgram "$out/bin/duply" --set PATH \
|
||||
${stdenv.lib.makeBinPath [ coreutils python duplicity gawk gnupg1 bash gnugrep txt2man which ]}
|
||||
${stdenv.lib.makeBinPath [ coreutils python2 duplicity gawk gnupg1 bash gnugrep txt2man which ]}
|
||||
"$out/bin/duply" txt2man > "$out/share/man/man1/duply.1"
|
||||
'';
|
||||
|
||||
|
@ -1,9 +1,10 @@
|
||||
{ stdenv, lib, fetchurl, intltool, pkgconfig, pythonPackages, bluez, gtk3
|
||||
{ stdenv, lib, fetchurl, intltool, pkgconfig, python3Packages, bluez, gtk3
|
||||
, obex_data_server, xdg_utils, libnotify, dnsmasq, dhcp
|
||||
, hicolor-icon-theme, librsvg, wrapGAppsHook, gobjectIntrospection
|
||||
, withPulseAudio ? true, libpulseaudio }:
|
||||
|
||||
let
|
||||
pythonPackages = python3Packages;
|
||||
binPath = lib.makeBinPath [ xdg_utils dnsmasq dhcp ];
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
|
@ -2,12 +2,12 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "f2fs-tools-${version}";
|
||||
version = "1.10.0";
|
||||
version = "1.11.0";
|
||||
|
||||
src = fetchgit {
|
||||
url = "git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs-tools.git";
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "1254pd254l1hxkzkkzqmzc0j9vywj2wddg9apqaixjninj21jrbc";
|
||||
sha256 = "188yv77ga466wpzbirsx6vspym8idaschgi7cx92z4jwqpnkk5gv";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ autoreconfHook pkgconfig ];
|
||||
|
@ -6,7 +6,7 @@ with stdenv.lib;
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
pname = "squashfuse";
|
||||
version = "unstable-2018-02-20";
|
||||
version = "0.1.103";
|
||||
name = "${pname}-${version}";
|
||||
|
||||
meta = {
|
||||
@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
|
||||
src = fetchFromGitHub {
|
||||
owner = "vasi";
|
||||
repo = "${pname}";
|
||||
rev = "3f4a93f373796e88f7eee3a0c005ef60cb395d30";
|
||||
rev = "540204955134eee44201d50132a5f66a246bcfaf";
|
||||
sha256 = "07jv4qjjz9ky3mw3p5prgs19g1bna9dcd7jjdz8083s1wyipdgcq";
|
||||
};
|
||||
|
||||
|
@ -1,22 +1,26 @@
|
||||
{ stdenv, fetchFromGitHub, rustPlatform }:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
version = "1.0.1";
|
||||
version = "2.1.0";
|
||||
name = "oxipng-${version}";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "shssoichiro";
|
||||
repo = "oxipng";
|
||||
rev = "v${version}";
|
||||
sha256 = "0w39f0dhq9cxk25vy0wh8vicxyckvj1vmglx5va4550i3q0hsrws";
|
||||
sha256 = "13rzkfb025y4i9dj66fgc74whgs90gyw861dccsj16cpfl6kh5z0";
|
||||
};
|
||||
|
||||
cargoSha256 = "00nbx6n73yl4ax05pqkmim1vhy0pymgz5la1cc4y18gjbjjj9w4h";
|
||||
cargoSha256 = "0l6ad8rnifd5hkv6x2cr0frdddsfwm1xd1v56imlglsjkgz56cva";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://github.com/shssoichiro/oxipng;
|
||||
description = "A lossless PNG compression optimizer";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ dywedir ];
|
||||
platforms = platforms.all;
|
||||
|
||||
# macro is_arm_feature_detected! is unstable
|
||||
broken = stdenv.isAarch64;
|
||||
};
|
||||
}
|
||||
|
23
pkgs/tools/graphics/scour/default.nix
Normal file
23
pkgs/tools/graphics/scour/default.nix
Normal file
@ -0,0 +1,23 @@
|
||||
{ stdenv, python3 }:
|
||||
|
||||
with python3.pkgs;
|
||||
|
||||
buildPythonApplication rec {
|
||||
pname = "scour";
|
||||
version = "0.37";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "05k1f8i8v7sp5v39lian865vwvapq05a6vmvk7fwnxv8kivi6ccn";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ six ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "An SVG Optimizer / Cleaner ";
|
||||
homepage = https://github.com/scour-project/scour;
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ worldofpeace ];
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
@ -1,8 +1,8 @@
|
||||
{ stdenv, fetchFromGitHub, makeWrapper, pythonPackages, perl, zip
|
||||
{ stdenv, fetchFromGitHub, makeWrapper, python3Packages, perl, zip
|
||||
, rtmpdump }:
|
||||
|
||||
let
|
||||
inherit (pythonPackages) python nose pycrypto requests mock;
|
||||
inherit (python3Packages) python nose pycrypto requests mock;
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "svtplay-dl-${version}";
|
||||
version = "1.9.11";
|
||||
|
@ -1,6 +1,6 @@
|
||||
{ useLua ? !stdenv.isDarwin
|
||||
, usePcre ? true
|
||||
, stdenv, fetchurl, fetchpatch
|
||||
, stdenv, fetchurl
|
||||
, openssl, zlib, lua5_3 ? null, pcre ? null
|
||||
}:
|
||||
|
||||
@ -9,26 +9,14 @@ assert usePcre -> pcre != null;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "haproxy";
|
||||
version = "1.8.9";
|
||||
version = "1.8.13";
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://www.haproxy.org/download/${stdenv.lib.versions.majorMinor version}/src/${name}.tar.gz";
|
||||
sha256 = "00miblgwll3mycsgmp3gd3cn4lwsagxzgjxk5i6csnyqgj97fss3";
|
||||
sha256 = "2bf5dafbb5f1530c0e67ab63666565de948591f8e0ee2a1d3c84c45e738220f1";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(fetchpatch {
|
||||
name = "CVE-2018-11469.patch";
|
||||
url = "https://git.haproxy.org/?p=haproxy-1.8.git;a=patch;h=17514045e5d934dede62116216c1b016fe23dd06";
|
||||
sha256 = "0hzcvghg8qz45n3mrcgsjgvrvicvbvm52cc4hs5jbk1yb50qvls7";
|
||||
})
|
||||
] ++ stdenv.lib.optional stdenv.isDarwin (fetchpatch {
|
||||
name = "fix-darwin-no-threads-build.patch";
|
||||
url = "https://git.haproxy.org/?p=haproxy-1.8.git;a=patch;h=fbf09c441a4e72c4a690bc7ef25d3374767fe5c5;hp=3157ef219c493f3b01192f1b809a086a5b119a1e";
|
||||
sha256 = "16ckzb160anf7xih7mmqy59pfz8sdywmyblxnr7lz9xix3jwk55r";
|
||||
});
|
||||
|
||||
buildInputs = [ openssl zlib ]
|
||||
++ stdenv.lib.optional useLua lua5_3
|
||||
++ stdenv.lib.optional usePcre pcre;
|
||||
@ -51,7 +39,8 @@ stdenv.mkDerivation rec {
|
||||
"USE_LUA=yes"
|
||||
"LUA_LIB=${lua5_3}/lib"
|
||||
"LUA_INC=${lua5_3}/include"
|
||||
] ++ stdenv.lib.optional stdenv.isDarwin "CC=cc";
|
||||
] ++ stdenv.lib.optional stdenv.isDarwin "CC=cc"
|
||||
++ stdenv.lib.optional stdenv.isLinux "USE_GETADDRINFO=1";
|
||||
|
||||
meta = {
|
||||
description = "Reliable, high performance TCP/HTTP load balancer";
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user