1
0
Fork 1
mirror of https://github.com/NixOS/nixpkgs.git synced 2024-11-22 13:41:26 +00:00

Merge branch 'master' into staging

This commit is contained in:
Franz Pletz 2017-06-26 02:23:38 +02:00
commit 40a04291c9
No known key found for this signature in database
GPG key ID: 846FDED7792617B4
195 changed files with 4493 additions and 3066 deletions

View file

@ -11,6 +11,7 @@
- [ ] NixOS
- [ ] macOS
- [ ] Linux
- [ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside [nixos/tests](https://github.com/NixOS/nixpkgs/blob/master/nixos/tests))
- [ ] Tested compilation of all pkgs that depend on this change using `nix-shell -p nox --run "nox-review wip"`
- [ ] Tested execution of all binary files (usually in `./result/bin/`)
- [ ] Fits [CONTRIBUTING.md](https://github.com/NixOS/nixpkgs/blob/master/.github/CONTRIBUTING.md).

View file

@ -26,7 +26,7 @@ pkgs.stdenv.mkDerivation {
extraHeader = ''xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" '';
in ''
{
pandoc '${inputFile}' -w docbook ${lib.optionalString useChapters "--chapters"} \
pandoc '${inputFile}' -w docbook ${lib.optionalString useChapters "--top-level-division=chapter"} \
--smart \
| sed -e 's|<ulink url=|<link xlink:href=|' \
-e 's|</ulink>|</link>|' \

View file

@ -2,60 +2,120 @@
xmlns:xlink="http://www.w3.org/1999/xlink"
xml:id="sec-beam">
<title>Beam Languages (Erlang &amp; Elixir)</title>
<title>BEAM Languages (Erlang, Elixir &amp; LFE)</title>
<section xml:id="beam-introduction">
<title>Introduction</title>
<para>
In this document and related Nix expressions we use the term
<emphasis>Beam</emphasis> to describe the environment. Beam is
the name of the Erlang Virtial Machine and, as far as we know,
from a packaging perspective all languages that run on Beam are
interchangable. The things that do change, like the build
system, are transperant to the users of the package. So we make
no distinction.
In this document and related Nix expressions, we use the term,
<emphasis>BEAM</emphasis>, to describe the environment. BEAM is the name
of the Erlang Virtual Machine and, as far as we're concerned, from a
packaging perspective, all languages that run on the BEAM are
interchangeable. That which varies, like the build system, is transparent
to users of any given BEAM package, so we make no distinction.
</para>
</section>
<section xml:id="build-tools">
<section xml:id="beam-structure">
<title>Structure</title>
<para>
All BEAM-related expressions are available via the top-level
<literal>beam</literal> attribute, which includes:
</para>
<itemizedlist>
<listitem>
<para>
<literal>interpreters</literal>: a set of compilers running on the
BEAM, including multiple Erlang/OTP versions
(<literal>beam.interpreters.erlangR19</literal>, etc), Elixir
(<literal>beam.interpreters.elixir</literal>) and LFE
(<literal>beam.interpreters.lfe</literal>).
</para>
</listitem>
<listitem>
<para>
<literal>packages</literal>: a set of package sets, each compiled with
a specific Erlang/OTP version, e.g.
<literal>beam.packages.erlangR19</literal>.
</para>
</listitem>
</itemizedlist>
<para>
The default Erlang compiler, defined by
<literal>beam.interpreters.erlang</literal>, is aliased as
<literal>erlang</literal>. The default BEAM package set is defined by
<literal>beam.packages.erlang</literal> and aliased at the top level as
<literal>beamPackages</literal>.
</para>
<para>
To create a package set built with a custom Erlang version, use the
lambda, <literal>beam.packagesWith</literal>, which accepts an Erlang/OTP
derivation and produces a package set similar to
<literal>beam.packages.erlang</literal>.
</para>
<para>
Many Erlang/OTP distributions available in
<literal>beam.interpreters</literal> have versions with ODBC and/or Java
enabled. For example, there's
<literal>beam.interpreters.erlangR19_odbc_javac</literal>, which
corresponds to <literal>beam.interpreters.erlangR19</literal>.
</para>
<para xml:id="erlang-call-package">
We also provide the lambda,
<literal>beam.packages.erlang.callPackage</literal>, which simplifies
writing BEAM package definitions by injecting all packages from
<literal>beam.packages.erlang</literal> into the top-level context.
</para>
</section>
<section xml:id="build-tools">
<title>Build Tools</title>
<section xml:id="build-tools-rebar3">
<title>Rebar3</title>
<para>
By default Rebar3 wants to manage it's own dependencies. In the
normal non-Nix, this is perfectly acceptable. In the Nix world it
is not. To support this we have created two versions of rebar3,
<literal>rebar3</literal> and <literal>rebar3-open</literal>. The
<literal>rebar3</literal> version has been patched to remove the
ability to download anything from it. If you are not running it a
nix-shell or a nix-build then its probably not going to work for
you. <literal>rebar3-open</literal> is the normal, un-modified
rebar3. It should work exactly as would any other version of
rebar3. Any Erlang package should rely on
<literal>rebar3</literal> and thats really what you should be
using too.
By default, Rebar3 wants to manage its own dependencies. This is perfectly
acceptable in the normal, non-Nix setup, but in the Nix world, it is not.
To rectify this, we provide two versions of Rebar3:
<itemizedlist>
<listitem>
<para>
<literal>rebar3</literal>: patched to remove the ability to download
anything. When not running it via <literal>nix-shell</literal> or
<literal>nix-build</literal>, it's probably not going to work as
desired.
</para>
</listitem>
<listitem>
<para>
<literal>rebar3-open</literal>: the normal, unmodified Rebar3. It
should work exactly as would any other version of Rebar3. Any Erlang
package should rely on <literal>rebar3</literal> instead. See <xref
linkend="rebar3-packages"/>.
</para>
</listitem>
</itemizedlist>
</para>
</section>
<section xml:id="build-tools-other">
<title>Mix &amp; Erlang.mk</title>
<para>
Both Mix and Erlang.mk work exactly as you would expect. There
is a bootstrap process that needs to be run for both of
them. However, that is supported by the
<literal>buildMix</literal> and <literal>buildErlangMk</literal> derivations.
Both Mix and Erlang.mk work exactly as expected. There is a bootstrap
process that needs to be run for both, however, which is supported by the
<literal>buildMix</literal> and <literal>buildErlangMk</literal>
derivations, respectively.
</para>
</section>
</section>
<section xml:id="how-to-install-beam-packages">
<title>How to install Beam packages</title>
<title>How to Install BEAM Packages</title>
<para>
Beam packages are not registered in the top level simply because
they are not relevant to the vast majority of Nix users. They are
installable using the <literal>beamPackages</literal> attribute
set.
BEAM packages are not registered at the top level, simply because they are
not relevant to the vast majority of Nix users. They are installable using
the <literal>beam.packages.erlang</literal> attribute set (aliased as
<literal>beamPackages</literal>), which points to packages built by the
default Erlang/OTP version in Nixpkgs, as defined by
<literal>beam.interpreters.erlang</literal>.
You can list the avialable packages in the
<literal>beamPackages</literal> with the following command:
To list the available packages in
<literal>beamPackages</literal>, use the following command:
</para>
<programlisting>
@ -69,115 +129,152 @@ beamPackages.meck meck-0.8.3
beamPackages.rebar3-pc pc-1.1.0
</programlisting>
<para>
To install any of those packages into your profile, refer to them by
their attribute path (first column):
To install any of those packages into your profile, refer to them by their
attribute path (first column):
</para>
<programlisting>
$ nix-env -f &quot;&lt;nixpkgs&gt;&quot; -iA beamPackages.ibrowse
</programlisting>
<para>
The attribute path of any Beam packages corresponds to the name
of that particular package in Hex or its OTP Application/Release name.
The attribute path of any BEAM package corresponds to the name of that
particular package in <link xlink:href="https://hex.pm">Hex</link> or its
OTP Application/Release name.
</para>
</section>
<section xml:id="packaging-beam-applications">
<title>Packaging Beam Applications</title>
<title>Packaging BEAM Applications</title>
<section xml:id="packaging-erlang-applications">
<title>Erlang Applications</title>
<section xml:id="rebar3-packages">
<title>Rebar3 Packages</title>
<para>
There is a Nix functional called
<literal>buildRebar3</literal>. We use this function to make a
derivation that understands how to build the rebar3 project. For
example, the epression we use to build the <link
xlink:href="https://github.com/erlang-nix/hex2nix">hex2nix</link>
project follows.
The Nix function, <literal>buildRebar3</literal>, defined in
<literal>beam.packages.erlang.buildRebar3</literal> and aliased at the
top level, can be used to build a derivation that understands how to
build a Rebar3 project. For example, we can build <link
xlink:href="https://github.com/erlang-nix/hex2nix">hex2nix</link> as
follows:
</para>
<programlisting>
{stdenv, fetchFromGitHub, buildRebar3, ibrowse, jsx, erlware_commons }:
{ stdenv, fetchFromGitHub, buildRebar3, ibrowse, jsx, erlware_commons }:
buildRebar3 rec {
name = "hex2nix";
version = "0.0.1";
buildRebar3 rec {
name = "hex2nix";
version = "0.0.1";
src = fetchFromGitHub {
owner = "ericbmerritt";
repo = "hex2nix";
rev = "${version}";
sha256 = "1w7xjidz1l5yjmhlplfx7kphmnpvqm67w99hd2m7kdixwdxq0zqg";
};
src = fetchFromGitHub {
owner = "ericbmerritt";
repo = "hex2nix";
rev = "${version}";
sha256 = "1w7xjidz1l5yjmhlplfx7kphmnpvqm67w99hd2m7kdixwdxq0zqg";
};
beamDeps = [ ibrowse jsx erlware_commons ];
}
</programlisting>
<para>
The only visible difference between this derivation and
something like <literal>stdenv.mkDerivation</literal> is that we
have added <literal>erlangDeps</literal> to the derivation. If
you add your Beam dependencies here they will be correctly
handled by the system.
Such derivations are callable with
<literal>beam.packages.erlang.callPackage</literal> (see <xref
linkend="erlang-call-package"/>). To call this package using the normal
<literal>callPackage</literal>, refer to dependency packages via
<literal>beamPackages</literal>, e.g.
<literal>beamPackages.ibrowse</literal>.
</para>
<para>
If your package needs to compile native code via Rebar's port
compilation mechenism. You should add <literal>compilePort =
true;</literal> to the derivation.
Notably, <literal>buildRebar3</literal> includes
<literal>beamDeps</literal>, while
<literal>stdenv.mkDerivation</literal> does not. BEAM dependencies added
there will be correctly handled by the system.
</para>
<para>
If a package needs to compile native code via Rebar3's port compilation
mechanism, add <literal>compilePort = true;</literal> to the derivation.
</para>
</section>
<section xml:id="erlang-mk-packages">
<title>Erlang.mk Packages</title>
<para>
Erlang.mk functions almost identically to Rebar. The only real
difference is that <literal>buildErlangMk</literal> is called
instead of <literal>buildRebar3</literal>
Erlang.mk functions similarly to Rebar3, except we use
<literal>buildErlangMk</literal> instead of
<literal>buildRebar3</literal>.
</para>
<programlisting>
{ buildErlangMk, fetchHex, cowlib, ranch }:
buildErlangMk {
name = "cowboy";
version = "1.0.4";
src = fetchHex {
pkg = "cowboy";
version = "1.0.4";
sha256 =
"6a0edee96885fae3a8dd0ac1f333538a42e807db638a9453064ccfdaa6b9fdac";
};
beamDeps = [ cowlib ranch ];
{ buildErlangMk, fetchHex, cowlib, ranch }:
meta = {
description = ''Small, fast, modular HTTP server written in
Erlang.'';
license = stdenv.lib.licenses.isc;
homepage = "https://github.com/ninenines/cowboy";
};
buildErlangMk {
name = "cowboy";
version = "1.0.4";
src = fetchHex {
pkg = "cowboy";
version = "1.0.4";
sha256 = "6a0edee96885fae3a8dd0ac1f333538a42e807db638a9453064ccfdaa6b9fdac";
};
beamDeps = [ cowlib ranch ];
meta = {
description = ''
Small, fast, modular HTTP server written in Erlang
'';
license = stdenv.lib.licenses.isc;
homepage = https://github.com/ninenines/cowboy;
};
}
</programlisting>
</section>
<section xml:id="mix-packages">
<title>Mix Packages</title>
<para>
Mix functions almost identically to Rebar. The only real
difference is that <literal>buildMix</literal> is called
instead of <literal>buildRebar3</literal>
Mix functions similarly to Rebar3, except we use
<literal>buildMix</literal> instead of <literal>buildRebar3</literal>.
</para>
<programlisting>
{ buildMix, fetchHex, plug, absinthe }:
buildMix {
name = "absinthe_plug";
version = "1.0.0";
src = fetchHex {
pkg = "absinthe_plug";
version = "1.0.0";
sha256 =
"08459823fe1fd4f0325a8bf0c937a4520583a5a26d73b193040ab30a1dfc0b33";
sha256 = "08459823fe1fd4f0325a8bf0c937a4520583a5a26d73b193040ab30a1dfc0b33";
};
beamDeps = [ plug absinthe];
beamDeps = [ plug absinthe ];
meta = {
description = ''A plug for Absinthe, an experimental GraphQL
toolkit'';
description = ''
A plug for Absinthe, an experimental GraphQL toolkit
'';
license = stdenv.lib.licenses.bsd3;
homepage = "https://github.com/CargoSense/absinthe_plug";
homepage = https://github.com/CargoSense/absinthe_plug;
};
}
</programlisting>
<para>
Alternatively, we can use <literal>buildHex</literal> as a shortcut:
</para>
<programlisting>
{ buildHex, buildMix, plug, absinthe }:
buildHex {
name = "absinthe_plug";
version = "1.0.0";
sha256 = "08459823fe1fd4f0325a8bf0c937a4520583a5a26d73b193040ab30a1dfc0b33";
builder = buildMix;
beamDeps = [ plug absinthe ];
meta = {
description = ''
A plug for Absinthe, an experimental GraphQL toolkit
'';
license = stdenv.lib.licenses.bsd3;
homepage = https://github.com/CargoSense/absinthe_plug;
};
}
</programlisting>
@ -185,18 +282,18 @@ $ nix-env -f &quot;&lt;nixpkgs&gt;&quot; -iA beamPackages.ibrowse
</section>
</section>
<section xml:id="how-to-develop">
<title>How to develop</title>
<title>How to Develop</title>
<section xml:id="accessing-an-environment">
<title>Accessing an Environment</title>
<para>
Often, all you want to do is be able to access a valid
environment that contains a specific package and its
dependencies. we can do that with the <literal>env</literal>
part of a derivation. For example, lets say we want to access an
erlang repl with ibrowse loaded up. We could do the following.
Often, we simply want to access a valid environment that contains a
specific package and its dependencies. We can accomplish that with the
<literal>env</literal> attribute of a derivation. For example, let's say
we want to access an Erlang REPL with <literal>ibrowse</literal> loaded
up. We could do the following:
</para>
<programlisting>
~/w/nixpkgs nix-shell -A beamPackages.ibrowse.env --run "erl"
$ nix-shell -A beamPackages.ibrowse.env --run "erl"
Erlang/OTP 18 [erts-7.0] [source] [64-bit] [smp:4:4] [async-threads:10] [hipe] [kernel-poll:false]
Eshell V7.0 (abort with ^G)
@ -237,20 +334,19 @@ $ nix-env -f &quot;&lt;nixpkgs&gt;&quot; -iA beamPackages.ibrowse
2>
</programlisting>
<para>
Notice the <literal>-A beamPackages.ibrowse.env</literal>.That
is the key to this functionality.
Notice the <literal>-A beamPackages.ibrowse.env</literal>. That is the key
to this functionality.
</para>
</section>
<section xml:id="creating-a-shell">
<title>Creating a Shell</title>
<para>
Getting access to an environment often isn't enough to do real
development. Many times we need to create a
<literal>shell.nix</literal> file and do our development inside
of the environment specified by that file. This file looks a lot
like the packaging described above. The main difference is that
<literal>src</literal> points to project root and we call the
package directly.
development. Usually, we need to create a <literal>shell.nix</literal>
file and do our development inside of the environment specified therein.
This file looks a lot like the packaging described above, except that
<literal>src</literal> points to the project root and we call the package
directly.
</para>
<programlisting>
{ pkgs ? import &quot;&lt;nixpkgs&quot;&gt; {} }:
@ -264,18 +360,19 @@ let
name = "hex2nix";
version = "0.1.0";
src = ./.;
erlangDeps = [ ibrowse jsx erlware_commons ];
beamDeps = [ ibrowse jsx erlware_commons ];
};
drv = beamPackages.callPackage f {};
in
drv
drv
</programlisting>
<section xml:id="building-in-a-shell">
<title>Building in a shell</title>
<title>Building in a Shell (for Mix Projects)</title>
<para>
We can leveral the support of the Derivation, regardless of
which build Derivation is called by calling the commands themselv.s
We can leverage the support of the derivation, irrespective of the build
derivation, by calling the commands themselves.
</para>
<programlisting>
# =============================================================================
@ -335,42 +432,43 @@ analyze: build plt
</programlisting>
<para>
If you add the <literal>shell.nix</literal> as described and
user rebar as follows things should simply work. Aside from the
Using a <literal>shell.nix</literal> as described (see <xref
linkend="creating-a-shell"/>) should just work. Aside from
<literal>test</literal>, <literal>plt</literal>, and
<literal>analyze</literal> the talks work just fine for all of
the build Derivations.
<literal>analyze</literal>, the Make targets work just fine for all of the
build derivations.
</para>
</section>
</section>
</section>
<section xml:id="generating-packages-from-hex-with-hex2nix">
<title>Generating Packages from Hex with Hex2Nix</title>
<title>Generating Packages from Hex with <literal>hex2nix</literal></title>
<para>
Updating the Hex packages requires the use of the
<literal>hex2nix</literal> tool. Given the path to the Erlang
modules (usually
<literal>pkgs/development/erlang-modules</literal>). It will
happily dump a file called
<literal>hex-packages.nix</literal>. That file will contain all
the packages that use a recognized build system in Hex. However,
it can't know whether or not all those packages are buildable.
Updating the <link xlink:href="https://hex.pm">Hex</link> package set
requires <link
xlink:href="https://github.com/erlang-nix/hex2nix">hex2nix</link>. Given the
path to the Erlang modules (usually
<literal>pkgs/development/erlang-modules</literal>), it will dump a file
called <literal>hex-packages.nix</literal>, containing all the packages that
use a recognized build system in <link
xlink:href="https://hex.pm">Hex</link>. It can't be determined, however,
whether every package is buildable.
</para>
<para>
To make life easier for our users, it makes good sense to go
ahead and attempt to build all those packages and remove the
ones that don't build. To do that, simply run the command (in
the root of your <literal>nixpkgs</literal> repository). that follows.
To make life easier for our users, try to build every <link
xlink:href="https://hex.pm">Hex</link> package and remove those that fail.
To do that, simply run the following command in the root of your
<literal>nixpkgs</literal> repository:
</para>
<programlisting>
$ nix-build -A beamPackages
</programlisting>
<para>
That will build every package in
<literal>beamPackages</literal>. Then you can go through and
manually remove the ones that fail. Hopefully, someone will
improve <literal>hex2nix</literal> in the future to automate
that.
That will attempt to build every package in
<literal>beamPackages</literal>. Then manually remove those that fail.
Hopefully, someone will improve <link
xlink:href="https://github.com/erlang-nix/hex2nix">hex2nix</link> in the
future to automate the process.
</para>
</section>
</section>

View file

@ -8,15 +8,48 @@ date: 2016-06-25
You'll get a vim(-your-suffix) in PATH also loading the plugins you want.
Loading can be deferred; see examples.
VAM (=vim-addon-manager) and Pathogen plugin managers are supported.
Vundle, NeoBundle could be your turn.
Vim packages, VAM (=vim-addon-manager) and Pathogen are supported to load
packages.
## dependencies by Vim plugins
## Custom configuration
Adding custom .vimrc lines can be done using the following code:
```
vim_configurable.customize {
name = "vim-with-plugins";
vimrcConfig.customRC = ''
set hidden
'';
}
```
## Vim packages
To store you plugins in Vim packages the following example can be used:
```
vim_configurable.customize {
vimrcConfig.packages.myVimPackage = with pkgs.vimPlugins; {
# loaded on launch
start = [ youcompleteme fugitive ];
# manually loadable by calling `:packadd $plugin-name`
opt = [ phpCompletion elm-vim ];
# To automatically load a plugin when opening a filetype, add vimrc lines like:
# autocmd FileType php :packadd phpCompletion
}
};
```
## VAM
### dependencies by Vim plugins
VAM introduced .json files supporting dependencies without versioning
assuming that "using latest version" is ok most of the time.
## HOWTO
### Example
First create a vim-scripts file having one plugin name per line. Example:

View file

@ -51,6 +51,24 @@ rec {
else { }));
/* `makeOverridable` takes a function from attribute set to attribute set and
injects `override` attibute which can be used to override arguments of
the function.
nix-repl> x = {a, b}: { result = a + b; }
nix-repl> y = lib.makeOverridable x { a = 1; b = 2; }
nix-repl> y
{ override = «lambda»; overrideDerivation = «lambda»; result = 3; }
nix-repl> y.override { a = 10; }
{ override = «lambda»; overrideDerivation = «lambda»; result = 12; }
Please refer to "Nixpkgs Contributors Guide" section
"<pkg>.overrideDerivation" to learn about `overrideDerivation` and caveats
related to its use.
*/
makeOverridable = f: origArgs:
let
ff = f origArgs;

View file

@ -20,8 +20,32 @@ rec {
traceXMLValMarked = str: x: trace (str + builtins.toXML x) x;
# strict trace functions (traced structure is fully evaluated and printed)
/* `builtins.trace`, but the value is `builtins.deepSeq`ed first. */
traceSeq = x: y: trace (builtins.deepSeq x x) y;
/* Like `traceSeq`, but only down to depth n.
* This is very useful because lots of `traceSeq` usages
* lead to an infinite recursion.
*/
traceSeqN = depth: x: y: with lib;
let snip = v: if isList v then noQuotes "[]" v
else if isAttrs v then noQuotes "{}" v
else v;
noQuotes = str: v: { __pretty = const str; val = v; };
modify = n: fn: v: if (n == 0) then fn v
else if isList v then map (modify (n - 1) fn) v
else if isAttrs v then mapAttrs
(const (modify (n - 1) fn)) v
else v;
in trace (generators.toPretty { allowPrettyValues = true; }
(modify depth snip x)) y;
/* `traceSeq`, but the same value is traced and returned */
traceValSeq = v: traceVal (builtins.deepSeq v v);
/* `traceValSeq` but with fixed depth */
traceValSeqN = depth: v: traceSeqN depth v v;
# this can help debug your code as well - designed to not produce thousands of lines
traceShowVal = x: trace (showVal x) x;

View file

@ -90,4 +90,41 @@ rec {
* parsers as well.
*/
toYAML = {}@args: toJSON args;
/* Pretty print a value, akin to `builtins.trace`.
* Should probably be a builtin as well.
*/
toPretty = {
/* If this option is true, attrsets like { __pretty = fn; val = ; }
will use fn to convert val to a pretty printed representation.
(This means fn is type Val -> String.) */
allowPrettyValues ? false
}@args: v: with builtins;
if isInt v then toString v
else if isBool v then (if v == true then "true" else "false")
else if isString v then "\"" + v + "\""
else if null == v then "null"
else if isFunction v then
let fna = functionArgs v;
showFnas = concatStringsSep "," (libAttr.mapAttrsToList
(name: hasDefVal: if hasDefVal then "(${name})" else name)
fna);
in if fna == {} then "<λ>"
else "<λ:{${showFnas}}>"
else if isList v then "[ "
+ libStr.concatMapStringsSep " " (toPretty args) v
+ " ]"
else if isAttrs v then
# apply pretty values if allowed
if attrNames v == [ "__pretty" "val" ] && allowPrettyValues
then v.__pretty v.val
# TODO: there is probably a better representation?
else if v ? type && v.type == "derivation" then "<δ>"
else "{ "
+ libStr.concatStringsSep " " (libAttr.mapAttrsToList
(name: value:
"${toPretty args name} = ${toPretty args value};") v)
+ " }"
else "toPretty: should never happen (v = ${v})";
}

View file

@ -141,6 +141,7 @@
dfoxfranke = "Daniel Fox Franke <dfoxfranke@gmail.com>";
dgonyeo = "Derek Gonyeo <derek@gonyeo.com>";
dipinhora = "Dipin Hora <dipinhora+github@gmail.com>";
disassembler = "Samuel Leathers <disasm@gmail.com>";
dmalikov = "Dmitry Malikov <malikov.d.y@gmail.com>";
DmitryTsygankov = "Dmitry Tsygankov <dmitry.tsygankov@gmail.com>";
dmjio = "David Johnson <djohnson.m@gmail.com>";
@ -467,6 +468,7 @@
rob = "Rob Vermaas <rob.vermaas@gmail.com>";
robberer = "Longrin Wischnewski <robberer@freakmail.de>";
robbinch = "Robbin C. <robbinch33@gmail.com>";
roberth = "Robert Hensing <nixpkgs@roberthensing.nl>";
robgssp = "Rob Glossop <robgssp@gmail.com>";
roblabla = "Robin Lambertz <robinlambertz+dev@gmail.com>";
roconnor = "Russell O'Connor <roconnor@theorem.ca>";
@ -477,6 +479,7 @@
rushmorem = "Rushmore Mushambi <rushmore@webenchanter.com>";
rvl = "Rodney Lorrimar <dev+nix@rodney.id.au>";
rvlander = "Gaëtan André <rvlander@gaetanandre.eu>";
rvolosatovs = "Roman Volosatovs <rvolosatovs@riseup.net";
ryanartecona = "Ryan Artecona <ryanartecona@gmail.com>";
ryansydnor = "Ryan Sydnor <ryan.t.sydnor@gmail.com>";
ryantm = "Ryan Mulligan <ryan@ryantm.com>";

View file

@ -285,6 +285,38 @@ runTests {
expected = builtins.toJSON val;
};
testToPretty = {
expr = mapAttrs (const (generators.toPretty {})) rec {
int = 42;
bool = true;
string = "fnord";
null_ = null;
function = x: x;
functionArgs = { arg ? 4, foo }: arg;
list = [ 3 4 function [ false ] ];
attrs = { foo = null; "foo bar" = "baz"; };
drv = derivation { name = "test"; system = builtins.currentSystem; };
};
expected = rec {
int = "42";
bool = "true";
string = "\"fnord\"";
null_ = "null";
function = "<λ>";
functionArgs = "<λ:{(arg),foo}>";
list = "[ 3 4 ${function} [ false ] ]";
attrs = "{ \"foo\" = null; \"foo bar\" = \"baz\"; }";
drv = "<δ>";
};
};
testToPrettyAllowPrettyValues = {
expr = generators.toPretty { allowPrettyValues = true; }
{ __pretty = v: "«" + v + "»"; val = "foo"; };
expected = "«foo»";
};
# MISC
testOverridableDelayableArgsTest = {

View file

@ -252,6 +252,7 @@
./services/mail/exim.nix
./services/mail/freepops.nix
./services/mail/mail.nix
./services/mail/mailhog.nix
./services/mail/mlmmj.nix
./services/mail/offlineimap.nix
./services/mail/opendkim.nix

View file

@ -55,7 +55,7 @@ with lib;
# same privileges as it would have inside it. This is particularly
# bad in the common case of running as root within the namespace.
#
# Setting the number of allowed userns to 0 effectively disables
# Setting the number of allowed user namespaces to 0 effectively disables
# the feature at runtime. Attempting to create a user namespace
# with unshare will then fail with "no space left on device".
boot.kernel.sysctl."user.max_user_namespaces" = mkDefault 0;

View file

@ -0,0 +1,43 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.services.mailhog;
in {
###### interface
options = {
services.mailhog = {
enable = mkEnableOption "MailHog";
user = mkOption {
type = types.str;
default = "mailhog";
description = "User account under which mailhog runs.";
};
};
};
###### implementation
config = mkIf cfg.enable {
users.extraUsers.mailhog = {
name = cfg.user;
description = "MailHog service user";
};
systemd.services.mailhog = {
description = "MailHog service";
after = [ "network.target" ];
wantedBy = [ "multi-user.target" ];
serviceConfig = {
Type = "simple";
ExecStart = "${pkgs.mailhog}/bin/MailHog";
User = cfg.user;
};
};
};
}

View file

@ -82,7 +82,7 @@ in
after = [ "network.target" ];
wantedBy = [ "multi-user.target" ];
preStart = ''
test -d "${cfg.dataDir}" || {
test -d "${cfg.dataDir}/Plex Media Server" || {
echo "Creating initial Plex data directory in \"${cfg.dataDir}\"."
mkdir -p "${cfg.dataDir}/Plex Media Server"
chown -R ${cfg.user}:${cfg.group} "${cfg.dataDir}"

View file

@ -21,6 +21,8 @@ let
daemon reads in addition to the the user's authorized_keys file.
You can combine the <literal>keys</literal> and
<literal>keyFiles</literal> options.
Warning: If you are using <literal>NixOps</literal> then don't use this
option since it will replace the key required for deployment via ssh.
'';
};

View file

@ -648,34 +648,25 @@ in
services.xserver.xkbDir = mkDefault "${pkgs.xkeyboard_config}/etc/X11/xkb";
system.extraDependencies = [
(pkgs.runCommand "xkb-layouts-exist" {
layouts=cfg.layout;
} ''
missing=()
while read -d , layout
do
[[ -f "${cfg.xkbDir}/symbols/$layout" ]] || missing+=($layout)
done <<< "$layouts,"
if [[ ''${#missing[@]} -eq 0 ]]
then
touch $out
exit 0
fi
system.extraDependencies = singleton (pkgs.runCommand "xkb-layouts-exist" {
inherit (cfg) layout xkbDir;
} ''
sed -n -e ':i /^! \(layout\|variant\) *$/ {
:l; n; /^!/bi; s/^ *\([^ ]\+\).*/\1/p; tl
}' "$xkbDir/rules/base.lst" | grep -qxF "$layout" && exec touch "$out"
cat >&2 <<EOF
cat >&2 <<-EOF
Some of the selected keyboard layouts do not exist:
The selected keyboard layout definition does not exist:
''${missing[@]}
$layout
Set services.xserver.layout to the name of an existing keyboard
layout (check ${cfg.xkbDir}/symbols for options).
Set \`services.xserver.layout' to the name of an existing keyboard
layout (check $xkbDir/rules/base.lst for options).
EOF
exit -1
'')
];
EOF
exit 1
'');
services.xserver.config =
''

View file

@ -11,35 +11,42 @@ import errno
import warnings
import ctypes
libc = ctypes.CDLL("libc.so.6")
import re
def copy_if_not_exists(source, dest):
if not os.path.exists(dest):
shutil.copyfile(source, dest)
def system_dir(generation):
return "/nix/var/nix/profiles/system-%d-link" % (generation)
def system_dir(profile, generation):
if profile:
return "/nix/var/nix/profiles/system-profiles/%s-%d-link" % (profile, generation)
else:
return "/nix/var/nix/profiles/system-%d-link" % (generation)
BOOT_ENTRY = """title NixOS
BOOT_ENTRY = """title NixOS{profile}
version Generation {generation}
linux {kernel}
initrd {initrd}
options {kernel_params}
"""
def write_loader_conf(generation):
def write_loader_conf(profile, generation):
with open("@efiSysMountPoint@/loader/loader.conf.tmp", 'w') as f:
if "@timeout@" != "":
f.write("timeout @timeout@\n")
f.write("default nixos-generation-%d\n" % generation)
if profile:
f.write("default nixos-%s-generation-%d\n" % (profile, generation))
else:
f.write("default nixos-generation-%d\n" % (generation))
if not @editor@:
f.write("editor 0");
os.rename("@efiSysMountPoint@/loader/loader.conf.tmp", "@efiSysMountPoint@/loader/loader.conf")
def profile_path(generation, name):
return os.readlink("%s/%s" % (system_dir(generation), name))
def profile_path(profile, generation, name):
return os.readlink("%s/%s" % (system_dir(profile, generation), name))
def copy_from_profile(generation, name, dry_run=False):
store_file_path = profile_path(generation, name)
def copy_from_profile(profile, generation, name, dry_run=False):
store_file_path = profile_path(profile, generation, name)
suffix = os.path.basename(store_file_path)
store_dir = os.path.basename(os.path.dirname(store_file_path))
efi_file_path = "/efi/nixos/%s-%s.efi" % (store_dir, suffix)
@ -47,22 +54,26 @@ def copy_from_profile(generation, name, dry_run=False):
copy_if_not_exists(store_file_path, "@efiSysMountPoint@%s" % (efi_file_path))
return efi_file_path
def write_entry(generation, machine_id):
kernel = copy_from_profile(generation, "kernel")
initrd = copy_from_profile(generation, "initrd")
def write_entry(profile, generation, machine_id):
kernel = copy_from_profile(profile, generation, "kernel")
initrd = copy_from_profile(profile, generation, "initrd")
try:
append_initrd_secrets = profile_path(generation, "append-initrd-secrets")
append_initrd_secrets = profile_path(profile, generation, "append-initrd-secrets")
subprocess.check_call([append_initrd_secrets, "@efiSysMountPoint@%s" % (initrd)])
except FileNotFoundError:
pass
entry_file = "@efiSysMountPoint@/loader/entries/nixos-generation-%d.conf" % (generation)
generation_dir = os.readlink(system_dir(generation))
if profile:
entry_file = "@efiSysMountPoint@/loader/entries/nixos-%s-generation-%d.conf" % (profile, generation)
else:
entry_file = "@efiSysMountPoint@/loader/entries/nixos-generation-%d.conf" % (generation)
generation_dir = os.readlink(system_dir(profile, generation))
tmp_path = "%s.tmp" % (entry_file)
kernel_params = "systemConfig=%s init=%s/init " % (generation_dir, generation_dir)
with open("%s/kernel-params" % (generation_dir)) as params_file:
kernel_params = kernel_params + params_file.read()
with open(tmp_path, 'w') as f:
f.write(BOOT_ENTRY.format(generation=generation,
f.write(BOOT_ENTRY.format(profile=" [" + profile + "]" if profile else "",
generation=generation,
kernel=kernel,
initrd=initrd,
kernel_params=kernel_params))
@ -77,29 +88,33 @@ def mkdir_p(path):
if e.errno != errno.EEXIST or not os.path.isdir(path):
raise
def get_generations(profile):
def get_generations(profile=None):
gen_list = subprocess.check_output([
"@nix@/bin/nix-env",
"--list-generations",
"-p",
"/nix/var/nix/profiles/%s" % (profile),
"/nix/var/nix/profiles/%s" % ("system-profiles/" + profile if profile else "system"),
"--option", "build-users-group", ""],
universal_newlines=True)
gen_lines = gen_list.split('\n')
gen_lines.pop()
return [ int(line.split()[0]) for line in gen_lines ]
return [ (profile, int(line.split()[0])) for line in gen_lines ]
def remove_old_entries(gens):
slice_start = len("@efiSysMountPoint@/loader/entries/nixos-generation-")
slice_end = -1 * len(".conf")
rex_profile = re.compile("^@efiSysMountPoint@/loader/entries/nixos-(.*)-generation-.*\.conf$")
rex_generation = re.compile("^@efiSysMountPoint@/loader/entries/nixos.*-generation-(.*)\.conf$")
known_paths = []
for gen in gens:
known_paths.append(copy_from_profile(gen, "kernel", True))
known_paths.append(copy_from_profile(gen, "initrd", True))
for path in glob.iglob("@efiSysMountPoint@/loader/entries/nixos-generation-[1-9]*.conf"):
known_paths.append(copy_from_profile(*gen, "kernel", True))
known_paths.append(copy_from_profile(*gen, "initrd", True))
for path in glob.iglob("@efiSysMountPoint@/loader/entries/nixos*-generation-[1-9]*.conf"):
try:
gen = int(path[slice_start:slice_end])
if not gen in gens:
if rex_profile.match(path):
prof = rex_profile.sub(r"\1", path)
else:
prof = "system"
gen = int(rex_generation.sub(r"\1", path))
if not (prof, gen) in gens:
os.unlink(path)
except ValueError:
pass
@ -107,6 +122,14 @@ def remove_old_entries(gens):
if not path in known_paths:
os.unlink(path)
def get_profiles():
if os.path.isdir("/nix/var/nix/profiles/system-profiles/"):
return [x
for x in os.listdir("/nix/var/nix/profiles/system-profiles/")
if not x.endswith("-link")]
else:
return []
def main():
parser = argparse.ArgumentParser(description='Update NixOS-related systemd-boot files')
parser.add_argument('default_config', metavar='DEFAULT-CONFIG', help='The default NixOS config to boot')
@ -141,12 +164,14 @@ def main():
mkdir_p("@efiSysMountPoint@/efi/nixos")
mkdir_p("@efiSysMountPoint@/loader/entries")
gens = get_generations("system")
gens = get_generations()
for profile in get_profiles():
gens += get_generations(profile)
remove_old_entries(gens)
for gen in gens:
write_entry(gen, machine_id)
if os.readlink(system_dir(gen)) == args.default_config:
write_loader_conf(gen)
write_entry(*gen, machine_id)
if os.readlink(system_dir(*gen)) == args.default_config:
write_loader_conf(*gen)
# Since fat32 provides little recovery facilities after a crash,
# it can leave the system in an unbootable state, when a crash/outage

View file

@ -72,6 +72,12 @@ in rec {
(all nixos.tests.ecryptfs)
(all nixos.tests.ipv6)
(all nixos.tests.i3wm)
(all nixos.tests.keymap.azerty)
(all nixos.tests.keymap.colemak)
(all nixos.tests.keymap.dvorak)
(all nixos.tests.keymap.dvp)
(all nixos.tests.keymap.neo)
(all nixos.tests.keymap.qwertz)
(all nixos.tests.plasma5)
#(all nixos.tests.lightdm)
(all nixos.tests.login)

View file

@ -24,7 +24,7 @@ let
user = nodes.machine.config.users.extraUsers.alice;
in ''
startAll;
$machine->waitForText(qr/ALICE/);
$machine->waitForText(qr/select your user/i);
$machine->screenshot("sddm");
$machine->sendChars("${user.password}\n");
$machine->waitForFile("/home/alice/.Xauthority");

View file

@ -0,0 +1,27 @@
{ stdenv, fetchFromGitHub, pythonPackages, mopidy }:
pythonPackages.buildPythonApplication rec {
name = "mopidy-local-images-${version}";
version = "1.0.0";
src = fetchFromGitHub {
owner = "mopidy";
repo = "mopidy-local-images";
rev = "v${version}";
sha256 = "0gdqxws0jish50mmi57mlqcs659wrllzv00czl18niz94vzvyc0d";
};
propagatedBuildInputs = [
mopidy
pythonPackages.pykka
pythonPackages.uritools
];
meta = with stdenv.lib; {
homepage = "https://github.com/mopidy/mopidy-local-images";
description = "Mopidy local library proxy extension for handling embedded album art";
license = licenses.asl20;
maintainers = [ maintainers.rvolosatovs ];
};
}

View file

@ -8,7 +8,7 @@ let
# Please update the stable branch!
# Latest version number can be found at:
# http://repository-origin.spotify.com/pool/non-free/s/spotify-client/
version = "1.0.55.487.g256699aa-16";
version = "1.0.57.474.gca9c9538-30";
deps = [
alsaLib
@ -53,7 +53,7 @@ stdenv.mkDerivation {
src = fetchurl {
url = "https://repository-origin.spotify.com/pool/non-free/s/spotify-client/spotify-client_${version}_amd64.deb";
sha256 = "09rhm0jp5prcvyf8zpw4pl422yiy8nkazcjc3lv61ngpznk3n1r0";
sha256 = "fe46f2084c45c756bee366f744d2821d79e82866b19942e30bb2a20c1e597437";
};
buildInputs = [ dpkg makeWrapper ];

View file

@ -1,13 +1,13 @@
{ stdenv, fetchurl, makeWrapper, jre, cpio, gawk, gnugrep, gnused, procps, swt, gtk2, glib, libXtst }:
stdenv.mkDerivation rec {
version = "4.8.2";
version = "4.8.3";
rev = "1"; #tracks unversioned changes that occur on download.code42.com from time to time
name = "crashplan-${version}-r${rev}";
src = fetchurl {
url = "https://download.code42.com/installs/linux/install/CrashPlan/CrashPlan_${version}_Linux.tgz";
sha256 = "0wh8lcm06ilcyncnp4ckg4yhyf9z3gb6v1kr111j4bpgmnd0v1yf";
sha256 = "c25d87ec1d442a396b668547e39b70d66dcfe02250cc57a25916ebb42a407113";
};
meta = with stdenv.lib; {

View file

@ -1221,10 +1221,10 @@
metar = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "metar";
version = "0.2";
version = "0.3";
src = fetchurl {
url = "https://elpa.gnu.org/packages/metar-0.2.el";
sha256 = "0rfzq79llh6ixw02kjpn8s2shxrabvfvsq48pagwak1jl2s0askf";
url = "https://elpa.gnu.org/packages/metar-0.3.el";
sha256 = "07gv0v0xwb5yzynwagmvf0n5c9wljy1jg4ympnxpa2d9r1zqc02g";
};
packageRequires = [ cl-lib ];
meta = {
@ -1445,10 +1445,10 @@
}) {};
org = callPackage ({ elpaBuild, fetchurl, lib }: elpaBuild {
pname = "org";
version = "20170606";
version = "20170622";
src = fetchurl {
url = "https://elpa.gnu.org/packages/org-20170606.tar";
sha256 = "0m2gln3wz9v3aflyxxy2317808yy05rrzrjx35spw2d90d10hmkz";
url = "https://elpa.gnu.org/packages/org-20170622.tar";
sha256 = "0922lcbr2r7bkswljqzbm5y3ny1n67qfrmf7h7z9hsw2wy0505dp";
};
packageRequires = [];
meta = {
@ -1771,10 +1771,10 @@
soap-client = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "soap-client";
version = "3.1.2";
version = "3.1.3";
src = fetchurl {
url = "https://elpa.gnu.org/packages/soap-client-3.1.2.tar";
sha256 = "0crfpp2ksqvzf2j3q44qq6z8zh1r10q9kw12cxbmjiih89q01b68";
url = "https://elpa.gnu.org/packages/soap-client-3.1.3.tar";
sha256 = "1s5m6dc7z532wchdih2ax2a791khyajjxb2xaw5rklk47yc5v3nk";
};
packageRequires = [ cl-lib ];
meta = {
@ -2100,14 +2100,15 @@
license = lib.licenses.free;
};
}) {};
websocket = callPackage ({ elpaBuild, fetchurl, lib }: elpaBuild {
websocket = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib }:
elpaBuild {
pname = "websocket";
version = "1.8";
src = fetchurl {
url = "https://elpa.gnu.org/packages/websocket-1.8.tar";
sha256 = "0dcxmnnm8z7cvsc7nkb822a1g6w03klp7cijjnfq0pz84p3w9cd9";
};
packageRequires = [];
packageRequires = [ cl-lib ];
meta = {
homepage = "https://elpa.gnu.org/packages/websocket.html";
license = lib.licenses.free;

File diff suppressed because it is too large Load diff

View file

@ -216,8 +216,8 @@
src = fetchFromGitHub {
owner = "yaruopooner";
repo = "ac-clang";
rev = "8fdfbbebf096017ab45cedcff2c43a0a5d8b9686";
sha256 = "0ik1hh8qs5yjb034zc93fyd6la84mgp6y5gzvpz6rfbjfxy6vf3y";
rev = "ee692f7cde535f317e440a132b8e60b7c5e34dfd";
sha256 = "0zg39brrpgdakb6hbylala6ajja09nhbzqf4xl9nzwc7gzpgfl57";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ffe0485048b85825f5e8ba95917d8c9dc64fe5de/recipes/ac-clang";
@ -527,12 +527,12 @@
ac-php = callPackage ({ ac-php-core, auto-complete, fetchFromGitHub, fetchurl, lib, melpaBuild, yasnippet }:
melpaBuild {
pname = "ac-php";
version = "1.7.8";
version = "1.7.9";
src = fetchFromGitHub {
owner = "xcwen";
repo = "ac-php";
rev = "36e37b21ebcd3d178da4e23a440759bc6b049c7d";
sha256 = "1rs7v5n5rb6gdyxxadg2p8zabh0qxvdmyq9356qk6drx8mnsvq8k";
rev = "e0aaae30e4e5f18390e5d00953db02c1f03c44f6";
sha256 = "1mrk37w88b4843jbghr9i79rbwbzwk8b1wljvzmm6x0q7ldlxmsm";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ac283f1b65c3ba6278e9d3236e5a19734e42b123/recipes/ac-php";
@ -548,12 +548,12 @@
ac-php-core = callPackage ({ dash, emacs, f, fetchFromGitHub, fetchurl, lib, melpaBuild, php-mode, popup, s, xcscope }:
melpaBuild {
pname = "ac-php-core";
version = "1.7.8";
version = "1.7.9";
src = fetchFromGitHub {
owner = "xcwen";
repo = "ac-php";
rev = "36e37b21ebcd3d178da4e23a440759bc6b049c7d";
sha256 = "1rs7v5n5rb6gdyxxadg2p8zabh0qxvdmyq9356qk6drx8mnsvq8k";
rev = "e0aaae30e4e5f18390e5d00953db02c1f03c44f6";
sha256 = "1mrk37w88b4843jbghr9i79rbwbzwk8b1wljvzmm6x0q7ldlxmsm";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ac283f1b65c3ba6278e9d3236e5a19734e42b123/recipes/ac-php-core";
@ -1837,12 +1837,12 @@
async = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
melpaBuild {
pname = "async";
version = "1.9.1";
version = "1.9.2";
src = fetchFromGitHub {
owner = "jwiegley";
repo = "emacs-async";
rev = "666066d30a420d86801d8380f5991f2b82471107";
sha256 = "1hjyac7dm0yvg5y32fii6508wwhl5q493i8ikf3fszafz03nc6sc";
rev = "d6222c2959caaca5c4980038756097da8a51e505";
sha256 = "1w7crkgi2k97zxdqv2k6a88kmz75s5v7p7n8bw8v18dvxx9sfisn";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/async";
@ -1900,12 +1900,12 @@
auctex-latexmk = callPackage ({ auctex, fetchFromGitHub, fetchurl, lib, melpaBuild }:
melpaBuild {
pname = "auctex-latexmk";
version = "1.0.1";
version = "1.0.2";
src = fetchFromGitHub {
owner = "tom-tan";
repo = "auctex-latexmk";
rev = "b7053f71f578ffb0d247f8a9e8d5152efd86e096";
sha256 = "0slihygr74vyijnyzssckapscxmdd7zlgrs0wvmpw9hnjzwwzzql";
rev = "4d353522650d7685acbf1d38f7dbc504f734bd84";
sha256 = "0qvscgffmzqk8lkcg3yk91vciim5ygk2m4crk02qn72ipkw5q13m";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/3f48af615c56f093dff417a5d3b705f9993c518f/recipes/auctex-latexmk";
@ -2170,6 +2170,27 @@
license = lib.licenses.free;
};
}) {};
auto-minor-mode = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
melpaBuild {
pname = "auto-minor-mode";
version = "20170620";
src = fetchFromGitHub {
owner = "joewreschnig";
repo = "auto-minor-mode";
rev = "c91c566cbaf8eac1fff0c7d9eef88308a566cc43";
sha256 = "0nq95k2wmq17awjz0kvzwnhpnda0813gdyjzlqpzpqb56092sbif";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b3ab5f048034777551e344101d8415cac92362c8/recipes/auto-minor-mode";
sha256 = "1dpdylrpw1pvlmhh229b3lqs07drx9kdhw4vcv5a48qah14dz6qa";
name = "auto-minor-mode";
};
packageRequires = [ emacs ];
meta = {
homepage = "https://melpa.org/#/auto-minor-mode";
license = lib.licenses.free;
};
}) {};
auto-package-update = callPackage ({ dash, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
melpaBuild {
pname = "auto-package-update";
@ -3460,12 +3481,12 @@
cargo = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, rust-mode }:
melpaBuild {
pname = "cargo";
version = "0.4.0";
version = "0.4.1";
src = fetchFromGitHub {
owner = "kwrooijen";
repo = "cargo.el";
rev = "25ca2fcbd6b664cc7a20b0cccca3adc19e79917a";
sha256 = "1fzrczx1aq0q130qrvzq8dssc1qm5qc9pclsyd3zn27xbn5lsag3";
rev = "b0487f95a7de7a1d6f03cdd05220f633977d65a2";
sha256 = "0r9v7q7hkdw2q3iifyrb6n9jrssz2rcv2xcc7n1nmg1v40av3ijd";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e997b356b009b3d2ab467fe49b79d728a8cfe24b/recipes/cargo";
@ -3817,12 +3838,12 @@
cheat-sh = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
melpaBuild {
pname = "cheat-sh";
version = "1.3";
version = "1.6";
src = fetchFromGitHub {
owner = "davep";
repo = "cheat-sh.el";
rev = "760cff945839a8397d44ac95aeec94cc28a51691";
sha256 = "10rr4bnhq2rjd6bx2r0d3cxa7ixk4la58agg5a83y3z52a673rqv";
rev = "ee9a51f4b2a8b2f26008e00a84b6c344b6664e85";
sha256 = "1hzv0l6vc7zdj93cimmi9rz6i6xsg25yf4rcfqlhcax10bhnjsd0";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ebac62fb3828d81e30145b9948d60e781e20eda2/recipes/cheat-sh";
@ -4459,12 +4480,12 @@
cmake-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
melpaBuild {
pname = "cmake-mode";
version = "3.9.0pre2";
version = "3.9.0pre4";
src = fetchFromGitHub {
owner = "Kitware";
repo = "CMake";
rev = "010b50fda71feaff3abec4d13910f4a4bd1f13b0";
sha256 = "0b77hm5l18fbzphg3wcdzrblbhh65wx7c1b98driky1634kn9j10";
rev = "8fe54172fcb37e39e0f7e506e575bdd8c7171e8d";
sha256 = "0yv4avlzg4wbljdi5yfizmhpsf4m5p7gfc8mx5qx91mvjs71jmam";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/598723893ae4bc2e60f527a072efe6ed9d4e2488/recipes/cmake-mode";
@ -5089,12 +5110,12 @@
company-php = callPackage ({ ac-php-core, cl-lib ? null, company, fetchFromGitHub, fetchurl, lib, melpaBuild }:
melpaBuild {
pname = "company-php";
version = "1.7.8";
version = "1.7.9";
src = fetchFromGitHub {
owner = "xcwen";
repo = "ac-php";
rev = "36e37b21ebcd3d178da4e23a440759bc6b049c7d";
sha256 = "1rs7v5n5rb6gdyxxadg2p8zabh0qxvdmyq9356qk6drx8mnsvq8k";
rev = "e0aaae30e4e5f18390e5d00953db02c1f03c44f6";
sha256 = "1mrk37w88b4843jbghr9i79rbwbzwk8b1wljvzmm6x0q7ldlxmsm";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ac283f1b65c3ba6278e9d3236e5a19734e42b123/recipes/company-php";
@ -5284,12 +5305,12 @@
company-ycmd = callPackage ({ company, dash, deferred, f, fetchFromGitHub, fetchurl, let-alist, lib, melpaBuild, s, ycmd }:
melpaBuild {
pname = "company-ycmd";
version = "1.1";
version = "1.2";
src = fetchFromGitHub {
owner = "abingham";
repo = "emacs-ycmd";
rev = "9f5ad4a20e6bf893491635108adfff71f3c6b590";
sha256 = "08kvbvhx5y3239bzdb1xpr81lfrhjy9xka4kn9dpa5bdxs0xx92w";
rev = "d042a673b4d717c3ca9d641f120bfe16c994c740";
sha256 = "0rxw86xi9xgr0fp6wmd6hgqgqr9flk7p4lcr0052jhlwknj1nrx0";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/company-ycmd";
@ -5998,12 +6019,12 @@
cython-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
melpaBuild {
pname = "cython-mode";
version = "0.25.2";
version = "0.26alpha0";
src = fetchFromGitHub {
owner = "cython";
repo = "cython";
rev = "c9bcf1bed3acf367d6deb0c273cf22db0f18dab2";
sha256 = "16yd296n0nh96pnkjpdbdz4i7ga4j961pkzm3cbnika26xwndx03";
rev = "5528995cc6d138456be9b9d42a422a3c5de7800a";
sha256 = "1fd3335f2ay24nhicncmy1sz0mcdrminphsv630wkifmykarz9zh";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/be9bfabe3f79153cb859efc7c3051db244a63879/recipes/cython-mode";
@ -6878,12 +6899,12 @@
direnv = callPackage ({ dash, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, with-editor }:
melpaBuild {
pname = "direnv";
version = "1.2.0";
version = "1.2.1";
src = fetchFromGitHub {
owner = "wbolster";
repo = "emacs-direnv";
rev = "2cdf87ea96f9a08dee98762b18b5f8a5198ecf63";
sha256 = "172jyl8v4zy9bbha8nndq63x8svn9xqkafkj3q17z289na8iaylh";
rev = "3c632dd1fdf0ad1edb6d9b0a4a09cdbb420c27aa";
sha256 = "0jajqf7ad0x6ca7i051svrc37mr3ww8pvd1832i0k7nf3i8cv867";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5419809ee62b920463e359c8e1314cd0763657c1/recipes/direnv";
@ -8100,12 +8121,12 @@
ein = callPackage ({ cl-generic, dash, deferred, fetchFromGitHub, fetchurl, lib, melpaBuild, request, websocket }:
melpaBuild {
pname = "ein";
version = "0.12.7";
version = "0.12.8";
src = fetchFromGitHub {
owner = "millejoh";
repo = "emacs-ipython-notebook";
rev = "334bb4600051d96d5eb82655e6e2c2ef926e701e";
sha256 = "07h3za6cwznmgwm5854yyc3paidbjlpwsj71ii7qlga7j00b7ak2";
rev = "2dcec6a2c4d3258a92f77a35de1899cc00d2f537";
sha256 = "0n8qvdj88d679ijjqs04cnnhz8prk8s3whijbp3lhlr5n034n8xa";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/215e163755fe391ce1f049622e7b9bf9a8aea95a/recipes/ein";
@ -9571,12 +9592,12 @@
erlang = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
melpaBuild {
pname = "erlang";
version = "20.0pre2";
version = "20.0";
src = fetchFromGitHub {
owner = "erlang";
repo = "otp";
rev = "d106c5fffb3832fffbdf99cca905390fe15d489f";
sha256 = "14hgl356fjkbx056fqhjif4kjs05ih08r9mi9qj58k0hxpva2l8c";
rev = "040bdce67f88d833bfb59adae130a4ffb4c180f0";
sha256 = "12dbay254ivnakwknjn5h55wndb0a0wqx55p156h8hwjhykj2kn0";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/d9cd526f43981e0826af59cdc4bb702f644781d9/recipes/erlang";
@ -10851,11 +10872,11 @@
exiftool = callPackage ({ emacs, fetchgit, fetchurl, lib, melpaBuild }:
melpaBuild {
pname = "exiftool";
version = "0.2";
version = "0.3";
src = fetchgit {
url = "https://git.systemreboot.net/exiftool.el/";
rev = "799076ae62d96e9d502f1189217b04ffdda2dc1a";
sha256 = "0yfa6w0518179v8hzzwrs6swrc1ak1nkyy0a7lkryrw310107j5n";
rev = "8dd70ba5214a73960361a0c6220bb4aa72b9e478";
sha256 = "0sb71bj8djppzac02bpl3v7fy0jlidd4aagg8bmmgyp7zx84xws8";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4835a76909d020781021e747fbc341111a94dbfa/recipes/exiftool";
@ -10955,12 +10976,12 @@
exwm-x = callPackage ({ cl-lib ? null, exwm, fetchFromGitHub, fetchurl, lib, melpaBuild, swiper, switch-window }:
melpaBuild {
pname = "exwm-x";
version = "1.0";
version = "1.1";
src = fetchFromGitHub {
owner = "tumashu";
repo = "exwm-x";
rev = "47952c09e74fc0da3135e7ba0d4fef0eb88f98dc";
sha256 = "14mf388iygirlv7j5db2x5avn70b54mm34kd3y851n6i6yzgz7jw";
rev = "1304aaf6d09323cb519c93167a75000a81e56247";
sha256 = "1bs32nq4y94dpq11326d6180maqrq17a8xjiy9rmc2gcizlv60dg";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a0e6e23bcffdcd1e17c70599c563609050e5de40/recipes/exwm-x";
@ -12243,12 +12264,12 @@
flycheck-ycmd = callPackage ({ dash, emacs, fetchFromGitHub, fetchurl, flycheck, let-alist, lib, melpaBuild, ycmd }:
melpaBuild {
pname = "flycheck-ycmd";
version = "1.1";
version = "1.2";
src = fetchFromGitHub {
owner = "abingham";
repo = "emacs-ycmd";
rev = "9f5ad4a20e6bf893491635108adfff71f3c6b590";
sha256 = "08kvbvhx5y3239bzdb1xpr81lfrhjy9xka4kn9dpa5bdxs0xx92w";
rev = "d042a673b4d717c3ca9d641f120bfe16c994c740";
sha256 = "0rxw86xi9xgr0fp6wmd6hgqgqr9flk7p4lcr0052jhlwknj1nrx0";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/flycheck-ycmd";
@ -13083,12 +13104,12 @@
fsharp-mode = callPackage ({ company, company-quickhelp, dash, fetchFromGitHub, fetchurl, flycheck, lib, melpaBuild, popup, pos-tip, s }:
melpaBuild {
pname = "fsharp-mode";
version = "1.9.7";
version = "1.9.8";
src = fetchFromGitHub {
owner = "rneatherway";
repo = "emacs-fsharp-mode-bin";
rev = "1020b6ccb5bf7d3eccd9e84b7ab293c87528265e";
sha256 = "0qbhl4yzn5q156w1gyapj430sxj4iyzgdwh2f5zyl8q791vad9k3";
rev = "9766952bd7830cb0d319736961af8e42e67d42fe";
sha256 = "1krncbzdhp6kpypaqdn6fhvxhhc1pvy2ayn4w4ljmsd7wx6zazyi";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/dc45611e2b629d8bc5f74555368f964420b79541/recipes/fsharp-mode";
@ -13362,12 +13383,12 @@
geben = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
melpaBuild {
pname = "geben";
version = "1.1.0";
version = "1.1.1";
src = fetchFromGitHub {
owner = "ahungry";
repo = "geben";
rev = "1308c93c1eb6c96c0e322f09fcb784f5df208a04";
sha256 = "0fva9xmwh887d0fdm8id67azs5rjbqk7qpjlwh7nlhrwgxsnzr7d";
rev = "003abd23a7468daa133dfbc7ef85d0d61a0410dc";
sha256 = "15ck23xv3dz9i4w5xd9lkg0c6rlsyxdz465xrpkr77fq9qw0c4dg";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/6f8648609e160f7dcefe4a963e8b00475f2fff78/recipes/geben";
@ -14811,12 +14832,12 @@
govc = callPackage ({ dash, emacs, fetchFromGitHub, fetchurl, json-mode, lib, magit-popup, melpaBuild, s }:
melpaBuild {
pname = "govc";
version = "0.14.0";
version = "0.15.0";
src = fetchFromGitHub {
owner = "vmware";
repo = "govmomi";
rev = "9bfdc5ce62c0585b48b154cc460f8664dcd124c3";
sha256 = "0p00s08fjwh106dag9wyhikzrh0vqd4pzb852b2zrmb7zlhigx65";
rev = "b63044e5f833781eb7b305bc035392480ee06a82";
sha256 = "1p0xnhcm7kx4g9wvy18nnij2wfirp0fccv24jz6v1i9bc64n7zka";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/92d6391318021c63b06fe39b0ca38f667bb45ae9/recipes/govc";
@ -15743,12 +15764,12 @@
helm = callPackage ({ async, emacs, fetchFromGitHub, fetchurl, helm-core, lib, melpaBuild, popup }:
melpaBuild {
pname = "helm";
version = "2.7.1";
version = "2.8.0";
src = fetchFromGitHub {
owner = "emacs-helm";
repo = "helm";
rev = "05a297dda6fe9dc42e04220275b0bf2a37b56582";
sha256 = "04l3sjvy5y7ph9h02y4jlasd98bihqn19ngpf2yhc0k5mdhkww1s";
rev = "70651b7bb2ec750ba408fb704953b3a36f4ca81d";
sha256 = "0qdfvwdvb5axkx8klwvm3v0jjsf9w595jb6dv0ijdyd5qi2rwyil";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7e8bccffdf69479892d76b9336a4bec3f35e919d/recipes/helm";
@ -16079,12 +16100,12 @@
helm-core = callPackage ({ async, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
melpaBuild {
pname = "helm-core";
version = "2.7.1";
version = "2.8.0";
src = fetchFromGitHub {
owner = "emacs-helm";
repo = "helm";
rev = "05a297dda6fe9dc42e04220275b0bf2a37b56582";
sha256 = "04l3sjvy5y7ph9h02y4jlasd98bihqn19ngpf2yhc0k5mdhkww1s";
rev = "70651b7bb2ec750ba408fb704953b3a36f4ca81d";
sha256 = "0qdfvwdvb5axkx8klwvm3v0jjsf9w595jb6dv0ijdyd5qi2rwyil";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ef7a700c5665e6d72cb4cecf7fb5a2dd43ef9bf7/recipes/helm-core";
@ -16331,12 +16352,12 @@
helm-git-grep = callPackage ({ fetchFromGitHub, fetchurl, helm-core, lib, melpaBuild }:
melpaBuild {
pname = "helm-git-grep";
version = "0.9.0";
version = "0.10.1";
src = fetchFromGitHub {
owner = "yasuyk";
repo = "helm-git-grep";
rev = "6ca2fcd44510305cf019815d61bf65eca200c238";
sha256 = "0qmxccwpv7l5lbhv9n7ylikzcggdr99qzci868ghf33p4zhqyrj5";
rev = "744cea07dba6e6a5effbdba83f1b786c78fd86d3";
sha256 = "172m7wbgx9qnv9n1slbzpd9j24p6blddik49z6bq3zdg1vlnf3dv";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/338d28c3fe201a7b2f15793be6d540f44819f4d8/recipes/helm-git-grep";
@ -17192,12 +17213,12 @@
helm-tramp = callPackage ({ emacs, fetchFromGitHub, fetchurl, helm, lib, melpaBuild }:
melpaBuild {
pname = "helm-tramp";
version = "0.4.3";
version = "0.5.3";
src = fetchFromGitHub {
owner = "masasam";
repo = "emacs-helm-tramp";
rev = "0885339369b65bc5d06829d82af734560dc45555";
sha256 = "088bpikbnsaxsjfq896fcg7y9qgvfbq7iwxsh391yc6h46zgarkk";
rev = "89a7564edc6b23ffba52b02353528b9b6285c729";
sha256 = "1fqyhx6cnigh40bgzm745cx47zc6mm8rwrz2ym0vpb5bnng6j4m1";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/855ea20024b606314f8590129259747cac0bcc97/recipes/helm-tramp";
@ -17696,12 +17717,12 @@
hl-todo = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
melpaBuild {
pname = "hl-todo";
version = "1.7.4";
version = "1.8.0";
src = fetchFromGitHub {
owner = "tarsius";
repo = "hl-todo";
rev = "a23312464fc6462d559462a44cd74735e9f73421";
sha256 = "0sy0fjmh1m36ajzfmxa2j9akws5qa8a4f1qmj3wgj9vdqd043mr8";
rev = "961db3116f1396dc4f903e3a59824a40e0bbb6a2";
sha256 = "0w847g7lvzk9br9r73n7rf2ba6wafqrapyigp91f62jicz28lvm1";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7c262f6a1a10e8b3cc30151cad2e34ceb66c6ed7/recipes/hl-todo";
@ -19162,15 +19183,36 @@
license = lib.licenses.free;
};
}) {};
ivy-dired-history = callPackage ({ cl-lib ? null, counsel, fetchFromGitHub, fetchurl, ivy, lib, melpaBuild }:
melpaBuild {
pname = "ivy-dired-history";
version = "1.0";
src = fetchFromGitHub {
owner = "jixiuf";
repo = "ivy-dired-history";
rev = "3604840f85e4ff2d7ecab6233e820cb2ec5c8733";
sha256 = "0slisbnfcdx8jv0p67ag6s4l0m0jmrwcpm5a2jm6sai9x67ayn4l";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ad37f6b04ff45fbffeadefc94db16baa27bcc2ac/recipes/ivy-dired-history";
sha256 = "1vj073k5m0l8rx9iiisikzl053ad9mlhvbk30f5zmw9sw7b9blyl";
name = "ivy-dired-history";
};
packageRequires = [ cl-lib counsel ivy ];
meta = {
homepage = "https://melpa.org/#/ivy-dired-history";
license = lib.licenses.free;
};
}) {};
ivy-erlang-complete = callPackage ({ async, counsel, emacs, erlang, fetchFromGitHub, fetchurl, ivy, lib, melpaBuild }:
melpaBuild {
pname = "ivy-erlang-complete";
version = "0.2.3";
version = "0.2.4";
src = fetchFromGitHub {
owner = "s-kostyaev";
repo = "ivy-erlang-complete";
rev = "2d93b1b0ec1705e449f2e0f43073aacc8f1e3242";
sha256 = "0lrnd5r9ycy2qqggqd0sr6b2w7s28yfm15pgyh0r0rjdxky4a5vm";
rev = "117369f882f81fb9cc88459a4072a2789138c136";
sha256 = "0cy02idvhw459a3rlw2aj8hfmxmy7hx9x5d6g3x9nkv1lxkckn9f";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/ac1b9e350d3f066e4e56202ebb443134d5fc3669/recipes/ivy-erlang-complete";
@ -20171,12 +20213,12 @@
keymap-utils = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, lib, melpaBuild }:
melpaBuild {
pname = "keymap-utils";
version = "2.1.0";
version = "3.0.0";
src = fetchFromGitHub {
owner = "tarsius";
repo = "keymap-utils";
rev = "a4f6ff724eeade5612c01c6f6bf401f264687793";
sha256 = "0jgmw8798g3ikhwnic3fbbjld0hj8fvg50q6x78pngf78ws92mkl";
rev = "0130f32e5ade649dd2738206a80570e450906ef6";
sha256 = "1bq7zihdj67j94yyv6655mcrxhz99szbf2zi64nwsl60bxz0znb8";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c03acebf1462dea36c81d4b9ab41e2e5739be3c3/recipes/keymap-utils";
@ -22082,12 +22124,12 @@
meghanada = callPackage ({ company, emacs, fetchFromGitHub, fetchurl, flycheck, lib, melpaBuild, yasnippet }:
melpaBuild {
pname = "meghanada";
version = "0.7.12";
version = "0.7.13";
src = fetchFromGitHub {
owner = "mopemope";
repo = "meghanada-emacs";
rev = "31c68839bd1de8e79fe7bce6bdeade4bacdbc737";
sha256 = "1hm8w04d0cyy21dnciblz4gg15k5axfvaxx788hfz2pmbp435yni";
rev = "a764751e89ad7bc1717e1d3c6e3b4364b11832d6";
sha256 = "06vd4lvybfa7kwyplavlbfwln6229g7s7pwbamjdvgz48xgiqym1";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4c75c69b2f00be9a93144f632738272c1e375785/recipes/meghanada";
@ -22145,12 +22187,12 @@
merlin = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
melpaBuild {
pname = "merlin";
version = "2.5.4";
version = "2.5.5";
src = fetchFromGitHub {
owner = "the-lambda-church";
repo = "merlin";
rev = "420416f182d2ea2a2285ab4bd22e5898dfb20a83";
sha256 = "101vk16c5wayd51s8w0mvy99bk7q3gm2gz8i8616wa1lmyszjknh";
rev = "957e551140587f0cd83d9186a06fba10a38c6084";
sha256 = "1df6cx7y5i35cmfi5c4b48iys21cszrvlh039cdbkmy6d0pdbvi7";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b1b9bfd3164e62758dc0a3362d85c6627ed7cbf8/recipes/merlin";
@ -23572,12 +23614,12 @@
nix-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
melpaBuild {
pname = "nix-mode";
version = "1.11.9";
version = "1.11.11";
src = fetchFromGitHub {
owner = "NixOS";
repo = "nix";
rev = "5d59ec86d4cf07a705407a9e538869dd25ec7d9d";
sha256 = "0ankhmx4raaims2q0q1yffq5z6hqil01zpj6vynrqi1n7z4rjr90";
rev = "026f4f9ae881d9196422981f1f85fa3137525014";
sha256 = "016c0ghqw7wmgdk47biqc0i4bav2igd5ayh6wr9bygrik81n126z";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/f2b542189cfde5b9b1ebee4625684949b6704ded/recipes/nix-mode";
@ -24349,8 +24391,8 @@
src = fetchFromGitHub {
owner = "OmniSharp";
repo = "omnisharp-emacs";
rev = "7ca20bb808dd51adbd83e0c18885c4300548d032";
sha256 = "0p4adjpa3l6aaz7kd3474aagzfzrnra7mijw4l0himba9ldrh590";
rev = "7070f2a64de65e0446536fb974c940399a4097a3";
sha256 = "1hf93rm0vi37rmcgbf1w1a3gqvzszhs979fa8yhk905wl8zhz08a";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e327c483be04de32638b420c5b4e043d12a2cd01/recipes/omnisharp";
@ -25151,12 +25193,12 @@
org-ref = callPackage ({ dash, emacs, f, fetchFromGitHub, fetchurl, helm, helm-bibtex, hydra, ivy, key-chord, lib, melpaBuild, pdf-tools, s }:
melpaBuild {
pname = "org-ref";
version = "1.1.0";
version = "1.1.1";
src = fetchFromGitHub {
owner = "jkitchin";
repo = "org-ref";
rev = "785765d575ef4c28581f6790e9814d75eaeec4ab";
sha256 = "18f5fppipandbirhhs5jlrk4gl7jxyrswfwr36859433x2wkfj70";
rev = "db6c52f41faba686a378a8c57356a563f5cef496";
sha256 = "0kx6w3zz5gmlmr9bx1mdq1k8ykkbnll6m91z90p6f2xm96j627j6";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/550e4dcef2f74fbd96474561c1cb6c4fd80091fe/recipes/org-ref";
@ -26294,12 +26336,12 @@
parsebib = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
melpaBuild {
pname = "parsebib";
version = "2.2";
version = "2.3.1";
src = fetchFromGitHub {
owner = "joostkremers";
repo = "parsebib";
rev = "621a87d444d9b9c479221fffcd8f7cb5ce2f7717";
sha256 = "14rvqjd24xwp2pvl4r00jvhvq7p2wndpz3yy1ml9yymkkn1p1hnh";
rev = "bc31b627c666df576aa37e21c27a2223b3cb91a3";
sha256 = "1bnqnxkb9dnl0fjrrjx0xn9jsqki2h8ygw3d5dm4bl79smah3qkh";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/c39633957475dcd6a033760ba20a957716cce59c/recipes/parsebib";
@ -26793,6 +26835,27 @@
license = lib.licenses.free;
};
}) {};
pfuture = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
melpaBuild {
pname = "pfuture";
version = "1.1";
src = fetchFromGitHub {
owner = "Alexander-Miller";
repo = "pfuture";
rev = "a6c32c69abdb9b91baf8036b88cc4f477f611bd5";
sha256 = "0ly38dzg754n4s2xs09kaisxs14ikm42d9sjhw9p9xirzqm7zd5j";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/5fb70c9f56a58b5c7a2e8b69b191aa2fc7c9bcc8/recipes/pfuture";
sha256 = "15fr9wkpv8v1p22wz7hsyihq7f807ck105c2crfs8y7capfvs53s";
name = "pfuture";
};
packageRequires = [ emacs ];
meta = {
homepage = "https://melpa.org/#/pfuture";
license = lib.licenses.free;
};
}) {};
ph = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
melpaBuild {
pname = "ph";
@ -27948,12 +28011,12 @@
protobuf-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
melpaBuild {
pname = "protobuf-mode";
version = "3.3.1";
version = "3.3.2";
src = fetchFromGitHub {
owner = "google";
repo = "protobuf";
rev = "49a56da93ff3ab7d9a2252639344ad28db8cdff6";
sha256 = "0rq8q7viyy2nfmk2b0pik4amdndi6z51fww3m0p8a7l4yfkn14wb";
rev = "5532abc15b97f3489183b266b41844306052a3fa";
sha256 = "1a2s66i3ampwa0yc2mj3b743hcryixqhk1vvskzgyzvglv048cn4";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/b4e7f5f641251e17add561991d3bcf1fde23467b/recipes/protobuf-mode";
@ -28491,6 +28554,27 @@
license = lib.licenses.free;
};
}) {};
qt-pro-mode = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
melpaBuild {
pname = "qt-pro-mode";
version = "1.0.0";
src = fetchFromGitHub {
owner = "EricCrosson";
repo = "qt-pro-mode";
rev = "66601441cc728a609765b149ee0d7dcfb74dc8bf";
sha256 = "0azx8a7kwgn5byijgwar2rib9xv2p9w7w3yyb5bk19g3id2f8gdw";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/e9af710be77ccde8ffa5f22168d2c8a06b73dd6a/recipes/qt-pro-mode";
sha256 = "1k3ph9bqvvg6i6n623qrwdpsffs8w9rv9nihmlggb4w30dwqc9nf";
name = "qt-pro-mode";
};
packageRequires = [ emacs ];
meta = {
homepage = "https://melpa.org/#/qt-pro-mode";
license = lib.licenses.free;
};
}) {};
quasi-monochrome-theme = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
melpaBuild {
pname = "quasi-monochrome-theme";
@ -30760,12 +30844,12 @@
shx = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
melpaBuild {
pname = "shx";
version = "0.0.4";
version = "0.0.5";
src = fetchFromGitHub {
owner = "riscy";
repo = "shx-for-emacs";
rev = "8b7de952da37f1c04fa1bdf8f54c1cfb6a7c2a8f";
sha256 = "176rhjyh9f3scbwjkw8h64dbamfcczwjpwv3dpylmjaqzwmfsal3";
rev = "3c3378afcbcf9a6fc30a1386dcc5465c51d312ad";
sha256 = "10i93w01272i1ydf6xjm4yx9xaja0yawd246av05aw8cq6nmai9j";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7a2ff78ae3c4289ebf9e06cdfd8f8082c395a16f/recipes/shx";
@ -31138,12 +31222,12 @@
slstats = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
melpaBuild {
pname = "slstats";
version = "1.7";
version = "1.8";
src = fetchFromGitHub {
owner = "davep";
repo = "slstats.el";
rev = "a2f640f724fee7ecbd1cf28fc78297180cd959bc";
sha256 = "0gzpwcrmlbd7fphgyv6g04wjavd9i3vgn3y1fnh178iswmpsxj62";
rev = "7488623cbe406eaafccc36d293e8c42bbd308085";
sha256 = "1q3zm9qfivbd1k9kjilwvzhlcbzv6dwnd78bfzzkrppbjcpkxz3n";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/fe7c8c241cc6920bbedb6711db63ea28ed633327/recipes/slstats";
@ -32644,22 +32728,22 @@
license = lib.licenses.free;
};
}) {};
switch-window = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
switch-window = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, lib, melpaBuild }:
melpaBuild {
pname = "switch-window";
version = "1.0.0";
version = "1.5.0";
src = fetchFromGitHub {
owner = "dimitri";
repo = "switch-window";
rev = "cd4b06121aa5bac4c4b13b63526a99008def5f2b";
sha256 = "1zpfilcaycj0l2q3zyvpjbwp5j3d9rrkacd5swzlr1n1klvbji48";
rev = "8d37f5660666516ab6c9e6ec1da748ea1669ed4b";
sha256 = "19bszzslzz8rprch0z3h6xa6pjhrwik7j53i4kj33w306d58gi3f";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/7d2204e3b53ade1e400e143ac219f3c7ab63a1e9/recipes/switch-window";
sha256 = "02f0zjvlzms66w1ryhk1cbr4rqwklzvgcjfiicj0lcnqqx61m2k2";
name = "switch-window";
};
packageRequires = [];
packageRequires = [ cl-lib ];
meta = {
homepage = "https://melpa.org/#/switch-window";
license = lib.licenses.free;
@ -33695,12 +33779,12 @@
treemacs = callPackage ({ ace-window, cl-lib ? null, dash, emacs, f, fetchFromGitHub, fetchurl, lib, melpaBuild, pfuture, s }:
melpaBuild {
pname = "treemacs";
version = "1.7";
version = "1.7.5";
src = fetchFromGitHub {
owner = "Alexander-Miller";
repo = "treemacs";
rev = "d5878b0ed6da2a561aa795b31848e31e7c696197";
sha256 = "04d7l0v1s5fxcnr4iqdpb1908bayysga3z0sbcx7ia39kmcnp4l3";
rev = "b517e31c63239d20055462bd8a1b4f594d7351c3";
sha256 = "1k5bph4wmxdz354gxmvbjc3q6rgvqjyqc1mwid24qn9rmnl3v9vd";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a52c2770097fe8968bff7c31ac411b3d9b60972e/recipes/treemacs";
@ -33716,12 +33800,12 @@
treemacs-evil = callPackage ({ evil, fetchFromGitHub, fetchurl, lib, melpaBuild, treemacs }:
melpaBuild {
pname = "treemacs-evil";
version = "1.7";
version = "1.7.5";
src = fetchFromGitHub {
owner = "Alexander-Miller";
repo = "treemacs";
rev = "d5878b0ed6da2a561aa795b31848e31e7c696197";
sha256 = "04d7l0v1s5fxcnr4iqdpb1908bayysga3z0sbcx7ia39kmcnp4l3";
rev = "b517e31c63239d20055462bd8a1b4f594d7351c3";
sha256 = "1k5bph4wmxdz354gxmvbjc3q6rgvqjyqc1mwid24qn9rmnl3v9vd";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/a52c2770097fe8968bff7c31ac411b3d9b60972e/recipes/treemacs-evil";
@ -35527,12 +35611,12 @@
with-editor = callPackage ({ async, dash, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
melpaBuild {
pname = "with-editor";
version = "2.5.10";
version = "2.5.11";
src = fetchFromGitHub {
owner = "magit";
repo = "with-editor";
rev = "8ae3c7aed92842f5988671c1b3350c65c58857e0";
sha256 = "1jy5jxkr99a9qp7abmncaphp0xd3y6m3fflvj3fq1wp33i3f7cfn";
rev = "3385ffdc6faed5a283e26a7ebf89825c700dd395";
sha256 = "1kznr0zv1y6lwsllpksqjzq2f4bc5a99lg19fmifn7w0dhv6fn0m";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/8c52c840dc35f3fd17ec660e113ddbb53aa99076/recipes/with-editor";
@ -36159,8 +36243,8 @@
version = "1.78";
src = fetchhg {
url = "https://www.yatex.org/hgrepos/yatex/";
rev = "c996fbcc2e79";
sha256 = "1ibj0dhpgxa143azr07wkmz86fip247cbk2s5fwj4nrj96z6cw9y";
rev = "e9299b77df1f";
sha256 = "0nnpzcj23q964v4rfxzdll1r95zd6zzqvzcgxh7h603a41r3w1wm";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/04867a574773e8794335a2664d4f5e8b243f3ec9/recipes/yatex";
@ -36197,12 +36281,12 @@
ycmd = callPackage ({ cl-lib ? null, dash, deferred, emacs, fetchFromGitHub, fetchurl, let-alist, lib, melpaBuild, pkg-info, request, request-deferred, s }:
melpaBuild {
pname = "ycmd";
version = "1.1";
version = "1.2";
src = fetchFromGitHub {
owner = "abingham";
repo = "emacs-ycmd";
rev = "9f5ad4a20e6bf893491635108adfff71f3c6b590";
sha256 = "08kvbvhx5y3239bzdb1xpr81lfrhjy9xka4kn9dpa5bdxs0xx92w";
rev = "d042a673b4d717c3ca9d641f120bfe16c994c740";
sha256 = "0rxw86xi9xgr0fp6wmd6hgqgqr9flk7p4lcr0052jhlwknj1nrx0";
};
recipeFile = fetchurl {
url = "https://raw.githubusercontent.com/milkypostman/melpa/4b25378540c64d0214797348579671bf2b8cc696/recipes/ycmd";

View file

@ -1,10 +1,10 @@
{ callPackage }: {
org = callPackage ({ elpaBuild, fetchurl, lib }: elpaBuild {
pname = "org";
version = "20170606";
version = "20170622";
src = fetchurl {
url = "http://orgmode.org/elpa/org-20170606.tar";
sha256 = "11x6s30j6k0y3jfzcp16qyqn48mki9j18iblnpl5dr1bk8kyvd0x";
url = "http://orgmode.org/elpa/org-20170622.tar";
sha256 = "0z4ypv6q4nx4icir69xchzn58xzndnxlkg0v4pb62gqghdxng6vy";
};
packageRequires = [];
meta = {
@ -14,10 +14,10 @@
}) {};
org-plus-contrib = callPackage ({ elpaBuild, fetchurl, lib }: elpaBuild {
pname = "org-plus-contrib";
version = "20170606";
version = "20170622";
src = fetchurl {
url = "http://orgmode.org/elpa/org-plus-contrib-20170606.tar";
sha256 = "0r6a5spzdbx6qdz5aziycmhjxm392v7iifv7mnln4s5lgnsswb1h";
url = "http://orgmode.org/elpa/org-plus-contrib-20170622.tar";
sha256 = "0ix4gmr6y9nrna9sc9cy30533mxlnvlfnf25492ky6dkssbxb10s";
};
packageRequires = [];
meta = {

View file

@ -12,7 +12,7 @@ let
# Sorted alphabetically
buildClion = { name, version, src, license, description, wmClass }:
buildClion = { name, version, src, license, description, wmClass, update-channel }:
lib.overrideDerivation (mkJetBrainsProduct rec {
inherit name version src wmClass jdk;
product = "CLion";
@ -54,7 +54,7 @@ let
'';
});
buildDataGrip = { name, version, src, license, description, wmClass }:
buildDataGrip = { name, version, src, license, description, wmClass, update-channel }:
(mkJetBrainsProduct {
inherit name version src wmClass jdk;
product = "DataGrip";
@ -71,7 +71,7 @@ let
};
});
buildGogland = { name, version, src, license, description, wmClass }:
buildGogland = { name, version, src, license, description, wmClass, update-channel }:
(mkJetBrainsProduct {
inherit name version src wmClass jdk;
product = "Gogland";
@ -89,7 +89,7 @@ let
};
});
buildIdea = { name, version, src, license, description, wmClass }:
buildIdea = { name, version, src, license, description, wmClass, update-channel }:
(mkJetBrainsProduct rec {
inherit name version src wmClass jdk;
product = "IDEA";
@ -106,7 +106,7 @@ let
};
});
buildPhpStorm = { name, version, src, license, description, wmClass }:
buildPhpStorm = { name, version, src, license, description, wmClass, update-channel }:
(mkJetBrainsProduct {
inherit name version src wmClass jdk;
product = "PhpStorm";
@ -123,7 +123,7 @@ let
};
});
buildPycharm = { name, version, src, license, description, wmClass }:
buildPycharm = { name, version, src, license, description, wmClass, update-channel }:
(mkJetBrainsProduct rec {
inherit name version src wmClass jdk;
product = "PyCharm";
@ -150,7 +150,7 @@ let
propagatedUserEnvPkgs = [ python ];
};
buildRider = { name, version, src, license, description, wmClass }:
buildRider = { name, version, src, license, description, wmClass, update-channel }:
lib.overrideDerivation (mkJetBrainsProduct rec {
inherit name version src wmClass jdk;
product = "Rider";
@ -176,7 +176,7 @@ let
'';
});
buildRubyMine = { name, version, src, license, description, wmClass }:
buildRubyMine = { name, version, src, license, description, wmClass, update-channel }:
(mkJetBrainsProduct rec {
inherit name version src wmClass jdk;
product = "RubyMine";
@ -189,7 +189,7 @@ let
};
});
buildWebStorm = { name, version, src, license, description, wmClass }:
buildWebStorm = { name, version, src, license, description, wmClass, update-channel }:
(mkJetBrainsProduct {
inherit name version src wmClass jdk;
product = "WebStorm";
@ -221,18 +221,20 @@ in
sha256 = "045pkbbf4ypk9qkhldz08i7hbc6vaq68a8v9axnpndnvcrf0vf7g";
};
wmClass = "jetbrains-clion";
update-channel = "CLion_Release"; # channel's id as in http://www.jetbrains.com/updates/updates.xml
};
datagrip = buildDataGrip rec {
name = "datagrip-${version}";
version = "2017.1";
version = "2017.1.4"; /* updated by script */
description = "Your Swiss Army Knife for Databases and SQL";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/datagrip/${name}.tar.gz";
sha256 = "91ee6a1e43d75a45ae51829835e457da85262410d89e617324d0239ba5625dfa";
sha256 = "c351e44a176add5b1fc7462e780b3fbe157691c3e23552d9d6b6531ee3830338"; /* updated by script */
};
wmClass = "jetbrains-datagrip";
update-channel = "datagrip_2017_1";
};
gogland = buildGogland rec {
@ -245,6 +247,7 @@ in
sha256 = "0q2f8bi2i49j0xcpn824sihz2015jhn338cjaqy0jd988nxik6jk";
};
wmClass = "jetbrains-gogland";
update-channel = "gogland_1.0_EAP";
};
idea14-community = buildIdea rec {
@ -257,6 +260,7 @@ in
sha256 = "1i4mdjm9dd6zvxlpdgd3bqg45ir0cfc9hl55cdc0hg5qwbz683fz";
};
wmClass = "jetbrains-idea-ce";
update-channel = "IDEA14.1";
};
idea-community = buildIdea rec {
@ -269,6 +273,7 @@ in
sha256 = "1w1knq969dl8rxlkhr9mw8cr2vszn384acwhspimrd3zs9825r45";
};
wmClass = "jetbrains-idea-ce";
update-channel = "IDEA_Release";
};
idea14-ultimate = buildIdea rec {
@ -281,6 +286,7 @@ in
sha256 = "1hhga1i2zbsipgq283gn19kv9n94inhr1bxh2yx19gz7yr4r49d2";
};
wmClass = "jetbrains-idea";
update-channel = "IDEA14.1";
};
idea15-ultimate = buildIdea rec {
@ -293,6 +299,7 @@ in
sha256 = "012aap2qn0jx4x34bdv9ivrsr86vvf683srb5vpj27hc4l6rw6ll";
};
wmClass = "jetbrains-idea";
update-channel = null;
};
idea-ultimate = buildIdea rec {
@ -305,18 +312,20 @@ in
sha256 = "0byrsbsscpzb0syamzpavny879src5dlclnissa7173rh8hgkna4";
};
wmClass = "jetbrains-idea";
update-channel = "IDEA_Release";
};
phpstorm = buildPhpStorm rec {
name = "phpstorm-${version}";
version = "2017.1";
version = "2017.1.4";
description = "Professional IDE for Web and PHP developers";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/webide/PhpStorm-${version}.tar.gz";
sha256 = "1ynffm5x8fqq2r71rr9rbvdifbwbvbhqb2x1hkyy4az38gxal1bm";
sha256 = "0zrbcziznz6dwh56snr27752xcsnl2gsxzi6jiraplkd92f2xlaf";
};
wmClass = "jetbrains-phpstorm";
update-channel = "PS2017.1";
};
phpstorm10 = buildPhpStorm rec {
@ -329,54 +338,59 @@ in
sha256 = "0fi042zvjpg5pn2mnhj3bbrdkl1b9vmhpf2l6ca4nr0rhjjv7dsm";
};
wmClass = "jetbrains-phpstorm";
update-channel = "WI10";
};
pycharm-community = buildPycharm rec {
name = "pycharm-community-${version}";
version = "2017.1.3";
version = "2017.1.4"; /* updated by script */
description = "PyCharm Community Edition";
license = stdenv.lib.licenses.asl20;
src = fetchurl {
url = "https://download.jetbrains.com/python/${name}.tar.gz";
sha256 = "06sai589zli5xaggfk4g0j0grbw9mya9qlwabmxh9414qq3bzvbd";
sha256 = "1e69ab29215a9c8c4626de6727df433ae0d9f6ed46eba2a6f48ffa52c2b04256"; /* updated by script */
};
wmClass = "jetbrains-pycharm-ce";
update-channel = "PyCharm_Release";
};
pycharm-professional = buildPycharm rec {
name = "pycharm-professional-${version}";
version = "2017.1.3";
version = "2017.1.4"; /* updated by script */
description = "PyCharm Professional Edition";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/python/${name}.tar.gz";
sha256 = "1wzgh83504px7q93h9xkarih2qjchiavgysy4di82q7377s6xd0c";
sha256 = "bbae5602b9cf6d26ccce9e1bf8b388d79c27cf89673d1a56f248bf0a50e518ed"; /* updated by script */
};
wmClass = "jetbrains-pycharm";
update-channel = "PyCharm_Release";
};
rider = buildRider rec {
name = "rider-${version}";
version = "171.3655.1246";
version = "171.4456.575"; /* updated by script */
description = "A cross-platform .NET IDE based on the IntelliJ platform and ReSharper";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/resharper/riderRS-${version}.tar.gz";
sha256 = "90f9f8f1919e0f1dad42387f1a308483448323b089c13c409f3dd4d52992266b";
sha256 = "9b7f46e9c800a091f2cdbe9fda08041729e2abc0ce57252731da659b2424707b"; /* updated by script */
};
wmClass = "jetbrains-rider";
update-channel = "rider1.0EAP";
};
ruby-mine = buildRubyMine rec {
name = "ruby-mine-${version}";
version = "2017.1";
version = "2017.1.4";
description = "The Most Intelligent Ruby and Rails IDE";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/ruby/RubyMine-${version}.tar.gz";
sha256 = "6c27f43ddc385ffba2cb2f011b80ab46d9b128d0fccf3b4ea43272fe36401a3a";
sha256 = "06jk0anlnc4gr240i51kam47shdjgda6zg3hglk5w3bpvbyix68z";
};
wmClass = "jetbrains-rubymine";
update-channel = "rm2017.1";
};
ruby-mine7 = buildRubyMine rec {
@ -389,6 +403,7 @@ in
sha256 = "04fcxj1xlap9mxmwf051s926p2darlj5kwl4lms2gy5d8b2lhd5l";
};
wmClass = "jetbrains-rubymine";
update-channel = null;
};
ruby-mine8 = buildRubyMine rec {
@ -401,18 +416,20 @@ in
sha256 = "0hipxib7377232w1jbf8h98bmh0djkllsrq3lq0w3fdxqglma43a";
};
wmClass = "jetbrains-rubymine";
update-channel = null;
};
webstorm = buildWebStorm rec {
name = "webstorm-${version}";
version = "2017.1.3";
version = "2017.1.4";
description = "Professional IDE for Web and JavaScript development";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/webstorm/WebStorm-${version}.tar.gz";
sha256 = "0g4b0x910231ljdj18lnj2mlzmzyl12lv3fsbsz6v45i1kwpwnvc";
sha256 = "0aw2728wknss5vn2fkgz8rkm5vwk031305f32dirfrh51bvmq2zm";
};
wmClass = "jetbrains-webstorm";
update-channel = "WS_Release";
};
webstorm10 = buildWebStorm rec {
@ -425,6 +442,7 @@ in
sha256 = "0a5s6f99wyql5pgjl94pf4ljdbviik3b8dbr1s6b7c6jn1gk62ic";
};
wmClass = "jetbrains-webstorm";
update-channel = null;
};
webstorm11 = buildWebStorm rec {
@ -437,5 +455,6 @@ in
sha256 = "17agyqdyz6naxyx6p0y240ar93gja0ypw01nm2qmfzvh7ch03r24";
};
wmClass = "jetbrains-webstorm";
update-channel = null;
};
}

View file

@ -0,0 +1,74 @@
#!/usr/bin/env nix-shell
#!nix-shell -i perl -p perl perlPackages.LWPProtocolhttps perlPackages.FileSlurp
use strict;
use List::Util qw(reduce);
use File::Slurp;
use LWP::Simple;
sub semantic_less {
my ($a, $b) = @_;
$a =~ s/\b(\d+)\b/sprintf("%010s", $1)/eg;
$b =~ s/\b(\d+)\b/sprintf("%010s", $1)/eg;
return $a lt $b;
}
sub get_latest_versions {
my @channels = get("http://www.jetbrains.com/updates/updates.xml") =~ /(<channel .+?<\/channel>)/gs;
my %h = {};
for my $ch (@channels) {
my ($id) = $ch =~ /^<channel id="([^"]+)"/;
my @builds = $ch =~ /(<build .+?<\/build>)/gs;
my $latest_build = reduce {
my ($aversion) = $a =~ /^<build [^>]*version="([^"]+)"/; die "no version in $a" unless $aversion;
my ($bversion) = $b =~ /^<build [^>]*version="([^"]+)"/; die "no version in $b" unless $bversion;
semantic_less($aversion, $bversion) ? $b : $a;
} @builds;
next unless $latest_build;
# version as in download url
my ($latest_version) = $latest_build =~ /^<build [^>]*version="([^"]+)"/;
($latest_version) = $latest_build =~ /^<build [^>]*fullNumber="([^"]+)"/ if $latest_version =~ / /;
$h{$id} = $latest_version;
}
return %h;
}
my %latest_versions = get_latest_versions();
#for my $ch (sort keys %latest_versions) {
# print("$ch $latest_versions{$ch}\n");
#}
sub update_nix_block {
my ($block) = @_;
my ($channel) = $block =~ /update-channel\s*=\s*"([^"]+)"/;
if ($channel) {
die "unknown update-channel $channel" unless $latest_versions{$channel};
my ($version) = $block =~ /version\s*=\s*"([^"]+)"/;
die "no version in $block" unless $version;
if ($version eq $latest_versions{$channel}) {
print("$channel is up to date at $version\n");
} else {
print("updating $channel: $version -> $latest_versions{$channel}\n");
my ($url) = $block =~ /url\s*=\s*"([^"]+)"/;
# try to interpret some nix
my ($name) = $block =~ /name\s*=\s*"([^"]+)"/;
$name =~ s/\$\{version\}/$latest_versions{$channel}/;
$url =~ s/\$\{name\}/$name/;
$url =~ s/\$\{version\}/$latest_versions{$channel}/;
die "$url still has some interpolation" if $url =~ /\$/;
my ($sha256) = get("$url.sha256") =~ /^([0-9a-f]{64})/;
die "invalid sha256 in $url.sha256" unless $sha256;
$block =~ s#version\s*=\s*"([^"]+)".+$#version = "$latest_versions{$channel}"; /* updated by script */#m;
$block =~ s#sha256\s*=\s*"([^"]+)".+$#sha256 = "$sha256"; /* updated by script */#m;
}
}
return $block;
}
my $nix = read_file 'default.nix';
$nix =~ s/(= build\w+ rec \{.+?\n \};\n)/update_nix_block($1)/gse;
write_file 'default.nix', $nix;

View file

@ -5,13 +5,13 @@ let
# qtEnv = with qt5; env "qt-${qtbase.version}" [ qtbase qttools ];
in stdenv.mkDerivation rec {
name = "tiled-${version}";
version = "0.18.2";
version = "1.0.1";
src = fetchFromGitHub {
owner = "bjorn";
repo = "tiled";
rev = "v${version}";
sha256 = "087jl36g6w2g5l70gz573iwyvx3r7i8fijl3y4mmmf8pyqdyq1n2";
sha256 = "062ja3j84v5s4qslp01gqif8c6i1klkkxpxyyrrvjhxmbyn6nmgd";
};
nativeBuildInputs = [ pkgconfig qmake ];

View file

@ -1,19 +1,19 @@
{ mkDerivation, lib, fetchurl, cmake, extra-cmake-modules
{ mkDerivation, lib, fetchurl, fetchpatch, cmake, extra-cmake-modules
, karchive, kconfig, kwidgetsaddons, kcompletion, kcoreaddons
, kguiaddons, ki18n, kitemmodels, kitemviews, kwindowsystem
, kio, kcrash
, boost, libraw, fftw, eigen, exiv2, lcms2, gsl, openexr
, openjpeg, opencolorio, vc, poppler_qt5, curl, ilmbase
, qtmultimedia, qtx11extras
}:
mkDerivation rec {
name = "krita-${version}";
ver_min = "3.1.3";
version = "${ver_min}";
version = "3.1.4";
src = fetchurl {
url = "http://download.kde.org/stable/krita/${ver_min}/${name}.tar.gz";
sha256 = "125js6c8aw4bqhs28pwnl3rbgqx5yx4zsklw7bfdhy3vf6lrysw1";
url = "http://download.kde.org/stable/krita/${version}/${name}.tar.gz";
sha256 = "1al27v17s70hihk2mcmz3l2g6rl9qzpxaifapdfpkyias6q3f63l";
};
nativeBuildInputs = [ cmake extra-cmake-modules ];
@ -23,6 +23,14 @@ mkDerivation rec {
ki18n kitemmodels kitemviews kwindowsystem kio kcrash
boost libraw fftw eigen exiv2 lcms2 gsl openexr
openjpeg opencolorio vc poppler_qt5 curl ilmbase
qtmultimedia qtx11extras
];
patches = [
(fetchpatch {
url = "https://github.com/KDE/krita/commit/2f59d0d1.patch";
sha256 = "0sdlcjn6i3faln3c0aczw3pg4pvmccgszmy8n914mgsccrqrazlr";
})
];
NIX_CFLAGS_COMPILE = [ "-I${ilmbase.dev}/include/OpenEXR" ];

View file

@ -2054,7 +2054,7 @@
version = "17.04.2";
src = fetchurl {
url = "${mirror}/stable/applications/17.04.2/src/marble-17.04.2.tar.xz";
sha256 = "1z24infjp65d2s2zlcvr0v9425a6wxwkaz262mvqqvx64qmhd6ca";
sha256 = "1c6xmpkqilxd9zxz8kz7g47hwsa4hw27qcy96wxcg24hg8b5zr09";
name = "marble-17.04.2.tar.xz";
};
};

View file

@ -5,29 +5,23 @@
}:
stdenv.mkDerivation rec {
version = "2.84.0";
version = "3.1.1";
name = "calibre-${version}";
src = fetchurl {
url = "https://download.calibre-ebook.com/${version}/${name}.tar.xz";
sha256 = "1kvnmb6hsby4bdnx70bcy32f4dz1axzlr310dr6mkvnc8bqw59km";
sha256 = "1lh1gz0915r49igfhy1icz79qx36s3d8m32qlih0g3zn7jahp86g";
};
patches = [
# Patches from Debian that:
# - disable plugin installation (very insecure)
# - disables loading of web bug for privacy
# - switches the version update from enabled to disabled by default
(fetchpatch {
name = "disable_plugins.patch";
url = "http://bazaar.launchpad.net/~calibre-packagers/calibre/debian/download/head:/disable_plugins.py-20111220183043-dcl08ccfagjxt1dv-1/disable_plugins.py";
sha256 = "19spdx52dhbrfn9lm084yl3cfwm6f90imd51k97sf7flmpl569pk";
})
(fetchpatch {
name = "links_privacy.patch";
url = "http://bazaar.launchpad.net/~calibre-packagers/calibre/debian/download/head:/linksprivacy.patch-20160417214308-6hvive72pc0r4awc-1/links-privacy.patch";
sha256 = "0f6pq2b7q56pxrq2j8yqd7bksc623q2zgq29qcli30f13vga1w60";
})
(fetchpatch {
name = "no_updates_dialog.patch";
url = "http://bazaar.launchpad.net/~calibre-packagers/calibre/debian/download/head:/no_updates_dialog.pa-20081231120426-rzzufl0zo66t3mtc-16/no_updates_dialog.patch";
@ -57,6 +51,7 @@ stdenv.mkDerivation rec {
] ++ (with python2Packages; [
apsw cssselect cssutils dateutil lxml mechanize netifaces pillow
python pyqt5 sip
regex msgpack
# the following are distributed with calibre, but we use upstream instead
chardet cherrypy html5lib_0_9999999 odfpy routes
]);

View file

@ -1,34 +1,12 @@
diff --git a/setup/extensions.json b/setup/extensions.json
index 1f6d1fb..1273904 100644
--- a/setup/extensions.json
+++ b/setup/extensions.json
@@ -211,16 +211,5 @@
"sources": "calibre/devices/mtp/unix/devices.c calibre/devices/mtp/unix/libmtp.c",
"headers": "calibre/devices/mtp/unix/devices.h calibre/devices/mtp/unix/upstream/music-players.h calibre/devices/mtp/unix/upstream/device-flags.h",
"libraries": "mtp"
- },
- {
- "name": "unrar",
- "sources": "unrar/rar.cpp unrar/strlist.cpp unrar/strfn.cpp unrar/pathfn.cpp unrar/savepos.cpp unrar/smallfn.cpp unrar/global.cpp unrar/file.cpp unrar/filefn.cpp unrar/filcreat.cpp unrar/archive.cpp unrar/arcread.cpp unrar/unicode.cpp unrar/system.cpp unrar/isnt.cpp unrar/crypt.cpp unrar/crc.cpp unrar/rawread.cpp unrar/encname.cpp unrar/resource.cpp unrar/match.cpp unrar/timefn.cpp unrar/rdwrfn.cpp unrar/consio.cpp unrar/options.cpp unrar/ulinks.cpp unrar/errhnd.cpp unrar/rarvm.cpp unrar/secpassword.cpp unrar/rijndael.cpp unrar/getbits.cpp unrar/sha1.cpp unrar/extinfo.cpp unrar/extract.cpp unrar/volume.cpp unrar/list.cpp unrar/find.cpp unrar/unpack.cpp unrar/cmddata.cpp unrar/filestr.cpp unrar/scantree.cpp calibre/utils/unrar.cpp",
- "inc_dirs": "unrar",
- "defines": "SILENT RARDLL UNRAR _FILE_OFFSET_BITS=64 _LARGEFILE_SOURCE",
- "windows_defines": "SILENT RARDLL UNRAR",
- "haiku_defines": "LITTLE_ENDIAN SILENT RARDLL UNRAR _FILE_OFFSET_BITS=64 _LARGEFILE_SOURCE _BSD_SOURCE",
- "haiku_libraries": "bsd",
- "optimize_level": 2,
- "windows_libraries": "User32 Advapi32 kernel32 Shell32"
}
]
diff --git a/src/calibre/ebooks/metadata/archive.py b/src/calibre/ebooks/metadata/archive.py
index 938ab24..1e095f8 100644
--- a/src/calibre/ebooks/metadata/archive.py
+++ b/src/calibre/ebooks/metadata/archive.py
@@ -44,7 +44,7 @@ class ArchiveExtract(FileTypePlugin):
description = _('Extract common e-book formats from archives '
'(zip/rar) files. Also try to autodetect if they are actually '
'cbz/cbr files.')
@@ -44,7 +44,7 @@
description = _('Extract common e-book formats from archive files '
'(ZIP/RAR). Also try to autodetect if they are actually '
'CBZ/CBR files.')
- file_types = set(['zip', 'rar'])
+ file_types = set(['zip'])
supported_platforms = ['windows', 'osx', 'linux']
on_import = True

View file

@ -14,7 +14,7 @@ python2Packages.buildPythonApplication rec {
ecdsa
jsonrpclib
pbkdf2
protobuf3_0
protobuf3_2
pyaes
pycrypto
pyqt4

View file

@ -2,15 +2,15 @@
buildGoPackage rec {
name = "hugo-${version}";
version = "0.23";
version = "0.24.1";
goPackagePath = "github.com/gohugoio/hugo";
src = fetchFromGitHub {
owner = "spf13";
owner = "gohugoio";
repo = "hugo";
rev = "v${version}";
sha256 = "0phw5pcmrmryxb83jzifhqh3vx20qiwh4dkk802v38fw07z1hvki";
sha256 = "0zphxi11rny6wh1ysz7508fdrsbxj3n138q2bkkqaz0rrdab710a";
};
goDeps = ./deps.nix;

View file

@ -4,8 +4,8 @@
fetch = {
type = "git";
url = "https://github.com/BurntSushi/toml";
rev = "b26d9c308763d68093482582cea63d69be07a0f0";
sha256 = "0k7v2i1d2d6si8gswn83qb84czhhia53v2wdy33yz9ppdidxk0ry";
rev = "8fb9fdc4f82fd3495b9086c911b86cc3d50cb7ab";
sha256 = "0igg0cwc0cihsxrii203h1r5y2lmaclc164cjhyv2hpfsvb11zlg";
};
}
{
@ -58,8 +58,8 @@
fetch = {
type = "git";
url = "https://github.com/cpuguy83/go-md2man";
rev = "bcc0a711c5e6bbe72c7cb13d81c7109b45267fd2";
sha256 = "097l5ln1b08x5hc41qhiybzlyjfcm6kjllgv6pgsgxlx8irz459j";
rev = "23709d0847197db6021a51fdb193e66e9222d4e7";
sha256 = "1a87v4cnd5y5whcdkjcqjpg1s5pxqhrspdxrsk2af49zsw9fsj9f";
};
}
{
@ -76,8 +76,8 @@
fetch = {
type = "git";
url = "https://github.com/eknkc/amber";
rev = "f0d8fdb67f9f4a2c0d02fb6ce4830b8b6754de10";
sha256 = "148q8ng5kzv1n8wz5dx9fjhz7kz1l34n8vmksnfwhnqg82b77vsy";
rev = "5fa7895500976542b0e28bb266f42ff1c7ce07f5";
sha256 = "1mviw7ivw5yj1w6f8mfwaxpmbdl8c7n2wrpxnqkbcs8snpi0f6wq";
};
}
{
@ -220,8 +220,8 @@
fetch = {
type = "git";
url = "https://github.com/pelletier/go-toml";
rev = "26ae43fdeeea7db6778850f76cc828b232da1e13";
sha256 = "06gz20ywqbsy4sfsjjay60y7km9m07l9qvmarr7fldqfi8xgl1f4";
rev = "fe7536c3dee2596cdd23ee9976a17c22bdaae286";
sha256 = "0h5ri6sj755v1vrgcb7wdp6c15vdgq8wydpzgphggz4pl535b0h6";
};
}
{
@ -283,8 +283,8 @@
fetch = {
type = "git";
url = "https://github.com/spf13/cobra";
rev = "ca57f0f5dba473a8a58765d16d7e811fb8027add";
sha256 = "1lycnfkby5c7aamvwgxwq6ivzyvd8r761zkdignww1rmnqmiwd2h";
rev = "b4dbd37a01839e0653eec12aa4bbb2a2ce7b2a37";
sha256 = "1bgdjikafz58403qpdrqhmi3p99gc5gipibmhfw0hj2xzijb01kx";
};
}
{
@ -328,8 +328,8 @@
fetch = {
type = "git";
url = "https://github.com/spf13/viper";
rev = "0967fc9aceab2ce9da34061253ac10fb99bba5b2";
sha256 = "016syis0rvccp2indjqi1vnz3wk7c9dhkvkgam0j79sb019kl80f";
rev = "c1de95864d73a5465492829d7cb2dd422b19ac96";
sha256 = "0fvx40qhzzfw5nq4hl3sxqik6qdd8l9jcmzm6f9r9p605n2dakqm";
};
}
{
@ -337,8 +337,8 @@
fetch = {
type = "git";
url = "https://github.com/stretchr/testify";
rev = "4d4bfba8f1d1027c4fdbe371823030df51419987";
sha256 = "1d3yz1d2s88byjzmn60jbi1m9s552f7ghzbzik97fbph37i8yjhp";
rev = "f6abca593680b2315d2075e0f5e2a9751e3f431a";
sha256 = "0n2vidr9zyf6k296grnc6d3rk9hd6qw7mwvnfixlxm8g5y46rzl9";
};
}
{
@ -355,8 +355,8 @@
fetch = {
type = "git";
url = "https://go.googlesource.com/crypto";
rev = "7e9105388ebff089b3f99f0ef676ea55a6da3a7e";
sha256 = "0q3nx9px0bddpfnh2d5h56hsvbfx483jz93j6vanxqnysizgfc1n";
rev = "850760c427c516be930bc91280636328f1a62286";
sha256 = "0kyf8km2pz259jmfqk5xcd7gnj9l98kjz12zrvq26n1c4043bmkz";
};
}
{
@ -364,8 +364,8 @@
fetch = {
type = "git";
url = "https://go.googlesource.com/net";
rev = "5961165da77ad3a2abf3a77ea904c13a76b0b073";
sha256 = "0r4zb2pafrjyjb0alfnxbxkfc27iikkfdqhpklrm790j2x9xrp89";
rev = "ddf80d0970594e2e4cccf5a98861cad3d9eaa4cd";
sha256 = "1ipggkh5rwqcmb8zwf2i7dbnyz6r205c5glkg2cpw4hykr5w0id8";
};
}
{
@ -373,8 +373,8 @@
fetch = {
type = "git";
url = "https://go.googlesource.com/sys";
rev = "dbc2be9168a660ef302e04b6ff6406de6f967473";
sha256 = "1hz9d7wnxwlvhlgmqrxjdx9fihx30f9ww6ir2l74l8ping1g6w1j";
rev = "fb4cac33e3196ff7f507ab9b2d2a44b0142f5b5a";
sha256 = "1y5lx3f7rawfxrqg0s2ndgbjjjaml3rn3f27h9w9c5mw3xk7lrgj";
};
}
{
@ -382,8 +382,8 @@
fetch = {
type = "git";
url = "https://go.googlesource.com/text";
rev = "19e51611da83d6be54ddafce4a4af510cb3e9ea4";
sha256 = "09pcfzx7nrma0gjv93jx57c28farf8m1qm4x07vk5505wlcgvvfl";
rev = "9e2f80a6ba7ed4ba13e0cd4b1f094bf916875735";
sha256 = "02nahm6a4s3f1p76qdcgcwczp8662bqpii0r67p9cm9gp8x1lxqh";
};
}
{

View file

@ -11,6 +11,7 @@
, qca-qt5
, libfakekey
, libXtst
, qtx11extras
}:
stdenv.mkDerivation rec {
@ -32,6 +33,7 @@ stdenv.mkDerivation rec {
knotifications
libfakekey
libXtst
qtx11extras
];
nativeBuildInputs = [ extra-cmake-modules ];

View file

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub,
{ stdenv, fetchFromGitHub, fetchpatch,
cmake, libgcrypt, zlib, libmicrohttpd, libXtst, qtbase, qttools, libgpgerror
, withKeePassHTTP ? true
}:
@ -16,6 +16,13 @@ stdenv.mkDerivation rec {
sha256 = "1znnw2xpv58x0rbpmm4y662377mbmcilhf8mhhjsz8vhahms33a8";
};
patches = [
(fetchpatch { # qt 4.9
url = "https://github.com/keepassxreboot/keepassxc/commit/2b6059dee3a95591d787e8b8c931cd68c059d43f.patch";
sha256 = "1v140z358rk75f7wsqawpai3x8v8qcqalnv9r0l1d4p1gxm1j766";
})
];
cmakeFlags = optional (withKeePassHTTP) [ "-DWITH_XC_HTTP=ON" ];
buildInputs = [ cmake libgcrypt zlib qtbase qttools libXtst libmicrohttpd libgpgerror ];

View file

@ -15,6 +15,7 @@
, konsole
, kparts
, kwindowsystem
, qtx11extras
}:
let
@ -39,6 +40,7 @@ in mkDerivation rec {
knotifyconfig
kparts
kwindowsystem
qtx11extras
];
propagatedBuildInputs = [

View file

@ -12,10 +12,11 @@ mkChromiumDerivation (base: rec {
sandboxExecutableName = "__chromium-suid-sandbox";
installPhase = ''
mkdir -p "$libExecPath"
mkdir -p "$libExecPath/swiftshader"
cp -v "$buildPath/"*.pak "$buildPath/"*.bin "$libExecPath/"
cp -v "$buildPath/icudtl.dat" "$libExecPath/"
cp -vLR "$buildPath/locales" "$buildPath/resources" "$libExecPath/"
cp -v "$buildPath/swiftshader/"*.so "$libExecPath/swiftshader/"
cp -v "$buildPath/chrome" "$libExecPath/$packageName"
if [ -e "$buildPath/libwidevinecdmadapter.so" ]; then

View file

@ -3,13 +3,13 @@
with stdenv.lib;
stdenv.mkDerivation rec {
name = "bitlbee-facebook-${version}";
version = "1.1.0";
version = "1.1.1";
src = fetchFromGitHub {
rev = "v${version}";
owner = "jgeboski";
repo = "bitlbee-facebook";
sha256 = "0qclyc2zz8144dc42bhfv2xxrahpiv9j2iwq9h3cmfxszvkb8r3s";
sha256 = "08ibjqqcrmq1a5nmj8z93rjrdabi0yy2a70p31xalnfrh200m24c";
};
nativeBuildInputs = [ autoconf automake libtool pkgconfig ];

View file

@ -1,33 +1,35 @@
{ mkDerivation, lib, fetchFromGitHub, fetchgit, pkgconfig, gyp, cmake
, qtbase, qtimageformats
, breakpad, gtk3, libappindicator-gtk3, dee
, ffmpeg, openalSoft, minizip
, ffmpeg, openalSoft, minizip, libopus, alsaLib, libpulseaudio
, gcc
}:
mkDerivation rec {
name = "telegram-desktop-${version}";
version = "1.0.27";
version = "1.1.7";
# Submodules
src = fetchgit {
url = "https://github.com/telegramdesktop/tdesktop";
rev = "refs/tags/v${version}";
sha256 = "05g88g6h2a7f9biliicg81fqssx0y3akd3y5r2q2b5h8q3igqrfc";
sha256 = "0y0nc8d4vlhsmzayy26zdxc5jaiwcv0rb2s1v5fwnnx71gf89m2w";
};
tgaur = fetchgit {
url = "https://aur.archlinux.org/telegram-desktop-systemqt.git";
rev = "b4d169076ed12ec01941a95499774d5caa6fc00e";
sha256 = "0pmm6slabg9xazgs0ffnp8v0hx3vnpdfgymvapwqpm3h9mwk22x9";
rev = "83af81905de7fc5dc9fbea8f5318d56fa8a6efc6";
sha256 = "0v7g7y5cmxzp2yrcj6ylwzxlzr9yrqs2badzplm7sg012nc69yf9";
};
buildInputs = [
gtk3 libappindicator-gtk3 dee qtbase qtimageformats ffmpeg openalSoft minizip
libopus alsaLib libpulseaudio
];
nativeBuildInputs = [ pkgconfig gyp cmake ];
nativeBuildInputs = [ pkgconfig gyp cmake gcc ];
patches = [ "${tgaur}/aur-build-fixes.patch" ];
patches = [ "${tgaur}/tdesktop.patch" ];
enableParallelBuilding = true;
@ -48,10 +50,18 @@ mkDerivation rec {
"-I${qtbase.dev}/include/${x}"
"-I${qtbase.dev}/include/${x}/${qtbase.version}"
"-I${qtbase.dev}/include/${x}/${qtbase.version}/${x}"
"-I${libopus.dev}/include/opus"
"-I${alsaLib.dev}/include/alsa"
"-I${libpulseaudio.dev}/include/pulse"
]) [ "QtCore" "QtGui" ];
CPPFLAGS = NIX_CFLAGS_COMPILE;
preConfigure = ''
pushd "Telegram/ThirdParty/libtgvoip"
patch -Np1 -i "${tgaur}/libtgvoip.patch"
popd
sed -i Telegram/gyp/telegram_linux.gypi \
-e 's,/usr,/does-not-exist,g' \
-e 's,appindicator-0.1,appindicator3-0.1,g' \
@ -63,6 +73,7 @@ mkDerivation rec {
-e "s,/usr/bin/rcc,rcc,g"
gyp \
-Dbuild_defines=${GYP_DEFINES} \
-Gconfig=Release \
--depth=Telegram/gyp \
--generator-output=../.. \

View file

@ -8,6 +8,7 @@
, kconfig
, kconfigwidgets
, kcoreaddons
, kcrash
, kdbusaddons
, kemoticons
, kglobalaccel
@ -17,6 +18,7 @@
, kitemviews
, knotifications
, knotifyconfig
, kwindowsystem
, kio
, kparts
, kwallet
@ -27,13 +29,13 @@
let
pname = "konversation";
version = "1.6.2";
version = "1.7.2";
in mkDerivation rec {
name = "${pname}-${version}";
src = fetchurl {
url = "mirror://kde/stable/${pname}/${version}/src/${name}.tar.xz";
sha256 = "1798sslwz7a3h1v524ra33p0j5iqvcg0v1insyvb5qp4kv11slmn";
sha256 = "0616h59bsw5c3y8lij56v3fhv9by0rwdfcaa83yfxqg4rs26xyaz";
};
buildInputs = [
@ -42,6 +44,7 @@ in mkDerivation rec {
kconfig
kconfigwidgets
kcoreaddons
kcrash
kdbusaddons
kdoctools
kemoticons
@ -52,6 +55,7 @@ in mkDerivation rec {
kitemviews
knotifications
knotifyconfig
kwindowsystem
kio
kparts
kwallet

View file

@ -21,12 +21,12 @@ let
in
stdenv.mkDerivation rec {
version = "1.8";
version = "1.9";
name = "weechat-${version}";
src = fetchurl {
url = "http://weechat.org/files/src/weechat-${version}.tar.bz2";
sha256 = "10km0437lg9ms6f16h20s89l2w9f9g597rykybxb16s95ql48z08";
sha256 = "0xfnhaxmvxdxs3ic0qs5lwq3yl4pi5ib99p0p5lv3v2vldqlm4lc";
};
outputs = [ "out" "doc" ];

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
name = "geogebra-${version}";
version = "5-0-361-0";
version = "5-0-369-0";
preferLocalBuild = true;
src = fetchurl {
url = "http://download.geogebra.org/installers/5.0/GeoGebra-Linux-Portable-${version}.tar.bz2";
sha256 = "14kidnk8bidklv474zqipv3f77qnfmc697pl407v0rja481c649a";
sha256 = "0b5015z1ff3ksnkmyn2hbfwvhqp1572pdn8llpws32k7w1lb0jnk";
};
srcIcon = fetchurl {

View file

@ -1,16 +1,3 @@
diff --git a/core/base/inc/ROOT/StringConv.hxx b/core/base/inc/ROOT/StringConv.hxx
index 629fc18..4efa54a 100644
--- a/core/base/inc/ROOT/StringConv.hxx
+++ b/core/base/inc/ROOT/StringConv.hxx
@@ -89,7 +89,7 @@ EFromHumanReadableSize FromHumanReadableSize(std::string_view str, T &value)
size_t size = str.size();
size_t cur;
// Parse leading numeric factor
- const double coeff = stod(str, &cur);
+ const double coeff = stod(static_cast<std::string>(str), &cur);
// Skip any intermediate white space
while (cur<size && isspace(str[cur])) ++cur;
diff --git a/core/metacling/src/TCling.cxx b/core/metacling/src/TCling.cxx
index d71cb74..076facb 100644
--- a/core/metacling/src/TCling.cxx
@ -186,15 +173,3 @@ index 94a8b28..0b67867 100644
DataInfo(), "" );
MethodBase *method = (dynamic_cast<MethodBase*>(im));
diff -aru a/core/base/inc/TString.h b/core/base/inc/TString.h
--- a/core/base/inc/TString.h
+++ b/core/base/inc/TString.h
@@ -106,7 +106,7 @@
char operator[](Ssiz_t i) const; // Index with bounds checking
operator std::string_view() const { return std::string_view(Data(),fExtent); }
- operator std::string() const { return std::string_view(Data(),fExtent).to_string(); }
+ operator std::string() const { return static_cast<std::string>(std::string_view(Data(),fExtent)); }
const char *Data() const;
Ssiz_t Length() const { return fExtent; }

View file

@ -4,11 +4,11 @@
stdenv.mkDerivation rec {
name = "root-${version}";
version = "6.09.02";
version = "6.10.00";
src = fetchurl {
url = "https://root.cern.ch/download/root_v${version}.source.tar.gz";
sha256 = "0fc6b0l7bw66cyckxs4ikvyzcv1zlfx88205jx153smdhih0jj2k";
sha256 = "1rxqcpqf1b3sxig5xbh3mkvarhg9lgj2f0gv0j48klfw8kgfwlsp";
};
buildInputs = [ cmake pcre pkgconfig python2 zlib libxml2 lzma gsl ]
@ -23,10 +23,6 @@ stdenv.mkDerivation rec {
./thisroot.patch
# https://sft.its.cern.ch/jira/browse/ROOT-8728
(fetchpatch {
url = "https://sft.its.cern.ch/jira/secure/attachment/20025/0001-std-string_view-has-no-more-to_string.patch";
sha256 = "0ngyk960xfrcsj4vhr1ax8h85fx0g1cfycxi3k35a6ych2zmyg8q";
})
./ROOT-8728-extra.patch
];
@ -47,6 +43,7 @@ stdenv.mkDerivation rec {
"-Dfftw3=OFF"
"-Dfitsio=OFF"
"-Dfortran=OFF"
"-Dimt=OFF"
"-Dgfal=OFF"
"-Dgviz=OFF"
"-Dhdfs=OFF"
@ -66,7 +63,8 @@ stdenv.mkDerivation rec {
"-Dxml=ON"
"-Dxrootd=OFF"
]
++ stdenv.lib.optional (stdenv.cc.libc != null) "-DC_INCLUDE_DIRS=${stdenv.lib.getDev stdenv.cc.libc}/include";
++ stdenv.lib.optional (stdenv.cc.libc != null) "-DC_INCLUDE_DIRS=${stdenv.lib.getDev stdenv.cc.libc}/include"
++ stdenv.lib.optional stdenv.isDarwin "-DOPENGL_INCLUDE_DIR=${OpenGL}/Library/Frameworks";
enableParallelBuilding = true;

View file

@ -51,6 +51,5 @@ buildPythonApplication rec {
homepage = https://github.com/spyder-ide/spyder/;
license = licenses.mit;
platforms = platforms.linux;
maintainers = with maintainers; [ bjornfor fridh ];
};
}

View file

@ -17,11 +17,10 @@ with stdenv.lib;
let
python = python2;
buildType = "release";
extpack = "996f783996a597d3936fc5f1ccf56edd31ae1f8fb4d527009647d9a2c8c853cd";
extpackRev = "114002";
main = "7ed0959bbbd02826b86b3d5dc8348931ddfab267c31f8ed36ee53c12f5522cd9";
version = "5.1.18";
extpack = "244e6f450cba64e0b025711050db3c43e6ce77e12cd80bcd08796315a90c8aaf";
extpackRev = "115126";
main = "fcc918000b8c5ece553541ec10a9182410a742b7266257c76dda895dcd389899";
version = "5.1.22";
# See https://github.com/NixOS/nixpkgs/issues/672 for details
extensionPack = requireFile rec {

View file

@ -19,7 +19,7 @@ stdenv.mkDerivation {
src = fetchurl {
url = "http://download.virtualbox.org/virtualbox/${version}/VBoxGuestAdditions_${version}.iso";
sha256 = "f2951b49f48a560fbc1afe9d135d1f3f82a3e158b9002278d05d978428adca8a";
sha256 = "54df14f234b6aa484b94939ab0f435b5dd859417612b65a399ecc34a62060380";
};
KERN_DIR = "${kernel.dev}/lib/modules/*/build";
@ -139,7 +139,7 @@ stdenv.mkDerivation {
meta = {
description = "Guest additions for VirtualBox";
longDescriptions = ''
longDescription = ''
Various add-ons which makes NixOS work better as guest OS inside VirtualBox.
This add-on provides support for dynamic resizing of the X Display, shared
host/guest clipboard support and guest OpenGL support.

View file

@ -1,8 +1,8 @@
diff --git a/include/iprt/mangling.h b/include/iprt/mangling.h
index 70c596a..78972ed 100644
index c1daa8f..8618371 100644
--- a/include/iprt/mangling.h
+++ b/include/iprt/mangling.h
@@ -1068,6 +1068,7 @@
@@ -1440,6 +1440,7 @@
# define RTPathStripSuffix RT_MANGLER(RTPathStripSuffix)
# define RTPathStripFilename RT_MANGLER(RTPathStripFilename)
# define RTPathStripTrailingSlash RT_MANGLER(RTPathStripTrailingSlash)
@ -10,7 +10,7 @@ index 70c596a..78972ed 100644
# define RTPathTemp RT_MANGLER(RTPathTemp)
# define RTPathTraverseList RT_MANGLER(RTPathTraverseList)
# define RTPathUnlink RT_MANGLER(RTPathUnlink)
@@ -1105,6 +1106,7 @@
@@ -1478,6 +1479,7 @@
# define RTProcGetAffinityMask RT_MANGLER(RTProcGetAffinityMask)
# define RTProcGetExecutablePath RT_MANGLER(RTProcGetExecutablePath)
# define RTProcGetPriority RT_MANGLER(RTProcGetPriority)
@ -19,10 +19,10 @@ index 70c596a..78972ed 100644
# define RTProcQueryParent RT_MANGLER(RTProcQueryParent)
# define RTProcQueryUsername RT_MANGLER(RTProcQueryUsername)
diff --git a/include/iprt/path.h b/include/iprt/path.h
index 7e42754..b4de4c8 100644
index 8bd42bc..2c23d3e 100644
--- a/include/iprt/path.h
+++ b/include/iprt/path.h
@@ -1049,6 +1049,15 @@ RTDECL(int) RTPathCalcRelative(char *pszPathDst, size_t cbPathDst,
@@ -1064,6 +1064,15 @@ RTDECL(int) RTPathCalcRelative(char *pszPathDst, size_t cbPathDst,
RTDECL(int) RTPathExecDir(char *pszPath, size_t cchPath);
/**
@ -39,10 +39,10 @@ index 7e42754..b4de4c8 100644
*
* @returns iprt status code.
diff --git a/include/iprt/process.h b/include/iprt/process.h
index 2760306..0ce6c92 100644
index 043653e..1070280 100644
--- a/include/iprt/process.h
+++ b/include/iprt/process.h
@@ -313,6 +313,16 @@ RTR3DECL(const char *) RTProcShortName(void);
@@ -327,6 +327,16 @@ RTR3DECL(const char *) RTProcShortName(void);
RTR3DECL(char *) RTProcGetExecutablePath(char *pszExecPath, size_t cbExecPath);
/**
@ -60,11 +60,11 @@ index 2760306..0ce6c92 100644
*
* The way this work is that it will spawn a detached / backgrounded /
diff --git a/src/VBox/HostDrivers/Support/SUPR3HardenedVerify.cpp b/src/VBox/HostDrivers/Support/SUPR3HardenedVerify.cpp
index c39d2f7..896b352 100644
index ce0f288..6193108 100644
--- a/src/VBox/HostDrivers/Support/SUPR3HardenedVerify.cpp
+++ b/src/VBox/HostDrivers/Support/SUPR3HardenedVerify.cpp
@@ -1415,18 +1415,19 @@ static int supR3HardenedVerifyFsObject(PCSUPR3HARDENEDFSOBJSTATE pFsObjState, bo
NOREF(fRelaxed);
@@ -1489,9 +1489,9 @@ static int supR3HardenedVerifyFsObject(PCSUPR3HARDENEDFSOBJSTATE pFsObjState, bo
bool fBad = !fRelaxed || pFsObjState->Stat.st_gid != 2 /*bin*/ || suplibHardenedStrCmp(pszPath, "/usr/lib/iconv");
#else
NOREF(fRelaxed);
- bool fBad = true;
@ -75,23 +75,11 @@ index c39d2f7..896b352 100644
return supR3HardenedSetError3(VERR_SUPLIB_WRITE_NON_SYS_GROUP, pErrInfo,
"An unknown (and thus untrusted) group has write access to '", pszPath,
"' and we therefore cannot trust the directory content or that of any subdirectory");
}
/*
- * World must not have write access. There is no relaxing this rule.
+ * World must not have write access.
+ * There is no relaxing this rule, except when it comes to the Nix store.
*/
- if (pFsObjState->Stat.st_mode & S_IWOTH)
+ if (pFsObjState->Stat.st_mode & S_IWOTH && suplibHardenedStrCmp(pszPath, "/nix/store"))
return supR3HardenedSetError3(VERR_SUPLIB_WORLD_WRITABLE, pErrInfo,
"World writable: '", pszPath, "'");
diff --git a/src/VBox/Main/src-server/MachineImpl.cpp b/src/VBox/Main/src-server/MachineImpl.cpp
index 95dc9a7..39170bc 100644
index 320c569..9bfe41f 100644
--- a/src/VBox/Main/src-server/MachineImpl.cpp
+++ b/src/VBox/Main/src-server/MachineImpl.cpp
@@ -7326,7 +7326,7 @@ HRESULT Machine::i_launchVMProcess(IInternalSessionControl *aControl,
@@ -7543,7 +7543,7 @@ HRESULT Machine::i_launchVMProcess(IInternalSessionControl *aControl,
/* get the path to the executable */
char szPath[RTPATH_MAX];
@ -101,10 +89,10 @@ index 95dc9a7..39170bc 100644
szPath[cchBufLeft++] = RTPATH_DELIMITER;
szPath[cchBufLeft] = 0;
diff --git a/src/VBox/Main/src-server/NetworkServiceRunner.cpp b/src/VBox/Main/src-server/NetworkServiceRunner.cpp
index e9e1ba62..4d1c1e1 100644
index 1e38d99..5e43dda 100644
--- a/src/VBox/Main/src-server/NetworkServiceRunner.cpp
+++ b/src/VBox/Main/src-server/NetworkServiceRunner.cpp
@@ -79,7 +79,7 @@ int NetworkServiceRunner::start()
@@ -85,7 +85,7 @@ int NetworkServiceRunner::start(bool aKillProcOnStop)
/* get the path to the executable */
char exePathBuf[RTPATH_MAX];
@ -114,7 +102,7 @@ index e9e1ba62..4d1c1e1 100644
char *substrBs = strrchr(exePathBuf, '\\');
char *suffix = substrSl ? substrSl : substrBs;
diff --git a/src/VBox/Main/src-server/generic/NetIf-generic.cpp b/src/VBox/Main/src-server/generic/NetIf-generic.cpp
index 8559d2a..2177f27 100644
index 98dc91a..43a819f 100644
--- a/src/VBox/Main/src-server/generic/NetIf-generic.cpp
+++ b/src/VBox/Main/src-server/generic/NetIf-generic.cpp
@@ -47,7 +47,7 @@ static int NetIfAdpCtl(const char * pcszIfName, const char *pszAddr, const char
@ -126,7 +114,7 @@ index 8559d2a..2177f27 100644
if (RT_FAILURE(rc))
{
LogRel(("NetIfAdpCtl: failed to get program path, rc=%Rrc.\n", rc));
@@ -90,7 +90,7 @@ static int NetIfAdpCtl(HostNetworkInterface * pIf, const char *pszAddr, const ch
@@ -89,7 +89,7 @@ static int NetIfAdpCtl(HostNetworkInterface * pIf, const char *pszAddr, const ch
int NetIfAdpCtlOut(const char * pcszName, const char * pcszCmd, char *pszBuffer, size_t cBufSize)
{
char szAdpCtl[RTPATH_MAX];
@ -135,7 +123,7 @@ index 8559d2a..2177f27 100644
if (RT_FAILURE(rc))
{
LogRel(("NetIfAdpCtlOut: Failed to get program path, rc=%Rrc\n", rc));
@@ -202,7 +202,7 @@ int NetIfCreateHostOnlyNetworkInterface(VirtualBox *pVirtualBox,
@@ -201,7 +201,7 @@ int NetIfCreateHostOnlyNetworkInterface(VirtualBox *pVirtualBox,
progress.queryInterfaceTo(aProgress);
char szAdpCtl[RTPATH_MAX];
@ -145,7 +133,7 @@ index 8559d2a..2177f27 100644
{
progress->i_notifyComplete(E_FAIL,
diff --git a/src/VBox/Runtime/r3/path.cpp b/src/VBox/Runtime/r3/path.cpp
index be2ad8f..7ddf105 100644
index 944848e..744a261 100644
--- a/src/VBox/Runtime/r3/path.cpp
+++ b/src/VBox/Runtime/r3/path.cpp
@@ -81,6 +81,12 @@ RTDECL(int) RTPathExecDir(char *pszPath, size_t cchPath)
@ -162,7 +150,7 @@ index be2ad8f..7ddf105 100644
{
#if !defined(RT_OS_WINDOWS) && defined(RTPATH_APP_PRIVATE)
diff --git a/src/VBox/Runtime/r3/process.cpp b/src/VBox/Runtime/r3/process.cpp
index 7bde6af..2656cae 100644
index 2aab645..9795f21 100644
--- a/src/VBox/Runtime/r3/process.cpp
+++ b/src/VBox/Runtime/r3/process.cpp
@@ -111,6 +111,26 @@ RTR3DECL(char *) RTProcGetExecutablePath(char *pszExecPath, size_t cbExecPath)

View file

@ -1,6 +1,7 @@
{stdenv, git, cacert}: let
urlToName = url: rev: let
base = baseNameOf (stdenv.lib.removeSuffix "/" url);
inherit (stdenv.lib) removeSuffix splitString last;
base = last (splitString ":" (baseNameOf (removeSuffix "/" url)));
matched = builtins.match "(.*).git" base;

View file

@ -120,9 +120,8 @@ hash_from_ref(){
url_to_name(){
local url=$1
local ref=$2
# basename removes the / and .git suffixes
local base
base=$(basename "$url" .git)
base=$(basename "$url" .git | cut -d: -f2)
if [[ $ref =~ ^[a-z0-9]+$ ]]; then
echo "$base-${ref:0:7}"

View file

@ -1,5 +1,10 @@
{ stdenv, cacert, git, rust, rustRegistry }:
{ stdenv, callPackage, path, cacert, git, rust, rustRegistry }:
let
rustRegistry' = rustRegistry;
in
{ name, depsSha256
, rustRegistry ? rustRegistry'
, src ? null
, srcs ? null
, sourceRoot ? null
@ -11,6 +16,8 @@
, ... } @ args:
let
lib = stdenv.lib;
fetchDeps = import ./fetchcargo.nix {
inherit stdenv cacert git rust rustRegistry;
};

View file

@ -2,16 +2,16 @@
stdenv.mkDerivation rec {
name = "unifont-${version}";
version = "9.0.06";
version = "10.0.01";
ttf = fetchurl {
url = "mirror://gnu/unifont/${name}/${name}.ttf";
sha256 = "0r96giih04din07wlmw8538izwr7dh5v6dyriq13zfn19brgn5z2";
sha256 = "0yfz5y4vidb7h6csv6k8h0mx808psdn4vx4842bnyz0fkyhr9h3y";
};
pcf = fetchurl {
url = "mirror://gnu/unifont/${name}/${name}.pcf.gz";
sha256 = "11ivfzpyz54rbz0cvd437abs6qlv28q0qp37kn27jggxlcpfh8vd";
sha256 = "0shlr5804knh14qnv270yzsyfndw6na5ajbx4kvx20gfyxzcsi76";
};
buildInputs = [ mkfontscale mkfontdir ];

View file

@ -43,17 +43,26 @@ let
propagate = out:
let setupHook = { writeScript }:
writeScript "setup-hook.sh" ''
# Propagate $${out} output
propagatedUserEnvPkgs+=" @${out}@"
writeScript "setup-hook" ''
if [ "$hookName" != postHook ]; then
postHooks+=("source @dev@/nix-support/setup-hook")
else
# Propagate $${out} output
propagatedUserEnvPkgs="$propagatedUserEnvPkgs @${out}@"
# Propagate $dev so that this setup hook is propagated
# But only if there is a separate $dev output
if [ "$outputDev" != out ]; then
if [ -n "$crossConfig" ]; then
propagatedBuildInputs+=" @dev@"
else
propagatedNativeBuildInputs+=" @dev@"
if [ -z "$outputDev" ]; then
echo "error: \$outputDev is unset!" >&2
exit 1
fi
# Propagate $dev so that this setup hook is propagated
# But only if there is a separate $dev output
if [ "$outputDev" != out ]; then
if [ -n "$crossConfig" ]; then
propagatedBuildInputs="$propagatedBuildInputs @dev@"
else
propagatedNativeBuildInputs="$propagatedNativeBuildInputs @dev@"
fi
fi
fi
'';

View file

@ -13,4 +13,5 @@ mkDerivation {
plasma-framework plasma-workspace qtx11extras
];
outputs = [ "out" "dev" "bin" ];
enableParallelBuilding = false;
}

View file

@ -20,8 +20,7 @@ mkDerivation {
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
buildInputs = [
isocodes libdbusmenu libSM libXcursor libXtst pam wayland
];
propagatedBuildInputs = [
baloo kactivities kcmutils kconfig kcrash kdbusaddons kdeclarative
kdelibs4support kdesu kglobalaccel kidletime kjsembed knewstuff
knotifyconfig kpackage krunner kscreenlocker ktexteditor ktextwidgets

View file

@ -1,13 +1,14 @@
{ stdenv, buildRebar3, fetchHex }:
{ name, version, sha256
, builder ? buildRebar3
, hexPkg ? name
, ... }@attrs:
with stdenv.lib;
let
pkg = self: buildRebar3 (attrs // {
pkg = self: builder (attrs // {
src = fetchHex {
pkg = hexPkg;

View file

@ -1,16 +1,53 @@
{ stdenv, pkgs }:
{ stdenv, pkgs, erlang }:
let
self = rec {
hexPackages = import ./hex-packages.nix { stdenv = stdenv; callPackage = self.callPackage; pkgs = pkgs; };
callPackage = pkgs.lib.callPackageWith (pkgs // self // hexPackages);
buildRebar3 = callPackage ./build-rebar3.nix {};
buildHex = callPackage ./build-hex.nix {};
buildErlangMk = callPackage ./build-erlang-mk.nix {};
buildMix = callPackage ./build-mix.nix {};
inherit (stdenv.lib) getVersion versionAtLeast makeExtensible;
## Non hex packages
hex = callPackage ./hex {};
webdriver = callPackage ./webdriver {};
};
in self // self.hexPackages
lib = pkgs.callPackage ./lib.nix {};
# FIXME: add support for overrideScope
callPackageWithScope = scope: drv: args: stdenv.lib.callPackageWith scope drv args;
mkScope = scope: pkgs // scope;
packages = self:
let
defaultScope = mkScope self;
callPackage = drv: args: callPackageWithScope defaultScope drv args;
in
import ./hex-packages.nix {
inherit pkgs stdenv callPackage;
} // {
inherit callPackage erlang;
beamPackages = self;
rebar = callPackage ../tools/build-managers/rebar { };
rebar3-open = callPackage ../tools/build-managers/rebar3 {
hermeticRebar3 = false;
};
rebar3 = callPackage ../tools/build-managers/rebar3 {
hermeticRebar3 = true;
};
hexRegistrySnapshot = callPackage ./hex-registry-snapshot.nix { };
fetchHex = callPackage ./fetch-hex.nix { };
buildRebar3 = callPackage ./build-rebar3.nix {};
buildHex = callPackage ./build-hex.nix {};
buildErlangMk = callPackage ./build-erlang-mk.nix {};
buildMix = callPackage ./build-mix.nix {};
# BEAM-based languages.
elixir = if versionAtLeast (lib.getVersion erlang) "18"
then callPackage ../interpreters/elixir { debugInfo = true; }
else throw "Elixir requires at least Erlang/OTP R18.";
lfe = callPackage ../interpreters/lfe { };
# Non hex packages
hex = callPackage ./hex {};
webdriver = callPackage ./webdriver {};
hex2nix = callPackage ../tools/erlang/hex2nix {};
cuter = callPackage ../tools/erlang/cuter {};
relxExe = callPackage ../tools/erlang/relx-exe {};
};
in makeExtensible packages

View file

@ -1,4 +1,4 @@
{ pkgs }:
{ pkgs, stdenv }:
rec {
@ -12,6 +12,15 @@ rec {
callPackage = callPackageWith pkgs;
/* Erlang/OTP-specific version retrieval, returns 19 for OTP R19 */
getVersion = x:
let
parse = drv: (builtins.parseDrvName drv).version;
in builtins.replaceStrings ["B" "-"] ["." "."] (
if builtins.isString x
then parse x
else x.version or (parse x.name));
/* Uses generic-builder to evaluate provided drv containing OTP-version
specific data.

View file

@ -3,18 +3,16 @@
%%! -smp enable
%%% ---------------------------------------------------------------------------
%%% @doc
%%% The purpose of this command is to prepare a rebar3 project so that
%%% rebar3 understands that the dependencies are all already
%%% installed. If you want a hygienic build on nix then you must run
%%% this command before running rebar3. I suggest that you add a
%%% `Makefile` to your project and have the bootstrap command be a
%%% dependency of the build commands. See the nix documentation for
%%% The purpose of this command is to prepare a mix project so that mix
%%% understands that the dependencies are all already installed. If you want a
%%% hygienic build on nix then you must run this command before running mix. I
%%% suggest that you add a `Makefile` to your project and have the bootstrap
%%% command be a dependency of the build commands. See the nix documentation for
%%% more information.
%%%
%%% This command designed to have as few dependencies as possible so
%%% that it can be a dependency of root level packages like rebar3. To
%%% that end it does many things in a fairly simplistic way. That is
%%% by design.
%%% This command designed to have as few dependencies as possible so that it can
%%% be a dependency of root level packages like mix. To that end it does many
%%% things in a fairly simplistic way. That is by design.
%%%
%%% ### Assumptions
%%%
@ -37,7 +35,7 @@ main(Args) ->
%% @doc
%% This takes an app name in the standard OTP <name>-<version> format
%% and returns just the app name. Why? because rebar is doesn't
%% and returns just the app name. Why? Because rebar doesn't
%% respect OTP conventions in some cases.
-spec fixup_app_name(file:name()) -> string().
fixup_app_name(Path) ->

View file

@ -23,6 +23,8 @@ in stdenv.mkDerivation {
buildInputs = [ cmake pkgconfig libffi llvm_35 ]
++ stdenv.lib.optional doCheck perl;
patches = [ ./link-llvm.patch ];
inherit doCheck;
checkTarget = "tests";

View file

@ -0,0 +1,10 @@
--- dale-39e16d8e89fa070de65a673d4462e783d530f95a-src.org/CMakeLists.txt 2017-06-22 08:01:05.839531242 +0100
+++ dale-39e16d8e89fa070de65a673d4462e783d530f95a-src/CMakeLists.txt 2017-06-22 07:59:11.777566801 +0100
@@ -78,6 +78,7 @@
execute_process (COMMAND ${LLVM_CONFIG} --libs
OUTPUT_VARIABLE LLVM_LIBS
OUTPUT_STRIP_TRAILING_WHITESPACE)
+STRING(REGEX REPLACE " " ";" LLVM_LIBS "${LLVM_LIBS}")
if (${D_LLVM_VERSION_MINOR} GREATER 4)
execute_process (COMMAND ${LLVM_CONFIG} --system-libs
OUTPUT_VARIABLE LLVM_SYSTEM_LIBS

View file

@ -37,6 +37,7 @@ self: super: {
hasql-postgres = dontCheck super.hasql-postgres;
hspec-expectations = dontCheck super.hspec-expectations;
hspec = super.hspec.override { stringbuilder = dontCheck super.stringbuilder; };
hspec-core = super.hspec-core.override { silently = dontCheck super.silently; temporary = dontCheck super.temporary; };
HTTP = dontCheck super.HTTP;
nanospec = dontCheck super.nanospec;
options = dontCheck super.options;
@ -62,14 +63,16 @@ self: super: {
# The Hackage tarball is purposefully broken, because it's not intended to be, like, useful.
# https://git-annex.branchable.com/bugs/bash_completion_file_is_missing_in_the_6.20160527_tarball_on_hackage/
git-annex = ((overrideCabal super.git-annex (drv: {
git-annex = (overrideCabal (super.git-annex.overrideScope (self: super: {
optparse-applicative = self.optparse-applicative_0_14_0_0;
})) (drv: {
src = pkgs.fetchgit {
name = "git-annex-${drv.version}-src";
url = "git://git-annex.branchable.com/";
rev = "refs/tags/" + drv.version;
sha256 = "1psyklfyjf4zqh3qxjn11sp2jiwvp8mfxqvsi1wggqpidfmk39jx";
};
}))).override {
})).override {
dbus = if pkgs.stdenv.isLinux then self.dbus else null;
fdo-notify = if pkgs.stdenv.isLinux then self.fdo-notify else null;
hinotify = if pkgs.stdenv.isLinux then self.hinotify else self.fsnotify;

View file

@ -80,4 +80,8 @@ self: super: {
# Needs nats on pre 7.6.x compilers.
semigroups = addBuildDepend super.semigroups self.nats;
# Newer versions don't compile any longer.
network_2_6_3_1 = dontCheck super.network_2_6_3_1;
network = self.network_2_6_3_1;
}

View file

@ -72,13 +72,14 @@ self: super: {
# Newer versions require bytestring >=0.10.
tar = super.tar_0_4_1_0;
# Needs void on pre 7.10.x compilers.
# These builds need additional dependencies on old compilers.
conduit = addBuildDepend super.conduit self.void;
# Needs tagged on pre 7.6.x compilers.
reflection = addBuildDepend super.reflection self.tagged;
# Needs nats on pre 7.6.x compilers.
semigroups = addBuildDepend super.semigroups self.nats;
optparse-applicative = addBuildDepend super.optparse-applicative self.semigroups;
# Newer versions don't compile any longer.
network_2_6_3_1 = dontCheck super.network_2_6_3_1;
network = self.network_2_6_3_1;
}

View file

@ -97,8 +97,13 @@ self: super: {
# Needs tagged on pre 7.6.x compilers.
reflection = addBuildDepend super.reflection self.tagged;
# These builds Need additional dependencies on pre 7.6.x compilers.
# These builds need additional dependencies on old compilers.
semigroups = addBuildDepends super.semigroups (with self; [nats bytestring-builder tagged unordered-containers transformers]);
QuickCheck = addBuildDepends super.QuickCheck (with self; [nats semigroups]);
optparse-applicative = addBuildDepend super.optparse-applicative self.semigroups;
# Newer versions don't compile any longer.
network_2_6_3_1 = dontCheck super.network_2_6_3_1;
network = self.network_2_6_3_1;
}

View file

@ -93,12 +93,13 @@ self: super: {
# Needs void on pre 7.10.x compilers.
conduit = addBuildDepend super.conduit self.void;
# Needs additional inputs on pre 7.10.x compilers.
# Needs additional inputs on old compilers.
semigroups = addBuildDepends super.semigroups (with self; [bytestring-builder nats tagged unordered-containers transformers]);
lens = addBuildDepends super.lens (with self; [doctest generic-deriving nats simple-reflect]);
distributive = addBuildDepend super.distributive self.semigroups;
QuickCheck = addBuildDepend super.QuickCheck self.semigroups;
void = addBuildDepends super.void (with self; [hashable semigroups]);
optparse-applicative = addBuildDepend super.optparse-applicative self.semigroups;
# Need a newer version of Cabal to interpret their build instructions.
cmdargs = addSetupDepend super.cmdargs self.Cabal_1_24_2_0;

View file

@ -143,12 +143,13 @@ self: super: {
hashable = dontCheck super.hashable;
unordered-containers = dontCheck super.unordered-containers;
# Needs additional inputs on pre 7.10.x compilers.
# Needs additional inputs on old compilers.
semigroups = addBuildDepends super.semigroups (with self; [nats tagged unordered-containers]);
lens = addBuildDepends super.lens (with self; [doctest generic-deriving nats simple-reflect]);
distributive = addBuildDepend super.distributive self.semigroups;
QuickCheck = addBuildDepends super.QuickCheck (with self; [nats semigroups]);
void = addBuildDepends super.void (with self; [hashable semigroups]);
optparse-applicative = addBuildDepend super.optparse-applicative self.semigroups;
# Haddock doesn't cope with the new markup.
bifunctors = dontHaddock super.bifunctors;

View file

@ -37,7 +37,7 @@ core-packages:
- ghcjs-base-0
default-package-overrides:
# LTS Haskell 8.18
# LTS Haskell 8.19
- abstract-deque ==0.3
- abstract-par ==0.3.3
- AC-Vector ==2.3.2
@ -58,8 +58,8 @@ default-package-overrides:
- aeson-extra ==0.4.0.0
- aeson-generic-compat ==0.0.1.0
- aeson-injector ==1.0.8.0
- aeson-pretty ==0.8.4
- aeson-qq ==0.8.1
- aeson-pretty ==0.8.5
- aeson-qq ==0.8.2
- aeson-utils ==0.3.0.2
- Agda ==2.5.2
- airship ==0.6.0
@ -190,7 +190,7 @@ default-package-overrides:
- attoparsec-binary ==0.2
- attoparsec-expr ==0.1.1.2
- attoparsec-iso8601 ==1.0.0.0
- audacity ==0.0.1.1
- audacity ==0.0.1.2
- authenticate ==1.3.3.2
- authenticate-oauth ==1.6
- auto ==0.4.3.1
@ -217,7 +217,7 @@ default-package-overrides:
- base64-string ==0.2
- basic-prelude ==0.6.1.1
- bcrypt ==0.0.10
- bench ==1.0.4
- bench ==1.0.5
- benchpress ==0.2.2.9
- bencode ==0.6.0.0
- bento ==0.1.0
@ -318,7 +318,7 @@ default-package-overrides:
- calendar-recycling ==0.0
- call-stack ==0.1.0
- camfort ==0.901
- carray ==0.1.6.6
- carray ==0.1.6.7
- cartel ==0.18.0.2
- case-insensitive ==1.2.0.10
- cased ==0.1.0.0
@ -367,7 +367,7 @@ default-package-overrides:
- classy-prelude ==1.2.0.1
- classy-prelude-conduit ==1.2.0
- classy-prelude-yesod ==1.2.0
- clay ==0.12.1
- clay ==0.12.2
- clckwrks ==0.24.0.3
- clckwrks-cli ==0.2.17.1
- clckwrks-plugin-media ==0.6.16.3
@ -408,7 +408,7 @@ default-package-overrides:
- conduit-connection ==0.1.0.3
- conduit-extra ==1.1.16
- conduit-iconv ==0.1.1.1
- conduit-parse ==0.1.2.0
- conduit-parse ==0.1.2.1
- ConfigFile ==1.1.4
- configuration-tools ==0.2.15
- configurator ==0.3.0.0
@ -564,9 +564,9 @@ default-package-overrides:
- dockerfile ==0.1.0.1
- docopt ==0.7.0.5
- doctemplates ==0.1.0.2
- doctest ==0.11.2
- doctest ==0.11.3
- doctest-discover ==0.1.0.7
- dotenv ==0.3.3.0
- dotenv ==0.3.4.0
- dotnet-timespan ==0.0.1.0
- double-conversion ==2.0.2.0
- download ==0.3.2.5
@ -649,7 +649,7 @@ default-package-overrides:
- extensible ==0.3.7
- extensible-effects ==1.11.0.4
- extensible-exceptions ==0.1.1.4
- extra ==1.5.2
- extra ==1.5.3
- extract-dependencies ==0.2.0.1
- fail ==4.9.0.0
- farmhash ==0.1.0.5
@ -669,7 +669,7 @@ default-package-overrides:
- feature-flags ==0.1.0.1
- feed ==0.3.12.0
- FenwickTree ==0.1.2.1
- fft ==0.1.8.5
- fft ==0.1.8.6
- fgl ==5.5.3.1
- fgl-arbitrary ==0.2.0.3
- file-embed ==0.0.10
@ -697,7 +697,7 @@ default-package-overrides:
- fold-debounce ==0.2.0.5
- fold-debounce-conduit ==0.1.0.5
- foldl ==1.2.5
- foldl-statistics ==0.1.4.4
- foldl-statistics ==0.1.4.6
- folds ==0.7.3
- FontyFruity ==0.5.3.2
- force-layout ==0.4.0.6
@ -705,7 +705,7 @@ default-package-overrides:
- format-numbers ==0.1.0.0
- formatting ==6.2.4
- fortran-src ==0.1.0.4
- foundation ==0.0.10
- foundation ==0.0.11
- Frames ==0.1.9
- free ==4.12.4
- free-vl ==0.1.4
@ -740,7 +740,7 @@ default-package-overrides:
- ghc-mod ==5.7.0.0
- ghc-paths ==0.1.0.9
- ghc-prof ==1.3.0.2
- ghc-syb-utils < 0.3
- ghc-syb-utils ==0.2.3.2
- ghc-tcplugins-extra ==0.2
- ghc-typelits-extra ==0.2.3
- ghc-typelits-knownnat ==0.2.4
@ -936,7 +936,7 @@ default-package-overrides:
- happy ==1.19.5
- HaRe ==0.8.4.0
- harp ==0.4.2
- hasbolt ==0.1.1.2
- hasbolt ==0.1.1.3
- hashable ==1.2.6.0
- hashable-time ==0.2.0.1
- hashmap ==1.3.2
@ -1033,7 +1033,7 @@ default-package-overrides:
- holy-project ==0.2.0.1
- hOpenPGP ==2.5.5
- hopenpgp-tools ==0.19.4
- hopfli ==0.2.1.1
- hopfli ==0.2.2.1
- hosc ==0.15
- hostname ==1.0
- hostname-validate ==1.0.0
@ -1104,7 +1104,7 @@ default-package-overrides:
- http-api-data ==0.3.7.1
- http-client ==0.5.7.0
- http-client-openssl ==0.2.0.5
- http-client-tls ==0.3.5
- http-client-tls ==0.3.5.1
- http-common ==0.8.2.0
- http-conduit ==2.2.3.1
- http-date ==0.0.6.1
@ -1159,7 +1159,7 @@ default-package-overrides:
- imm ==1.1.0.0
- immortal ==0.2.2
- include-file ==0.1.0.3
- incremental-parser ==0.2.5
- incremental-parser ==0.2.5.1
- indentation-core ==0.0
- indentation-parsec ==0.0
- indents ==0.4.0.0
@ -1224,7 +1224,7 @@ default-package-overrides:
- json-rpc-generic ==0.2.1.2
- json-schema ==0.7.4.1
- json-stream ==0.4.1.3
- JuicyPixels ==3.2.8.1
- JuicyPixels ==3.2.8.2
- JuicyPixels-extra ==0.1.1
- JuicyPixels-scale-dct ==0.1.1.2
- jvm ==0.1.2
@ -1309,7 +1309,7 @@ default-package-overrides:
- loch-th ==0.2.1
- log ==0.7
- log-base ==0.7.1
- log-domain ==0.11
- log-domain ==0.11.1
- log-elasticsearch ==0.7
- log-postgres ==0.7
- logfloat ==0.13.3.3
@ -1319,7 +1319,7 @@ default-package-overrides:
- logict ==0.6.0.2
- loop ==0.3.0
- lrucache ==1.2.0.0
- lrucaching ==0.3.1
- lrucaching ==0.3.2
- lucid ==2.9.8.1
- lucid-svg ==0.7.0.0
- lzma-conduit ==1.1.3.1
@ -1370,11 +1370,11 @@ default-package-overrides:
- microlens-aeson ==2.2.0.1
- microlens-contra ==0.1.0.1
- microlens-ghc ==0.4.8.0
- microlens-mtl ==0.1.10.0
- microlens-platform ==0.3.8.0
- microlens-mtl ==0.1.11.0
- microlens-platform ==0.3.9.0
- microlens-th ==0.4.1.1
- midi ==0.2.2.1
- midi-music-box ==0.0.0.3
- midi-music-box ==0.0.0.4
- mighty-metropolis ==1.2.0
- mime-mail ==0.4.13.1
- mime-mail-ses ==0.3.2.3
@ -1388,9 +1388,9 @@ default-package-overrides:
- mmap ==0.5.9
- mmorph ==1.0.9
- mnist-idx ==0.1.2.8
- mockery ==0.3.4
- mockery ==0.3.5
- modify-fasta ==0.8.2.3
- monad-control ==1.0.1.0
- monad-control ==1.0.2.0
- monad-coroutine ==0.9.0.3
- monad-extras ==0.6.0
- monad-http ==0.1.0.0
@ -1423,10 +1423,10 @@ default-package-overrides:
- mono-traversable ==1.0.2
- mono-traversable-instances ==0.1.0.0
- monoid-extras ==0.4.2
- monoid-subclasses ==0.4.3.1
- monoid-subclasses ==0.4.3.2
- monoid-transformer ==0.0.3
- monoidal-containers ==0.3.0.1
- morte ==1.6.7
- morte ==1.6.9
- mountpoints ==1.0.2
- mstate ==0.2.7
- mtl ==2.2.1
@ -1558,7 +1558,7 @@ default-package-overrides:
- parsers ==0.12.5
- partial-handler ==1.0.2
- partial-isomorphisms ==0.2.2.1
- patat ==0.5.2.0
- patat ==0.5.2.2
- path ==0.5.13
- path-extra ==0.0.3
- path-io ==1.2.2
@ -1594,7 +1594,7 @@ default-package-overrides:
- pinchot ==0.24.0.0
- pipes ==4.3.4
- pipes-attoparsec ==0.5.1.5
- pipes-bytestring ==2.1.4
- pipes-bytestring ==2.1.5
- pipes-cacophony ==0.4.1
- pipes-category ==0.2.0.1
- pipes-concurrency ==2.0.7
@ -1657,7 +1657,7 @@ default-package-overrides:
- primitive ==0.6.1.0
- printcess ==0.1.0.3
- probability ==0.2.5.1
- process-extras ==0.7.1
- process-extras ==0.7.2
- product-profunctors ==0.7.1.0
- profiteur ==0.4.3.0
- profunctor-extras ==4.0
@ -1671,7 +1671,7 @@ default-package-overrides:
- proto-lens-arbitrary ==0.1.0.2
- proto-lens-combinators ==0.1.0.7
- proto-lens-descriptors ==0.2.1.0
- proto-lens-optparse ==0.1.0.2
- proto-lens-optparse ==0.1.0.3
- proto-lens-protoc ==0.2.1.0
- protobuf ==0.2.1.1
- protobuf-simple ==0.1.0.4
@ -1868,7 +1868,7 @@ default-package-overrides:
- set-cover ==0.0.8
- set-monad ==0.2.0.0
- setenv ==0.1.1.3
- setlocale ==1.0.0.4
- setlocale ==1.0.0.5
- sets ==0.0.5.2
- SHA ==1.6.4.2
- shake ==0.15.11
@ -1920,7 +1920,7 @@ default-package-overrides:
- sourcemap ==0.1.6
- sparkle ==0.4.0.2
- sparse-linear-algebra ==0.2.9.7
- spdx ==0.2.1.0
- spdx ==0.2.2.0
- speculation ==1.5.0.3
- speedy-slice ==0.3.0
- sphinx ==0.6.0.2
@ -2058,7 +2058,7 @@ default-package-overrides:
- tdigest-Chart ==0
- telegram-api ==0.6.3.0
- template ==0.2.0.10
- temporary ==1.2.0.4
- temporary ==1.2.1
- temporary-rc ==1.2.0.3
- termcolor ==0.2.0.0
- terminal-progress-bar ==0.1.1.1
@ -2067,7 +2067,7 @@ default-package-overrides:
- test-fixture ==0.5.0.1
- test-framework ==0.8.1.1
- test-framework-hunit ==0.3.0.2
- test-framework-quickcheck2 < 0.4
- test-framework-quickcheck2 ==0.3.0.4
- test-framework-smallcheck ==0.2
- test-framework-th ==0.2.4
- test-invariant ==0.4.5.0
@ -2094,6 +2094,7 @@ default-package-overrides:
- textlocal ==0.1.0.5
- tf-random ==0.5
- tfp ==1.0.0.2
- th-abstraction ==0.2.2.0
- th-data-compat ==0.0.2.2
- th-desugar ==1.6
- th-expand-syns ==0.4.3.0
@ -2102,7 +2103,7 @@ default-package-overrides:
- th-lift-instances ==0.1.11
- th-orphans ==0.13.3
- th-reify-compat ==0.0.1.1
- th-reify-many ==0.1.6
- th-reify-many ==0.1.7
- th-to-exp ==0.0.1.0
- th-utilities ==0.2.0.1
- these ==0.7.3
@ -2149,7 +2150,7 @@ default-package-overrides:
- tuple ==0.3.0.2
- tuple-th ==0.2.5
- tuples-homogenous-h98 ==0.1.1.0
- turtle ==1.3.5
- turtle ==1.3.6
- turtle-options ==0.1.0.4
- twitter-feed ==0.2.0.11
- twitter-types ==0.7.2.2
@ -2236,7 +2237,7 @@ default-package-overrides:
- vector-algorithms ==0.7.0.1
- vector-binary-instances ==0.2.3.5
- vector-buffer ==0.4.1
- vector-fftw ==0.1.3.7
- vector-fftw ==0.1.3.8
- vector-instances ==3.4
- vector-sized ==0.5.1.0
- vector-space ==0.10.4
@ -2349,14 +2350,14 @@ default-package-overrides:
- xdg-basedir ==0.2.2
- xeno ==0.1
- xenstore ==0.1.1
- xhtml ==3000.2.1
- xhtml ==3000.2.2
- xlsior ==0.1.0.1
- xlsx ==0.4.3
- xlsx-tabular ==0.2.2
- xml ==1.3.14
- xml-basic ==0.1.2
- xml-conduit ==1.4.0.4
- xml-conduit-parse ==0.3.1.0
- xml-conduit-parse ==0.3.1.1
- xml-conduit-writer ==0.1.1.1
- xml-hamlet ==0.4.1
- xml-html-qq ==0.1.0.1
@ -2372,7 +2373,7 @@ default-package-overrides:
- xss-sanitize ==0.3.5.7
- yackage ==0.8.1
- yahoo-finance-api ==0.2.0.2
- yaml ==0.8.23
- yaml ==0.8.23.1
- Yampa ==0.10.6
- YampaSynth ==0.2
- yes-precure5-command ==5.5.3
@ -2398,24 +2399,24 @@ default-package-overrides:
- yesod-table ==2.0.3
- yesod-test ==1.5.6
- yesod-websockets ==0.2.6
- yi-core ==0.13.5
- yi-frontend-vty ==0.13.5
- yi-fuzzy-open ==0.13.5
- yi-ireader ==0.13.5
- yi-keymap-cua ==0.13.5
- yi-keymap-emacs ==0.13.5
- yi-keymap-vim ==0.13.5
- yi-language ==0.13.5
- yi-misc-modes ==0.13.5
- yi-mode-haskell ==0.13.5
- yi-mode-javascript ==0.13.5
- yi-core ==0.13.7
- yi-frontend-vty ==0.13.7
- yi-fuzzy-open ==0.13.7
- yi-ireader ==0.13.7
- yi-keymap-cua ==0.13.7
- yi-keymap-emacs ==0.13.7
- yi-keymap-vim ==0.13.7
- yi-language ==0.13.7
- yi-misc-modes ==0.13.7
- yi-mode-haskell ==0.13.7
- yi-mode-javascript ==0.13.7
- yi-rope ==0.8
- yi-snippet ==0.13.5
- yi-snippet ==0.13.7
- yjtools ==0.9.18
- yoga ==0.0.0.1
- youtube ==0.2.1
- zero ==0.1.4
- zeromq4-haskell ==0.6.5
- zeromq4-haskell ==0.6.6
- zip ==0.1.11
- zip-archive ==0.3.1
- zippers ==0.2.3
@ -2448,6 +2449,7 @@ extra-packages:
- hpack < 0.18 # required by stack-1.4.0
- mtl < 2.2 # newer versions require transformers > 0.4.x, which we cannot provide in GHC 7.8.x
- mtl-prelude < 2 # required for to build postgrest on mtl 2.1.x platforms
- network == 2.6.3.1 # newer versions don't compile with GHC 7.4.x and below
- parallel == 3.2.0.3 # newer versions don't work with GHC 6.12.3
- primitive == 0.5.1.* # required to build alex with GHC 6.12.3
- QuickCheck < 2 # required by test-framework-quickcheck and its users

View file

@ -461,4 +461,7 @@ self: super: builtins.intersectAttrs super {
liquid-fixpoint = disableSharedExecutables super.liquid-fixpoint;
liquidhaskell = dontCheck (disableSharedExecutables super.liquidhaskell);
# Haskell OpenCV bindings need contrib code enabled in the C++ library.
opencv = super.opencv.override { opencv3 = pkgs.opencv3.override { enableContrib = true; }; };
}

View file

@ -3,6 +3,8 @@
, packageSetConfig ? (self: super: {})
, overrides ? (self: super: {})
, initialPackages ? import ./hackage-packages.nix
, configurationCommon ? import ./configuration-common.nix
, configurationNix ? import ./configuration-nix.nix
}:
let
@ -15,8 +17,8 @@ let
inherit ghc extensible-self;
};
commonConfiguration = import ./configuration-common.nix { inherit pkgs; };
nixConfiguration = import ./configuration-nix.nix { inherit pkgs; };
commonConfiguration = configurationCommon { inherit pkgs; };
nixConfiguration = configurationNix { inherit pkgs; };
extensible-self = makeExtensible
(extends overrides

View file

@ -34,7 +34,7 @@
, license
, maintainers ? []
, doCoverage ? false
, doHaddock ? (!ghc.isHaLVM or true)
, doHaddock ? !(ghc.isHaLVM or false)
, passthru ? {}
, pkgconfigDepends ? [], libraryPkgconfigDepends ? [], executablePkgconfigDepends ? [], testPkgconfigDepends ? [], benchmarkPkgconfigDepends ? []
, testDepends ? [], testHaskellDepends ? [], testSystemDepends ? []

File diff suppressed because it is too large Load diff

View file

@ -130,7 +130,7 @@ in package-set { inherit pkgs stdenv callPackage; } self // {
in generateExprs name src {}) overrides;
# : { root : Path
# , source-overrides : Defaulted (Either Path VersionNumber
# , source-overrides : Defaulted (Either Path VersionNumber)
# , overrides : Defaulted (HaskellPackageOverrideSet)
# } -> NixShellAwareDerivation
# Given a path to a haskell package directory whose cabal file is

View file

@ -0,0 +1,10 @@
{ mkDerivation, fetchurl }:
mkDerivation rec {
version = "20.0";
sha256 = "12dbay254ivnakwknjn5h55wndb0a0wqx55p156h8hwjhykj2kn0";
prePatch = ''
substituteInPlace configure.in --replace '`sw_vers -productVersion`' '10.10'
'';
}

View file

@ -1,11 +1,11 @@
{ fetchurl, fetchpatch, stdenv }:
stdenv.mkDerivation rec {
name = "gsl-2.3";
name = "gsl-2.4";
src = fetchurl {
url = "mirror://gnu/gsl/${name}.tar.gz";
sha256 = "1yxdzqjwmi2aid650fa9zyr8llw069x7lm489wx9nnfdi6vh09an";
sha256 = "16yfs5n444s03np1naj6yp1fsysd42kdscxzkg0k2yvfjixx0ijd";
};
patches = [

View file

@ -41,17 +41,26 @@ let
propagate = out:
let setupHook = { writeScript }:
writeScript "setup-hook.sh" ''
# Propagate $${out} output
propagatedUserEnvPkgs+=" @${out}@"
writeScript "setup-hook" ''
if [ "$hookName" != postHook ]; then
postHooks+=("source @dev@/nix-support/setup-hook")
else
# Propagate $${out} output
propagatedUserEnvPkgs="$propagatedUserEnvPkgs @${out}@"
# Propagate $dev so that this setup hook is propagated
# But only if there is a separate $dev output
if [ "$outputDev" != out ]; then
if [ -n "$crossConfig" ]; then
propagatedBuildInputs+=" @dev@"
else
propagatedNativeBuildInputs+=" @dev@"
if [ -z "$outputDev" ]; then
echo "error: \$outputDev is unset!" >&2
exit 1
fi
# Propagate $dev so that this setup hook is propagated
# But only if there is a separate $dev output
if [ "$outputDev" != out ]; then
if [ -n "$crossConfig" ]; then
propagatedBuildInputs="$propagatedBuildInputs @dev@"
else
propagatedNativeBuildInputs="$propagatedNativeBuildInputs @dev@"
fi
fi
fi
'';

View file

@ -1,12 +1,12 @@
{
mkDerivation, lib,
extra-cmake-modules, kdoctools,
qtbase,
pcre, qtbase,
}:
mkDerivation {
name = "kjs";
meta = { maintainers = [ lib.maintainers.ttuegel ]; };
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
buildInputs = [ qtbase ];
buildInputs = [ pcre qtbase ];
}

View file

@ -5,7 +5,10 @@ stdenv.mkDerivation rec {
version = "7.6.0";
src = fetchurl {
url = "http://www.ivmaisoft.com/_bin/atomic_ops/libatomic_ops-${version}.tar.gz";
urls = [
"http://www.ivmaisoft.com/_bin/atomic_ops/libatomic_ops-${version}.tar.gz"
"https://github.com/ivmai/libatomic_ops/releases/download/v${version}/libatomic_ops-${version}.tar.gz"
];
sha256 ="03ylfr29g9zc0r6b6axz3i68alj5qmxgzknxwam3jlx0sz8hcb4f";
};

View file

@ -2,14 +2,14 @@
, fixedPoint ? false, withCustomModes ? true }:
let
version = "1.1.5";
version = "1.2";
in
stdenv.mkDerivation rec {
name = "libopus-${version}";
src = fetchurl {
url = "http://downloads.xiph.org/releases/opus/opus-${version}.tar.gz";
sha256 = "1r33nm7b052dw7gsc99809df1zmj5icfiljqbrfkw2pll0f9i17b";
url = "https://archive.mozilla.org/pub/opus/opus-${version}.tar.gz";
sha256 = "1ad9q2g9vivx409jdsslv1hrh5r616qz2pjm96y8ymsigfl4bnvp";
};
outputs = [ "out" "dev" ];

View file

@ -15,6 +15,7 @@
, enableFfmpeg ? false, ffmpeg
, enableGStreamer ? false, gst_all_1
, enableEigen ? false, eigen
, enableOpenblas ? false, openblas
, enableCuda ? false, cudatoolkit, gcc5
, AVFoundation, Cocoa, QTKit
}:
@ -130,6 +131,7 @@ stdenv.mkDerivation rec {
++ lib.optional enableFfmpeg ffmpeg
++ lib.optionals enableGStreamer (with gst_all_1; [ gstreamer gst-plugins-base ])
++ lib.optional enableEigen eigen
++ lib.optional enableOpenblas openblas
++ lib.optionals enableCuda [ cudatoolkit gcc5 ]
++ lib.optional enableContrib protobuf3_1
++ lib.optionals stdenv.isDarwin [ AVFoundation Cocoa QTKit ];
@ -141,7 +143,7 @@ stdenv.mkDerivation rec {
NIX_CFLAGS_COMPILE = lib.optional enableEXR "-I${ilmbase.dev}/include/OpenEXR";
cmakeFlags = [
"-DWITH_IPP=${if enableIpp then "ON" else "OFF"}"
"-DWITH_IPP=${if enableIpp then "ON" else "OFF"} -DWITH_OPENMP=ON"
(opencvFlag "TIFF" enableTIFF)
(opencvFlag "JASPER" enableJPEG2K)
(opencvFlag "WEBP" enableWebP)

View file

@ -13,19 +13,13 @@ let
majorVersion = "1.10";
in stdenv.mkDerivation rec {
name = "openmpi-${majorVersion}.1";
name = "openmpi-${majorVersion}.7";
src = fetchurl {
url = "http://www.open-mpi.org/software/ompi/v${majorVersion}/downloads/${name}.tar.bz2";
sha256 = "14p4px9a3qzjc22lnl6braxrcrmd9rgmy7fh4qpanawn2pgfq6br";
sha256 = "142s1vny9gllkq336yafxayjgcirj2jv0ddabj879jgya7hyr2d0";
};
# Bug in openmpi implementation for zero sized messages
# Patch required to make mpi4py pass. Will NOT
# be required when openmpi >= 2.0.0
# https://www.open-mpi.org/community/lists/users/2015/11/28030.php
patches = [ ./nbc_copy.patch ];
buildInputs = [ gfortran ]
++ optional (stdenv.isLinux || stdenv.isFreeBSD) libibverbs;

View file

@ -1,30 +0,0 @@
commit 4ee20ba31dd64b8f899447cdad78ec2379acfce7
Author: Gilles Gouaillardet <gilles@rist.or.jp>
Date: Tue Nov 10 08:59:03 2015 +0900
fix NBC_Copy for legitimate zero size messages
(back ported from commit open-mpi/ompi@0bd765eddd33e3d4ac18ec644c60a5c160cb48dc)
(back ported from commit open-mpi/ompi@9a70765f27fdf17e70e1a115754fef7e5f16132a)
diff --git a/ompi/mca/coll/libnbc/nbc_internal.h b/ompi/mca/coll/libnbc/nbc_internal.h
index bf2f1cb..81be8cc 100644
--- a/ompi/mca/coll/libnbc/nbc_internal.h
+++ b/ompi/mca/coll/libnbc/nbc_internal.h
@@ -501,7 +501,14 @@ static inline int NBC_Copy(void *src, int srccount, MPI_Datatype srctype, void *
} else {
/* we have to pack and unpack */
res = MPI_Pack_size(srccount, srctype, comm, &size);
- if (MPI_SUCCESS != res || 0 == size) { printf("MPI Error in MPI_Pack_size() (%i:%i)\n", res, size); return (MPI_SUCCESS == res) ? MPI_ERR_SIZE : res;}
+ if (MPI_SUCCESS != res) {
+ printf ("MPI Error in MPI_Pack_size() (%i:%i)", res, size);
+ return res;
+ }
+
+ if (0 == size) {
+ return OMPI_SUCCESS;
+ }
packbuf = malloc(size);
if (NULL == packbuf) { printf("Error in malloc()\n"); return res; }
pos=0;

View file

@ -1,3 +0,0 @@
WGET_ARGS=( http://download.qt.io/official_releases/qt/5.8/5.8.0/submodules/ \
http://download.qt.io/community_releases/5.8/5.8.0-final/ \
-A '*.tar.xz' )

View file

@ -1,41 +0,0 @@
Index: qtbase-opensource-src-5.8.0/src/corelib/io/qsettings.cpp
===================================================================
--- qtbase-opensource-src-5.8.0.orig/src/corelib/io/qsettings.cpp
+++ qtbase-opensource-src-5.8.0/src/corelib/io/qsettings.cpp
@@ -1134,6 +1134,23 @@ QConfFileSettingsPrivate::QConfFileSetti
confFiles[F_System | F_Application].reset(QConfFile::fromName(systemPath + appFile, false));
confFiles[F_System | F_Organization].reset(QConfFile::fromName(systemPath + orgFile, false));
+#if !defined(Q_OS_WIN)
+ // Add directories specified in $XDG_CONFIG_DIRS
+ const QString pathEnv = QString::fromLocal8Bit(getenv("XDG_CONFIG_DIRS"));
+ if (!pathEnv.isEmpty()) {
+ const QStringList pathEntries = pathEnv.split(QLatin1Char(':'), QString::SkipEmptyParts);
+ if (!pathEntries.isEmpty()) {
+ int j = 4; // This is the number of confFiles set above -- we need to start adding $XDG_CONFIG_DIRS after those.
+ for (int k = 0; k < pathEntries.size() && j < NumConfFiles - 1; ++k) {
+ const QString& path = pathEntries.at(k);
+ if (!application.isEmpty())
+ confFiles[j++].reset(QConfFile::fromName(path + QDir::separator() + appFile, false));
+ confFiles[j++].reset(QConfFile::fromName(path + QDir::separator() + orgFile, false));
+ }
+ }
+ }
+#endif
+
for (i = 0; i < NumConfFiles; ++i) {
if (confFiles[i]) {
spec = i;
Index: qtbase-opensource-src-5.8.0/src/corelib/io/qsettings_p.h
===================================================================
--- qtbase-opensource-src-5.8.0.orig/src/corelib/io/qsettings_p.h
+++ qtbase-opensource-src-5.8.0/src/corelib/io/qsettings_p.h
@@ -246,7 +246,7 @@ public:
F_Organization = 0x1,
F_User = 0x0,
F_System = 0x2,
- NumConfFiles = 4
+ NumConfFiles = 40 // HACK: increase NumConfFiles from 4 to 40 in order to accommodate more paths in $XDG_CONFIG_DIRS -- ellis
};
QSettings::Format format;

View file

@ -1,97 +0,0 @@
{ qtSubmodule, qtquickcontrols, qtlocation, qtwebchannel
, xlibs, libXcursor, libXScrnSaver, libXrandr, libXtst
, fontconfig, freetype, harfbuzz, icu, dbus
, zlib, minizip, libjpeg, libpng, libtiff, libwebp, libopus
, jsoncpp, protobuf, libvpx, srtp, snappy, nss, libevent
, alsaLib
, libcap
, pciutils
, systemd
, bison, flex, git, which, gperf
, coreutils
, pkgconfig, python2
, enableProprietaryCodecs ? true
, lib, stdenv # lib.optional, needsPax
}:
with stdenv.lib;
qtSubmodule {
name = "qtwebengine";
qtInputs = [ qtquickcontrols qtlocation qtwebchannel ];
buildInputs = [ bison flex git which gperf ];
nativeBuildInputs = [ pkgconfig python2 coreutils ];
doCheck = true;
outputs = [ "out" "dev" "bin" ];
enableParallelBuilding = true;
preConfigure = ''
export MAKEFLAGS=-j$NIX_BUILD_CORES
substituteInPlace ./src/3rdparty/chromium/build/common.gypi \
--replace /bin/echo ${coreutils}/bin/echo
substituteInPlace ./src/3rdparty/chromium/v8/gypfiles/toolchain.gypi \
--replace /bin/echo ${coreutils}/bin/echo
substituteInPlace ./src/3rdparty/chromium/v8/gypfiles/standalone.gypi \
--replace /bin/echo ${coreutils}/bin/echo
# Fix library paths
sed -i \
-e "s,QLibraryInfo::location(QLibraryInfo::DataPath),QLatin1String(\"$out\"),g" \
-e "s,QLibraryInfo::location(QLibraryInfo::TranslationsPath),QLatin1String(\"$out/translations\"),g" \
-e "s,QLibraryInfo::location(QLibraryInfo::LibraryExecutablesPath),QLatin1String(\"$out/libexec\"),g" \
src/core/web_engine_library_info.cpp
'' + optionalString (!stdenv.isDarwin) ''
sed -i -e '/lib_loader.*Load/s!"\(libudev\.so\)!"${systemd.lib}/lib/\1!' \
src/3rdparty/chromium/device/udev_linux/udev?_loader.cc
sed -i -e '/libpci_loader.*Load/s!"\(libpci\.so\)!"${pciutils}/lib/\1!' \
src/3rdparty/chromium/gpu/config/gpu_info_collector_linux.cc
'';
qmakeFlags = optional enableProprietaryCodecs "WEBENGINE_CONFIG+=use_proprietary_codecs";
propagatedBuildInputs = [
# Image formats
libjpeg libpng libtiff libwebp
# Video formats
srtp libvpx
# Audio formats
libopus
# Text rendering
harfbuzz icu
]
++ optionals (!stdenv.isDarwin) [
dbus zlib minizip snappy nss protobuf jsoncpp libevent
# Audio formats
alsaLib
# Text rendering
fontconfig freetype
libcap
pciutils
# X11 libs
xlibs.xrandr libXScrnSaver libXcursor libXrandr xlibs.libpciaccess libXtst
xlibs.libXcomposite
];
patches = optional stdenv.needsPax ./qtwebengine-paxmark-mksnapshot.patch;
postInstall = ''
cat > $out/libexec/qt.conf <<EOF
[Paths]
Prefix = ..
EOF
paxmark m $out/libexec/QtWebEngineProcess
moveToOutput "$qtQmlPrefix" "$bin"
'';
}

View file

@ -1,325 +0,0 @@
# DO NOT EDIT! This file is generated automatically by fetch-kde-qt.sh
{ fetchurl, mirror }:
{
qt3d = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qt3d-opensource-src-5.8.0.tar.xz";
sha256 = "1rca1k8lf0xy2x1w3kp9rnpi77bbrm8v7db302n9a8cjziv4a8is";
name = "qt3d-opensource-src-5.8.0.tar.xz";
};
};
qtactiveqt = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtactiveqt-opensource-src-5.8.0.tar.xz";
sha256 = "1a9m87chmp2m3ljadryh9ggvwpvclmazz081h3p68n092dbl2ylj";
name = "qtactiveqt-opensource-src-5.8.0.tar.xz";
};
};
qtandroidextras = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtandroidextras-opensource-src-5.8.0.tar.xz";
sha256 = "1wgbxi579fdnripp481qhcqma95hm4zcc16n4ljjpl0yzn1zx8qa";
name = "qtandroidextras-opensource-src-5.8.0.tar.xz";
};
};
qtbase = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtbase-opensource-src-5.8.0.tar.xz";
sha256 = "01f07yjly7y24njl2h4hyknmi7pf8yd9gky23szcfkd40ap12wf1";
name = "qtbase-opensource-src-5.8.0.tar.xz";
};
};
qtcanvas3d = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtcanvas3d-opensource-src-5.8.0.tar.xz";
sha256 = "18yaikbwk4d7sh09psi3kjn1mxjp4d2f3qchfzgq5x96yn8gfijl";
name = "qtcanvas3d-opensource-src-5.8.0.tar.xz";
};
};
qtcharts = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtcharts-opensource-src-5.8.0.tar.xz";
sha256 = "11m5g1fxip6z2xk1z6g6h4rq7v282qbkxflan8hs87hadnzars03";
name = "qtcharts-opensource-src-5.8.0.tar.xz";
};
};
qtconnectivity = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtconnectivity-opensource-src-5.8.0.tar.xz";
sha256 = "1w97na5s420y08dcydqinbqb0rd9h4pfdnjbwslr0qvzsvlh2bbv";
name = "qtconnectivity-opensource-src-5.8.0.tar.xz";
};
};
qtdatavis3d = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtdatavis3d-opensource-src-5.8.0.tar.xz";
sha256 = "1n2vdf6n7pr9xrjwbvbar899q74shx6cy19x32adxfn2iilygwbp";
name = "qtdatavis3d-opensource-src-5.8.0.tar.xz";
};
};
qtdeclarative = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtdeclarative-opensource-src-5.8.0.tar.xz";
sha256 = "0ilaf2sprpk9fg2j3905hxnhm0xbnm88ppk4zifp7n0jmnwix51j";
name = "qtdeclarative-opensource-src-5.8.0.tar.xz";
};
};
qtdoc = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtdoc-opensource-src-5.8.0.tar.xz";
sha256 = "13jpml9hdcxvf8j2033x5liw26r3q8idpjmx2rij63w2956c84ii";
name = "qtdoc-opensource-src-5.8.0.tar.xz";
};
};
qtgamepad = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtgamepad-opensource-src-5.8.0.tar.xz";
sha256 = "0dwcrq60h802z694h4108figlr3yvp8fpzhwjzbjm503v8yaxw5j";
name = "qtgamepad-opensource-src-5.8.0.tar.xz";
};
};
qtgraphicaleffects = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtgraphicaleffects-opensource-src-5.8.0.tar.xz";
sha256 = "06frknb7m8bgg55rs7jjm61iziisy2ykzrrc5dy3vj0aad89najz";
name = "qtgraphicaleffects-opensource-src-5.8.0.tar.xz";
};
};
qtimageformats = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtimageformats-opensource-src-5.8.0.tar.xz";
sha256 = "0vv0wh5q5sih294x661djzwvgdwy7r6xpnxsc111k5hwq7m5w13m";
name = "qtimageformats-opensource-src-5.8.0.tar.xz";
};
};
qtlocation = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtlocation-opensource-src-5.8.0.tar.xz";
sha256 = "1fqssa8rhq83lnxjcdh4ijqck3lmqglpk8yax8x17w49v6gf78a8";
name = "qtlocation-opensource-src-5.8.0.tar.xz";
};
};
qtmacextras = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtmacextras-opensource-src-5.8.0.tar.xz";
sha256 = "049lbxy6yxv7yii7zxibfbix0q2p8fn58dsbc33rn40gbs7rj9zf";
name = "qtmacextras-opensource-src-5.8.0.tar.xz";
};
};
qtmultimedia = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtmultimedia-opensource-src-5.8.0.tar.xz";
sha256 = "01sakngvsqr90qhrxyghfqdpddpxwbjyzzhm34k0hlpr6i409g58";
name = "qtmultimedia-opensource-src-5.8.0.tar.xz";
};
};
qtnetworkauth = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtnetworkauth-opensource-src-5.8.0.tar.xz";
sha256 = "1hz4lcm4cai56v0q7h1q6zc29ykkb2191iqmf8h7l5l9m71q2mb1";
name = "qtnetworkauth-opensource-src-5.8.0.tar.xz";
};
};
qtpurchasing = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtpurchasing-opensource-src-5.8.0.tar.xz";
sha256 = "0mdkw73yx1csz9mf3wl0w1x1b8cv9j5px4nvakrknkjzaa9qgzdk";
name = "qtpurchasing-opensource-src-5.8.0.tar.xz";
};
};
qtquickcontrols = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtquickcontrols-opensource-src-5.8.0.tar.xz";
sha256 = "09mkswxw7wa2l8xz9fbblxr1pbi86hggis55j4k8ifnrrw60vrq4";
name = "qtquickcontrols-opensource-src-5.8.0.tar.xz";
};
};
qtquickcontrols2 = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtquickcontrols2-opensource-src-5.8.0.tar.xz";
sha256 = "06yy98x4vic2yrlpp83gf4kvl7kd93q62k178w0cy4sgqxp8d6dh";
name = "qtquickcontrols2-opensource-src-5.8.0.tar.xz";
};
};
qtscript = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtscript-opensource-src-5.8.0.tar.xz";
sha256 = "1lssbsjf2p2ag02fjq6k6vk7vywhj4jsl286r2fqi78q5lfvjfi9";
name = "qtscript-opensource-src-5.8.0.tar.xz";
};
};
qtscxml = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtscxml-opensource-src-5.8.0.tar.xz";
sha256 = "1i4xl24q4i32mbhyndrwaz0xj79d9n84s320gmkf5rwnfcwrvfxn";
name = "qtscxml-opensource-src-5.8.0.tar.xz";
};
};
qtsensors = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtsensors-opensource-src-5.8.0.tar.xz";
sha256 = "15p7bp21yj4cdl5yfc9qnn4lhhiwiwx3b71lrb431kgqxhwhcp9s";
name = "qtsensors-opensource-src-5.8.0.tar.xz";
};
};
qtserialbus = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtserialbus-opensource-src-5.8.0.tar.xz";
sha256 = "02n1b1wrvfg6c7z15c5c5gv9r5gd4pp58jrd1a8d8fg3ybcksd2q";
name = "qtserialbus-opensource-src-5.8.0.tar.xz";
};
};
qtserialport = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtserialport-opensource-src-5.8.0.tar.xz";
sha256 = "1b86al3zn1pxyk0n59vh8bqxrpz2m0j33ygclaqbxl1sszg7ycaj";
name = "qtserialport-opensource-src-5.8.0.tar.xz";
};
};
qtspeech = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtspeech-opensource-src-5.8.0.tar.xz";
sha256 = "0i2cx1b6ssj56p5blf7n16bbrq1g0hb27m3b5r6dh6py7mcq2spi";
name = "qtspeech-opensource-src-5.8.0.tar.xz";
};
};
qtsvg = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtsvg-opensource-src-5.8.0.tar.xz";
sha256 = "12fwzbp28szqw1sk3flb8i6xnxgl94siwyy41ffdmd0s44f1jwwq";
name = "qtsvg-opensource-src-5.8.0.tar.xz";
};
};
qttools = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qttools-opensource-src-5.8.0.tar.xz";
sha256 = "10wx4vydj91yag30457c7azx4ihrwky42l7zzwkbmdlksdv8xv4m";
name = "qttools-opensource-src-5.8.0.tar.xz";
};
};
qttranslations = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qttranslations-opensource-src-5.8.0.tar.xz";
sha256 = "0bpwqclidji12f3f20hfpafr1b7b9wc7nhp4yhms1hhbqlpgfz1v";
name = "qttranslations-opensource-src-5.8.0.tar.xz";
};
};
qtvirtualkeyboard = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtvirtualkeyboard-opensource-src-5.8.0.tar.xz";
sha256 = "0772yhb8w6rzxqgrdmvbw61vk2gagcs9zics56v3a2ckknrzbz9m";
name = "qtvirtualkeyboard-opensource-src-5.8.0.tar.xz";
};
};
qtwayland = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtwayland-opensource-src-5.8.0.tar.xz";
sha256 = "06ilh55vaxbkyv7irw0n11gxgc34ypx2qhqawxzy7kllzg9zcl7z";
name = "qtwayland-opensource-src-5.8.0.tar.xz";
};
};
qtwebchannel = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtwebchannel-opensource-src-5.8.0.tar.xz";
sha256 = "0jhbgp9rdp5lpwjrykxmg4lb60wk7gm3dldz5kp3b8ms2dab3xav";
name = "qtwebchannel-opensource-src-5.8.0.tar.xz";
};
};
qtwebengine = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtwebengine-opensource-src-5.8.0.tar.xz";
sha256 = "1gkrvb8wa04p91hras2pa7i26n1q5xgsiq5gfw3fc488cvqj4g92";
name = "qtwebengine-opensource-src-5.8.0.tar.xz";
};
};
qtwebkit = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/community_releases/5.8/5.8.0-final/qtwebkit-opensource-src-5.8.0.tar.xz";
sha256 = "1v0vj6slyh19mjrrpbqdzb47fr0f4xk7bc8803xjzybb11h8dbkr";
name = "qtwebkit-opensource-src-5.8.0.tar.xz";
};
};
qtwebkit-examples = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/community_releases/5.8/5.8.0-final/qtwebkit-examples-opensource-src-5.8.0.tar.xz";
sha256 = "18ar35mg32knm3r0wgqv1hmxl9pqhi1y0yhd3lbskca0f0csxiw4";
name = "qtwebkit-examples-opensource-src-5.8.0.tar.xz";
};
};
qtwebsockets = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtwebsockets-opensource-src-5.8.0.tar.xz";
sha256 = "1xa5p36grqxz3fa08amn7r3dy6k28g6y0gkc6jgj7lyhjzr0l4da";
name = "qtwebsockets-opensource-src-5.8.0.tar.xz";
};
};
qtwebview = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtwebview-opensource-src-5.8.0.tar.xz";
sha256 = "1lvzab6vjmpsl3rq73afhvjv6hkkgj19sl6sd03fgx0iikfd9n5p";
name = "qtwebview-opensource-src-5.8.0.tar.xz";
};
};
qtwinextras = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtwinextras-opensource-src-5.8.0.tar.xz";
sha256 = "1761qaqbrsqqpznv2mrkc44fk4x3lc13x6s0z3ahjms6pna7pzr7";
name = "qtwinextras-opensource-src-5.8.0.tar.xz";
};
};
qtx11extras = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtx11extras-opensource-src-5.8.0.tar.xz";
sha256 = "03i8lk9qcdf8h2k4f3rkqqkzbrlnyaspv9mgjkn4k61s2asz5mxy";
name = "qtx11extras-opensource-src-5.8.0.tar.xz";
};
};
qtxmlpatterns = {
version = "5.8.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.8/5.8.0/submodules/qtxmlpatterns-opensource-src-5.8.0.tar.xz";
sha256 = "016s75j2cml7kc8scdm9a6pmxm8jhs424lml2h9znm1flmgadzvv";
name = "qtxmlpatterns-opensource-src-5.8.0.tar.xz";
};
};
}

View file

@ -0,0 +1,3 @@
WGET_ARGS=( http://download.qt.io/official_releases/qt/5.9/5.9.0/submodules/ \
http://download.qt.io/community_releases/5.9/5.9.0-final/ \
-A '*.tar.xz' )

View file

@ -1,7 +1,7 @@
Index: qtbase-opensource-src-5.8.0/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
Index: qtbase-opensource-src-5.9.0/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
===================================================================
--- qtbase-opensource-src-5.8.0.orig/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
+++ qtbase-opensource-src-5.8.0/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
--- qtbase-opensource-src-5.9.0.orig/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
+++ qtbase-opensource-src-5.9.0/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
@@ -9,30 +9,6 @@ if (CMAKE_VERSION VERSION_LESS 3.0.0)
endif()
!!ENDIF
@ -97,7 +97,7 @@ Index: qtbase-opensource-src-5.8.0/mkspecs/features/data/cmake/Qt5BasicConfig.cm
)
!!ELSE
set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS \"\")
@@ -255,7 +221,7 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME
@@ -281,7 +247,7 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME
!!IF isEmpty(CMAKE_DEBUG_TYPE)
!!IF !isEmpty(CMAKE_STATIC_WINDOWS_BUILD)
!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
@ -106,7 +106,7 @@ Index: qtbase-opensource-src-5.8.0/mkspecs/features/data/cmake/Qt5BasicConfig.cm
!!ELSE // CMAKE_LIB_DIR_IS_ABSOLUTE
if (EXISTS \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
!!ENDIF // CMAKE_LIB_DIR_IS_ABSOLUTE
@@ -263,13 +229,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME
@@ -289,13 +255,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME
!!ELSE // CMAKE_STATIC_WINDOWS_BUILD
if (EXISTS
!!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE)
@ -122,7 +122,7 @@ Index: qtbase-opensource-src-5.8.0/mkspecs/features/data/cmake/Qt5BasicConfig.cm
!!ELSE
\"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
!!ENDIF
@@ -292,7 +258,7 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME
@@ -318,7 +284,7 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME
!!IF isEmpty(CMAKE_RELEASE_TYPE)
!!IF !isEmpty(CMAKE_STATIC_WINDOWS_BUILD)
!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
@ -131,7 +131,7 @@ Index: qtbase-opensource-src-5.8.0/mkspecs/features/data/cmake/Qt5BasicConfig.cm
!!ELSE // CMAKE_LIB_DIR_IS_ABSOLUTE
if (EXISTS \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
!!ENDIF // CMAKE_LIB_DIR_IS_ABSOLUTE
@@ -300,13 +266,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME
@@ -326,13 +292,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME
!!ELSE // CMAKE_STATIC_WINDOWS_BUILD
if (EXISTS
!!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE)
@ -147,7 +147,7 @@ Index: qtbase-opensource-src-5.8.0/mkspecs/features/data/cmake/Qt5BasicConfig.cm
!!ELSE
\"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
!!ENDIF
@@ -328,11 +294,7 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME
@@ -354,11 +320,7 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME
macro(_populate_$${CMAKE_MODULE_NAME}_plugin_properties Plugin Configuration PLUGIN_LOCATION)
set_property(TARGET Qt5::${Plugin} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration})
@ -160,10 +160,10 @@ Index: qtbase-opensource-src-5.8.0/mkspecs/features/data/cmake/Qt5BasicConfig.cm
_qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location})
set_target_properties(Qt5::${Plugin} PROPERTIES
\"IMPORTED_LOCATION_${Configuration}\" ${imported_location}
Index: qtbase-opensource-src-5.8.0/src/gui/Qt5GuiConfigExtras.cmake.in
Index: qtbase-opensource-src-5.9.0/src/gui/Qt5GuiConfigExtras.cmake.in
===================================================================
--- qtbase-opensource-src-5.8.0.orig/src/gui/Qt5GuiConfigExtras.cmake.in
+++ qtbase-opensource-src-5.8.0/src/gui/Qt5GuiConfigExtras.cmake.in
--- qtbase-opensource-src-5.9.0.orig/src/gui/Qt5GuiConfigExtras.cmake.in
+++ qtbase-opensource-src-5.9.0/src/gui/Qt5GuiConfigExtras.cmake.in
@@ -2,7 +2,7 @@
!!IF !isEmpty(CMAKE_ANGLE_EGL_DLL_RELEASE)
@ -189,10 +189,10 @@ Index: qtbase-opensource-src-5.8.0/src/gui/Qt5GuiConfigExtras.cmake.in
!!ELSE
set(imported_implib \"$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\")
!!ENDIF
Index: qtbase-opensource-src-5.8.0/src/widgets/Qt5WidgetsConfigExtras.cmake.in
Index: qtbase-opensource-src-5.9.0/src/widgets/Qt5WidgetsConfigExtras.cmake.in
===================================================================
--- qtbase-opensource-src-5.8.0.orig/src/widgets/Qt5WidgetsConfigExtras.cmake.in
+++ qtbase-opensource-src-5.8.0/src/widgets/Qt5WidgetsConfigExtras.cmake.in
--- qtbase-opensource-src-5.9.0.orig/src/widgets/Qt5WidgetsConfigExtras.cmake.in
+++ qtbase-opensource-src-5.9.0/src/widgets/Qt5WidgetsConfigExtras.cmake.in
@@ -3,7 +3,7 @@ if (NOT TARGET Qt5::uic)
add_executable(Qt5::uic IMPORTED)
@ -202,10 +202,10 @@ Index: qtbase-opensource-src-5.8.0/src/widgets/Qt5WidgetsConfigExtras.cmake.in
!!ELSE
set(imported_location \"$${CMAKE_BIN_DIR}uic$$CMAKE_BIN_SUFFIX\")
!!ENDIF
Index: qtbase-opensource-src-5.8.0/src/corelib/Qt5CoreConfigExtras.cmake.in
Index: qtbase-opensource-src-5.9.0/src/corelib/Qt5CoreConfigExtras.cmake.in
===================================================================
--- qtbase-opensource-src-5.8.0.orig/src/corelib/Qt5CoreConfigExtras.cmake.in
+++ qtbase-opensource-src-5.8.0/src/corelib/Qt5CoreConfigExtras.cmake.in
--- qtbase-opensource-src-5.9.0.orig/src/corelib/Qt5CoreConfigExtras.cmake.in
+++ qtbase-opensource-src-5.9.0/src/corelib/Qt5CoreConfigExtras.cmake.in
@@ -3,7 +3,7 @@ if (NOT TARGET Qt5::qmake)
add_executable(Qt5::qmake IMPORTED)
@ -251,10 +251,10 @@ Index: qtbase-opensource-src-5.8.0/src/corelib/Qt5CoreConfigExtras.cmake.in
!!ELSE
set(imported_location \"$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_DEBUG}\")
!!ENDIF
Index: qtbase-opensource-src-5.8.0/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in
Index: qtbase-opensource-src-5.9.0/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in
===================================================================
--- qtbase-opensource-src-5.8.0.orig/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in
+++ qtbase-opensource-src-5.8.0/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in
--- qtbase-opensource-src-5.9.0.orig/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in
+++ qtbase-opensource-src-5.9.0/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in
@@ -1,6 +1,6 @@
!!IF isEmpty(CMAKE_INSTALL_DATA_DIR_IS_ABSOLUTE)
@ -263,10 +263,10 @@ Index: qtbase-opensource-src-5.8.0/src/corelib/Qt5CoreConfigExtrasMkspecDirForIn
!!ELSE
set(_qt5_corelib_extra_includes \"$${CMAKE_INSTALL_DATA_DIR}mkspecs/$${CMAKE_MKSPEC}\")
!!ENDIF
Index: qtbase-opensource-src-5.8.0/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in
Index: qtbase-opensource-src-5.9.0/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in
===================================================================
--- qtbase-opensource-src-5.8.0.orig/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in
+++ qtbase-opensource-src-5.8.0/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in
--- qtbase-opensource-src-5.9.0.orig/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in
+++ qtbase-opensource-src-5.9.0/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in
@@ -1,6 +1,6 @@
!!IF isEmpty(CMAKE_HOST_DATA_DIR_IS_ABSOLUTE)
@ -275,10 +275,10 @@ Index: qtbase-opensource-src-5.8.0/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmak
!!ELSE
set(_qt5_corelib_extra_includes \"$${CMAKE_HOST_DATA_DIR}mkspecs/$${CMAKE_MKSPEC}\")
!!ENDIF
Index: qtbase-opensource-src-5.8.0/src/dbus/Qt5DBusConfigExtras.cmake.in
Index: qtbase-opensource-src-5.9.0/src/dbus/Qt5DBusConfigExtras.cmake.in
===================================================================
--- qtbase-opensource-src-5.8.0.orig/src/dbus/Qt5DBusConfigExtras.cmake.in
+++ qtbase-opensource-src-5.8.0/src/dbus/Qt5DBusConfigExtras.cmake.in
--- qtbase-opensource-src-5.9.0.orig/src/dbus/Qt5DBusConfigExtras.cmake.in
+++ qtbase-opensource-src-5.9.0/src/dbus/Qt5DBusConfigExtras.cmake.in
@@ -3,7 +3,7 @@ if (NOT TARGET Qt5::qdbuscpp2xml)
add_executable(Qt5::qdbuscpp2xml IMPORTED)
@ -297,10 +297,10 @@ Index: qtbase-opensource-src-5.8.0/src/dbus/Qt5DBusConfigExtras.cmake.in
!!ELSE
set(imported_location \"$${CMAKE_BIN_DIR}qdbusxml2cpp$$CMAKE_BIN_SUFFIX\")
!!ENDIF
Index: qtbase-opensource-src-5.8.0/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in
Index: qtbase-opensource-src-5.9.0/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in
===================================================================
--- qtbase-opensource-src-5.8.0.orig/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in
+++ qtbase-opensource-src-5.8.0/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in
--- qtbase-opensource-src-5.9.0.orig/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in
+++ qtbase-opensource-src-5.9.0/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in
@@ -2,10 +2,10 @@
add_library(Qt5::$$CMAKE_PLUGIN_NAME MODULE IMPORTED)
@ -314,10 +314,10 @@ Index: qtbase-opensource-src-5.8.0/mkspecs/features/data/cmake/Qt5PluginTarget.c
!!ENDIF
list(APPEND Qt5$${CMAKE_MODULE_NAME}_PLUGINS Qt5::$$CMAKE_PLUGIN_NAME)
Index: qtbase-opensource-src-5.8.0/mkspecs/features/create_cmake.prf
Index: qtbase-opensource-src-5.9.0/mkspecs/features/create_cmake.prf
===================================================================
--- qtbase-opensource-src-5.8.0.orig/mkspecs/features/create_cmake.prf
+++ qtbase-opensource-src-5.8.0/mkspecs/features/create_cmake.prf
--- qtbase-opensource-src-5.9.0.orig/mkspecs/features/create_cmake.prf
+++ qtbase-opensource-src-5.9.0/mkspecs/features/create_cmake.prf
@@ -136,28 +136,28 @@ contains(CONFIG, plugin) {
win32 {

View file

@ -1,8 +1,8 @@
Index: qtbase-opensource-src-5.8.0/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
Index: qtbase-opensource-src-5.9.0/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
===================================================================
--- qtbase-opensource-src-5.8.0.orig/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
+++ qtbase-opensource-src-5.8.0/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
@@ -258,12 +258,9 @@ void TableGenerator::initPossibleLocatio
--- qtbase-opensource-src-5.9.0.orig/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
+++ qtbase-opensource-src-5.9.0/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
@@ -265,12 +265,9 @@ void TableGenerator::initPossibleLocatio
m_possibleLocations.reserve(7);
if (qEnvironmentVariableIsSet("QTCOMPOSE"))
m_possibleLocations.append(QString::fromLocal8Bit(qgetenv("QTCOMPOSE")));

View file

@ -9,7 +9,7 @@
dbus, dconf, fontconfig, freetype, glib, gtk3, harfbuzz, icu, libX11, libXcomposite,
libXcursor, libXext, libXi, libXrender, libinput, libjpeg, libpng, libtiff,
libxcb, libxkbcommon, libxml2, libxslt, openssl, pcre16, sqlite, udev,
libxcb, libxkbcommon, libxml2, libxslt, openssl, pcre2, sqlite, udev,
xcbutil, xcbutilimage, xcbutilkeysyms, xcbutilrenderutil, xcbutilwm, xlibs,
zlib,
@ -36,7 +36,7 @@ stdenv.mkDerivation {
propagatedBuildInputs =
[
libxml2 libxslt openssl pcre16 sqlite zlib
libxml2 libxslt openssl pcre2 sqlite zlib
# Text rendering
harfbuzz icu

View file

@ -1,9 +1,9 @@
Index: qtbase-opensource-src-5.8.0/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
Index: qtbase-opensource-src-5.9.0/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
===================================================================
--- qtbase-opensource-src-5.8.0.orig/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
+++ qtbase-opensource-src-5.8.0/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
@@ -576,7 +576,14 @@ QFunctionPointer QGLXContext::getProcAdd
#ifndef QT_NO_LIBRARY
--- qtbase-opensource-src-5.9.0.orig/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
+++ qtbase-opensource-src-5.9.0/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
@@ -580,7 +580,14 @@ QFunctionPointer QGLXContext::getProcAdd
#if QT_CONFIG(library)
extern const QString qt_gl_library_name();
// QLibrary lib(qt_gl_library_name());
+ // Check system library paths first

View file

@ -1,9 +1,9 @@
Index: qtbase-opensource-src-5.8.0/src/plugins/platforms/xcb/qxcbcursor.cpp
Index: qtbase-opensource-src-5.9.0/src/plugins/platforms/xcb/qxcbcursor.cpp
===================================================================
--- qtbase-opensource-src-5.8.0.orig/src/plugins/platforms/xcb/qxcbcursor.cpp
+++ qtbase-opensource-src-5.8.0/src/plugins/platforms/xcb/qxcbcursor.cpp
@@ -309,13 +309,13 @@ QXcbCursor::QXcbCursor(QXcbConnection *c
#if defined(XCB_USE_XLIB) && !defined(QT_NO_LIBRARY)
--- qtbase-opensource-src-5.9.0.orig/src/plugins/platforms/xcb/qxcbcursor.cpp
+++ qtbase-opensource-src-5.9.0/src/plugins/platforms/xcb/qxcbcursor.cpp
@@ -311,10 +311,10 @@ QXcbCursor::QXcbCursor(QXcbConnection *c
#if defined(XCB_USE_XLIB) && QT_CONFIG(library)
static bool function_ptrs_not_initialized = true;
if (function_ptrs_not_initialized) {
- QLibrary xcursorLib(QLatin1String("Xcursor"), 1);
@ -15,6 +15,3 @@ Index: qtbase-opensource-src-5.8.0/src/plugins/platforms/xcb/qxcbcursor.cpp
xcursorFound = xcursorLib.load();
}
if (xcursorFound) {
ptrXcursorLibraryLoadCursor =
(PtrXcursorLibraryLoadCursor) xcursorLib.resolve("XcursorLibraryLoadCursor");
ptrXcursorLibraryGetTheme =

View file

@ -1,8 +1,8 @@
Index: qtbase-opensource-src-5.8.0/src/network/kernel/qdnslookup_unix.cpp
Index: qtbase-opensource-src-5.9.0/src/network/kernel/qdnslookup_unix.cpp
===================================================================
--- qtbase-opensource-src-5.8.0.orig/src/network/kernel/qdnslookup_unix.cpp
+++ qtbase-opensource-src-5.8.0/src/network/kernel/qdnslookup_unix.cpp
@@ -90,7 +90,7 @@ static bool resolveLibraryInternal()
--- qtbase-opensource-src-5.9.0.orig/src/network/kernel/qdnslookup_unix.cpp
+++ qtbase-opensource-src-5.9.0/src/network/kernel/qdnslookup_unix.cpp
@@ -92,7 +92,7 @@ static bool resolveLibraryInternal()
if (!lib.load())
#endif
{
@ -11,11 +11,11 @@ Index: qtbase-opensource-src-5.8.0/src/network/kernel/qdnslookup_unix.cpp
if (!lib.load())
return false;
}
Index: qtbase-opensource-src-5.8.0/src/network/kernel/qhostinfo_unix.cpp
Index: qtbase-opensource-src-5.9.0/src/network/kernel/qhostinfo_unix.cpp
===================================================================
--- qtbase-opensource-src-5.8.0.orig/src/network/kernel/qhostinfo_unix.cpp
+++ qtbase-opensource-src-5.8.0/src/network/kernel/qhostinfo_unix.cpp
@@ -100,7 +100,7 @@ static bool resolveLibraryInternal()
--- qtbase-opensource-src-5.9.0.orig/src/network/kernel/qhostinfo_unix.cpp
+++ qtbase-opensource-src-5.9.0/src/network/kernel/qhostinfo_unix.cpp
@@ -102,7 +102,7 @@ static bool resolveLibraryInternal()
if (!lib.load())
#endif
{

View file

@ -1,8 +1,8 @@
Index: qtbase-opensource-src-5.8.0/src/corelib/kernel/qcoreapplication.cpp
Index: qtbase-opensource-src-5.9.0/src/corelib/kernel/qcoreapplication.cpp
===================================================================
--- qtbase-opensource-src-5.8.0.orig/src/corelib/kernel/qcoreapplication.cpp
+++ qtbase-opensource-src-5.8.0/src/corelib/kernel/qcoreapplication.cpp
@@ -2476,6 +2476,15 @@ QStringList QCoreApplication::libraryPat
--- qtbase-opensource-src-5.9.0.orig/src/corelib/kernel/qcoreapplication.cpp
+++ qtbase-opensource-src-5.9.0/src/corelib/kernel/qcoreapplication.cpp
@@ -2533,6 +2533,15 @@ QStringList QCoreApplication::libraryPat
QStringList *app_libpaths = new QStringList;
coreappdata()->app_libpaths.reset(app_libpaths);

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