Merge branch 'master' into f/nvim-qt
This commit is contained in:
@@ -25,7 +25,7 @@
|
|||||||
<!--============================================================-->
|
<!--============================================================-->
|
||||||
|
|
||||||
<section xml:id="sec-cross-packaging">
|
<section xml:id="sec-cross-packaging">
|
||||||
<title>Packing in a cross-friendly manner</title>
|
<title>Packaging in a cross-friendly manner</title>
|
||||||
|
|
||||||
<section>
|
<section>
|
||||||
<title>Platform parameters</title>
|
<title>Platform parameters</title>
|
||||||
@@ -132,9 +132,23 @@
|
|||||||
|
|
||||||
<section xml:id="sec-cross-usage">
|
<section xml:id="sec-cross-usage">
|
||||||
<title>Cross-building packages</title>
|
<title>Cross-building packages</title>
|
||||||
|
<note><para>
|
||||||
|
More information needs to moved from the old wiki, especially <link xlink:href="https://nixos.org/wiki/CrossCompiling" />, for this section.
|
||||||
|
</para></note>
|
||||||
<para>
|
<para>
|
||||||
To be written.
|
Many sources (manual, wiki, etc) probably mention passing <varname>system</varname>, <varname>platform</varname>, and, optionally, <varname>crossSystem</varname> to nixpkgs:
|
||||||
This is basically unchanged so see the old wiki for now.
|
<literal>import <nixpkgs> { system = ..; platform = ..; crossSystem = ..; }</literal>.
|
||||||
|
<varname>system</varname> and <varname>platform</varname> together determine the system on which packages are built, and <varname>crossSystem</varname> specifies the platform on which packages are ultimately intended to run, if it is different.
|
||||||
|
This still works, but with more recent changes, one can alternatively pass <varname>localSystem</varname>, containing <varname>system</varname> and <varname>platform</varname>, for symmetry.
|
||||||
|
</para>
|
||||||
|
<para>
|
||||||
|
One would think that <varname>localSystem</varname> and <varname>crossSystem</varname> overlap horribly with the three <varname>*Platforms</varname> (<varname>buildPlatform</varname>, <varname>hostPlatform,</varname> and <varname>targetPlatform</varname>; see <varname>stage.nix</varname> or the manual).
|
||||||
|
Actually, those identifiers are purposefully not used here to draw a subtle but important distinction:
|
||||||
|
While the granularity of having 3 platforms is necessary to properly *build* packages, it is overkill for specifying the user's *intent* when making a build plan or package set.
|
||||||
|
A simple "build vs deploy" dichotomy is adequate: the sliding window principle described in the previous section shows how to interpolate between the these two "end points" to get the 3 platform triple for each bootstrapping stage.
|
||||||
|
That means for any package a given package set, even those not bound on the top level but only reachable via dependencies or <varname>buildPackages</varname>, the three platforms will be defined as one of <varname>localSystem</varname> or <varname>crossSystem</varname>, with the former replacing the latter as one traverses build-time dependencies.
|
||||||
|
A last simple difference then is <varname>crossSystem</varname> should be null when one doesn't want to cross-compile, while the <varname>*Platform</varname>s are always non-null.
|
||||||
|
<varname>localSystem</varname> is always non-null.
|
||||||
</para>
|
</para>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
|
|||||||
@@ -1111,6 +1111,34 @@ functions.</para>
|
|||||||
<variablelist>
|
<variablelist>
|
||||||
|
|
||||||
|
|
||||||
|
<varlistentry xml:id='fun-makeWrapper'>
|
||||||
|
<term><function>makeWrapper</function>
|
||||||
|
<replaceable>executable</replaceable>
|
||||||
|
<replaceable>wrapperfile</replaceable>
|
||||||
|
<replaceable>args</replaceable></term>
|
||||||
|
<listitem><para>Constructs a wrapper for a program with various
|
||||||
|
possible arguments. For example:
|
||||||
|
|
||||||
|
<programlisting>
|
||||||
|
# adds `FOOBAR=baz` to `$out/bin/foo`’s environment
|
||||||
|
makeWrapper $out/bin/foo $wrapperfile --set FOOBAR baz
|
||||||
|
|
||||||
|
# prefixes the binary paths of `hello` and `git`
|
||||||
|
# Be advised that paths often should be patched in directly
|
||||||
|
# (via string replacements or in `configurePhase`).
|
||||||
|
makeWrapper $out/bin/foo $wrapperfile --prefix PATH : ${lib.makeBinPath [ hello git ]}
|
||||||
|
</programlisting>
|
||||||
|
|
||||||
|
There’s many more kinds of arguments, they are documented in
|
||||||
|
<literal>nixpkgs/pkgs/build-support/setup-hooks/make-wrapper.sh</literal>.</para>
|
||||||
|
|
||||||
|
<para><literal>wrapProgram</literal> is a convenience function you probably
|
||||||
|
want to use most of the time.</para>
|
||||||
|
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
|
|
||||||
<varlistentry xml:id='fun-substitute'>
|
<varlistentry xml:id='fun-substitute'>
|
||||||
<term><function>substitute</function>
|
<term><function>substitute</function>
|
||||||
<replaceable>infile</replaceable>
|
<replaceable>infile</replaceable>
|
||||||
@@ -1268,6 +1296,22 @@ someVar=$(stripHash $name)
|
|||||||
|
|
||||||
</para></listitem>
|
</para></listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
||||||
|
|
||||||
|
<varlistentry xml:id='fun-wrapProgram'>
|
||||||
|
<term><function>wrapProgram</function>
|
||||||
|
<replaceable>executable</replaceable>
|
||||||
|
<replaceable>makeWrapperArgs</replaceable></term>
|
||||||
|
<listitem><para>Convenience function for <literal>makeWrapper</literal>
|
||||||
|
that automatically creates a sane wrapper file
|
||||||
|
|
||||||
|
It takes all the same arguments as <literal>makeWrapper</literal>,
|
||||||
|
except for <literal>--argv0</literal>.</para>
|
||||||
|
|
||||||
|
<para>It cannot be applied multiple times, since it will overwrite the wrapper
|
||||||
|
file.</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
|
|
||||||
</variablelist>
|
</variablelist>
|
||||||
|
|||||||
@@ -81,6 +81,7 @@
|
|||||||
c0dehero = "CodeHero <codehero@nerdpol.ch>";
|
c0dehero = "CodeHero <codehero@nerdpol.ch>";
|
||||||
calrama = "Moritz Maxeiner <moritz@ucworks.org>";
|
calrama = "Moritz Maxeiner <moritz@ucworks.org>";
|
||||||
campadrenalin = "Philip Horger <campadrenalin@gmail.com>";
|
campadrenalin = "Philip Horger <campadrenalin@gmail.com>";
|
||||||
|
canndrew = "Andrew Cann <shum@canndrew.org>";
|
||||||
carlsverre = "Carl Sverre <accounts@carlsverre.com>";
|
carlsverre = "Carl Sverre <accounts@carlsverre.com>";
|
||||||
cdepillabout = "Dennis Gosnell <cdep.illabout@gmail.com>";
|
cdepillabout = "Dennis Gosnell <cdep.illabout@gmail.com>";
|
||||||
cfouche = "Chaddaï Fouché <chaddai.fouche@gmail.com>";
|
cfouche = "Chaddaï Fouché <chaddai.fouche@gmail.com>";
|
||||||
@@ -139,6 +140,7 @@
|
|||||||
dtzWill = "Will Dietz <nix@wdtz.org>";
|
dtzWill = "Will Dietz <nix@wdtz.org>";
|
||||||
e-user = "Alexander Kahl <nixos@sodosopa.io>";
|
e-user = "Alexander Kahl <nixos@sodosopa.io>";
|
||||||
ebzzry = "Rommel Martinez <ebzzry@gmail.com>";
|
ebzzry = "Rommel Martinez <ebzzry@gmail.com>";
|
||||||
|
edanaher = "Evan Danaher <nixos@edanaher.net>";
|
||||||
ederoyd46 = "Matthew Brown <matt@ederoyd.co.uk>";
|
ederoyd46 = "Matthew Brown <matt@ederoyd.co.uk>";
|
||||||
eduarrrd = "Eduard Bachmakov <e.bachmakov@gmail.com>";
|
eduarrrd = "Eduard Bachmakov <e.bachmakov@gmail.com>";
|
||||||
edwtjo = "Edward Tjörnhammar <ed@cflags.cc>";
|
edwtjo = "Edward Tjörnhammar <ed@cflags.cc>";
|
||||||
@@ -360,6 +362,7 @@
|
|||||||
paholg = "Paho Lurie-Gregg <paho@paholg.com>";
|
paholg = "Paho Lurie-Gregg <paho@paholg.com>";
|
||||||
pakhfn = "Fedor Pakhomov <pakhfn@gmail.com>";
|
pakhfn = "Fedor Pakhomov <pakhfn@gmail.com>";
|
||||||
palo = "Ingolf Wanger <palipalo9@googlemail.com>";
|
palo = "Ingolf Wanger <palipalo9@googlemail.com>";
|
||||||
|
paperdigits = "Mica Semrick <mica@silentumbrella.com>";
|
||||||
pashev = "Igor Pashev <pashev.igor@gmail.com>";
|
pashev = "Igor Pashev <pashev.igor@gmail.com>";
|
||||||
pawelpacana = "Paweł Pacana <pawel.pacana@gmail.com>";
|
pawelpacana = "Paweł Pacana <pawel.pacana@gmail.com>";
|
||||||
periklis = "theopompos@gmail.com";
|
periklis = "theopompos@gmail.com";
|
||||||
@@ -460,6 +463,7 @@
|
|||||||
SShrike = "Severen Redwood <severen@shrike.me>";
|
SShrike = "Severen Redwood <severen@shrike.me>";
|
||||||
stephenmw = "Stephen Weinberg <stephen@q5comm.com>";
|
stephenmw = "Stephen Weinberg <stephen@q5comm.com>";
|
||||||
sternenseemann = "Lukas Epple <post@lukasepple.de>";
|
sternenseemann = "Lukas Epple <post@lukasepple.de>";
|
||||||
|
stesie = "Stefan Siegl <stesie@brokenpipe.de>";
|
||||||
steveej = "Stefan Junker <mail@stefanjunker.de>";
|
steveej = "Stefan Junker <mail@stefanjunker.de>";
|
||||||
swarren83 = "Shawn Warren <shawn.w.warren@gmail.com>";
|
swarren83 = "Shawn Warren <shawn.w.warren@gmail.com>";
|
||||||
swistak35 = "Rafał Łasocha <me@swistak35.com>";
|
swistak35 = "Rafał Łasocha <me@swistak35.com>";
|
||||||
|
|||||||
@@ -21,6 +21,7 @@ effect after you run <command>nixos-rebuild</command>.</para>
|
|||||||
<xi:include href="user-mgmt.xml" />
|
<xi:include href="user-mgmt.xml" />
|
||||||
<xi:include href="file-systems.xml" />
|
<xi:include href="file-systems.xml" />
|
||||||
<xi:include href="x-windows.xml" />
|
<xi:include href="x-windows.xml" />
|
||||||
|
<xi:include href="xfce.xml" />
|
||||||
<xi:include href="networking.xml" />
|
<xi:include href="networking.xml" />
|
||||||
<xi:include href="linux-kernel.xml" />
|
<xi:include href="linux-kernel.xml" />
|
||||||
|
|
||||||
|
|||||||
@@ -36,9 +36,8 @@ latter might look like this:
|
|||||||
{ config, pkgs, ... }:
|
{ config, pkgs, ... }:
|
||||||
|
|
||||||
{ services.xserver.enable = true;
|
{ services.xserver.enable = true;
|
||||||
services.xserver.displayManager.kdm.enable = true;
|
services.xserver.displayManager.sddm.enable = true;
|
||||||
services.xserver.desktopManager.kde4.enable = true;
|
services.xserver.desktopManager.kde5.enable = true;
|
||||||
environment.systemPackages = [ pkgs.kde4.kscreensaver ];
|
|
||||||
}
|
}
|
||||||
</programlisting>
|
</programlisting>
|
||||||
|
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ Otherwise, you can only log into a plain undecorated
|
|||||||
<command>xterm</command> window. Thus you should pick one or more of
|
<command>xterm</command> window. Thus you should pick one or more of
|
||||||
the following lines:
|
the following lines:
|
||||||
<programlisting>
|
<programlisting>
|
||||||
services.xserver.desktopManager.kde4.enable = true;
|
services.xserver.desktopManager.kde5.enable = true;
|
||||||
services.xserver.desktopManager.xfce.enable = true;
|
services.xserver.desktopManager.xfce.enable = true;
|
||||||
services.xserver.windowManager.xmonad.enable = true;
|
services.xserver.windowManager.xmonad.enable = true;
|
||||||
services.xserver.windowManager.twm.enable = true;
|
services.xserver.windowManager.twm.enable = true;
|
||||||
@@ -35,9 +35,9 @@ services.xserver.windowManager.icewm.enable = true;
|
|||||||
|
|
||||||
<para>NixOS’s default <emphasis>display manager</emphasis> (the
|
<para>NixOS’s default <emphasis>display manager</emphasis> (the
|
||||||
program that provides a graphical login prompt and manages the X
|
program that provides a graphical login prompt and manages the X
|
||||||
server) is SLiM. You can select KDE’s <command>kdm</command> instead:
|
server) is SLiM. You can select KDE’s <command>sddm</command> instead:
|
||||||
<programlisting>
|
<programlisting>
|
||||||
services.xserver.displayManager.kdm.enable = true;
|
services.xserver.displayManager.sddm.enable = true;
|
||||||
</programlisting>
|
</programlisting>
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,105 @@
|
|||||||
|
<chapter xmlns="http://docbook.org/ns/docbook"
|
||||||
|
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||||
|
xmlns:xi="http://www.w3.org/2001/XInclude"
|
||||||
|
version="5.0"
|
||||||
|
xml:id="sec-xfce">
|
||||||
|
|
||||||
|
<title>Xfce Desktop Environment</title>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
To enable the Xfce Desktop Environment, set
|
||||||
|
<programlisting>
|
||||||
|
services.xserver.desktopManager = {
|
||||||
|
xfce.enable = true;
|
||||||
|
default = "xfce";
|
||||||
|
};
|
||||||
|
</programlisting>
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Optionally, <emphasis>compton</emphasis>
|
||||||
|
can be enabled for nice graphical effects, some example settings:
|
||||||
|
<programlisting>
|
||||||
|
services.compton = {
|
||||||
|
enable = true;
|
||||||
|
fade = true;
|
||||||
|
inactiveOpacity = "0.9";
|
||||||
|
shadow = true;
|
||||||
|
fadeDelta = 4;
|
||||||
|
};
|
||||||
|
</programlisting>
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Some Xfce programs are not installed automatically.
|
||||||
|
To install them manually (system wide), put them into your
|
||||||
|
<literal>environment.systemPackages</literal>.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
NixOS’s default <emphasis>display manager</emphasis>is SLiM.
|
||||||
|
(DM is the program that provides a graphical login prompt
|
||||||
|
and manages the X server.)
|
||||||
|
You can, for example, select KDE’s
|
||||||
|
<command>sddm</command> instead:
|
||||||
|
<programlisting>
|
||||||
|
services.xserver.displayManager.sddm.enable = true;
|
||||||
|
</programlisting>
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<simplesect>
|
||||||
|
<title>Thunar Volume Support</title>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
To enable
|
||||||
|
<emphasis>Thunar</emphasis>
|
||||||
|
volume support, put
|
||||||
|
<programlisting>
|
||||||
|
services.xserver.desktopManager.xfce.enable = true;
|
||||||
|
</programlisting>
|
||||||
|
into your <emphasis>configuration.nix</emphasis>.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
</simplesect>
|
||||||
|
|
||||||
|
<simplesect>
|
||||||
|
<title>Polkit Authentication Agent</title>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
There is no authentication agent automatically installed alongside
|
||||||
|
Xfce. To allow mounting of local (non-removable) filesystems, you
|
||||||
|
will need to install one.
|
||||||
|
|
||||||
|
Installing <emphasis>polkit_gnome</emphasis>, a rebuild, logout and
|
||||||
|
login did the trick.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
</simplesect>
|
||||||
|
|
||||||
|
<simplesect>
|
||||||
|
<title>Troubleshooting</title>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Even after enabling udisks2, volume management might not work.
|
||||||
|
Thunar and/or the desktop takes time to show up.
|
||||||
|
|
||||||
|
Thunar will spit out this kind of message on start
|
||||||
|
(look at journalctl --user -b).
|
||||||
|
|
||||||
|
<programlisting>
|
||||||
|
Thunar:2410): GVFS-RemoteVolumeMonitor-WARNING **: remote volume monitor with dbus name org.gtk.Private.UDisks2VolumeMonitor is not supported
|
||||||
|
</programlisting>
|
||||||
|
|
||||||
|
This is caused by some needed GNOME services not running.
|
||||||
|
This is all fixed by enabling "Launch GNOME services on startup" in
|
||||||
|
the Advanced tab of the Session and Startup settings panel.
|
||||||
|
Alternatively, you can run this command to do the same thing.
|
||||||
|
<programlisting>
|
||||||
|
$ xfconf-query -c xfce4-session -p /compat/LaunchGNOME -s true
|
||||||
|
</programlisting>
|
||||||
|
A log-out and re-log will be needed for this to take effect.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
</simplesect>
|
||||||
|
|
||||||
|
</chapter>
|
||||||
@@ -65,22 +65,22 @@ options = {
|
|||||||
|
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<section xml:id="sec-option-declarations-eot"><title>Extensible Option
|
<section xml:id="sec-option-declarations-eot"><title>Extensible Option
|
||||||
Types</title>
|
Types</title>
|
||||||
|
|
||||||
<para>Extensible option types is a feature that allow to extend certain types
|
<para>Extensible option types is a feature that allow to extend certain types
|
||||||
declaration through multiple module files.
|
declaration through multiple module files.
|
||||||
This feature only work with a restricted set of types, namely
|
This feature only work with a restricted set of types, namely
|
||||||
<literal>enum</literal> and <literal>submodules</literal> and any composed
|
<literal>enum</literal> and <literal>submodules</literal> and any composed
|
||||||
forms of them.</para>
|
forms of them.</para>
|
||||||
|
|
||||||
<para>Extensible option types can be used for <literal>enum</literal> options
|
<para>Extensible option types can be used for <literal>enum</literal> options
|
||||||
that affects multiple modules, or as an alternative to related
|
that affects multiple modules, or as an alternative to related
|
||||||
<literal>enable</literal> options.</para>
|
<literal>enable</literal> options.</para>
|
||||||
|
|
||||||
<para>As an example, we will take the case of display managers. There is a
|
<para>As an example, we will take the case of display managers. There is a
|
||||||
central display manager module for generic display manager options and a
|
central display manager module for generic display manager options and a
|
||||||
module file per display manager backend (slim, kdm, gdm ...).
|
module file per display manager backend (slim, sddm, gdm ...).
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>There are two approach to this module structure:
|
<para>There are two approach to this module structure:
|
||||||
@@ -96,7 +96,7 @@ options = {
|
|||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>Both approachs have problems.</para>
|
<para>Both approachs have problems.</para>
|
||||||
|
|
||||||
<para>Making backends independent can quickly become hard to manage. For
|
<para>Making backends independent can quickly become hard to manage. For
|
||||||
display managers, there can be only one enabled at a time, but the type
|
display managers, there can be only one enabled at a time, but the type
|
||||||
system can not enforce this restriction as there is no relation between
|
system can not enforce this restriction as there is no relation between
|
||||||
@@ -108,18 +108,18 @@ options = {
|
|||||||
central module will require to change the central module option every time
|
central module will require to change the central module option every time
|
||||||
a new backend is added or removed.</para>
|
a new backend is added or removed.</para>
|
||||||
|
|
||||||
<para>By using extensible option types, it is possible to create a placeholder
|
<para>By using extensible option types, it is possible to create a placeholder
|
||||||
option in the central module (<xref linkend='ex-option-declaration-eot-service'
|
option in the central module (<xref linkend='ex-option-declaration-eot-service'
|
||||||
/>), and to extend it in each backend module (<xref
|
/>), and to extend it in each backend module (<xref
|
||||||
linkend='ex-option-declaration-eot-backend-slim' />, <xref
|
linkend='ex-option-declaration-eot-backend-slim' />, <xref
|
||||||
linkend='ex-option-declaration-eot-backend-kdm' />).</para>
|
linkend='ex-option-declaration-eot-backend-sddm' />).</para>
|
||||||
|
|
||||||
<para>As a result, <literal>displayManager.enable</literal> option values can
|
<para>As a result, <literal>displayManager.enable</literal> option values can
|
||||||
be added without changing the main service module file and the type system
|
be added without changing the main service module file and the type system
|
||||||
automatically enforce that there can only be a single display manager
|
automatically enforce that there can only be a single display manager
|
||||||
enabled.</para>
|
enabled.</para>
|
||||||
|
|
||||||
<example xml:id='ex-option-declaration-eot-service'><title>Extensible type
|
<example xml:id='ex-option-declaration-eot-service'><title>Extensible type
|
||||||
placeholder in the service module</title>
|
placeholder in the service module</title>
|
||||||
<screen>
|
<screen>
|
||||||
services.xserver.displayManager.enable = mkOption {
|
services.xserver.displayManager.enable = mkOption {
|
||||||
@@ -127,29 +127,29 @@ services.xserver.displayManager.enable = mkOption {
|
|||||||
type = with types; nullOr (enum [ ]);
|
type = with types; nullOr (enum [ ]);
|
||||||
};</screen></example>
|
};</screen></example>
|
||||||
|
|
||||||
<example xml:id='ex-option-declaration-eot-backend-slim'><title>Extending
|
<example xml:id='ex-option-declaration-eot-backend-slim'><title>Extending
|
||||||
<literal>services.xserver.displayManager.enable</literal> in the
|
<literal>services.xserver.displayManager.enable</literal> in the
|
||||||
<literal>slim</literal> module</title>
|
<literal>slim</literal> module</title>
|
||||||
<screen>
|
<screen>
|
||||||
services.xserver.displayManager.enable = mkOption {
|
services.xserver.displayManager.enable = mkOption {
|
||||||
type = with types; nullOr (enum [ "slim" ]);
|
type = with types; nullOr (enum [ "slim" ]);
|
||||||
};</screen></example>
|
};</screen></example>
|
||||||
|
|
||||||
<example xml:id='ex-option-declaration-eot-backend-kdm'><title>Extending
|
<example xml:id='ex-option-declaration-eot-backend-sdm'><title>Extending
|
||||||
<literal>services.foo.backend</literal> in the <literal>kdm</literal>
|
<literal>services.foo.backend</literal> in the <literal>sdm</literal>
|
||||||
module</title>
|
module</title>
|
||||||
<screen>
|
<screen>
|
||||||
services.xserver.displayManager.enable = mkOption {
|
services.xserver.displayManager.enable = mkOption {
|
||||||
type = with types; nullOr (enum [ "kdm" ]);
|
type = with types; nullOr (enum [ "sddm" ]);
|
||||||
};</screen></example>
|
};</screen></example>
|
||||||
|
|
||||||
<para>The placeholder declaration is a standard <literal>mkOption</literal>
|
<para>The placeholder declaration is a standard <literal>mkOption</literal>
|
||||||
declaration, but it is important that extensible option declarations only use
|
declaration, but it is important that extensible option declarations only use
|
||||||
the <literal>type</literal> argument.</para>
|
the <literal>type</literal> argument.</para>
|
||||||
|
|
||||||
<para>Extensible option types work with any of the composed variants of
|
<para>Extensible option types work with any of the composed variants of
|
||||||
<literal>enum</literal> such as
|
<literal>enum</literal> such as
|
||||||
<literal>with types; nullOr (enum [ "foo" "bar" ])</literal>
|
<literal>with types; nullOr (enum [ "foo" "bar" ])</literal>
|
||||||
or <literal>with types; listOf (enum [ "foo" "bar" ])</literal>.</para>
|
or <literal>with types; listOf (enum [ "foo" "bar" ])</literal>.</para>
|
||||||
|
|
||||||
</section>
|
</section>
|
||||||
|
|||||||
@@ -97,6 +97,15 @@ following incompatible changes:</para>
|
|||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Two lone top-level dict dbs moved into <literal>dictdDBs</literal>. This
|
||||||
|
affects: <literal>dictdWordnet</literal> which is now at
|
||||||
|
<literal>dictdDBs.wordnet</literal> and <literal>dictdWiktionary</literal>
|
||||||
|
which is now at <literal>dictdDBs.wiktionary</literal>
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>
|
<para>
|
||||||
Parsoid service now uses YAML configuration format.
|
Parsoid service now uses YAML configuration format.
|
||||||
@@ -117,6 +126,36 @@ following incompatible changes:</para>
|
|||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
<literal>service.nylon</literal> is now declared using named instances.
|
||||||
|
As an example:
|
||||||
|
|
||||||
|
<programlisting>
|
||||||
|
services.nylon = {
|
||||||
|
enable = true;
|
||||||
|
acceptInterface = "br0";
|
||||||
|
bindInterface = "tun1";
|
||||||
|
port = 5912;
|
||||||
|
};
|
||||||
|
</programlisting>
|
||||||
|
|
||||||
|
should be replaced with:
|
||||||
|
|
||||||
|
<programlisting>
|
||||||
|
services.nylon.myvpn = {
|
||||||
|
enable = true;
|
||||||
|
acceptInterface = "br0";
|
||||||
|
bindInterface = "tun1";
|
||||||
|
port = 5912;
|
||||||
|
};
|
||||||
|
</programlisting>
|
||||||
|
|
||||||
|
this enables you to declare a SOCKS proxy for each uplink.
|
||||||
|
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
<listitem>
|
<listitem>
|
||||||
<para><literal>overridePackages</literal> function no longer exists.
|
<para><literal>overridePackages</literal> function no longer exists.
|
||||||
It is replaced by <link
|
It is replaced by <link
|
||||||
@@ -169,12 +208,24 @@ following incompatible changes:</para>
|
|||||||
<para>Other notable improvements:</para>
|
<para>Other notable improvements:</para>
|
||||||
|
|
||||||
<itemizedlist>
|
<itemizedlist>
|
||||||
|
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Module type system have a new extensible option types feature that
|
<para>Module type system have a new extensible option types feature that
|
||||||
allow to extend certain types, such as enum, through multiple option
|
allow to extend certain types, such as enum, through multiple option
|
||||||
declarations of the same option across multiple modules.
|
declarations of the same option across multiple modules.
|
||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
<literal>jre</literal> now defaults to GTK+ UI by default. This
|
||||||
|
improves visual consistency and makes Java follow system font style,
|
||||||
|
improving the situation on HighDPI displays. This has a cost of increased
|
||||||
|
closure size; for server and other headless workloads it's recommended to
|
||||||
|
use <literal>jre_headless</literal>.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -77,7 +77,7 @@ in
|
|||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
boot.blacklistedKernelModules = [ "nvidia-drm" "nvidia" "nouveau" ];
|
boot.blacklistedKernelModules = [ "nvidia-drm" "nvidia" "nouveau" ];
|
||||||
boot.kernelModules = optional useBbswitch "bbswitch";
|
boot.kernelModules = optional useBbswitch "bbswitch";
|
||||||
boot.extraModulePackages = optional useBbswitch kernel.bbswitch ++ optional useNvidia kernel.nvidia_x11;
|
boot.extraModulePackages = optional useBbswitch kernel.bbswitch ++ optional useNvidia kernel.nvidia_x11.bin;
|
||||||
|
|
||||||
environment.systemPackages = [ bumblebee primus ];
|
environment.systemPackages = [ bumblebee primus ];
|
||||||
|
|
||||||
|
|||||||
@@ -27,6 +27,13 @@ let
|
|||||||
nvidia_x11 = nvidiaForKernel config.boot.kernelPackages;
|
nvidia_x11 = nvidiaForKernel config.boot.kernelPackages;
|
||||||
nvidia_libs32 = (nvidiaForKernel pkgs_i686.linuxPackages).override { libsOnly = true; kernel = null; };
|
nvidia_libs32 = (nvidiaForKernel pkgs_i686.linuxPackages).override { libsOnly = true; kernel = null; };
|
||||||
|
|
||||||
|
nvidiaPackage = nvidia: pkgs:
|
||||||
|
if !nvidia.useGLVND then nvidia
|
||||||
|
else pkgs.buildEnv {
|
||||||
|
name = "nvidia-libs";
|
||||||
|
paths = [ pkgs.libglvnd nvidia.out ];
|
||||||
|
};
|
||||||
|
|
||||||
enabled = nvidia_x11 != null;
|
enabled = nvidia_x11 != null;
|
||||||
in
|
in
|
||||||
|
|
||||||
@@ -35,19 +42,19 @@ in
|
|||||||
config = mkIf enabled {
|
config = mkIf enabled {
|
||||||
|
|
||||||
services.xserver.drivers = singleton
|
services.xserver.drivers = singleton
|
||||||
{ name = "nvidia"; modules = [ nvidia_x11 ]; libPath = [ nvidia_x11 ]; };
|
{ name = "nvidia"; modules = [ nvidia_x11.bin ]; libPath = [ nvidia_x11 ]; };
|
||||||
|
|
||||||
services.xserver.screenSection =
|
services.xserver.screenSection =
|
||||||
''
|
''
|
||||||
Option "RandRRotation" "on"
|
Option "RandRRotation" "on"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
hardware.opengl.package = nvidia_x11;
|
hardware.opengl.package = nvidiaPackage nvidia_x11 pkgs;
|
||||||
hardware.opengl.package32 = nvidia_libs32;
|
hardware.opengl.package32 = nvidiaPackage nvidia_libs32 pkgs_i686;
|
||||||
|
|
||||||
environment.systemPackages = [ nvidia_x11 ];
|
environment.systemPackages = [ nvidia_x11.bin nvidia_x11.settings nvidia_x11.persistenced ];
|
||||||
|
|
||||||
boot.extraModulePackages = [ nvidia_x11 ];
|
boot.extraModulePackages = [ nvidia_x11.bin ];
|
||||||
|
|
||||||
# nvidia-uvm is required by CUDA applications.
|
# nvidia-uvm is required by CUDA applications.
|
||||||
boot.kernelModules = [ "nvidia-uvm" ];
|
boot.kernelModules = [ "nvidia-uvm" ];
|
||||||
|
|||||||
@@ -607,8 +607,8 @@ $bootLoaderConfig
|
|||||||
# services.xserver.xkbOptions = "eurosign:e";
|
# services.xserver.xkbOptions = "eurosign:e";
|
||||||
|
|
||||||
# Enable the KDE Desktop Environment.
|
# Enable the KDE Desktop Environment.
|
||||||
# services.xserver.displayManager.kdm.enable = true;
|
# services.xserver.displayManager.sddm.enable = true;
|
||||||
# services.xserver.desktopManager.kde4.enable = true;
|
# services.xserver.desktopManager.kde5.enable = true;
|
||||||
|
|
||||||
# Define a user account. Don't forget to set a password with ‘passwd’.
|
# Define a user account. Don't forget to set a password with ‘passwd’.
|
||||||
# users.extraUsers.guest = {
|
# users.extraUsers.guest = {
|
||||||
|
|||||||
@@ -141,6 +141,7 @@
|
|||||||
./services/computing/torque/mom.nix
|
./services/computing/torque/mom.nix
|
||||||
./services/computing/slurm/slurm.nix
|
./services/computing/slurm/slurm.nix
|
||||||
./services/continuous-integration/buildbot/master.nix
|
./services/continuous-integration/buildbot/master.nix
|
||||||
|
./services/continuous-integration/buildbot/worker.nix
|
||||||
./services/continuous-integration/buildkite-agent.nix
|
./services/continuous-integration/buildkite-agent.nix
|
||||||
./services/continuous-integration/hydra/default.nix
|
./services/continuous-integration/hydra/default.nix
|
||||||
./services/continuous-integration/gitlab-runner.nix
|
./services/continuous-integration/gitlab-runner.nix
|
||||||
@@ -206,6 +207,7 @@
|
|||||||
./services/hardware/tcsd.nix
|
./services/hardware/tcsd.nix
|
||||||
./services/hardware/tlp.nix
|
./services/hardware/tlp.nix
|
||||||
./services/hardware/thinkfan.nix
|
./services/hardware/thinkfan.nix
|
||||||
|
./services/hardware/trezord.nix
|
||||||
./services/hardware/udev.nix
|
./services/hardware/udev.nix
|
||||||
./services/hardware/udisks2.nix
|
./services/hardware/udisks2.nix
|
||||||
./services/hardware/upower.nix
|
./services/hardware/upower.nix
|
||||||
@@ -444,6 +446,7 @@
|
|||||||
./services/networking/radicale.nix
|
./services/networking/radicale.nix
|
||||||
./services/networking/radvd.nix
|
./services/networking/radvd.nix
|
||||||
./services/networking/rdnssd.nix
|
./services/networking/rdnssd.nix
|
||||||
|
./services/networking/redsocks.nix
|
||||||
./services/networking/rpcbind.nix
|
./services/networking/rpcbind.nix
|
||||||
./services/networking/sabnzbd.nix
|
./services/networking/sabnzbd.nix
|
||||||
./services/networking/searx.nix
|
./services/networking/searx.nix
|
||||||
@@ -642,6 +645,7 @@
|
|||||||
./virtualisation/container-config.nix
|
./virtualisation/container-config.nix
|
||||||
./virtualisation/containers.nix
|
./virtualisation/containers.nix
|
||||||
./virtualisation/docker.nix
|
./virtualisation/docker.nix
|
||||||
|
./virtualisation/ecs-agent.nix
|
||||||
./virtualisation/libvirtd.nix
|
./virtualisation/libvirtd.nix
|
||||||
./virtualisation/lxc.nix
|
./virtualisation/lxc.nix
|
||||||
./virtualisation/lxcfs.nix
|
./virtualisation/lxcfs.nix
|
||||||
|
|||||||
@@ -6,8 +6,8 @@
|
|||||||
{
|
{
|
||||||
services.xserver = {
|
services.xserver = {
|
||||||
enable = true;
|
enable = true;
|
||||||
displayManager.kdm.enable = true;
|
displayManager.sddm.enable = true;
|
||||||
desktopManager.kde4.enable = true;
|
desktopManager.kde5.enable = true;
|
||||||
synaptics.enable = true; # for touchpad support on many laptops
|
synaptics.enable = true; # for touchpad support on many laptops
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ with lib;
|
|||||||
let
|
let
|
||||||
cfg = config.services.buildbot-master;
|
cfg = config.services.buildbot-master;
|
||||||
escapeStr = s: escape ["'"] s;
|
escapeStr = s: escape ["'"] s;
|
||||||
masterCfg = pkgs.writeText "master.cfg" ''
|
masterCfg = if cfg.masterCfg == null then pkgs.writeText "master.cfg" ''
|
||||||
from buildbot.plugins import *
|
from buildbot.plugins import *
|
||||||
factory = util.BuildFactory()
|
factory = util.BuildFactory()
|
||||||
c = BuildmasterConfig = dict(
|
c = BuildmasterConfig = dict(
|
||||||
@@ -27,9 +27,8 @@ let
|
|||||||
factory.addStep(step)
|
factory.addStep(step)
|
||||||
|
|
||||||
${cfg.extraConfig}
|
${cfg.extraConfig}
|
||||||
'';
|
''
|
||||||
|
else pkgs.writeText "master.cfg" cfg.masterCfg;
|
||||||
configFile = if cfg.masterCfg == null then masterCfg else cfg.masterCfg;
|
|
||||||
|
|
||||||
in {
|
in {
|
||||||
options = {
|
options = {
|
||||||
@@ -67,15 +66,13 @@ in {
|
|||||||
};
|
};
|
||||||
|
|
||||||
masterCfg = mkOption {
|
masterCfg = mkOption {
|
||||||
type = with types; nullOr path;
|
type = types.str;
|
||||||
description = ''
|
description = ''
|
||||||
Optionally pass path to raw master.cfg file.
|
Optionally pass raw master.cfg file as string.
|
||||||
Other options in this configuration will be ignored.
|
Other options in this configuration will be ignored.
|
||||||
'';
|
'';
|
||||||
default = null;
|
default = null;
|
||||||
example = literalExample ''
|
example = "BuildmasterConfig = c = {}";
|
||||||
pkgs.writeText "master.cfg" "BuildmasterConfig = c = {}"
|
|
||||||
'';
|
|
||||||
};
|
};
|
||||||
|
|
||||||
schedulers = mkOption {
|
schedulers = mkOption {
|
||||||
@@ -99,9 +96,9 @@ in {
|
|||||||
type = types.listOf types.str;
|
type = types.listOf types.str;
|
||||||
description = "List of Workers.";
|
description = "List of Workers.";
|
||||||
default = [
|
default = [
|
||||||
"worker.Worker('default-worker', 'password')"
|
"worker.Worker('example-worker', 'pass')"
|
||||||
];
|
];
|
||||||
example = [ "worker.LocalWorker('default-worker')" ];
|
example = [ "worker.LocalWorker('example-worker')" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
status = mkOption {
|
status = mkOption {
|
||||||
@@ -209,7 +206,7 @@ in {
|
|||||||
|
|
||||||
users.extraUsers = optional (cfg.user == "buildbot") {
|
users.extraUsers = optional (cfg.user == "buildbot") {
|
||||||
name = "buildbot";
|
name = "buildbot";
|
||||||
description = "buildbot user";
|
description = "Buildbot User.";
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
createHome = true;
|
createHome = true;
|
||||||
home = cfg.home;
|
home = cfg.home;
|
||||||
@@ -219,7 +216,7 @@ in {
|
|||||||
};
|
};
|
||||||
|
|
||||||
systemd.services.buildbot-master = {
|
systemd.services.buildbot-master = {
|
||||||
description = "Buildbot Continuous Integration Server";
|
description = "Buildbot Continuous Integration Server.";
|
||||||
after = [ "network.target" ];
|
after = [ "network.target" ];
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "multi-user.target" ];
|
||||||
path = cfg.packages;
|
path = cfg.packages;
|
||||||
@@ -233,9 +230,8 @@ in {
|
|||||||
};
|
};
|
||||||
|
|
||||||
preStart = ''
|
preStart = ''
|
||||||
mkdir -vp ${cfg.buildbotDir}
|
${pkgs.coreutils}/bin/mkdir -vp ${cfg.buildbotDir}
|
||||||
chown -c ${cfg.user}:${cfg.group} ${cfg.buildbotDir}
|
${pkgs.coreutils}/bin/ln -sfv ${masterCfg} ${cfg.buildbotDir}/master.cfg
|
||||||
ln -sf ${configFile} ${cfg.buildbotDir}/master.cfg
|
|
||||||
${cfg.package}/bin/buildbot create-master ${cfg.buildbotDir}
|
${cfg.package}/bin/buildbot create-master ${cfg.buildbotDir}
|
||||||
'';
|
'';
|
||||||
|
|
||||||
@@ -247,4 +243,6 @@ in {
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
meta.maintainers = with lib.maintainers; [ nand0p Mic92 ];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,128 @@
|
|||||||
|
# NixOS module for Buildbot Worker.
|
||||||
|
|
||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
|
||||||
|
let
|
||||||
|
cfg = config.services.buildbot-worker;
|
||||||
|
|
||||||
|
in {
|
||||||
|
options = {
|
||||||
|
services.buildbot-worker = {
|
||||||
|
|
||||||
|
enable = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = false;
|
||||||
|
description = "Whether to enable the Buildbot Worker.";
|
||||||
|
};
|
||||||
|
|
||||||
|
user = mkOption {
|
||||||
|
default = "bbworker";
|
||||||
|
type = types.str;
|
||||||
|
description = "User the buildbot Worker should execute under.";
|
||||||
|
};
|
||||||
|
|
||||||
|
group = mkOption {
|
||||||
|
default = "bbworker";
|
||||||
|
type = types.str;
|
||||||
|
description = "Primary group of buildbot Worker user.";
|
||||||
|
};
|
||||||
|
|
||||||
|
extraGroups = mkOption {
|
||||||
|
type = types.listOf types.str;
|
||||||
|
default = [ "nixbld" ];
|
||||||
|
description = "List of extra groups that the Buildbot Worker user should be a part of.";
|
||||||
|
};
|
||||||
|
|
||||||
|
home = mkOption {
|
||||||
|
default = "/home/bbworker";
|
||||||
|
type = types.path;
|
||||||
|
description = "Buildbot home directory.";
|
||||||
|
};
|
||||||
|
|
||||||
|
buildbotDir = mkOption {
|
||||||
|
default = "${cfg.home}/worker";
|
||||||
|
type = types.path;
|
||||||
|
description = "Specifies the Buildbot directory.";
|
||||||
|
};
|
||||||
|
|
||||||
|
workerUser = mkOption {
|
||||||
|
default = "example-worker";
|
||||||
|
type = types.str;
|
||||||
|
description = "Specifies the Buildbot Worker user.";
|
||||||
|
};
|
||||||
|
|
||||||
|
workerPass = mkOption {
|
||||||
|
default = "pass";
|
||||||
|
type = types.str;
|
||||||
|
description = "Specifies the Buildbot Worker password.";
|
||||||
|
};
|
||||||
|
|
||||||
|
masterUrl = mkOption {
|
||||||
|
default = "localhost:9989";
|
||||||
|
type = types.str;
|
||||||
|
description = "Specifies the Buildbot Worker connection string.";
|
||||||
|
};
|
||||||
|
|
||||||
|
package = mkOption {
|
||||||
|
type = types.package;
|
||||||
|
default = pkgs.buildbot-worker;
|
||||||
|
description = "Package to use for buildbot worker.";
|
||||||
|
example = pkgs.buildbot-worker;
|
||||||
|
};
|
||||||
|
|
||||||
|
packages = mkOption {
|
||||||
|
default = [ ];
|
||||||
|
example = [ pkgs.git ];
|
||||||
|
type = types.listOf types.package;
|
||||||
|
description = "Packages to add to PATH for the buildbot process.";
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
users.extraGroups = optional (cfg.group == "bbworker") {
|
||||||
|
name = "bbworker";
|
||||||
|
};
|
||||||
|
|
||||||
|
users.extraUsers = optional (cfg.user == "bbworker") {
|
||||||
|
name = "bbworker";
|
||||||
|
description = "Buildbot Worker User.";
|
||||||
|
isNormalUser = true;
|
||||||
|
createHome = true;
|
||||||
|
home = cfg.home;
|
||||||
|
group = cfg.group;
|
||||||
|
extraGroups = cfg.extraGroups;
|
||||||
|
useDefaultShell = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.services.buildbot-worker = {
|
||||||
|
description = "Buildbot Worker.";
|
||||||
|
after = [ "network.target" ];
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
wants = [ "buildbot-master.service" ];
|
||||||
|
path = cfg.packages;
|
||||||
|
|
||||||
|
preStart = ''
|
||||||
|
# NOTE: ensure master has time to start in case running on localhost
|
||||||
|
${pkgs.coreutils}/bin/sleep 4
|
||||||
|
${pkgs.coreutils}/bin/mkdir -vp ${cfg.buildbotDir}
|
||||||
|
${cfg.package}/bin/buildbot-worker create-worker ${cfg.buildbotDir} ${cfg.masterUrl} ${cfg.workerUser} ${cfg.workerPass}
|
||||||
|
'';
|
||||||
|
|
||||||
|
serviceConfig = {
|
||||||
|
Type = "forking";
|
||||||
|
User = cfg.user;
|
||||||
|
Group = cfg.group;
|
||||||
|
WorkingDirectory = cfg.home;
|
||||||
|
ExecStart = "${cfg.package}/bin/buildbot-worker start ${cfg.buildbotDir}";
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
meta.maintainers = with lib.maintainers; [ nand0p ];
|
||||||
|
|
||||||
|
}
|
||||||
@@ -22,7 +22,7 @@ in
|
|||||||
};
|
};
|
||||||
|
|
||||||
###### implementation
|
###### implementation
|
||||||
|
|
||||||
config = mkIf config.hardware.bluetooth.enable {
|
config = mkIf config.hardware.bluetooth.enable {
|
||||||
|
|
||||||
environment.systemPackages = [ bluez-bluetooth pkgs.openobex pkgs.obexftp ];
|
environment.systemPackages = [ bluez-bluetooth pkgs.openobex pkgs.obexftp ];
|
||||||
|
|||||||
@@ -0,0 +1,54 @@
|
|||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
let
|
||||||
|
cfg = config.services.trezord;
|
||||||
|
in {
|
||||||
|
|
||||||
|
### interface
|
||||||
|
|
||||||
|
options = {
|
||||||
|
services.trezord = {
|
||||||
|
enable = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = false;
|
||||||
|
description = ''
|
||||||
|
Enable Trezor bridge daemon, for use with Trezor hardware bitcoin wallets.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
### implementation
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
services.udev.packages = lib.singleton (pkgs.writeTextFile {
|
||||||
|
name = "trezord-udev-rules";
|
||||||
|
destination = "/etc/udev/rules.d/51-trezor.rules";
|
||||||
|
text = ''
|
||||||
|
SUBSYSTEM=="usb", ATTR{idVendor}=="534c", ATTR{idProduct}=="0001", MODE="0666", GROUP="dialout", SYMLINK+="trezor%n"
|
||||||
|
KERNEL=="hidraw*", ATTRS{idVendor}=="534c", ATTRS{idProduct}=="0001", MODE="0666", GROUP="dialout"
|
||||||
|
'';
|
||||||
|
});
|
||||||
|
|
||||||
|
systemd.services.trezord = {
|
||||||
|
description = "TREZOR Bridge";
|
||||||
|
after = [ "systemd-udev-settle.service" "network.target" ];
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
path = [];
|
||||||
|
serviceConfig = {
|
||||||
|
Type = "simple";
|
||||||
|
ExecStart = "${pkgs.trezord}/bin/trezord -f";
|
||||||
|
User = "trezord";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
users.users.trezord = {
|
||||||
|
group = "trezord";
|
||||||
|
description = "Trezor bridge daemon user";
|
||||||
|
};
|
||||||
|
|
||||||
|
users.groups.trezord = {};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
@@ -102,7 +102,7 @@ in
|
|||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
Type = "simple";
|
Type = "simple";
|
||||||
Restart = "always";
|
Restart = "always";
|
||||||
EnvironmentFile = "${pkgs.libreswan}/etc/sysconfig/pluto";
|
EnvironmentFile = "-${pkgs.libreswan}/etc/sysconfig/pluto";
|
||||||
ExecStartPre = [
|
ExecStartPre = [
|
||||||
"${libexec}/addconn --config ${configFile} --checkconfig"
|
"${libexec}/addconn --config ${configFile} --checkconfig"
|
||||||
"${libexec}/_stackmanager start"
|
"${libexec}/_stackmanager start"
|
||||||
|
|||||||
@@ -0,0 +1,270 @@
|
|||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
let
|
||||||
|
cfg = config.services.redsocks;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
##### interface
|
||||||
|
options = {
|
||||||
|
services.redsocks = {
|
||||||
|
enable = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = false;
|
||||||
|
description = "Whether to enable redsocks.";
|
||||||
|
};
|
||||||
|
|
||||||
|
log_debug = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = false;
|
||||||
|
description = "Log connection progress.";
|
||||||
|
};
|
||||||
|
|
||||||
|
log_info = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = false;
|
||||||
|
description = "Log start and end of client sessions.";
|
||||||
|
};
|
||||||
|
|
||||||
|
log = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
default = "stderr";
|
||||||
|
description =
|
||||||
|
''
|
||||||
|
Where to send logs.
|
||||||
|
|
||||||
|
Possible values are:
|
||||||
|
- stderr
|
||||||
|
- file:/path/to/file
|
||||||
|
- syslog:FACILITY where FACILITY is any of "daemon", "local0",
|
||||||
|
etc.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
chroot = mkOption {
|
||||||
|
type = with types; nullOr str;
|
||||||
|
default = null;
|
||||||
|
description =
|
||||||
|
''
|
||||||
|
Chroot under which to run redsocks. Log file is opened before
|
||||||
|
chroot, but if logging to syslog /etc/localtime may be required.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
redsocks = mkOption {
|
||||||
|
description =
|
||||||
|
''
|
||||||
|
Local port to proxy associations to be performed.
|
||||||
|
|
||||||
|
The example shows how to configure a proxy to handle port 80 as HTTP
|
||||||
|
relay, and all other ports as HTTP connect.
|
||||||
|
'';
|
||||||
|
example = [
|
||||||
|
{ port = 23456; proxy = "1.2.3.4:8080"; type = "http-relay";
|
||||||
|
redirectCondition = "--dport 80";
|
||||||
|
doNotRedirect = [ "-d 1.2.0.0/16" ];
|
||||||
|
}
|
||||||
|
{ port = 23457; proxy = "1.2.3.4:8080"; type = "http-connect";
|
||||||
|
redirectCondition = true;
|
||||||
|
doNotRedirect = [ "-d 1.2.0.0/16" ];
|
||||||
|
}
|
||||||
|
];
|
||||||
|
type = types.listOf (types.submodule { options = {
|
||||||
|
ip = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
default = "127.0.0.1";
|
||||||
|
description =
|
||||||
|
''
|
||||||
|
IP on which redsocks should listen. Defaults to 127.0.0.1 for
|
||||||
|
security reasons.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
port = mkOption {
|
||||||
|
type = types.int;
|
||||||
|
default = 12345;
|
||||||
|
description = "Port on which redsocks should listen.";
|
||||||
|
};
|
||||||
|
|
||||||
|
proxy = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
description =
|
||||||
|
''
|
||||||
|
Proxy through which redsocks should forward incoming traffic.
|
||||||
|
Example: "example.org:8080"
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
type = mkOption {
|
||||||
|
type = types.enum [ "socks4" "socks5" "http-connect" "http-relay" ];
|
||||||
|
description = "Type of proxy.";
|
||||||
|
};
|
||||||
|
|
||||||
|
login = mkOption {
|
||||||
|
type = with types; nullOr str;
|
||||||
|
default = null;
|
||||||
|
description = "Login to send to proxy.";
|
||||||
|
};
|
||||||
|
|
||||||
|
password = mkOption {
|
||||||
|
type = with types; nullOr str;
|
||||||
|
default = null;
|
||||||
|
description =
|
||||||
|
''
|
||||||
|
Password to send to proxy. WARNING, this will end up
|
||||||
|
world-readable in the store! Awaiting
|
||||||
|
https://github.com/NixOS/nix/issues/8 to be able to fix.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
disclose_src = mkOption {
|
||||||
|
type = types.enum [ "false" "X-Forwarded-For" "Forwarded_ip"
|
||||||
|
"Forwarded_ipport" ];
|
||||||
|
default = "false";
|
||||||
|
description =
|
||||||
|
''
|
||||||
|
Way to disclose client IP to the proxy.
|
||||||
|
- "false": do not disclose
|
||||||
|
http-connect supports the following ways:
|
||||||
|
- "X-Forwarded-For": add header "X-Forwarded-For: IP"
|
||||||
|
- "Forwarded_ip": add header "Forwarded: for=IP" (see RFC7239)
|
||||||
|
- "Forwarded_ipport": add header 'Forwarded: for="IP:port"'
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
redirectInternetOnly = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = true;
|
||||||
|
description = "Exclude all non-globally-routable IPs from redsocks";
|
||||||
|
};
|
||||||
|
|
||||||
|
doNotRedirect = mkOption {
|
||||||
|
type = with types; listOf str;
|
||||||
|
default = [];
|
||||||
|
description =
|
||||||
|
''
|
||||||
|
Iptables filters that if matched will get the packet off of
|
||||||
|
redsocks.
|
||||||
|
'';
|
||||||
|
example = [ "-d 1.2.3.4" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
redirectCondition = mkOption {
|
||||||
|
type = with types; either bool str;
|
||||||
|
default = false;
|
||||||
|
description =
|
||||||
|
''
|
||||||
|
Conditions to make outbound packets go through this redsocks
|
||||||
|
instance.
|
||||||
|
|
||||||
|
If set to false, no packet will be forwarded. If set to true,
|
||||||
|
all packets will be forwarded (except packets excluded by
|
||||||
|
redirectInternetOnly).
|
||||||
|
|
||||||
|
If set to a string, this is an iptables filter that will be
|
||||||
|
matched against packets before getting them into redsocks. For
|
||||||
|
example, setting it to "--dport 80" will only send
|
||||||
|
packets to port 80 to redsocks. Note "-p tcp" is always
|
||||||
|
implicitly added, as udp can only be proxied through redudp or
|
||||||
|
the like.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};});
|
||||||
|
};
|
||||||
|
|
||||||
|
# TODO: Add support for redudp and dnstc
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
##### implementation
|
||||||
|
config = let
|
||||||
|
redsocks_blocks = concatMapStrings (block:
|
||||||
|
let proxy = splitString ":" block.proxy; in
|
||||||
|
''
|
||||||
|
redsocks {
|
||||||
|
local_ip = ${block.ip};
|
||||||
|
local_port = ${toString block.port};
|
||||||
|
|
||||||
|
ip = ${elemAt proxy 0};
|
||||||
|
port = ${elemAt proxy 1};
|
||||||
|
type = ${block.type};
|
||||||
|
|
||||||
|
${optionalString (block.login != null) "login = \"${block.login}\";"}
|
||||||
|
${optionalString (block.password != null) "password = \"${block.password}\";"}
|
||||||
|
|
||||||
|
disclose_src = ${block.disclose_src};
|
||||||
|
}
|
||||||
|
'') cfg.redsocks;
|
||||||
|
configfile = pkgs.writeText "redsocks.conf"
|
||||||
|
''
|
||||||
|
base {
|
||||||
|
log_debug = ${if cfg.log_debug then "on" else "off" };
|
||||||
|
log_info = ${if cfg.log_info then "on" else "off" };
|
||||||
|
log = ${cfg.log};
|
||||||
|
|
||||||
|
daemon = off;
|
||||||
|
redirector = iptables;
|
||||||
|
|
||||||
|
user = redsocks;
|
||||||
|
group = redsocks;
|
||||||
|
${optionalString (cfg.chroot != null) "chroot = ${cfg.chroot};"}
|
||||||
|
}
|
||||||
|
|
||||||
|
${redsocks_blocks}
|
||||||
|
'';
|
||||||
|
internetOnly = [ # TODO: add ipv6-equivalent
|
||||||
|
"-d 0.0.0.0/8"
|
||||||
|
"-d 10.0.0.0/8"
|
||||||
|
"-d 127.0.0.0/8"
|
||||||
|
"-d 169.254.0.0/16"
|
||||||
|
"-d 172.16.0.0/12"
|
||||||
|
"-d 192.168.0.0/16"
|
||||||
|
"-d 224.168.0.0/4"
|
||||||
|
"-d 240.168.0.0/4"
|
||||||
|
];
|
||||||
|
redCond = block:
|
||||||
|
optionalString (isString block.redirectCondition) block.redirectCondition;
|
||||||
|
iptables = concatImapStrings (idx: block:
|
||||||
|
let chain = "REDSOCKS${toString idx}"; doNotRedirect =
|
||||||
|
concatMapStringsSep "\n"
|
||||||
|
(f: "ip46tables -t nat -A ${chain} ${f} -j RETURN 2>/dev/null || true")
|
||||||
|
(block.doNotRedirect ++ (optionals block.redirectInternetOnly internetOnly));
|
||||||
|
in
|
||||||
|
optionalString (block.redirectCondition != false)
|
||||||
|
''
|
||||||
|
ip46tables -t nat -F ${chain} 2>/dev/null || true
|
||||||
|
ip46tables -t nat -N ${chain} 2>/dev/null || true
|
||||||
|
${doNotRedirect}
|
||||||
|
ip46tables -t nat -A ${chain} -p tcp -j REDIRECT --to-ports ${toString block.port}
|
||||||
|
|
||||||
|
# TODO: show errors, when it will be easily possible by a switch to
|
||||||
|
# iptables-restore
|
||||||
|
ip46tables -t nat -A OUTPUT -p tcp ${redCond block} -j ${chain} 2>/dev/null || true
|
||||||
|
''
|
||||||
|
) cfg.redsocks;
|
||||||
|
in
|
||||||
|
mkIf cfg.enable {
|
||||||
|
users.groups.redsocks = {};
|
||||||
|
users.users.redsocks = {
|
||||||
|
description = "Redsocks daemon";
|
||||||
|
group = "redsocks";
|
||||||
|
isSystemUser = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.services.redsocks = {
|
||||||
|
description = "Redsocks";
|
||||||
|
after = [ "network.target" ];
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
script = "${pkgs.redsocks}/bin/redsocks -c ${configfile}";
|
||||||
|
};
|
||||||
|
|
||||||
|
networking.firewall.extraCommands = iptables;
|
||||||
|
|
||||||
|
networking.firewall.extraStopCommands =
|
||||||
|
concatImapStringsSep "\n" (idx: block:
|
||||||
|
let chain = "REDSOCKS${toString idx}"; in
|
||||||
|
optionalString (block.redirectCondition != false)
|
||||||
|
"ip46tables -t nat -D OUTPUT -p tcp ${redCond block} -j ${chain} 2>/dev/null || true"
|
||||||
|
) cfg.redsocks;
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -34,6 +34,11 @@ in
|
|||||||
";
|
";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
package = mkOption {
|
||||||
|
default = pkgs.pythonPackages.searx;
|
||||||
|
description = "searx package to use.";
|
||||||
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
@@ -61,14 +66,13 @@ in
|
|||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "multi-user.target" ];
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
User = "searx";
|
User = "searx";
|
||||||
ExecStart = "${pkgs.pythonPackages.searx}/bin/searx-run";
|
ExecStart = "${cfg.package}/bin/searx-run";
|
||||||
};
|
};
|
||||||
} // (optionalAttrs (configFile != "") {
|
} // (optionalAttrs (configFile != "") {
|
||||||
environment.SEARX_SETTINGS_PATH = configFile;
|
environment.SEARX_SETTINGS_PATH = configFile;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
environment.systemPackages = [ pkgs.pythonPackages.searx ];
|
environment.systemPackages = [ cfg.package ];
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -1,198 +0,0 @@
|
|||||||
{ config, lib, pkgs, serverInfo, php, ... }:
|
|
||||||
|
|
||||||
with lib;
|
|
||||||
|
|
||||||
let
|
|
||||||
|
|
||||||
httpd = serverInfo.serverConfig.package;
|
|
||||||
|
|
||||||
version24 = !versionOlder httpd.version "2.4";
|
|
||||||
|
|
||||||
allGranted = if version24 then ''
|
|
||||||
Require all granted
|
|
||||||
'' else ''
|
|
||||||
Order allow,deny
|
|
||||||
Allow from all
|
|
||||||
'';
|
|
||||||
|
|
||||||
moodleConfig = pkgs.writeText "config.php"
|
|
||||||
''
|
|
||||||
<?php
|
|
||||||
unset($CFG);
|
|
||||||
global $CFG;
|
|
||||||
$CFG = new stdClass();
|
|
||||||
$CFG->dbtype = '${config.dbType}';
|
|
||||||
$CFG->dblibrary = 'native';
|
|
||||||
$CFG->dbhost = '${config.dbHost}';
|
|
||||||
$CFG->dbname = '${config.dbName}';
|
|
||||||
$CFG->dbuser = '${config.dbUser}';
|
|
||||||
$CFG->dbpass = '${config.dbPassword}';
|
|
||||||
$CFG->prefix = '${config.dbPrefix}';
|
|
||||||
$CFG->dboptions = array(
|
|
||||||
'dbpersist' => false,
|
|
||||||
'dbsocket' => false,
|
|
||||||
'dbport' => "${config.dbPort}",
|
|
||||||
);
|
|
||||||
$CFG->wwwroot = '${config.wwwRoot}';
|
|
||||||
$CFG->dataroot = '${config.dataRoot}';
|
|
||||||
$CFG->directorypermissions = 02777;
|
|
||||||
$CFG->admin = 'admin';
|
|
||||||
${optionalString (config.debug.noEmailEver == true) ''
|
|
||||||
$CFG->noemailever = true;
|
|
||||||
''}
|
|
||||||
|
|
||||||
${config.extraConfig}
|
|
||||||
require_once(dirname(__FILE__) . '/lib/setup.php'); // Do not edit
|
|
||||||
'';
|
|
||||||
# Unpack Moodle and put the config file in its root directory.
|
|
||||||
moodleRoot = pkgs.stdenv.mkDerivation rec {
|
|
||||||
name= "moodle-2.8.10";
|
|
||||||
|
|
||||||
src = pkgs.fetchurl {
|
|
||||||
url = "https://download.moodle.org/stable28/${name}.tgz";
|
|
||||||
sha256 = "0c3r5081ipcwc9s6shakllnrkd589y2ln5z5m1q09l4h6a7cy4z2";
|
|
||||||
};
|
|
||||||
|
|
||||||
buildPhase =
|
|
||||||
''
|
|
||||||
'';
|
|
||||||
|
|
||||||
installPhase =
|
|
||||||
''
|
|
||||||
mkdir -p $out
|
|
||||||
cp -r * $out
|
|
||||||
cp ${moodleConfig} $out/config.php
|
|
||||||
'';
|
|
||||||
# Marked as broken due to needing an update for security issues.
|
|
||||||
# See: https://github.com/NixOS/nixpkgs/issues/18856
|
|
||||||
meta.broken = true;
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
in
|
|
||||||
|
|
||||||
{
|
|
||||||
|
|
||||||
extraConfig =
|
|
||||||
''
|
|
||||||
# this should be config.urlPrefix instead of /
|
|
||||||
Alias / ${moodleRoot}/
|
|
||||||
<Directory ${moodleRoot}>
|
|
||||||
DirectoryIndex index.php
|
|
||||||
</Directory>
|
|
||||||
'';
|
|
||||||
|
|
||||||
documentRoot = moodleRoot; # TODO: fix this, should be config.urlPrefix
|
|
||||||
|
|
||||||
enablePHP = true;
|
|
||||||
|
|
||||||
options = {
|
|
||||||
|
|
||||||
id = mkOption {
|
|
||||||
default = "main";
|
|
||||||
description = ''
|
|
||||||
A unique identifier necessary to keep multiple Moodle server
|
|
||||||
instances on the same machine apart.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
dbType = mkOption {
|
|
||||||
default = "postgres";
|
|
||||||
example = "mysql";
|
|
||||||
description = "Database type.";
|
|
||||||
};
|
|
||||||
|
|
||||||
dbName = mkOption {
|
|
||||||
default = "moodle";
|
|
||||||
description = "Name of the database that holds the Moodle data.";
|
|
||||||
};
|
|
||||||
|
|
||||||
dbHost = mkOption {
|
|
||||||
default = "localhost";
|
|
||||||
example = "10.0.2.2";
|
|
||||||
description = ''
|
|
||||||
The location of the database server.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
dbPort = mkOption {
|
|
||||||
default = ""; # use the default port
|
|
||||||
example = "12345";
|
|
||||||
description = ''
|
|
||||||
The port that is used to connect to the database server.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
dbUser = mkOption {
|
|
||||||
default = "moodle";
|
|
||||||
description = "The user name for accessing the database.";
|
|
||||||
};
|
|
||||||
|
|
||||||
dbPassword = mkOption {
|
|
||||||
default = "";
|
|
||||||
example = "password";
|
|
||||||
description = ''
|
|
||||||
The password of the database user. Warning: this is stored in
|
|
||||||
cleartext in the Nix store!
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
dbPrefix = mkOption {
|
|
||||||
default = "mdl_";
|
|
||||||
example = "my_other_mdl_";
|
|
||||||
description = ''
|
|
||||||
A prefix for each table, if multiple moodles should run in a single database.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
wwwRoot = mkOption {
|
|
||||||
type = types.string;
|
|
||||||
example = "http://my.machine.com/my-moodle";
|
|
||||||
description = ''
|
|
||||||
The full web address where moodle has been installed.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
dataRoot = mkOption {
|
|
||||||
default = "/var/lib/moodledata";
|
|
||||||
example = "/var/lib/moodledata";
|
|
||||||
description = ''
|
|
||||||
The data directory for moodle. Needs to be writable!
|
|
||||||
'';
|
|
||||||
type = types.path;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
extraConfig = mkOption {
|
|
||||||
type = types.lines;
|
|
||||||
default = "";
|
|
||||||
example =
|
|
||||||
''
|
|
||||||
'';
|
|
||||||
description = ''
|
|
||||||
Any additional text to be appended to Moodle's
|
|
||||||
configuration file. This is a PHP script.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
debug = {
|
|
||||||
noEmailEver = mkOption {
|
|
||||||
default = false;
|
|
||||||
example = "true";
|
|
||||||
description = ''
|
|
||||||
Set this to true to prevent Moodle from ever sending any email.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
startupScript = pkgs.writeScript "moodle_startup.sh" ''
|
|
||||||
echo "Checking for existence of ${config.dataRoot}"
|
|
||||||
if [ ! -e "${config.dataRoot}" ]
|
|
||||||
then
|
|
||||||
mkdir -p "${config.dataRoot}"
|
|
||||||
chown ${serverInfo.serverConfig.user}.${serverInfo.serverConfig.group} "${config.dataRoot}"
|
|
||||||
fi
|
|
||||||
'';
|
|
||||||
|
|
||||||
}
|
|
||||||
@@ -61,6 +61,7 @@ in
|
|||||||
User = "caddy";
|
User = "caddy";
|
||||||
Group = "caddy";
|
Group = "caddy";
|
||||||
AmbientCapabilities = "cap_net_bind_service";
|
AmbientCapabilities = "cap_net_bind_service";
|
||||||
|
LimitNOFILE = 8192;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -416,7 +416,7 @@ in
|
|||||||
acmeEnabledVhosts = filter (vhostConfig: vhostConfig.enableACME) vhostsConfigs;
|
acmeEnabledVhosts = filter (vhostConfig: vhostConfig.enableACME) vhostsConfigs;
|
||||||
acmePairs = map (vhostConfig: { name = vhostConfig.serverName; value = {
|
acmePairs = map (vhostConfig: { name = vhostConfig.serverName; value = {
|
||||||
user = cfg.user;
|
user = cfg.user;
|
||||||
group = cfg.group;
|
group = lib.mkDefault cfg.group;
|
||||||
webroot = vhostConfig.acmeRoot;
|
webroot = vhostConfig.acmeRoot;
|
||||||
extraDomains = genAttrs vhostConfig.serverAliases (alias: null);
|
extraDomains = genAttrs vhostConfig.serverAliases (alias: null);
|
||||||
postRun = ''
|
postRun = ''
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
# This module declares the options to define a *display manager*, the
|
# This module declares the options to define a *display manager*, the
|
||||||
# program responsible for handling X logins (such as xdm, kdm, gdb, or
|
# program responsible for handling X logins (such as xdm, gdb, or
|
||||||
# SLiM). The display manager allows the user to select a *session
|
# SLiM). The display manager allows the user to select a *session
|
||||||
# type*. When the user logs in, the display manager starts the
|
# type*. When the user logs in, the display manager starts the
|
||||||
# *session script* ("xsession" below) to launch the selected session
|
# *session script* ("xsession" below) to launch the selected session
|
||||||
|
|||||||
@@ -16,18 +16,8 @@ with lib;
|
|||||||
services.xserver.enable = true;
|
services.xserver.enable = true;
|
||||||
services.xserver.videoDrivers = [];
|
services.xserver.videoDrivers = [];
|
||||||
|
|
||||||
# Enable KDM. Any display manager will do as long as it supports XDMCP.
|
# Enable GDM. Any display manager will do as long as it supports XDMCP.
|
||||||
services.xserver.displayManager.kdm.enable = true;
|
services.xserver.displayManager.gdm.enable = true;
|
||||||
services.xserver.displayManager.kdm.enableXDMCP = true;
|
|
||||||
services.xserver.displayManager.kdm.extraConfig =
|
|
||||||
''
|
|
||||||
[General]
|
|
||||||
# We're headless, so don't bother starting an X server.
|
|
||||||
StaticServers=
|
|
||||||
|
|
||||||
[Xdmcp]
|
|
||||||
Xaccess=${pkgs.writeText "Xaccess" "localhost"}
|
|
||||||
'';
|
|
||||||
|
|
||||||
systemd.sockets.terminal-server =
|
systemd.sockets.terminal-server =
|
||||||
{ description = "Terminal Server Socket";
|
{ description = "Terminal Server Socket";
|
||||||
|
|||||||
@@ -42,7 +42,8 @@ let
|
|||||||
"systemd-udevd.service"
|
"systemd-udevd.service"
|
||||||
"systemd-udev-settle.service"
|
"systemd-udev-settle.service"
|
||||||
"systemd-udev-trigger.service"
|
"systemd-udev-trigger.service"
|
||||||
"systemd-hwdb-update.service"
|
# hwdb.bin is managed by NixOS
|
||||||
|
# "systemd-hwdb-update.service"
|
||||||
|
|
||||||
# Consoles.
|
# Consoles.
|
||||||
"getty.target"
|
"getty.target"
|
||||||
@@ -61,7 +62,6 @@ let
|
|||||||
# Login stuff.
|
# Login stuff.
|
||||||
"systemd-logind.service"
|
"systemd-logind.service"
|
||||||
"autovt@.service"
|
"autovt@.service"
|
||||||
#"systemd-vconsole-setup.service"
|
|
||||||
"systemd-user-sessions.service"
|
"systemd-user-sessions.service"
|
||||||
"dbus-org.freedesktop.login1.service"
|
"dbus-org.freedesktop.login1.service"
|
||||||
"dbus-org.freedesktop.machine1.service"
|
"dbus-org.freedesktop.machine1.service"
|
||||||
@@ -753,7 +753,8 @@ in
|
|||||||
|
|
||||||
# Keep a persistent journal. Note that systemd-tmpfiles will
|
# Keep a persistent journal. Note that systemd-tmpfiles will
|
||||||
# set proper ownership/permissions.
|
# set proper ownership/permissions.
|
||||||
mkdir -m 0700 -p /var/log/journal
|
# FIXME: revert to 0700 with systemd v233.
|
||||||
|
mkdir -m 0750 -p /var/log/journal
|
||||||
'';
|
'';
|
||||||
|
|
||||||
users.extraUsers.systemd-network.uid = config.ids.uids.systemd-network;
|
users.extraUsers.systemd-network.uid = config.ids.uids.systemd-network;
|
||||||
|
|||||||
@@ -100,15 +100,12 @@ in
|
|||||||
}
|
}
|
||||||
|
|
||||||
(mkIf (!config.boot.earlyVconsoleSetup) {
|
(mkIf (!config.boot.earlyVconsoleSetup) {
|
||||||
# This is identical to the systemd-vconsole-setup.service unit
|
|
||||||
# shipped with systemd, except that it uses /dev/tty1 instead of
|
|
||||||
# /dev/tty0 to prevent putting the X server in non-raw mode, and
|
|
||||||
# it has a restart trigger.
|
|
||||||
systemd.services."systemd-vconsole-setup" =
|
systemd.services."systemd-vconsole-setup" =
|
||||||
{ wantedBy = [ "sysinit.target" ];
|
{ wantedBy = [ "sysinit.target" ];
|
||||||
before = [ "display-manager.service" ];
|
before = [ "display-manager.service" ];
|
||||||
after = [ "systemd-udev-settle.service" ];
|
after = [ "systemd-udev-settle.service" ];
|
||||||
restartTriggers = [ vconsoleConf kbdEnv ];
|
restartTriggers = [ vconsoleConf kbdEnv ];
|
||||||
|
restartIfChanged = false; # fails when tty is inactive
|
||||||
};
|
};
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,41 @@
|
|||||||
|
{ config, pkgs, lib, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
|
||||||
|
let
|
||||||
|
cfg = config.services.ecs-agent;
|
||||||
|
in {
|
||||||
|
options.services.ecs-agent = {
|
||||||
|
enable = mkEnableOption "Amazon ECS agent";
|
||||||
|
|
||||||
|
package = mkOption {
|
||||||
|
type = types.path;
|
||||||
|
description = "The ECS agent package to use";
|
||||||
|
default = pkgs.ecs-agent;
|
||||||
|
};
|
||||||
|
|
||||||
|
extra-environment = mkOption {
|
||||||
|
type = types.attrsOf types.str;
|
||||||
|
description = "The environment the ECS agent should run with. See the ECS agent documentation for keys that work here.";
|
||||||
|
default = {};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf cfg.enable {
|
||||||
|
systemd.services.ecs-agent = {
|
||||||
|
inherit (cfg.package.meta) description;
|
||||||
|
after = [ "network.target" ];
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
|
||||||
|
environment = cfg.extra-environment;
|
||||||
|
|
||||||
|
script = ''
|
||||||
|
if [ ! -z "$ECS_DATADIR" ]; then
|
||||||
|
mkdir -p "$ECS_DATADIR"
|
||||||
|
fi
|
||||||
|
${cfg.package.bin}/bin/agent
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
@@ -4,12 +4,19 @@ with lib;
|
|||||||
|
|
||||||
let
|
let
|
||||||
cfg = config.services.vmwareGuest;
|
cfg = config.services.vmwareGuest;
|
||||||
open-vm-tools = pkgs.open-vm-tools;
|
open-vm-tools = if cfg.headless then pkgs.open-vm-tools-headless else pkgs.open-vm-tools;
|
||||||
xf86inputvmmouse = pkgs.xorg.xf86inputvmmouse;
|
xf86inputvmmouse = pkgs.xorg.xf86inputvmmouse;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
options = {
|
options = {
|
||||||
services.vmwareGuest.enable = mkEnableOption "VMWare Guest Support";
|
services.vmwareGuest = {
|
||||||
|
enable = mkEnableOption "VMWare Guest Support";
|
||||||
|
headless = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = false;
|
||||||
|
description = "Whether to disable X11-related features.";
|
||||||
|
};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
@@ -28,7 +35,7 @@ in
|
|||||||
|
|
||||||
environment.etc."vmware-tools".source = "${pkgs.open-vm-tools}/etc/vmware-tools/*";
|
environment.etc."vmware-tools".source = "${pkgs.open-vm-tools}/etc/vmware-tools/*";
|
||||||
|
|
||||||
services.xserver = {
|
services.xserver = mkIf (!cfg.headless) {
|
||||||
videoDrivers = mkOverride 50 [ "vmware" ];
|
videoDrivers = mkOverride 50 [ "vmware" ];
|
||||||
modules = [ xf86inputvmmouse ];
|
modules = [ xf86inputvmmouse ];
|
||||||
|
|
||||||
|
|||||||
+2
-2
@@ -325,8 +325,8 @@ in rec {
|
|||||||
|
|
||||||
kde = makeClosure ({ pkgs, ... }:
|
kde = makeClosure ({ pkgs, ... }:
|
||||||
{ services.xserver.enable = true;
|
{ services.xserver.enable = true;
|
||||||
services.xserver.displayManager.kdm.enable = true;
|
services.xserver.displayManager.sddm.enable = true;
|
||||||
services.xserver.desktopManager.kde4.enable = true;
|
services.xserver.desktopManager.kde5.enable = true;
|
||||||
});
|
});
|
||||||
|
|
||||||
xfce = makeClosure ({ pkgs, ... }:
|
xfce = makeClosure ({ pkgs, ... }:
|
||||||
|
|||||||
@@ -36,7 +36,7 @@ import ./make-test.nix ({ pkgs, ...} : {
|
|||||||
# paxmark actually works (otherwise, the process should be terminated)
|
# paxmark actually works (otherwise, the process should be terminated)
|
||||||
subtest "tcc", sub {
|
subtest "tcc", sub {
|
||||||
$machine->execute("echo -e '#include <stdio.h>\nint main(void) { puts(\"hello\"); return 0; }' >main.c");
|
$machine->execute("echo -e '#include <stdio.h>\nint main(void) { puts(\"hello\"); return 0; }' >main.c");
|
||||||
$machine->succeed("${pkgs.tinycc.bin}/bin/tcc -run main.c");
|
$machine->succeed("${pkgs.tinycc}/bin/tcc -run main.c");
|
||||||
};
|
};
|
||||||
|
|
||||||
subtest "RBAC", sub {
|
subtest "RBAC", sub {
|
||||||
|
|||||||
@@ -54,7 +54,7 @@ import ./make-test.nix ({ pkgs, ... }: {
|
|||||||
client =
|
client =
|
||||||
{ config, pkgs, ... }:
|
{ config, pkgs, ... }:
|
||||||
{ imports = [ ./common/x11.nix ];
|
{ imports = [ ./common/x11.nix ];
|
||||||
services.xserver.desktopManager.kde4.enable = true;
|
services.xserver.desktopManager.kde5.enable = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -45,7 +45,7 @@ import ./make-test.nix ({ pkgs, ... }: {
|
|||||||
client =
|
client =
|
||||||
{ config, pkgs, ... }:
|
{ config, pkgs, ... }:
|
||||||
{ imports = [ ./common/x11.nix ];
|
{ imports = [ ./common/x11.nix ];
|
||||||
services.xserver.desktopManager.kde4.enable = true;
|
services.xserver.desktopManager.kde5.enable = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -2,11 +2,11 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "atom-${version}";
|
name = "atom-${version}";
|
||||||
version = "1.13.1";
|
version = "1.14.1";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/atom/atom/releases/download/v${version}/atom-amd64.deb";
|
url = "https://github.com/atom/atom/releases/download/v${version}/atom-amd64.deb";
|
||||||
sha256 = "0nkd0nrnnmln5fjs1c97dligzqp744j4y6lqanfbs9vrxms6mnq3";
|
sha256 = "0dmzqz1j2nfcm459zgfzqym26kmbspdn9lipf77aawbbn2y36xqp";
|
||||||
name = "${name}.deb";
|
name = "${name}.deb";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -822,10 +822,10 @@
|
|||||||
gnugo = callPackage ({ ascii-art-to-unicode, cl-lib ? null, elpaBuild, fetchurl, lib, xpm }:
|
gnugo = callPackage ({ ascii-art-to-unicode, cl-lib ? null, elpaBuild, fetchurl, lib, xpm }:
|
||||||
elpaBuild {
|
elpaBuild {
|
||||||
pname = "gnugo";
|
pname = "gnugo";
|
||||||
version = "3.0.1";
|
version = "3.0.2";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://elpa.gnu.org/packages/gnugo-3.0.1.tar";
|
url = "https://elpa.gnu.org/packages/gnugo-3.0.2.tar";
|
||||||
sha256 = "08z2hg9mvsxdznq027cmwhkb5i7n7s9r2kvd4jha9xskrcnzj3pp";
|
sha256 = "12xm960awsn2k8ph1yibhrxdg8iz1icifdqimysg3qxljmhmnb3k";
|
||||||
};
|
};
|
||||||
packageRequires = [ ascii-art-to-unicode cl-lib xpm ];
|
packageRequires = [ ascii-art-to-unicode cl-lib xpm ];
|
||||||
meta = {
|
meta = {
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -13,7 +13,7 @@ To update the list of packages from MELPA,
|
|||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
{ lib }:
|
{ lib, external }:
|
||||||
|
|
||||||
self:
|
self:
|
||||||
|
|
||||||
@@ -174,6 +174,17 @@ self:
|
|||||||
|
|
||||||
# upstream issue: missing file header
|
# upstream issue: missing file header
|
||||||
zeitgeist = markBroken super.zeitgeist;
|
zeitgeist = markBroken super.zeitgeist;
|
||||||
|
|
||||||
|
w3m = super.w3m.override (args: {
|
||||||
|
melpaBuild = drv: args.melpaBuild (drv // {
|
||||||
|
prePatch =
|
||||||
|
let w3m = "${lib.getBin external.w3m}/bin/w3m"; in ''
|
||||||
|
substituteInPlace w3m.el \
|
||||||
|
--replace 'defcustom w3m-command nil' \
|
||||||
|
'defcustom w3m-command "${w3m}"'
|
||||||
|
'';
|
||||||
|
});
|
||||||
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
melpaPackages = super // overrides;
|
melpaPackages = super // overrides;
|
||||||
|
|||||||
@@ -2470,6 +2470,27 @@
|
|||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
better-shell = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
|
melpaBuild {
|
||||||
|
pname = "better-shell";
|
||||||
|
version = "1.1";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "killdash9";
|
||||||
|
repo = "better-shell";
|
||||||
|
rev = "6ae157da700a4473734dca75925f6bf60e6b3ba7";
|
||||||
|
sha256 = "14ym7gp57yflf86hxpsjnagxnc0z1jrdc4mbq7wcbh5z8kjkbfpd";
|
||||||
|
};
|
||||||
|
recipeFile = fetchurl {
|
||||||
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/fc553c9fb6de69dafe9fbe44a955b307f4d9507f/recipes/better-shell";
|
||||||
|
sha256 = "1mr39xz8chnc28zw1rrw5yqf44v44pby7ki22yyz6rp1j5ishp4v";
|
||||||
|
name = "better-shell";
|
||||||
|
};
|
||||||
|
packageRequires = [ emacs ];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://melpa.org/#/better-shell";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
biblio = callPackage ({ biblio-core, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
biblio = callPackage ({ biblio-core, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "biblio";
|
pname = "biblio";
|
||||||
@@ -3565,12 +3586,12 @@
|
|||||||
chinese-pyim = callPackage ({ async, chinese-pyim-basedict, cl-lib ? null, fetchFromGitHub, fetchurl, lib, melpaBuild, popup, pos-tip }:
|
chinese-pyim = callPackage ({ async, chinese-pyim-basedict, cl-lib ? null, fetchFromGitHub, fetchurl, lib, melpaBuild, popup, pos-tip }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "chinese-pyim";
|
pname = "chinese-pyim";
|
||||||
version = "1.5.1";
|
version = "1.5.2";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "tumashu";
|
owner = "tumashu";
|
||||||
repo = "chinese-pyim";
|
repo = "chinese-pyim";
|
||||||
rev = "b210c0d5275e1e8c0b78bed186cc18fc27061dd4";
|
rev = "577a3438d14e1a1f08baf0399ec8138c9d1dcba4";
|
||||||
sha256 = "1jixkb7jw07lykbfv022ccnys4xypcbv03f9bxl2r16wizzymvvd";
|
sha256 = "0i9nqhqbj12ilr5fsa4cwai9kf2ydv84m606zqca2xyvvdzw22as";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/157a264533124ba05c161aa93a32c7209f002fba/recipes/chinese-pyim";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/157a264533124ba05c161aa93a32c7209f002fba/recipes/chinese-pyim";
|
||||||
@@ -3838,12 +3859,12 @@
|
|||||||
cliphist = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild, popup }:
|
cliphist = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild, popup }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "cliphist";
|
pname = "cliphist";
|
||||||
version = "0.5.2";
|
version = "0.5.3";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "redguardtoo";
|
owner = "redguardtoo";
|
||||||
repo = "cliphist";
|
repo = "cliphist";
|
||||||
rev = "8aaee153e0561625c35a8c178e57385c2ec92731";
|
rev = "acbd9782d82d7ae6bfb22fb0955597b9c5fcbb6c";
|
||||||
sha256 = "0swsvzz20szfcgfaarga9apla1kl0ph0lrpk0ccl6mcf93zbnvby";
|
sha256 = "1gj5fqjyr4m4qim9qjsvzzk42rm3vw3yycvq3nj0wpj90zb1yh14";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/82d86dae4ad8efc8ef342883c164c56e43079171/recipes/cliphist";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/82d86dae4ad8efc8ef342883c164c56e43079171/recipes/cliphist";
|
||||||
@@ -4143,12 +4164,12 @@
|
|||||||
cmake-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
cmake-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "cmake-mode";
|
pname = "cmake-mode";
|
||||||
version = "3.7.2";
|
version = "3.8.0pre1";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "Kitware";
|
owner = "Kitware";
|
||||||
repo = "CMake";
|
repo = "CMake";
|
||||||
rev = "35413bf2c1b33980afd418030af27f184872af6b";
|
rev = "84df4a49500e51ac6e2a19a77e385e66234386f7";
|
||||||
sha256 = "1kk0xri88h4lla8r8y5gksiwpyxb468h8qn0f61sfa1kni73z09s";
|
sha256 = "1kkycphqbz8j3jp70n9vh3lgpb2fxy2461q6x365h8mg5ab4w7x3";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/598723893ae4bc2e60f527a072efe6ed9d4e2488/recipes/cmake-mode";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/598723893ae4bc2e60f527a072efe6ed9d4e2488/recipes/cmake-mode";
|
||||||
@@ -5094,12 +5115,12 @@
|
|||||||
copy-as-format = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
copy-as-format = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "copy-as-format";
|
pname = "copy-as-format";
|
||||||
version = "0.0.2";
|
version = "0.0.3";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "sshaw";
|
owner = "sshaw";
|
||||||
repo = "copy-as-format";
|
repo = "copy-as-format";
|
||||||
rev = "6c47295597c69b3b08dd8f137f6a5973a5588674";
|
rev = "edc6d2313b321988fdf780fac229d395e4752702";
|
||||||
sha256 = "1d4x8rvmzqi3cby01ahgr3fqcsq4kpd6sglr9slxcw7hp7rlih0i";
|
sha256 = "1gnm9r42nkp349d5ry2bv9in83ikmh5pnrfcw96yigxrzkbajb2s";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/42fe8a2113d1c15701abe7a7e0a68e939c3d789b/recipes/copy-as-format";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/42fe8a2113d1c15701abe7a7e0a68e939c3d789b/recipes/copy-as-format";
|
||||||
@@ -9066,12 +9087,12 @@
|
|||||||
erlang = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
erlang = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "erlang";
|
pname = "erlang";
|
||||||
version = "19.2.2";
|
version = "19.2.3";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "erlang";
|
owner = "erlang";
|
||||||
repo = "otp";
|
repo = "otp";
|
||||||
rev = "51faafa9a20c4afa7944b8089b26f22c774bed19";
|
rev = "aa315e1cf1b79ab782e5b4c944595495ebf4e2f4";
|
||||||
sha256 = "0shy3ckxw9scsg3j8brzk5r3p0rdpfbr9ys7akmdp2pq88d867i9";
|
sha256 = "1lsmjpz2g4hj44fz95w7sswzj40iv7jq5jk64x0095lhvxmlf57c";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/d9cd526f43981e0826af59cdc4bb702f644781d9/recipes/erlang";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/d9cd526f43981e0826af59cdc4bb702f644781d9/recipes/erlang";
|
||||||
@@ -9170,12 +9191,12 @@
|
|||||||
es-mode = callPackage ({ cl-lib ? null, dash, fetchFromGitHub, fetchurl, lib, melpaBuild, spark }:
|
es-mode = callPackage ({ cl-lib ? null, dash, fetchFromGitHub, fetchurl, lib, melpaBuild, spark }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "es-mode";
|
pname = "es-mode";
|
||||||
version = "4.2.0";
|
version = "4.3.0";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "dakrone";
|
owner = "dakrone";
|
||||||
repo = "es-mode";
|
repo = "es-mode";
|
||||||
rev = "f5e6054a1d25d5eb8e21ddb931b7f65b0735c5f8";
|
rev = "996730ebce57d810d2c275c7fadb11c2b1134dea";
|
||||||
sha256 = "04lll5sscbpqcq3sv5gsfky5qcj6asqql7fw1bp6g12qqf9r02nd";
|
sha256 = "1qhfnd5anp5qrmravv7ks5ix763xnki2f5jwcyj70qyxwr0l60cg";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/85445b59329bfd81a3fd913d7d6fe7784c31744c/recipes/es-mode";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/85445b59329bfd81a3fd913d7d6fe7784c31744c/recipes/es-mode";
|
||||||
@@ -9566,6 +9587,27 @@
|
|||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
evil = callPackage ({ fetchFromGitHub, fetchurl, goto-chg, lib, melpaBuild, undo-tree }:
|
||||||
|
melpaBuild {
|
||||||
|
pname = "evil";
|
||||||
|
version = "1.2.12";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "emacs-evil";
|
||||||
|
repo = "evil";
|
||||||
|
rev = "0ad4c2dae1249558f7b59a78a685e4f8092009c9";
|
||||||
|
sha256 = "1z7ysn0h62i674pw47k905713m4ch7hrisk4834rf53zq3c9sabn";
|
||||||
|
};
|
||||||
|
recipeFile = fetchurl {
|
||||||
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/514964d788f250e1e7893142bc094c63131bc6a5/recipes/evil";
|
||||||
|
sha256 = "044k9p32y4cys3zwdfanr1zddgkxz16ahqspfz7vfszyw8yml1jb";
|
||||||
|
name = "evil";
|
||||||
|
};
|
||||||
|
packageRequires = [ goto-chg undo-tree ];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://melpa.org/#/evil";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
evil-anzu = callPackage ({ anzu, evil, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
evil-anzu = callPackage ({ anzu, evil, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "evil-anzu";
|
pname = "evil-anzu";
|
||||||
@@ -9842,12 +9884,12 @@
|
|||||||
evil-nerd-commenter = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
evil-nerd-commenter = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "evil-nerd-commenter";
|
pname = "evil-nerd-commenter";
|
||||||
version = "2.3.1";
|
version = "2.3.3";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "redguardtoo";
|
owner = "redguardtoo";
|
||||||
repo = "evil-nerd-commenter";
|
repo = "evil-nerd-commenter";
|
||||||
rev = "54c618aada776bfda0742819ff9e91845a91e095";
|
rev = "01a98a20c536a575ee5bc897f38116155154d5fe";
|
||||||
sha256 = "04iyr6ys453pyfvif91qnhn6xyhl4z4cz2apj6vga61pa8lc70da";
|
sha256 = "160h4qasqr04fnv9w5dar327i074dsyac2md5y7p3hnz1c05skhl";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/a3e1ff69e7cc95a5b5d628524ad836833f4ee736/recipes/evil-nerd-commenter";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/a3e1ff69e7cc95a5b5d628524ad836833f4ee736/recipes/evil-nerd-commenter";
|
||||||
@@ -10574,22 +10616,22 @@
|
|||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
find-by-pinyin-dired = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
find-by-pinyin-dired = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild, pinyinlib }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "find-by-pinyin-dired";
|
pname = "find-by-pinyin-dired";
|
||||||
version = "0.0.2";
|
version = "0.0.3";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "redguardtoo";
|
owner = "redguardtoo";
|
||||||
repo = "find-by-pinyin-dired";
|
repo = "find-by-pinyin-dired";
|
||||||
rev = "3137c367d58958858daa6d3dee1993b2eb9dd9b4";
|
rev = "2c48434637bd63840fca4d2c6cf9ebd5dd44658f";
|
||||||
sha256 = "1xjb66pydm3yf0jxnm2mri98pxq3b26xvwjkaj1488qgj27i05jr";
|
sha256 = "0ial0lbvg0xbrwn8cm68xc5wxj3xgp110y2zgypkdpak8gkv8b5h";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/0aa68b4603bf4071d7d12b40de0138ecab1989d7/recipes/find-by-pinyin-dired";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/0aa68b4603bf4071d7d12b40de0138ecab1989d7/recipes/find-by-pinyin-dired";
|
||||||
sha256 = "150hvih3mdd1dqffgdcv3nn4qhy86s4lhjkfq0cfzgngfwif8qqq";
|
sha256 = "150hvih3mdd1dqffgdcv3nn4qhy86s4lhjkfq0cfzgngfwif8qqq";
|
||||||
name = "find-by-pinyin-dired";
|
name = "find-by-pinyin-dired";
|
||||||
};
|
};
|
||||||
packageRequires = [];
|
packageRequires = [ pinyinlib ];
|
||||||
meta = {
|
meta = {
|
||||||
homepage = "https://melpa.org/#/find-by-pinyin-dired";
|
homepage = "https://melpa.org/#/find-by-pinyin-dired";
|
||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
@@ -14105,6 +14147,27 @@
|
|||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
green-screen-theme = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
|
melpaBuild {
|
||||||
|
pname = "green-screen-theme";
|
||||||
|
version = "1.0.0.1";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "rbanffy";
|
||||||
|
repo = "green-screen-emacs";
|
||||||
|
rev = "e47e3eb903b4d9dbcc66342d91915947b35e5e1e";
|
||||||
|
sha256 = "0gv434aab9ar624l4r7ky4ksvkchzlgj8pyvkc73kfqcxg084pdn";
|
||||||
|
};
|
||||||
|
recipeFile = fetchurl {
|
||||||
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/821744ca106f1b74941524782e4581fc93800fed/recipes/green-screen-theme";
|
||||||
|
sha256 = "0a45xcl74kp3v39bl169sq46mqxiwvvis6jzwcy6yrl2vqqi4mab";
|
||||||
|
name = "green-screen-theme";
|
||||||
|
};
|
||||||
|
packageRequires = [];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://melpa.org/#/green-screen-theme";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
grin = callPackage ({ fetchhg, fetchurl, lib, melpaBuild }: melpaBuild {
|
grin = callPackage ({ fetchhg, fetchurl, lib, melpaBuild }: melpaBuild {
|
||||||
pname = "grin";
|
pname = "grin";
|
||||||
version = "1.0";
|
version = "1.0";
|
||||||
@@ -14376,22 +14439,22 @@
|
|||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
hacker-typer = callPackage ({ async, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
hacker-typer = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "hacker-typer";
|
pname = "hacker-typer";
|
||||||
version = "1.0.1";
|
version = "1.0.6";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "therockmandolinist";
|
owner = "therockmandolinist";
|
||||||
repo = "emacs-hacker-typer";
|
repo = "emacs-hacker-typer";
|
||||||
rev = "de208bb6d69f6f45eca8522d41012c7f729b8c9f";
|
rev = "d5a23714a4ccc5071580622f278597d5973f40bd";
|
||||||
sha256 = "0lhsj9j17sd43w96zk84ssfvk5q518znbp1zkb5znl2q7ky8cwrg";
|
sha256 = "13wp7cg9d9ij44inxxyk1knczglxrbfaq50wyhc4x5zfhz5yw7wx";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/561661965a7a500f24671454b3b680816457e180/recipes/hacker-typer";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/8e04a3a1606ea23865c04d93e3dc77cb55b9931f/recipes/hacker-typer";
|
||||||
sha256 = "0i9kkxcz0fz4yviksl3f0ggh9kpwr9sidg7945r46bmblni3f0j9";
|
sha256 = "128y562cxi8rblnqjdzhqc6b58bxi67f6hz569gqw4jywz0xcd0g";
|
||||||
name = "hacker-typer";
|
name = "hacker-typer";
|
||||||
};
|
};
|
||||||
packageRequires = [ async ];
|
packageRequires = [ emacs ];
|
||||||
meta = {
|
meta = {
|
||||||
homepage = "https://melpa.org/#/hacker-typer";
|
homepage = "https://melpa.org/#/hacker-typer";
|
||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
@@ -14735,12 +14798,12 @@
|
|||||||
helm = callPackage ({ async, emacs, fetchFromGitHub, fetchurl, helm-core, lib, melpaBuild, popup }:
|
helm = callPackage ({ async, emacs, fetchFromGitHub, fetchurl, helm-core, lib, melpaBuild, popup }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "helm";
|
pname = "helm";
|
||||||
version = "2.5.1";
|
version = "2.5.2";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "emacs-helm";
|
owner = "emacs-helm";
|
||||||
repo = "helm";
|
repo = "helm";
|
||||||
rev = "b54d937634986dbebe97c0283137bcde07ed2275";
|
rev = "7d7c16f10103aeee591daf46b143d23efdf3a825";
|
||||||
sha256 = "0cq4pcx0rn9kzf55pbad1lcn1xq58vcdng9sx50485wdxqr0bxzc";
|
sha256 = "0mn36dxd70nsk1dwn0mzz94sy28hk41af8chdpl2cd09bkpw113l";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/7e8bccffdf69479892d76b9336a4bec3f35e919d/recipes/helm";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/7e8bccffdf69479892d76b9336a4bec3f35e919d/recipes/helm";
|
||||||
@@ -14777,12 +14840,12 @@
|
|||||||
helm-ag = callPackage ({ emacs, fetchFromGitHub, fetchurl, helm, lib, melpaBuild }:
|
helm-ag = callPackage ({ emacs, fetchFromGitHub, fetchurl, helm, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "helm-ag";
|
pname = "helm-ag";
|
||||||
version = "0.57";
|
version = "0.58";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "syohex";
|
owner = "syohex";
|
||||||
repo = "emacs-helm-ag";
|
repo = "emacs-helm-ag";
|
||||||
rev = "49e1f66fa80674513ca898e32d62d6dad875cb90";
|
rev = "39ed137823665fca2fa5b215f7c3e8701173f7b7";
|
||||||
sha256 = "0vzgiix2c8jwpk2hhxvz9gqb78glmd4dk1myrgvxs9fhsj54dkk3";
|
sha256 = "0a6yls52pkqsaj6s5nsi70kzpvssdvb87bfnp8gp26q2y3syx4ni";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/81f0f525680fea98e804f39dbde1dada887e8821/recipes/helm-ag";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/81f0f525680fea98e804f39dbde1dada887e8821/recipes/helm-ag";
|
||||||
@@ -15029,12 +15092,12 @@
|
|||||||
helm-core = callPackage ({ async, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
helm-core = callPackage ({ async, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "helm-core";
|
pname = "helm-core";
|
||||||
version = "2.5.1";
|
version = "2.5.2";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "emacs-helm";
|
owner = "emacs-helm";
|
||||||
repo = "helm";
|
repo = "helm";
|
||||||
rev = "b54d937634986dbebe97c0283137bcde07ed2275";
|
rev = "7d7c16f10103aeee591daf46b143d23efdf3a825";
|
||||||
sha256 = "0cq4pcx0rn9kzf55pbad1lcn1xq58vcdng9sx50485wdxqr0bxzc";
|
sha256 = "0mn36dxd70nsk1dwn0mzz94sy28hk41af8chdpl2cd09bkpw113l";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/ef7a700c5665e6d72cb4cecf7fb5a2dd43ef9bf7/recipes/helm-core";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/ef7a700c5665e6d72cb4cecf7fb5a2dd43ef9bf7/recipes/helm-core";
|
||||||
@@ -23129,12 +23192,12 @@
|
|||||||
org-jira = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, request }:
|
org-jira = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, request }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "org-jira";
|
pname = "org-jira";
|
||||||
version = "2.5.2";
|
version = "2.6.0";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "ahungry";
|
owner = "ahungry";
|
||||||
repo = "org-jira";
|
repo = "org-jira";
|
||||||
rev = "af4115f4e8b4e77de5642fb28ce6d5e0d7cb0b70";
|
rev = "0ff62665231df2be5d5bc84c4748c272664eeff3";
|
||||||
sha256 = "1g775f9gpl0nqq3vn6h9cnjazimn9bjwk31dc7fdylz3nf7f3h03";
|
sha256 = "0qn203bw0v7g8kmpkqp9vwh7m8cjjhklvwbhgmr8szaz1i1m9d0i";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/730a585e5c9216a2428a134c09abcc20bc7c631d/recipes/org-jira";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/730a585e5c9216a2428a134c09abcc20bc7c631d/recipes/org-jira";
|
||||||
@@ -23230,22 +23293,22 @@
|
|||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
org-mime = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
org-mime = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "org-mime";
|
pname = "org-mime";
|
||||||
version = "0.0.4";
|
version = "0.0.5";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "org-mime";
|
owner = "org-mime";
|
||||||
repo = "org-mime";
|
repo = "org-mime";
|
||||||
rev = "3c4f24c8d43c24332c4f2f4bf763459b11ead956";
|
rev = "a0b82a6c1a0dbcf5b7bebfe2e5817d54a1cd3cc8";
|
||||||
sha256 = "04xs06sgdigi9hpciqb0d12rsgzg5b5vyf08rlvkjiddkqclp5pw";
|
sha256 = "11wldx6c53ncw3pmdwxn31q82vkcffqvr2cfphl5bhb4q8r5lrjn";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/521678fa13884dae69c2b4b7a2af718b2eea4b28/recipes/org-mime";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/521678fa13884dae69c2b4b7a2af718b2eea4b28/recipes/org-mime";
|
||||||
sha256 = "14154pajl2bbawdd8iqfwgc67pcjp2lxl6f92c62nwq12wkcnny6";
|
sha256 = "14154pajl2bbawdd8iqfwgc67pcjp2lxl6f92c62nwq12wkcnny6";
|
||||||
name = "org-mime";
|
name = "org-mime";
|
||||||
};
|
};
|
||||||
packageRequires = [];
|
packageRequires = [ cl-lib ];
|
||||||
meta = {
|
meta = {
|
||||||
homepage = "https://melpa.org/#/org-mime";
|
homepage = "https://melpa.org/#/org-mime";
|
||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
@@ -24734,6 +24797,27 @@
|
|||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
pastery = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, request }:
|
||||||
|
melpaBuild {
|
||||||
|
pname = "pastery";
|
||||||
|
version = "0.1.14";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "diasbruno";
|
||||||
|
repo = "pastery.el";
|
||||||
|
rev = "3f60a2660613c09be5a0b6e299828b44ee3c8732";
|
||||||
|
sha256 = "1dzbkiy2qjdq4isrpiwj25qj069nhydzngg6avyh2c2qmxkibjsr";
|
||||||
|
};
|
||||||
|
recipeFile = fetchurl {
|
||||||
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/6058218450071db0af9a5b8ce8ec09a735c4ab66/recipes/pastery";
|
||||||
|
sha256 = "006qawjc86spbbs2pxvhg9w94rcsxap577cndqwaiw1k0cc8vkhp";
|
||||||
|
name = "pastery";
|
||||||
|
};
|
||||||
|
packageRequires = [ emacs request ];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://melpa.org/#/pastery";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
pathify = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
pathify = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "pathify";
|
pname = "pathify";
|
||||||
@@ -25069,6 +25153,27 @@
|
|||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
phan = callPackage ({ composer, emacs, f, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
|
melpaBuild {
|
||||||
|
pname = "phan";
|
||||||
|
version = "0.0.2";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "zonuexe";
|
||||||
|
repo = "phan.el";
|
||||||
|
rev = "4e3528f490e77d3aa6d81729b30b569434ef679f";
|
||||||
|
sha256 = "1aif1hshwpzi353k2gcpwk9s76jlmz3s5dyf357qfv14b5ddhw6l";
|
||||||
|
};
|
||||||
|
recipeFile = fetchurl {
|
||||||
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/d591d9ba70b1e32f25204ad9409aad78fd68a93c/recipes/phan";
|
||||||
|
sha256 = "16r1d2bgbb2y7l141sw7nzhx0s50gzwq5ang00y7f4sfldqvshzf";
|
||||||
|
name = "phan";
|
||||||
|
};
|
||||||
|
packageRequires = [ composer emacs f ];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://melpa.org/#/phan";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
phi-search = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
phi-search = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "phi-search";
|
pname = "phi-search";
|
||||||
@@ -26032,22 +26137,22 @@
|
|||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
projectile-variable = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild, projectile }:
|
projectile-variable = callPackage ({ cl-lib ? null, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "projectile-variable";
|
pname = "projectile-variable";
|
||||||
version = "0.0.1";
|
version = "0.0.2";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "zonuexe";
|
owner = "zonuexe";
|
||||||
repo = "projectile-variable";
|
repo = "projectile-variable";
|
||||||
rev = "810394eabf330325a86ec6f60c69e160eb837ac3";
|
rev = "8d348ac70bdd6dc320c13a12941b32b38140e264";
|
||||||
sha256 = "183azck3bi4qwpprcc07kvwm3piwqgql7ryy1czvmw3kbdmk1rpj";
|
sha256 = "0l38nldx6lwjb7mxixykiyj10xwb35249dxfg0k2wkmb2vy1fkxs";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/ff603b43235f546cd47f72e675aee88d5f41e855/recipes/projectile-variable";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/ff603b43235f546cd47f72e675aee88d5f41e855/recipes/projectile-variable";
|
||||||
sha256 = "1cj8nwxf1jp5q5zzxp92fxla6jhwzd21gw649ar6mygi4hgymsji";
|
sha256 = "1cj8nwxf1jp5q5zzxp92fxla6jhwzd21gw649ar6mygi4hgymsji";
|
||||||
name = "projectile-variable";
|
name = "projectile-variable";
|
||||||
};
|
};
|
||||||
packageRequires = [ cl-lib emacs projectile ];
|
packageRequires = [ cl-lib emacs ];
|
||||||
meta = {
|
meta = {
|
||||||
homepage = "https://melpa.org/#/projectile-variable";
|
homepage = "https://melpa.org/#/projectile-variable";
|
||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
@@ -27505,12 +27610,12 @@
|
|||||||
rg = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, lib, melpaBuild, s }:
|
rg = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, lib, melpaBuild, s }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "rg";
|
pname = "rg";
|
||||||
version = "1.0.0";
|
version = "1.1.0";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "dajva";
|
owner = "dajva";
|
||||||
repo = "rg.el";
|
repo = "rg.el";
|
||||||
rev = "f1af862ba50b344d2f039f18fe83e32b6f0829a9";
|
rev = "ec9eb5240191612debf0392ee7a7f491c7dae27e";
|
||||||
sha256 = "18i5rspwx48xik8yaw0znsfqarwab7nra6wiiznjkpzm0cgh4av1";
|
sha256 = "0773d0n5jq42yr5p1xbbfji027j0kw4msv1p8b7zk82ij1yc7hyr";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/9ce1f721867383a841957370946f283f996fa76f/recipes/rg";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/9ce1f721867383a841957370946f283f996fa76f/recipes/rg";
|
||||||
@@ -28322,12 +28427,12 @@
|
|||||||
selectric-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
selectric-mode = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "selectric-mode";
|
pname = "selectric-mode";
|
||||||
version = "1.1";
|
version = "1.2";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "rbanffy";
|
owner = "rbanffy";
|
||||||
repo = "selectric-mode";
|
repo = "selectric-mode";
|
||||||
rev = "0dd7ef28a9d9d6fbb95fdeeab6b576ad8762ad16";
|
rev = "a8e8c8899c749bd36bdd161e161cdc51301defc6";
|
||||||
sha256 = "18xdkisxvdizsk51pnyimp9mwc6k9cpcxqr5hgndkz9q97p5dp79";
|
sha256 = "1dj8vccdk1s0ynl5znpg02xp182srn3s8cqcxqrxjllp7wbgab31";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/08922071b9854142eab726302e75f1db2d326ec5/recipes/selectric-mode";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/08922071b9854142eab726302e75f1db2d326ec5/recipes/selectric-mode";
|
||||||
@@ -28994,12 +29099,12 @@
|
|||||||
slime = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, lib, macrostep, melpaBuild }:
|
slime = callPackage ({ cl-lib ? null, fetchFromGitHub, fetchurl, lib, macrostep, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "slime";
|
pname = "slime";
|
||||||
version = "2.18";
|
version = "2.19";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "slime";
|
owner = "slime";
|
||||||
repo = "slime";
|
repo = "slime";
|
||||||
rev = "2da9fef009f2380daf9404022ca69cb87573f509";
|
rev = "6e20d01e446334848ea31ace0ce041cec25647ab";
|
||||||
sha256 = "0d1fcjv11my4sa11zim99ylzfsc5q989x4izrrxs3y9ii0nq8kax";
|
sha256 = "1ywlbdk9ywfkv8z6pb69r29nh03krfdg676d086i8qjaas7ly2yp";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/14c60acbfde13d5e9256cea83d4d0d33e037d4b9/recipes/slime";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/14c60acbfde13d5e9256cea83d4d0d33e037d4b9/recipes/slime";
|
||||||
@@ -29915,6 +30020,27 @@
|
|||||||
license = lib.licenses.free;
|
license = lib.licenses.free;
|
||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
ssh-agency = callPackage ({ dash, emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
|
melpaBuild {
|
||||||
|
pname = "ssh-agency";
|
||||||
|
version = "0.3";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "magit";
|
||||||
|
repo = "ssh-agency";
|
||||||
|
rev = "94abffa716aff963175196066526c7ee8b4efae7";
|
||||||
|
sha256 = "1r41hgh0kaf9x56jllqjz7f9ypzgyf9pqqpm3r49xyi8fr1drbxc";
|
||||||
|
};
|
||||||
|
recipeFile = fetchurl {
|
||||||
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/b9a9e4bd0205908bfb99762c7daaf3be276bb03a/recipes/ssh-agency";
|
||||||
|
sha256 = "0lci3fhl2p9mwilvq1njzy13dkq5cp5ighymf3zs4gzm3w0ih3h8";
|
||||||
|
name = "ssh-agency";
|
||||||
|
};
|
||||||
|
packageRequires = [ dash emacs ];
|
||||||
|
meta = {
|
||||||
|
homepage = "https://melpa.org/#/ssh-agency";
|
||||||
|
license = lib.licenses.free;
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
ssh-deploy = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
ssh-deploy = callPackage ({ fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "ssh-deploy";
|
pname = "ssh-deploy";
|
||||||
@@ -30419,12 +30545,12 @@
|
|||||||
swift-mode = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
swift-mode = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "swift-mode";
|
pname = "swift-mode";
|
||||||
version = "2.2.2";
|
version = "2.2.3";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "chrisbarrett";
|
owner = "chrisbarrett";
|
||||||
repo = "swift-mode";
|
repo = "swift-mode";
|
||||||
rev = "42669da0b68bba2d12f9d5fc38f30def118bb999";
|
rev = "75cbae223fbf84d19e14a7f7734ded4f46078654";
|
||||||
sha256 = "0l7f7mm4a7qrw0i6fnakgy7payghjgmamln9ldbdx593hg1jjzr8";
|
sha256 = "1ilawg15l6j3w2mlybz01h1dk9mym37wq4illz1llc3q3v9n7nny";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/19cb133191cd6f9623e99e958d360113595e756a/recipes/swift-mode";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/19cb133191cd6f9623e99e958d360113595e756a/recipes/swift-mode";
|
||||||
@@ -32838,12 +32964,12 @@
|
|||||||
which-key = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
which-key = callPackage ({ emacs, fetchFromGitHub, fetchurl, lib, melpaBuild }:
|
||||||
melpaBuild {
|
melpaBuild {
|
||||||
pname = "which-key";
|
pname = "which-key";
|
||||||
version = "1.2.1";
|
version = "2.0";
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "justbur";
|
owner = "justbur";
|
||||||
repo = "emacs-which-key";
|
repo = "emacs-which-key";
|
||||||
rev = "17f4b0069273f9c9877dc079e5cf49ed9cb4d278";
|
rev = "ea6f1dc5aacff2f3d909e410db05af01966555aa";
|
||||||
sha256 = "1h673yjl0hp6p244pkk6hmazgfrj2sbz9cvd1r6rnrp1lpn8z1dl";
|
sha256 = "0pckvxk2vpwqfypz5vyk0ig6g5697ibnlk8vspvqpanahvgaj0nh";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/315865a3df97c0694f648633d44b8b34df1ac76d/recipes/which-key";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/315865a3df97c0694f648633d44b8b34df1ac76d/recipes/which-key";
|
||||||
@@ -33114,8 +33240,8 @@
|
|||||||
version = "0.9.1";
|
version = "0.9.1";
|
||||||
src = fetchhg {
|
src = fetchhg {
|
||||||
url = "https://bitbucket.com/ArneBab/wisp";
|
url = "https://bitbucket.com/ArneBab/wisp";
|
||||||
rev = "280ab84bf8ad";
|
rev = "3a654cfe6632";
|
||||||
sha256 = "088khr4ha37nvxzg620a6gyq7pc40rb13bbi9vgqhgjgggpq61d9";
|
sha256 = "1ahmpk0302g375w9ikkzagjvx8qblkzx40w960ka0cqf7nzyk75d";
|
||||||
};
|
};
|
||||||
recipeFile = fetchurl {
|
recipeFile = fetchurl {
|
||||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/5b7972602399f9df9139cff177e38653bb0f43ed/recipes/wisp-mode";
|
url = "https://raw.githubusercontent.com/milkypostman/melpa/5b7972602399f9df9139cff177e38653bb0f43ed/recipes/wisp-mode";
|
||||||
|
|||||||
@@ -3,8 +3,8 @@
|
|||||||
, libtiff, librsvg, gconf, libxml2, imagemagick, gnutls, libselinux
|
, libtiff, librsvg, gconf, libxml2, imagemagick, gnutls, libselinux
|
||||||
, alsaLib, cairo, acl, gpm, AppKit, CoreWLAN, Kerberos, GSS, ImageIO
|
, alsaLib, cairo, acl, gpm, AppKit, CoreWLAN, Kerberos, GSS, ImageIO
|
||||||
, withX ? !stdenv.isDarwin
|
, withX ? !stdenv.isDarwin
|
||||||
, withGTK2 ? true, gtk2 ? null
|
, withGTK2 ? false, gtk2 ? null
|
||||||
, withGTK3 ? false, gtk3 ? null
|
, withGTK3 ? true, gtk3 ? null
|
||||||
, withXwidgets ? false, webkitgtk24x ? null, wrapGAppsHook ? null, glib_networking ? null
|
, withXwidgets ? false, webkitgtk24x ? null, wrapGAppsHook ? null, glib_networking ? null
|
||||||
, withCsrc ? true
|
, withCsrc ? true
|
||||||
, srcRepo ? false, autoconf ? null, automake ? null, texinfo ? null
|
, srcRepo ? false, autoconf ? null, automake ? null, texinfo ? null
|
||||||
|
|||||||
@@ -0,0 +1,55 @@
|
|||||||
|
From e84645d1694bdad7f179cd41babce723fe07aa63 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Kevin Funk <kfunk@kde.org>
|
||||||
|
Date: Mon, 5 Dec 2016 15:20:53 +0100
|
||||||
|
Subject: Hotfix for restoring build with newer KConfig
|
||||||
|
|
||||||
|
https://phabricator.kde.org/D3386 is a SIC change, handle that
|
||||||
|
---
|
||||||
|
project/projectconfigskeleton.cpp | 4 ++++
|
||||||
|
project/projectconfigskeleton.h | 14 +++++---------
|
||||||
|
2 files changed, 9 insertions(+), 9 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/project/projectconfigskeleton.cpp b/project/projectconfigskeleton.cpp
|
||||||
|
index 0e06149..c4c9767 100644
|
||||||
|
--- a/project/projectconfigskeleton.cpp
|
||||||
|
+++ b/project/projectconfigskeleton.cpp
|
||||||
|
@@ -46,6 +46,10 @@ ProjectConfigSkeleton::ProjectConfigSkeleton( const QString & configname )
|
||||||
|
ProjectConfigSkeleton::ProjectConfigSkeleton( KSharedConfigPtr config )
|
||||||
|
: KConfigSkeleton( config ), d( new ProjectConfigSkeletonPrivate )
|
||||||
|
{
|
||||||
|
+ // FIXME: Check if that does the right thing.
|
||||||
|
+ // https://phabricator.kde.org/D3386 broke source compat in kconfig, thus requiring us to make this ctor public
|
||||||
|
+ Q_ASSERT(config);
|
||||||
|
+ d->m_developerTempFile = config->name();
|
||||||
|
}
|
||||||
|
|
||||||
|
void ProjectConfigSkeleton::setDeveloperTempFile( const QString& cfg )
|
||||||
|
diff --git a/project/projectconfigskeleton.h b/project/projectconfigskeleton.h
|
||||||
|
index ed17ed0..c8314df 100644
|
||||||
|
--- a/project/projectconfigskeleton.h
|
||||||
|
+++ b/project/projectconfigskeleton.h
|
||||||
|
@@ -55,16 +55,12 @@ public:
|
||||||
|
|
||||||
|
Path projectFile() const;
|
||||||
|
Path developerFile() const;
|
||||||
|
+
|
||||||
|
+protected:
|
||||||
|
+ explicit ProjectConfigSkeleton( KSharedConfigPtr config );
|
||||||
|
+
|
||||||
|
private:
|
||||||
|
- /**
|
||||||
|
- * There's no way in KDE4 API to find out the file that the config object
|
||||||
|
- * was created from, so we can't apply defaults when using this
|
||||||
|
- * constructors. Thus I'm making this private, so we can find out when
|
||||||
|
- * this constructor is used and see if we need to add appropriate API to
|
||||||
|
- * kdelibs
|
||||||
|
- */
|
||||||
|
- explicit ProjectConfigSkeleton( KSharedConfigPtr config );
|
||||||
|
- struct ProjectConfigSkeletonPrivate * const d;
|
||||||
|
+ struct ProjectConfigSkeletonPrivate * const d;
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
||||||
|
--
|
||||||
|
cgit v0.11.2
|
||||||
|
|
||||||
@@ -18,6 +18,8 @@ stdenv.mkDerivation rec {
|
|||||||
sha256 = "643d1145e1948af221f9ae148d0a10809f3d89af4b97ff0d6c4d571004f46bd4";
|
sha256 = "643d1145e1948af221f9ae148d0a10809f3d89af4b97ff0d6c4d571004f46bd4";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patches = [ ./kdevplatform-projectconfigskeleton.patch ];
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake gettext pkgconfig extra-cmake-modules makeQtWrapper ];
|
nativeBuildInputs = [ cmake gettext pkgconfig extra-cmake-modules makeQtWrapper ];
|
||||||
|
|
||||||
propagatedBuildInputs = [ ];
|
propagatedBuildInputs = [ ];
|
||||||
|
|||||||
@@ -0,0 +1,26 @@
|
|||||||
|
{ stdenv, fetchFromGitHub, pythonPackages }:
|
||||||
|
|
||||||
|
with stdenv.lib;
|
||||||
|
|
||||||
|
pythonPackages.buildPythonPackage rec {
|
||||||
|
name = "neovim-remote-${version}";
|
||||||
|
version = "v1.4.0";
|
||||||
|
disabled = !pythonPackages.isPy3k;
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "mhinz";
|
||||||
|
repo = "neovim-remote";
|
||||||
|
rev = version;
|
||||||
|
sha256 = "0msvfh27f56xj5ki59ikzavxz863nal5scm57n43618m49qzg8iz";
|
||||||
|
};
|
||||||
|
|
||||||
|
propagatedBuildInputs = [ pythonPackages.neovim ];
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "A tool that helps controlling nvim processes from a terminal";
|
||||||
|
homepage = https://github.com/mhinz/neovim-remote/;
|
||||||
|
license = licenses.mit;
|
||||||
|
maintainers = with maintainers; [ edanaher ];
|
||||||
|
platforms = platforms.unix;
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -2,24 +2,24 @@
|
|||||||
makeWrapper, libXScrnSaver }:
|
makeWrapper, libXScrnSaver }:
|
||||||
|
|
||||||
let
|
let
|
||||||
version = "1.9.0";
|
version = "1.9.1";
|
||||||
rev = "27240e71ef390bf2d66307e677c2a333cebf75af";
|
rev = "f9d0c687ff2ea7aabd85fb9a43129117c0ecf519";
|
||||||
channel = "stable";
|
channel = "stable";
|
||||||
|
|
||||||
# The revision can be obtained with the following command (see https://github.com/NixOS/nixpkgs/issues/22465):
|
# The revision can be obtained with the following command (see https://github.com/NixOS/nixpkgs/issues/22465):
|
||||||
# curl -w "%{url_effective}\n" -I -L -s -S https://vscode-update.azurewebsites.net/latest/linux-x64/stable -o /dev/null
|
# curl -w "%{url_effective}\n" -I -L -s -S https://vscode-update.azurewebsites.net/latest/linux-x64/stable -o /dev/null
|
||||||
|
|
||||||
sha256 = if stdenv.system == "i686-linux" then "05f1sk2lq2skp8fxq6q229kf89vi2sq3zz6lywq7nk81pwvp8jap"
|
sha256 = if stdenv.system == "i686-linux" then "03lv792rkb1hgn1knd8kpic7q07cd194cr4fw1bimnjblrvyy586"
|
||||||
else if stdenv.system == "x86_64-linux" then "0wj17lwq8f88xvfa6wfbqm580kp0470ib2yxn15j9mv0iw7nzqry"
|
else if stdenv.system == "x86_64-linux" then "1vrcb4y2y83bhxx9121afwbzm8yddfin4zy3nyxfi805pjmszwjm"
|
||||||
else if stdenv.system == "x86_64-darwin" then "1k067h099j6fv820nn6h4i8ax35yvd1h8f4h5216dm66cpikv7nd"
|
else if stdenv.system == "x86_64-darwin" then "0s92ing4m2qyqdkpmkhl2zj40hcdsr5x764sb6zprwwhfv4npymr"
|
||||||
else throw "Unsupported system: ${stdenv.system}";
|
else throw "Unsupported system: ${stdenv.system}";
|
||||||
|
|
||||||
urlBase = "https://az764295.vo.msecnd.net/${channel}/${rev}/";
|
urlBase = "https://az764295.vo.msecnd.net/${channel}/${rev}/";
|
||||||
|
|
||||||
urlStr = if stdenv.system == "i686-linux" then
|
urlStr = if stdenv.system == "i686-linux" then
|
||||||
urlBase + "code-${channel}-code_${version}-1486024310_i386.tar.gz"
|
urlBase + "code-${channel}-code_${version}-1486596246_i386.tar.gz"
|
||||||
else if stdenv.system == "x86_64-linux" then
|
else if stdenv.system == "x86_64-linux" then
|
||||||
urlBase + "code-${channel}-code_${version}-1486023356_amd64.tar.gz"
|
urlBase + "code-${channel}-code_${version}-1486597190_amd64.tar.gz"
|
||||||
else if stdenv.system == "x86_64-darwin" then
|
else if stdenv.system == "x86_64-darwin" then
|
||||||
urlBase + "VSCode-darwin-${channel}.zip"
|
urlBase + "VSCode-darwin-${channel}.zip"
|
||||||
else throw "Unsupported system: ${stdenv.system}";
|
else throw "Unsupported system: ${stdenv.system}";
|
||||||
|
|||||||
@@ -45,11 +45,11 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "digikam-${version}";
|
name = "digikam-${version}";
|
||||||
version = "5.3.0";
|
version = "5.4.0";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://download.kde.org/stable/digikam/${name}.tar.xz";
|
url = "http://download.kde.org/stable/digikam/${name}.tar.xz";
|
||||||
sha256 = "0p1y5kgkz7lzzqpf7qd3mmg59zfdkkz9jg7knldd8dl94wkzlv5k";
|
sha256 = "0dgsgji14l5zvxny36hrfsp889fsfrsbbn9bg57m18404xp903kg";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake ecm makeQtWrapper ];
|
nativeBuildInputs = [ cmake ecm makeQtWrapper ];
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ let
|
|||||||
inherit (python2Packages) pygtk wrapPython python;
|
inherit (python2Packages) pygtk wrapPython python;
|
||||||
in stdenv.mkDerivation rec {
|
in stdenv.mkDerivation rec {
|
||||||
name = "gimp-${version}";
|
name = "gimp-${version}";
|
||||||
version = "2.8.18";
|
version = "2.8.20";
|
||||||
|
|
||||||
# This declarations for `gimp-with-plugins` wrapper,
|
# This declarations for `gimp-with-plugins` wrapper,
|
||||||
# (used for determining $out/lib/gimp/${majorVersion}/ paths)
|
# (used for determining $out/lib/gimp/${majorVersion}/ paths)
|
||||||
@@ -18,7 +18,7 @@ in stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://download.gimp.org/pub/gimp/v2.8/${name}.tar.bz2";
|
url = "http://download.gimp.org/pub/gimp/v2.8/${name}.tar.bz2";
|
||||||
sha256 = "0halh6sl3d2j9gahyabj6h6r3yyldcy7sfb4qrfazpkqqr3j5p9r";
|
sha256 = "939ca1df70be865c672ffd654f4e20f188121d01601c5c90237214101533c805";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs =
|
buildInputs =
|
||||||
|
|||||||
@@ -38,6 +38,10 @@ stdenv.mkDerivation {
|
|||||||
url = "https://sources.debian.net/data/main/g/graphicsmagick/1.3.25-5/debian/patches/CVE-2016-8684.patch";
|
url = "https://sources.debian.net/data/main/g/graphicsmagick/1.3.25-5/debian/patches/CVE-2016-8684.patch";
|
||||||
sha256 = "1p36gpz904wnmbz1n64x4pdpg8lp9zs3gx0awklxqdvgl8m82vvy";
|
sha256 = "1p36gpz904wnmbz1n64x4pdpg8lp9zs3gx0awklxqdvgl8m82vvy";
|
||||||
})
|
})
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://sources.debian.net/data/main/g/graphicsmagick/1.3.25-7/debian/patches/CVE-2016-9830.patch";
|
||||||
|
sha256 = "0qh15sd7nx7vf9sld4453iml951bwsx2fx84hxc7plhds2k3gjpa";
|
||||||
|
})
|
||||||
];
|
];
|
||||||
|
|
||||||
configureFlags = [
|
configureFlags = [
|
||||||
|
|||||||
@@ -3,14 +3,14 @@
|
|||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
version = "5.0";
|
version = "5.0-r1";
|
||||||
name = "rawtherapee-" + version;
|
name = "rawtherapee-" + version;
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "Beep6581";
|
owner = "Beep6581";
|
||||||
repo = "RawTherapee";
|
repo = "RawTherapee";
|
||||||
rev = "9fbbb052eefb739753f0f3d631e45694d659610a";
|
rev = "1077c4ba2e2dbe249884e6974c6050db8eb5e9c2";
|
||||||
sha256 = "0r8wzxp7q77g3hjz7dr5lh5wih762pgjad3lkzjfhki9lxr7ii7q";
|
sha256 = "1xqmkwprk3h9nhy6q562mkjdpynyg9ff7a92sdga50k56gi0aj0s";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
|
|||||||
@@ -2,11 +2,11 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "gpsprune-${version}";
|
name = "gpsprune-${version}";
|
||||||
version = "18.5";
|
version = "18.6";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://activityworkshop.net/software/gpsprune/gpsprune_${version}.jar";
|
url = "http://activityworkshop.net/software/gpsprune/gpsprune_${version}.jar";
|
||||||
sha256 = "0xd97b7rs5i41hyih6zdbvls090903yfr1r9lflq93dyqhmzpdhn";
|
sha256 = "1ii9pkj24jcwzs225nyi17ks07dfc5x3940hpqrsb5xzxy2vkw7q";
|
||||||
};
|
};
|
||||||
|
|
||||||
phases = [ "installPhase" ];
|
phases = [ "installPhase" ];
|
||||||
|
|||||||
@@ -2,11 +2,11 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "josm-${version}";
|
name = "josm-${version}";
|
||||||
version = "11223";
|
version = "11526";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://josm.openstreetmap.de/download/josm-snapshot-${version}.jar";
|
url = "https://josm.openstreetmap.de/download/josm-snapshot-${version}.jar";
|
||||||
sha256 = "0fv1hlp98f178jy7lxnvq2rk6rq1zj62q6dv0vn02fvm00ia53s8";
|
sha256 = "1164vfqbbys0032amk85219y0paihvi8jkx0kwc5lramwsk57pld";
|
||||||
};
|
};
|
||||||
|
|
||||||
phases = [ "installPhase" ];
|
phases = [ "installPhase" ];
|
||||||
|
|||||||
@@ -7,11 +7,11 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "mlterm-${version}";
|
name = "mlterm-${version}";
|
||||||
version = "3.7.2";
|
version = "3.8.0";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://sourceforge/project/mlterm/01release/${name}/${name}.tar.gz";
|
url = "mirror://sourceforge/project/mlterm/01release/${name}/${name}.tar.gz";
|
||||||
sha256 = "1b24w8hfck1ylfkdz9z55vlmsb36q9iyfr0i9q9y98dfk0f0rrw8";
|
sha256 = "00dzx5rqsp73shgvn2jvgk85v3lirby06wxkqjcm1i1xwigidq3b";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig autoconf ];
|
nativeBuildInputs = [ pkgconfig autoconf ];
|
||||||
@@ -20,17 +20,15 @@ stdenv.mkDerivation rec {
|
|||||||
harfbuzz fribidi m17n_lib openssl libssh2
|
harfbuzz fribidi m17n_lib openssl libssh2
|
||||||
];
|
];
|
||||||
|
|
||||||
patches = [ ./x_shortcut.c.patch ]; #fixes numlock in 3.7.2. should be safe to remove by 3.7.3 since it's already in the trunk: https://bitbucket.org/arakiken/mlterm/commits/4820d42c7abfe1760a5ea35492c83be469c642b3
|
|
||||||
|
|
||||||
#bad configure.ac and Makefile.in everywhere
|
#bad configure.ac and Makefile.in everywhere
|
||||||
preConfigure = ''
|
preConfigure = ''
|
||||||
sed -ie 's;-L/usr/local/lib -R/usr/local/lib;;g' \
|
sed -ie 's;-L/usr/local/lib -R/usr/local/lib;;g' \
|
||||||
xwindow/libtype/Makefile.in \
|
|
||||||
main/Makefile.in \
|
main/Makefile.in \
|
||||||
tool/mlfc/Makefile.in \
|
tool/mlfc/Makefile.in \
|
||||||
tool/mlimgloader/Makefile.in \
|
tool/mlimgloader/Makefile.in \
|
||||||
tool/mlconfig/Makefile.in \
|
tool/mlconfig/Makefile.in \
|
||||||
xwindow/libotl/Makefile.in
|
uitoolkit/libtype/Makefile.in \
|
||||||
|
uitoolkit/libotl/Makefile.in
|
||||||
sed -ie 's;cd ..srcdir. && rm -f ...lang..gmo.*;;g' \
|
sed -ie 's;cd ..srcdir. && rm -f ...lang..gmo.*;;g' \
|
||||||
tool/mlconfig/po/Makefile.in.in
|
tool/mlconfig/po/Makefile.in.in
|
||||||
#utmp and mlterm-fb
|
#utmp and mlterm-fb
|
||||||
@@ -68,14 +66,9 @@ stdenv.mkDerivation rec {
|
|||||||
];
|
];
|
||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
mkdir -p "$out/share/icons/hicolor/scalable/apps"
|
install -D contrib/icon/mlterm-icon.svg "$out/share/icons/hicolor/scalable/apps/mlterm.svg"
|
||||||
cp contrib/icon/mlterm-icon.svg "$out/share/icons/hicolor/scalable/apps/mlterm.svg"
|
install -D contrib/icon/mlterm-icon-gnome2.png "$out/share/icons/hicolor/48x48/apps/mlterm.png"
|
||||||
|
install -D -t $out/share/applications $desktopItem/share/applications/*
|
||||||
mkdir -p "$out/share/icons/hicolor/48x48/apps"
|
|
||||||
cp contrib/icon/mlterm-icon-gnome2.png "$out/share/icons/hicolor/48x48/apps/mlterm.png"
|
|
||||||
|
|
||||||
mkdir -p "$out/share/applications"
|
|
||||||
cp $desktopItem/share/applications/* $out/share/applications
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
desktopItem = makeDesktopItem rec {
|
desktopItem = makeDesktopItem rec {
|
||||||
|
|||||||
@@ -1,26 +0,0 @@
|
|||||||
--- mlterm-3.7.2/xwindow/x_shortcut.c
|
|
||||||
+++ mlterm-3.7.2/xwindow/x_shortcut.c
|
|
||||||
@@ -292,6 +292,11 @@
|
|
||||||
/* ingoring except these masks */
|
|
||||||
state &= (ModMask|ControlMask|ShiftMask|CommandMask|button_mask) ;
|
|
||||||
|
|
||||||
+ if( state & button_mask)
|
|
||||||
+ {
|
|
||||||
+ state &= ~Mod2Mask ; /* XXX NumLock */
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
if( shortcut->map[func].ksym == ksym &&
|
|
||||||
shortcut->map[func].state ==
|
|
||||||
( state |
|
|
||||||
@@ -318,6 +323,11 @@
|
|
||||||
/* ingoring except these masks */
|
|
||||||
state &= (ModMask|ControlMask|ShiftMask|CommandMask|button_mask) ;
|
|
||||||
|
|
||||||
+ if( state & button_mask)
|
|
||||||
+ {
|
|
||||||
+ state &= ~Mod2Mask ; /* XXX NumLock */
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
for( count = 0 ; count < shortcut->str_map_size ; count ++)
|
|
||||||
{
|
|
||||||
if( shortcut->str_map[count].ksym == ksym &&
|
|
||||||
@@ -0,0 +1,41 @@
|
|||||||
|
{ stdenv, fetchurl, itstool, intltool, pkgconfig
|
||||||
|
, libxml2, gnome2, atk, gtk2, glib
|
||||||
|
, mono, mono-addins, dbus-sharp-2_0, dbus-sharp-glib-2_0, gnome-sharp, gtk-sharp-2_0
|
||||||
|
, makeWrapper, lib}:
|
||||||
|
|
||||||
|
let
|
||||||
|
version = "1.15.7";
|
||||||
|
in
|
||||||
|
|
||||||
|
stdenv.mkDerivation {
|
||||||
|
name = "tomboy-${version}";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://github.com/tomboy-notes/tomboy/releases/download/${version}/tomboy-${version}.tar.xz";
|
||||||
|
sha256 = "1i6sv6w2ms2x0nkgxq11agljiyg0yl4x2rzmcyvs2hxyf574hd1y";
|
||||||
|
};
|
||||||
|
|
||||||
|
buildInputs = [ itstool intltool pkgconfig
|
||||||
|
libxml2 gnome2.GConf atk gtk2
|
||||||
|
mono mono-addins dbus-sharp-2_0 dbus-sharp-glib-2_0 gnome-sharp gtk-sharp-2_0
|
||||||
|
makeWrapper ];
|
||||||
|
|
||||||
|
postInstall = ''
|
||||||
|
makeWrapper "${mono}/bin/mono" "$out/bin/tomboy" \
|
||||||
|
--add-flags "$out/lib/tomboy/Tomboy.exe" \
|
||||||
|
--prefix MONO_GAC_PREFIX : ${dbus-sharp-2_0} \
|
||||||
|
--prefix MONO_GAC_PREFIX : ${dbus-sharp-glib-2_0} \
|
||||||
|
--prefix MONO_GAC_PREFIX : ${gtk-sharp-2_0} \
|
||||||
|
--prefix MONO_GAC_PREFIX : ${gnome-sharp} \
|
||||||
|
--prefix MONO_GAC_PREFIX : ${mono-addins} \
|
||||||
|
--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ glib gtk-sharp-2_0 gtk-sharp-2_0.gtk gnome2.GConf ]}
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
homepage = "https://wiki.gnome.org/Apps/Tomboy";
|
||||||
|
description = "A simple note-taking application with synchronization";
|
||||||
|
platforms = platforms.linux;
|
||||||
|
license = stdenv.lib.licenses.lgpl2;
|
||||||
|
maintainers = with maintainers; [ stesie ];
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
buildGoPackage rec {
|
buildGoPackage rec {
|
||||||
name = "terraform-${version}";
|
name = "terraform-${version}";
|
||||||
version = "0.8.5";
|
version = "0.8.6";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
|
|
||||||
goPackagePath = "github.com/hashicorp/terraform";
|
goPackagePath = "github.com/hashicorp/terraform";
|
||||||
@@ -11,7 +11,7 @@ buildGoPackage rec {
|
|||||||
inherit rev;
|
inherit rev;
|
||||||
owner = "hashicorp";
|
owner = "hashicorp";
|
||||||
repo = "terraform";
|
repo = "terraform";
|
||||||
sha256 = "1cxwv3652fpsbm2zk1akw356cd7w7vhny1623ighgbz9ha8gvg09";
|
sha256 = "1yrsb940xx4iqjz4s6c4dbmxzmqzffrxn6if7ywixg4dgpi279mx";
|
||||||
};
|
};
|
||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
|
|||||||
@@ -23,11 +23,11 @@
|
|||||||
let
|
let
|
||||||
# NOTE: When updating, please also update in current stable,
|
# NOTE: When updating, please also update in current stable,
|
||||||
# as older versions stop working
|
# as older versions stop working
|
||||||
version = "18.4.32";
|
version = "19.4.13";
|
||||||
sha256 =
|
sha256 =
|
||||||
{
|
{
|
||||||
"x86_64-linux" = "0rm91gic6qwlvkclhwpw9mhsb1l9qdxqi7kyvn5ij6a978c70k5r";
|
"x86_64-linux" = "06lgmjj204xpid35cqrp2msasg4s4w6lf1zpz1lnk3f9x6q10254";
|
||||||
"i686-linux" = "0xzk4hxykacvrym8ls8q4zv2277adg6b5m7zmncmfwb6igx4ipap";
|
"i686-linux" = "1kdj3c5s8s4smd52p2mqbzjsk68a9cd5f8x92xgsx9zzdzjqmagl";
|
||||||
}."${stdenv.system}" or (throw "system ${stdenv.system} not supported");
|
}."${stdenv.system}" or (throw "system ${stdenv.system} not supported");
|
||||||
|
|
||||||
arch =
|
arch =
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ stdenv, fetchFromGitHub, pkgconfig, gtk2, lua, perl, python
|
{ stdenv, fetchFromGitHub, pkgconfig, gtk2, lua, perl, python2
|
||||||
, libtool, pciutils, dbus_glib, libcanberra_gtk2, libproxy
|
, libtool, pciutils, dbus_glib, libcanberra_gtk2, libproxy
|
||||||
, libsexy, enchant, libnotify, openssl, intltool
|
, libsexy, enchant, libnotify, openssl, intltool
|
||||||
, desktop_file_utils, hicolor_icon_theme
|
, desktop_file_utils, hicolor_icon_theme
|
||||||
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
|
|||||||
];
|
];
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
gtk2 lua perl python pciutils dbus_glib libcanberra_gtk2 libproxy
|
gtk2 lua perl python2 pciutils dbus_glib libcanberra_gtk2 libproxy
|
||||||
libsexy libnotify openssl desktop_file_utils hicolor_icon_theme
|
libsexy libnotify openssl desktop_file_utils hicolor_icon_theme
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|||||||
@@ -1,31 +1,28 @@
|
|||||||
{ stdenv, fetchFromGitHub, scons, pkgconfig, gnome3, gmime, webkitgtk24x
|
{ stdenv, fetchFromGitHub, scons, pkgconfig, gnome3, gmime, webkitgtk24x
|
||||||
, libsass, notmuch, boost, makeWrapper }:
|
, libsass, notmuch, boost, wrapGAppsHook }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "astroid-${version}";
|
name = "astroid-${version}";
|
||||||
version = "0.6";
|
version = "0.7";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "astroidmail";
|
owner = "astroidmail";
|
||||||
repo = "astroid";
|
repo = "astroid";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "0zashjmqv8ips9q8ckyhgm9hfyf01wpgs6g21cwl05q5iklc5x7r";
|
sha256 = "0r3hqwwr68bjhqaa1r3l9brbmvdp11pf8vhsjlvm5zv520z5y1rf";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [ ./propagate-environment.patch ];
|
patches = [ ./propagate-environment.patch ];
|
||||||
|
|
||||||
buildInputs = [ scons pkgconfig gnome3.gtkmm gmime webkitgtk24x libsass
|
nativeBuildInputs = [ scons pkgconfig wrapGAppsHook ];
|
||||||
gnome3.libpeas notmuch boost gnome3.gsettings_desktop_schemas
|
|
||||||
makeWrapper ];
|
buildInputs = [ gnome3.gtkmm gmime webkitgtk24x libsass gnome3.libpeas
|
||||||
|
notmuch boost gnome3.gsettings_desktop_schemas
|
||||||
|
gnome3.adwaita-icon-theme ];
|
||||||
|
|
||||||
buildPhase = "scons --prefix=$out build";
|
buildPhase = "scons --prefix=$out build";
|
||||||
installPhase = "scons --prefix=$out install";
|
installPhase = "scons --prefix=$out install";
|
||||||
|
|
||||||
preFixup = ''
|
|
||||||
wrapProgram "$out/bin/astroid" \
|
|
||||||
--prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
homepage = "https://astroidmail.github.io/";
|
homepage = "https://astroidmail.github.io/";
|
||||||
description = "GTK+ frontend to the notmuch mail system";
|
description = "GTK+ frontend to the notmuch mail system";
|
||||||
|
|||||||
@@ -6,14 +6,14 @@ let
|
|||||||
'';
|
'';
|
||||||
|
|
||||||
in stdenv.mkDerivation rec {
|
in stdenv.mkDerivation rec {
|
||||||
version = "0.14.21";
|
version = "0.14.23";
|
||||||
name = "syncthing-${version}";
|
name = "syncthing-${version}";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "syncthing";
|
owner = "syncthing";
|
||||||
repo = "syncthing";
|
repo = "syncthing";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "0gxv4r7zg2rxjj0q8iiq3p5s75kwshcy6drjv65k8p2778bbvcjl";
|
sha256 = "1himf8yhfpjsv5m068y2f6f696d7ip0jq7jmg69kn7035zlxicis";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ go ];
|
buildInputs = [ go ];
|
||||||
|
|||||||
@@ -13,7 +13,7 @@
|
|||||||
, librevenge, libe-book, libmwaw, glm, glew, gst_all_1
|
, librevenge, libe-book, libmwaw, glm, glew, gst_all_1
|
||||||
, gdb, commonsLogging, librdf_rasqal, makeWrapper, gsettings_desktop_schemas
|
, gdb, commonsLogging, librdf_rasqal, makeWrapper, gsettings_desktop_schemas
|
||||||
, defaultIconTheme, glib, ncurses
|
, defaultIconTheme, glib, ncurses
|
||||||
, langs ? [ "en-US" "en-GB" "ca" "ru" "eo" "fr" "nl" "de" "sl" "pl" ]
|
, langs ? [ "en-US" "en-GB" "ca" "ru" "eo" "fr" "nl" "de" "sl" "pl" "hu" ]
|
||||||
, withHelp ? true
|
, withHelp ? true
|
||||||
, kdeIntegration ? false
|
, kdeIntegration ? false
|
||||||
}:
|
}:
|
||||||
|
|||||||
@@ -13,7 +13,7 @@
|
|||||||
, librevenge, libe-book, libmwaw, glm, glew, gst_all_1
|
, librevenge, libe-book, libmwaw, glm, glew, gst_all_1
|
||||||
, gdb, commonsLogging, librdf_rasqal, makeWrapper, gsettings_desktop_schemas
|
, gdb, commonsLogging, librdf_rasqal, makeWrapper, gsettings_desktop_schemas
|
||||||
, defaultIconTheme, glib, ncurses
|
, defaultIconTheme, glib, ncurses
|
||||||
, langs ? [ "en-US" "en-GB" "ca" "ru" "eo" "fr" "nl" "de" "sl" "pl" ]
|
, langs ? [ "en-US" "en-GB" "ca" "ru" "eo" "fr" "nl" "de" "sl" "pl" "hu" ]
|
||||||
, withHelp ? true
|
, withHelp ? true
|
||||||
, kdeIntegration ? false
|
, kdeIntegration ? false
|
||||||
}:
|
}:
|
||||||
|
|||||||
@@ -111,11 +111,11 @@ in
|
|||||||
|
|
||||||
plugin = "exodus";
|
plugin = "exodus";
|
||||||
namespace = "plugin.video.exodus";
|
namespace = "plugin.video.exodus";
|
||||||
version = "2.0.12";
|
version = "3.0.5";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://offshoregit.com/${plugin}/${namespace}/${namespace}-${version}.zip";
|
url = "https://offshoregit.com/${plugin}/${namespace}/${namespace}-${version}.zip";
|
||||||
sha256 = "02cdyvyxay6jiw9xj8hqnkp5w6drqj67pkh243znrsc06f26qkql";
|
sha256 = "0di34sp6y3v72l6gfhj7cvs1vljs9vf0d0x2giix3jk433cj01j0";
|
||||||
};
|
};
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
|
|||||||
@@ -0,0 +1,26 @@
|
|||||||
|
{ cmake, fetchFromGitHub, libvncserver, qemu, qtbase, stdenv
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
name = "aqemu-${version}";
|
||||||
|
version = "0.9.2";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "tobimensch";
|
||||||
|
repo = "aqemu";
|
||||||
|
rev = "v${version}";
|
||||||
|
sha256 = "1h1mcw8x0jir5p39bs8ka0lcisiyi4jq61fsccgb9hsvl1i8fvk5";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [ cmake ];
|
||||||
|
|
||||||
|
buildInputs = [ libvncserver qtbase qemu ];
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
description = "A virtual machine manager GUI for qemu";
|
||||||
|
homepage = https://github.com/tobimensch/aqemu;
|
||||||
|
license = licenses.gpl2;
|
||||||
|
maintainers = with maintainers; [ hrdinka ];
|
||||||
|
platforms = with platforms; linux;
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,26 @@
|
|||||||
|
{ stdenv, fetchFromGitHub, buildGoPackage }:
|
||||||
|
|
||||||
|
buildGoPackage rec {
|
||||||
|
name = "${pname}-${version}";
|
||||||
|
pname = "amazon-ecs-agent";
|
||||||
|
version = "1.14.0";
|
||||||
|
|
||||||
|
goPackagePath = "github.com/aws/${pname}";
|
||||||
|
subPackages = [ "agent" ];
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
rev = "v${version}";
|
||||||
|
owner = "aws";
|
||||||
|
repo = pname;
|
||||||
|
sha256 = "12c8l0x8pm883rlbdr1m07r0kjkzggkfz35cjqz8pzyr5ymjdrc3";
|
||||||
|
};
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
description = "The agent that runs on AWS EC2 container instances and starts containers on behalf of Amazon ECS";
|
||||||
|
homepage = "https://github.com/aws/amazon-ecs-agent";
|
||||||
|
license = licenses.asl20;
|
||||||
|
platforms = platforms.linux;
|
||||||
|
maintainers = with maintainers; [ copumpkin ];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
@@ -1,42 +1,48 @@
|
|||||||
{ stdenv, lib, fetchFromGitHub, makeWrapper, autoreconfHook,
|
{ stdenv, lib, fetchFromGitHub, makeWrapper, autoreconfHook,
|
||||||
libmspack, openssl, pam, xercesc, icu, libdnet, procps,
|
fuse, libmspack, openssl, pam, xercesc, icu, libdnet, procps,
|
||||||
xlibsWrapper, libXinerama, libXi, libXrender, libXrandr, libXtst,
|
libX11, libXext, libXinerama, libXi, libXrender, libXrandr, libXtst,
|
||||||
pkgconfig, glib, gtk, gtkmm, iproute, dbus, systemd }:
|
pkgconfig, glib, gtk, gtkmm, iproute, dbus, systemd, which,
|
||||||
|
withX ? true }:
|
||||||
|
|
||||||
let
|
stdenv.mkDerivation rec {
|
||||||
majorVersion = "10.0";
|
|
||||||
minorVersion = "7";
|
|
||||||
version = "${majorVersion}.${minorVersion}";
|
|
||||||
|
|
||||||
in stdenv.mkDerivation rec {
|
|
||||||
name = "open-vm-tools-${version}";
|
name = "open-vm-tools-${version}";
|
||||||
|
version = "10.1.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "vmware";
|
owner = "vmware";
|
||||||
repo = "open-vm-tools";
|
repo = "open-vm-tools";
|
||||||
rev = "stable-${version}";
|
rev = "stable-${version}";
|
||||||
sha256 = "0xxgppxjisg3jly21r7mjk06rc4n7ssyvapasxhbi2d1bw0xkvrj";
|
sha256 = "1qzk4mvw618ca4j9agsfpqch9jgwghvdc4rpkvlyz8kirvh9iniz";
|
||||||
};
|
};
|
||||||
|
|
||||||
sourceRoot = "${src.name}/open-vm-tools";
|
sourceRoot = "${src.name}/open-vm-tools";
|
||||||
|
|
||||||
buildInputs =
|
outputs = [ "out" "dev" ];
|
||||||
[ autoreconfHook makeWrapper libmspack openssl pam xercesc icu libdnet procps
|
|
||||||
pkgconfig glib gtk gtkmm xlibsWrapper libXinerama libXi libXrender libXrandr libXtst ];
|
|
||||||
|
|
||||||
postPatch = ''
|
nativeBuildInputs = [ autoreconfHook makeWrapper pkgconfig ];
|
||||||
sed -i s,-Werror,,g configure.ac
|
buildInputs = [ fuse glib icu libdnet libmspack openssl pam procps xercesc ]
|
||||||
sed -i 's,^confdir = ,confdir = ''${prefix},' scripts/Makefile.am
|
++ lib.optionals withX [ gtk gtkmm libX11 libXext libXinerama libXi libXrender libXrandr libXtst ];
|
||||||
sed -i 's,etc/vmware-tools,''${prefix}/etc/vmware-tools,' services/vmtoolsd/Makefile.am
|
|
||||||
'';
|
|
||||||
|
|
||||||
patches = [ ./recognize_nixos.patch ];
|
patches = [ ./recognize_nixos.patch ];
|
||||||
|
postPatch = ''
|
||||||
|
# Build bugfix for 10.1.0, stolen from Arch PKGBUILD
|
||||||
|
mkdir -p common-agent/etc/config
|
||||||
|
sed -i 's|.*common-agent/etc/config/Makefile.*|\\|' configure.ac
|
||||||
|
|
||||||
configureFlags = "--without-kernel-modules --without-xmlsecurity";
|
sed -i 's,^confdir = ,confdir = ''${prefix},' scripts/Makefile.am
|
||||||
|
sed -i 's,etc/vmware-tools,''${prefix}/etc/vmware-tools,' services/vmtoolsd/Makefile.am
|
||||||
|
sed -i 's,$(PAM_PREFIX),''${prefix}/$(PAM_PREFIX),' services/vmtoolsd/Makefile.am
|
||||||
|
sed -i 's,$(UDEVRULESDIR),''${prefix}/$(UDEVRULESDIR),' udev/Makefile.am
|
||||||
|
'';
|
||||||
|
|
||||||
|
configureFlags = [ "--without-kernel-modules" "--without-xmlsecurity" ]
|
||||||
|
++ lib.optional (!withX) "--without-x";
|
||||||
|
|
||||||
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
sed -i 's,which ,command -v ,' "$out/etc/vmware-tools/scripts/vmware/network"
|
wrapProgram "$out/etc/vmware-tools/scripts/vmware/network" \
|
||||||
wrapProgram "$out/etc/vmware-tools/scripts/vmware/network" \
|
--prefix PATH ':' "${lib.makeBinPath [ iproute dbus systemd which ]}"
|
||||||
--prefix PATH ':' "${lib.makeBinPath [ iproute dbus systemd ]}"
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
|
|||||||
@@ -1,30 +1,20 @@
|
|||||||
diff -ruN open-vm-tools.orig/lib/include/guest_os.h open-vm-tools/lib/include/guest_os.h
|
diff --git a/lib/include/guest_os.h b/open-vm-tools/lib/include/guest_os.h
|
||||||
--- open-vm-tools.orig/lib/include/guest_os.h 2016-02-12 00:50:33.000000000 +0000
|
index ef202e3..c7a105d 100644
|
||||||
+++ open-vm-tools/lib/include/guest_os.h 2016-04-18 20:07:41.677251511 +0000
|
--- a/lib/include/guest_os.h
|
||||||
@@ -222,6 +222,7 @@
|
+++ b/lib/include/guest_os.h
|
||||||
|
@@ -238,6 +238,7 @@ Bool Gos_InSetArray(uint32 gos, const uint32 *set);
|
||||||
#define STR_OS_MANDRAKE_FULL "Mandrake Linux"
|
#define STR_OS_MANDRAKE_FULL "Mandrake Linux"
|
||||||
#define STR_OS_MANDRIVA "mandriva"
|
#define STR_OS_MANDRIVA "mandriva"
|
||||||
#define STR_OS_MKLINUX "MkLinux"
|
#define STR_OS_MKLINUX "MkLinux"
|
||||||
+#define STR_OS_NIXOS "NixOS"
|
+#define STR_OS_NIXOS "NixOS"
|
||||||
#define STR_OS_NOVELL "nld9"
|
#define STR_OS_NOVELL "nld9"
|
||||||
#define STR_OS_NOVELL_FULL "Novell Linux Desktop 9"
|
#define STR_OS_NOVELL_FULL "Novell Linux Desktop 9"
|
||||||
#define STR_OS_ORACLE "oraclelinux"
|
#define STR_OS_ORACLE6 "oraclelinux6"
|
||||||
diff -ruN open-vm-tools.orig/lib/include/vmblock.h open-vm-tools/lib/include/vmblock.h
|
diff --git a/lib/misc/hostinfoPosix.c b/open-vm-tools/lib/misc/hostinfoPosix.c
|
||||||
--- open-vm-tools.orig/lib/include/vmblock.h 2016-02-12 00:50:33.000000000 +0000
|
index 0f55070..2d8467c 100644
|
||||||
+++ open-vm-tools/lib/include/vmblock.h 2016-04-18 21:51:15.651235848 +0000
|
--- a/lib/misc/hostinfoPosix.c
|
||||||
@@ -145,7 +145,7 @@
|
+++ b/lib/misc/hostinfoPosix.c
|
||||||
# define VMBLOCK_DEVICE_MODE VMBLOCK_FUSE_DEVICE_MODE
|
@@ -195,6 +195,7 @@ static const DistroInfo distroArray[] = {
|
||||||
# define VMBLOCK_MOUNT_POINT VMBLOCK_FUSE_MOUNT_POINT
|
|
||||||
|
|
||||||
-#elif defined(linux)
|
|
||||||
+#elif defined(__linux__)
|
|
||||||
# define VMBLOCK_ADD_FILEBLOCK 98
|
|
||||||
# define VMBLOCK_DEL_FILEBLOCK 99
|
|
||||||
# ifdef VMX86_DEVEL
|
|
||||||
diff -ruN open-vm-tools.orig/lib/misc/hostinfoPosix.c open-vm-tools/lib/misc/hostinfoPosix.c
|
|
||||||
--- open-vm-tools.orig/lib/misc/hostinfoPosix.c 2016-02-12 00:50:33.000000000 +0000
|
|
||||||
+++ open-vm-tools/lib/misc/hostinfoPosix.c 2016-04-18 20:09:45.841668252 +0000
|
|
||||||
@@ -195,6 +195,7 @@
|
|
||||||
{"Mandrake", "/etc/mandrake-release"},
|
{"Mandrake", "/etc/mandrake-release"},
|
||||||
{"Mandriva", "/etc/mandriva-release"},
|
{"Mandriva", "/etc/mandriva-release"},
|
||||||
{"MkLinux", "/etc/mklinux-release"},
|
{"MkLinux", "/etc/mklinux-release"},
|
||||||
@@ -32,12 +22,12 @@ diff -ruN open-vm-tools.orig/lib/misc/hostinfoPosix.c open-vm-tools/lib/misc/hos
|
|||||||
{"Novell", "/etc/nld-release"},
|
{"Novell", "/etc/nld-release"},
|
||||||
{"OracleLinux", "/etc/oracle-release"},
|
{"OracleLinux", "/etc/oracle-release"},
|
||||||
{"Photon", "/etc/lsb-release"},
|
{"Photon", "/etc/lsb-release"},
|
||||||
@@ -619,6 +620,8 @@
|
@@ -554,6 +555,8 @@ HostinfoGetOSShortName(char *distro, // IN: full distro name
|
||||||
Str_Strcpy(distroShort, STR_OS_MANDRIVA, distroShortSize);
|
}
|
||||||
} else if (strstr(distroLower, "mklinux")) {
|
} else if (strstr(distroLower, "mandrake")) {
|
||||||
Str_Strcpy(distroShort, STR_OS_MKLINUX, distroShortSize);
|
Str_Strcpy(distroShort, STR_OS_MANDRAKE, distroShortSize);
|
||||||
+ } else if (strstr(distroLower, "nixos")) {
|
+ } else if (strstr(distroLower, "nixos")) {
|
||||||
+ Str_Strcpy(distroShort, STR_OS_NIXOS, distroShortSize);
|
+ Str_Strcpy(distroShort, STR_OS_NIXOS, distroShortSize);
|
||||||
} else if (strstr(distroLower, "pld")) {
|
} else if (strstr(distroLower, "turbolinux")) {
|
||||||
Str_Strcpy(distroShort, STR_OS_PLD, distroShortSize);
|
Str_Strcpy(distroShort, STR_OS_TURBO, distroShortSize);
|
||||||
} else if (strstr(distroLower, "slackware")) {
|
} else if (strstr(distroLower, "sun")) {
|
||||||
|
|||||||
@@ -1,8 +1,28 @@
|
|||||||
|
# construct an executable file that wraps the actual executable
|
||||||
|
# makeWrapper EXECUTABLE ARGS
|
||||||
|
|
||||||
|
# ARGS:
|
||||||
|
# --argv0 NAME : set name of executed process to NAME
|
||||||
|
# (otherwise it’s called …-wrapped)
|
||||||
|
# --set VAR VAL : add VAR with value VAL to the executable’s environment
|
||||||
|
# --unset VAR : remove VAR from the environment
|
||||||
|
# --run COMMAND : run command before the executable
|
||||||
|
# The command can push extra flags to a magic list variable
|
||||||
|
# extraFlagsArray, which are then added to the invocation
|
||||||
|
# of the executable
|
||||||
|
# --add-flags FLAGS : add FLAGS to invocation of executable
|
||||||
|
|
||||||
|
# --prefix ENV SEP VAL : suffix/prefix ENV with VAL, separated by SEP
|
||||||
|
# --suffix
|
||||||
|
# --suffix-each ENV SEP VALS : like --suffix, but VALS is a list
|
||||||
|
# --prefix-contents ENV SEP FILES : like --suffix-each, but contents of FILES
|
||||||
|
# are read first and used as VALS
|
||||||
|
# --suffix-contents
|
||||||
makeWrapper() {
|
makeWrapper() {
|
||||||
local original=$1
|
local original=$1
|
||||||
local wrapper=$2
|
local wrapper=$2
|
||||||
local params varName value command separator n fileNames
|
local params varName value command separator n fileNames
|
||||||
local argv0 flagsBefore flags
|
local argv0 flagsBefore flags extraFlagsArray
|
||||||
|
|
||||||
mkdir -p "$(dirname $wrapper)"
|
mkdir -p "$(dirname $wrapper)"
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ stdenv, fetchurl, runCommand, python, perl, cdrkit, pathsFromGraph
|
{ stdenv, fetchurl, runCommand, python, perl, xorriso, pathsFromGraph
|
||||||
, arch ? "x86_64"
|
, arch ? "x86_64"
|
||||||
}:
|
}:
|
||||||
|
|
||||||
@@ -10,10 +10,10 @@
|
|||||||
let
|
let
|
||||||
cygPkgList = if arch == "x86_64" then fetchurl {
|
cygPkgList = if arch == "x86_64" then fetchurl {
|
||||||
url = "${mirror}/x86_64/setup.ini";
|
url = "${mirror}/x86_64/setup.ini";
|
||||||
sha256 = "0ljsxdkx9s916wp28kcvql3bjx80zzzidan6jicby7i9s3sm96n9";
|
sha256 = "0arrxvxbl85l82iy648snx5cl952w791p45p0dfg1xpiaf96cbkj";
|
||||||
} else fetchurl {
|
} else fetchurl {
|
||||||
url = "${mirror}/x86/setup.ini";
|
url = "${mirror}/x86/setup.ini";
|
||||||
sha256 = "1slyj4qha7x649ggwdski9spmyrbs04z2d46vgk8krllg0kppnjv";
|
sha256 = "1fayx34868vd5h2nah7chiw65sl3i9qzrwvs7lrlv2h8k412vb69";
|
||||||
};
|
};
|
||||||
|
|
||||||
cygwinCross = (import ../../../../.. {
|
cygwinCross = (import ../../../../.. {
|
||||||
@@ -25,23 +25,24 @@ let
|
|||||||
inherit arch;
|
inherit arch;
|
||||||
config = "${arch}-w64-mingw32";
|
config = "${arch}-w64-mingw32";
|
||||||
};
|
};
|
||||||
}).windows.cygwinSetup.crossDrv;
|
}).windows.cygwinSetup;
|
||||||
|
|
||||||
makeCygwinClosure = { packages, packageList }: let
|
makeCygwinClosure = { packages, packageList }: let
|
||||||
expr = import (runCommand "cygwin.nix" { buildInputs = [ python ]; } ''
|
expr = import (runCommand "cygwin.nix" { buildInputs = [ python ]; } ''
|
||||||
python ${./mkclosure.py} "${packages}" ${toString packageList} > "$out"
|
python ${./mkclosure.py} "${packages}" ${toString packageList} > "$out"
|
||||||
'');
|
'');
|
||||||
gen = { url, md5 }: {
|
gen = { url, hash }: {
|
||||||
source = fetchurl {
|
source = fetchurl {
|
||||||
url = "${mirror}/${url}";
|
url = "${mirror}/${url}";
|
||||||
inherit md5;
|
sha512 = hash;
|
||||||
};
|
};
|
||||||
target = url;
|
target = url;
|
||||||
};
|
};
|
||||||
in map gen expr;
|
in map gen expr;
|
||||||
|
|
||||||
in import ../../../../../nixos/lib/make-iso9660-image.nix {
|
in import ../../../../../nixos/lib/make-iso9660-image.nix {
|
||||||
inherit stdenv perl cdrkit pathsFromGraph;
|
inherit stdenv perl xorriso pathsFromGraph;
|
||||||
|
syslinux = null;
|
||||||
contents = [
|
contents = [
|
||||||
{ source = "${cygwinCross}/bin/setup.exe";
|
{ source = "${cygwinCross}/bin/setup.exe";
|
||||||
target = "setup.exe";
|
target = "setup.exe";
|
||||||
|
|||||||
@@ -63,12 +63,12 @@ def main():
|
|||||||
if install_line is None:
|
if install_line is None:
|
||||||
continue
|
continue
|
||||||
|
|
||||||
url, size, md5 = install_line.split(' ', 2)
|
url, size, hash = install_line.split(' ', 2)
|
||||||
|
|
||||||
pack = [
|
pack = [
|
||||||
' {',
|
' {',
|
||||||
' url = "{0}";'.format(url),
|
' url = "{0}";'.format(url),
|
||||||
' md5 = "{0}";'.format(md5),
|
' hash = "{0}";'.format(hash),
|
||||||
' }',
|
' }',
|
||||||
];
|
];
|
||||||
sys.stdout.write('\n'.join(pack) + '\n')
|
sys.stdout.write('\n'.join(pack) + '\n')
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
{stdenv, fetchurl, fontforge, pythonPackages, python}:
|
{stdenv, fetchurl, fontforge, python2}:
|
||||||
|
|
||||||
let
|
let
|
||||||
|
inherit (python2.pkgs) fonttools;
|
||||||
|
|
||||||
common =
|
common =
|
||||||
{version, url, sha256, buildInputs}:
|
{version, url, sha256, buildInputs}:
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
@@ -47,7 +49,7 @@ in {
|
|||||||
version = "1.07.4";
|
version = "1.07.4";
|
||||||
url = "https://fedorahosted.org/releases/l/i/liberation-fonts/liberation-fonts-${version}.tar.gz";
|
url = "https://fedorahosted.org/releases/l/i/liberation-fonts/liberation-fonts-${version}.tar.gz";
|
||||||
sha256 = "01jlg88q2s6by7qv6fmnrlx0lwjarrjrpxv811zjz6f2im4vg65d";
|
sha256 = "01jlg88q2s6by7qv6fmnrlx0lwjarrjrpxv811zjz6f2im4vg65d";
|
||||||
buildInputs = [ fontforge pythonPackages.fonttools python ];
|
buildInputs = [ fontforge fonttools ];
|
||||||
};
|
};
|
||||||
liberation_ttf_v1_binary = common rec {
|
liberation_ttf_v1_binary = common rec {
|
||||||
version = "1.07.4";
|
version = "1.07.4";
|
||||||
@@ -59,7 +61,7 @@ in {
|
|||||||
version = "2.00.1";
|
version = "2.00.1";
|
||||||
url = "https://fedorahosted.org/releases/l/i/liberation-fonts/liberation-fonts-${version}.tar.gz";
|
url = "https://fedorahosted.org/releases/l/i/liberation-fonts/liberation-fonts-${version}.tar.gz";
|
||||||
sha256 = "1ymryvd2nw4jmw4w5y1i3ll2dn48rpkqzlsgv7994lk6qc9cdjvs";
|
sha256 = "1ymryvd2nw4jmw4w5y1i3ll2dn48rpkqzlsgv7994lk6qc9cdjvs";
|
||||||
buildInputs = [ fontforge pythonPackages.fonttools python ];
|
buildInputs = [ fontforge fonttools ];
|
||||||
};
|
};
|
||||||
liberation_ttf_v2_binary = common rec {
|
liberation_ttf_v2_binary = common rec {
|
||||||
version = "2.00.1";
|
version = "2.00.1";
|
||||||
@@ -67,4 +69,4 @@ in {
|
|||||||
sha256 = "010m4zfqan4w04b6bs9pm3gapn9hsb18bmwwgp2p6y6idj52g43q";
|
sha256 = "010m4zfqan4w04b6bs9pm3gapn9hsb18bmwwgp2p6y6idj52g43q";
|
||||||
buildInputs = [ ];
|
buildInputs = [ ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# Autogenerated by maintainers/scripts/gnome.sh update
|
# Autogenerated by maintainers/scripts/gnome.sh update
|
||||||
|
|
||||||
fetchurl: {
|
fetchurl: {
|
||||||
name = "epiphany-3.22.5";
|
name = "epiphany-3.22.6";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = mirror://gnome/sources/epiphany/3.22/epiphany-3.22.5.tar.xz;
|
url = mirror://gnome/sources/epiphany/3.22/epiphany-3.22.5.tar.xz;
|
||||||
sha256 = "e9c307b3f53a77c16ca698fb62fbb8d9b16773702d8163d83699bd623afa6745";
|
sha256 = "0ib7z8x65gcr6vc6709df1rngcfrp3xn5ywqlrnc2xrsynrhghz9";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -544,7 +544,7 @@ stdenv.mkDerivation ({
|
|||||||
}
|
}
|
||||||
|
|
||||||
# Strip kills static libs of other archs (hence cross != null)
|
# Strip kills static libs of other archs (hence cross != null)
|
||||||
// optionalAttrs (!stripped || cross != null) { dontStrip = true; NIX_STRIP_DEBUG = 0; }
|
// optionalAttrs (!stripped || cross != null) { dontStrip = true; }
|
||||||
|
|
||||||
// optionalAttrs (enableMultilib) { dontMoveLib64 = true; }
|
// optionalAttrs (enableMultilib) { dontMoveLib64 = true; }
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -551,7 +551,7 @@ stdenv.mkDerivation ({
|
|||||||
}
|
}
|
||||||
|
|
||||||
# Strip kills static libs of other archs (hence cross != null)
|
# Strip kills static libs of other archs (hence cross != null)
|
||||||
// optionalAttrs (!stripped || cross != null) { dontStrip = true; NIX_STRIP_DEBUG = 0; }
|
// optionalAttrs (!stripped || cross != null) { dontStrip = true; }
|
||||||
|
|
||||||
// optionalAttrs (enableMultilib) { dontMoveLib64 = true; }
|
// optionalAttrs (enableMultilib) { dontMoveLib64 = true; }
|
||||||
|
|
||||||
|
|||||||
@@ -547,7 +547,7 @@ stdenv.mkDerivation ({
|
|||||||
}
|
}
|
||||||
|
|
||||||
# Strip kills static libs of other archs (hence cross != null)
|
# Strip kills static libs of other archs (hence cross != null)
|
||||||
// optionalAttrs (!stripped || cross != null) { dontStrip = true; NIX_STRIP_DEBUG = 0; }
|
// optionalAttrs (!stripped || cross != null) { dontStrip = true; }
|
||||||
|
|
||||||
// optionalAttrs (enableMultilib) { dontMoveLib64 = true; }
|
// optionalAttrs (enableMultilib) { dontMoveLib64 = true; }
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -545,7 +545,7 @@ stdenv.mkDerivation ({
|
|||||||
}
|
}
|
||||||
|
|
||||||
# Strip kills static libs of other archs (hence cross != null)
|
# Strip kills static libs of other archs (hence cross != null)
|
||||||
// optionalAttrs (!stripped || cross != null) { dontStrip = true; NIX_STRIP_DEBUG = 0; }
|
// optionalAttrs (!stripped || cross != null) { dontStrip = true; }
|
||||||
|
|
||||||
// optionalAttrs (enableMultilib) { dontMoveLib64 = true; }
|
// optionalAttrs (enableMultilib) { dontMoveLib64 = true; }
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -1,14 +1,11 @@
|
|||||||
{ stdenv, fetchFromRepoOrCz, perl, texinfo }:
|
{ stdenv, fetchFromRepoOrCz, perl, texinfo }:
|
||||||
|
|
||||||
assert (stdenv.isGlibc);
|
|
||||||
|
|
||||||
with stdenv.lib;
|
with stdenv.lib;
|
||||||
|
|
||||||
let
|
let
|
||||||
date = "20160525";
|
date = "20170108";
|
||||||
version = "0.9.27pre-${date}";
|
version = "0.9.27pre-${date}";
|
||||||
rev = "1ca685f887310b5cbdc415cdfc3a578dbc8d82d8";
|
rev = "5420bb8a67f5f782ac49c90afb7da178a60c448a";
|
||||||
sha256 = "149s847jkg2zdmk09h0cp0q69m8kxxci441zyw8b08fy9b87ayd8";
|
sha256 = "0gf1ys4vv5qfkh6462fkdv44mz5chhrchlvgcl0m44f8mm8cjwa3";
|
||||||
in
|
in
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
@@ -20,8 +17,6 @@ stdenv.mkDerivation rec {
|
|||||||
inherit sha256;
|
inherit sha256;
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = [ "bin" "dev" "out" ];
|
|
||||||
|
|
||||||
nativeBuildInputs = [ perl texinfo ];
|
nativeBuildInputs = [ perl texinfo ];
|
||||||
|
|
||||||
hardeningDisable = [ "fortify" ];
|
hardeningDisable = [ "fortify" ];
|
||||||
@@ -32,17 +27,20 @@ stdenv.mkDerivation rec {
|
|||||||
'';
|
'';
|
||||||
|
|
||||||
preConfigure = ''
|
preConfigure = ''
|
||||||
configureFlagsArray+=("--elfinterp=$(cat $NIX_CC/nix-support/dynamic-linker)")
|
echo ${version} > VERSION
|
||||||
configureFlagsArray+=("--crtprefix=${stdenv.glibc.out}/lib")
|
|
||||||
configureFlagsArray+=("--sysincludepaths=${stdenv.glibc.dev}/include:{B}/include")
|
configureFlagsArray+=("--cc=cc")
|
||||||
configureFlagsArray+=("--libpaths=${stdenv.glibc.out}/lib")
|
configureFlagsArray+=("--elfinterp=$(< $NIX_CC/nix-support/dynamic-linker)")
|
||||||
|
configureFlagsArray+=("--crtprefix=${getLib stdenv.cc.libc}/lib")
|
||||||
|
configureFlagsArray+=("--sysincludepaths=${getDev stdenv.cc.libc}/include:{B}/include")
|
||||||
|
configureFlagsArray+=("--libpaths=${getLib stdenv.cc.libc}/lib")
|
||||||
'';
|
'';
|
||||||
|
|
||||||
doCheck = true;
|
doCheck = true;
|
||||||
checkTarget = "test";
|
checkTarget = "test";
|
||||||
|
|
||||||
postFixup = ''
|
postFixup = ''
|
||||||
paxmark m $bin/bin/tcc
|
paxmark m $out/bin/tcc
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
|
|||||||
@@ -384,4 +384,7 @@ self: super: builtins.intersectAttrs super {
|
|||||||
librarySystemDepends = old.librarySystemDepends or [] ++ [ pkgs.systemd ];
|
librarySystemDepends = old.librarySystemDepends or [] ++ [ pkgs.systemd ];
|
||||||
});
|
});
|
||||||
|
|
||||||
|
# Needs network in tests.
|
||||||
|
typed-process = dontCheck super.typed-process;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,7 +20,8 @@
|
|||||||
# TODO enable shared libs for cross-compiling
|
# TODO enable shared libs for cross-compiling
|
||||||
, enableSharedExecutables ? !isCross && (((ghc.isGhcjs or false) || stdenv.lib.versionOlder "7.7" ghc.version))
|
, enableSharedExecutables ? !isCross && (((ghc.isGhcjs or false) || stdenv.lib.versionOlder "7.7" ghc.version))
|
||||||
, enableSharedLibraries ? !isCross && (((ghc.isGhcjs or false) || stdenv.lib.versionOlder "7.7" ghc.version))
|
, enableSharedLibraries ? !isCross && (((ghc.isGhcjs or false) || stdenv.lib.versionOlder "7.7" ghc.version))
|
||||||
, enableSplitObjs ? !stdenv.isDarwin # http://hackage.haskell.org/trac/ghc/ticket/4013
|
, enableSplitObjs ? null # OBSOLETE, use enableDeadCodeElimination
|
||||||
|
, enableDeadCodeElimination ? (!stdenv.isDarwin) # TODO: use -dead_strip for darwin
|
||||||
, enableStaticLibraries ? true
|
, enableStaticLibraries ? true
|
||||||
, extraLibraries ? [], librarySystemDepends ? [], executableSystemDepends ? []
|
, extraLibraries ? [], librarySystemDepends ? [], executableSystemDepends ? []
|
||||||
, homepage ? "http://hackage.haskell.org/package/${pname}"
|
, homepage ? "http://hackage.haskell.org/package/${pname}"
|
||||||
@@ -53,6 +54,8 @@
|
|||||||
} @ args:
|
} @ args:
|
||||||
|
|
||||||
assert editedCabalFile != null -> revision != null;
|
assert editedCabalFile != null -> revision != null;
|
||||||
|
# OBSOLETE, use enableDeadCodeElimination
|
||||||
|
assert enableSplitObjs == null;
|
||||||
|
|
||||||
let
|
let
|
||||||
|
|
||||||
@@ -108,13 +111,15 @@ let
|
|||||||
(optionalString (enableSharedExecutables && stdenv.isDarwin) "--ghc-option=-optl=-Wl,-headerpad_max_install_names")
|
(optionalString (enableSharedExecutables && stdenv.isDarwin) "--ghc-option=-optl=-Wl,-headerpad_max_install_names")
|
||||||
(optionalString enableParallelBuilding "--ghc-option=-j$NIX_BUILD_CORES")
|
(optionalString enableParallelBuilding "--ghc-option=-j$NIX_BUILD_CORES")
|
||||||
(optionalString useCpphs "--with-cpphs=${cpphs}/bin/cpphs --ghc-options=-cpp --ghc-options=-pgmP${cpphs}/bin/cpphs --ghc-options=-optP--cpp")
|
(optionalString useCpphs "--with-cpphs=${cpphs}/bin/cpphs --ghc-options=-cpp --ghc-options=-pgmP${cpphs}/bin/cpphs --ghc-options=-optP--cpp")
|
||||||
(enableFeature enableSplitObjs "split-objs")
|
(enableFeature (enableDeadCodeElimination && (stdenv.lib.versionAtLeast "8.0.1" ghc.version)) "split-objs")
|
||||||
(enableFeature enableLibraryProfiling "library-profiling")
|
(enableFeature enableLibraryProfiling "library-profiling")
|
||||||
(enableFeature enableExecutableProfiling (if versionOlder ghc.version "8" then "executable-profiling" else "profiling"))
|
(enableFeature enableExecutableProfiling (if versionOlder ghc.version "8" then "executable-profiling" else "profiling"))
|
||||||
(enableFeature enableSharedLibraries "shared")
|
(enableFeature enableSharedLibraries "shared")
|
||||||
(optionalString (isGhcjs || versionOlder "7" ghc.version) (enableFeature enableStaticLibraries "library-vanilla"))
|
(optionalString (isGhcjs || versionOlder "7" ghc.version) (enableFeature enableStaticLibraries "library-vanilla"))
|
||||||
(optionalString (isGhcjs || versionOlder "7.4" ghc.version) (enableFeature enableSharedExecutables "executable-dynamic"))
|
(optionalString (isGhcjs || versionOlder "7.4" ghc.version) (enableFeature enableSharedExecutables "executable-dynamic"))
|
||||||
(optionalString (isGhcjs || versionOlder "7" ghc.version) (enableFeature doCheck "tests"))
|
(optionalString (isGhcjs || versionOlder "7" ghc.version) (enableFeature doCheck "tests"))
|
||||||
|
] ++ optionals (enableDeadCodeElimination && (stdenv.lib.versionOlder "8.0.1" ghc.version)) [
|
||||||
|
"--ghc-option=-split-sections"
|
||||||
] ++ optionals isGhcjs [
|
] ++ optionals isGhcjs [
|
||||||
"--with-hsc2hs=${nativeGhc}/bin/hsc2hs"
|
"--with-hsc2hs=${nativeGhc}/bin/hsc2hs"
|
||||||
"--ghcjs"
|
"--ghcjs"
|
||||||
|
|||||||
@@ -50,8 +50,8 @@ rec {
|
|||||||
enableSharedLibraries = drv: overrideCabal drv (drv: { enableSharedLibraries = true; });
|
enableSharedLibraries = drv: overrideCabal drv (drv: { enableSharedLibraries = true; });
|
||||||
disableSharedLibraries = drv: overrideCabal drv (drv: { enableSharedLibraries = false; });
|
disableSharedLibraries = drv: overrideCabal drv (drv: { enableSharedLibraries = false; });
|
||||||
|
|
||||||
enableSplitObjs = drv: overrideCabal drv (drv: { enableSplitObjs = true; });
|
enableDeadCodeElimination = drv: overrideCabal drv (drv: { enableDeadCodeElimination = true; });
|
||||||
disableSplitObjs = drv: overrideCabal drv (drv: { enableSplitObjs = false; });
|
disableDeadCodeElimination = drv: overrideCabal drv (drv: { enableDeadCodeElimination = false; });
|
||||||
|
|
||||||
enableStaticLibraries = drv: overrideCabal drv (drv: { enableStaticLibraries = true; });
|
enableStaticLibraries = drv: overrideCabal drv (drv: { enableStaticLibraries = true; });
|
||||||
disableStaticLibraries = drv: overrideCabal drv (drv: { enableStaticLibraries = false; });
|
disableStaticLibraries = drv: overrideCabal drv (drv: { enableStaticLibraries = false; });
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ with stdenv.lib;
|
|||||||
|
|
||||||
let
|
let
|
||||||
majorVersion = "3.4";
|
majorVersion = "3.4";
|
||||||
minorVersion = "5";
|
minorVersion = "6";
|
||||||
minorVersionSuffix = "";
|
minorVersionSuffix = "";
|
||||||
pythonVersion = majorVersion;
|
pythonVersion = majorVersion;
|
||||||
version = "${majorVersion}.${minorVersion}${minorVersionSuffix}";
|
version = "${majorVersion}.${minorVersion}${minorVersionSuffix}";
|
||||||
@@ -45,7 +45,7 @@ in stdenv.mkDerivation {
|
|||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://www.python.org/ftp/python/${version}/Python-${version}.tar.xz";
|
url = "http://www.python.org/ftp/python/${version}/Python-${version}.tar.xz";
|
||||||
sha256 = "12l9klp778wklxmckhghniy5hklss8r26995pyd00qbllk4b2r7f";
|
sha256 = "0h2z248hkf8x1ix1z8npkqs9cq62i322sl4rcjdkp7mawsxjhd7i";
|
||||||
};
|
};
|
||||||
|
|
||||||
NIX_LDFLAGS = optionalString stdenv.isLinux "-lgcc_s";
|
NIX_LDFLAGS = optionalString stdenv.isLinux "-lgcc_s";
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ with stdenv.lib;
|
|||||||
|
|
||||||
let
|
let
|
||||||
majorVersion = "3.5";
|
majorVersion = "3.5";
|
||||||
minorVersion = "2";
|
minorVersion = "3";
|
||||||
minorVersionSuffix = "";
|
minorVersionSuffix = "";
|
||||||
pythonVersion = majorVersion;
|
pythonVersion = majorVersion;
|
||||||
version = "${majorVersion}.${minorVersion}${minorVersionSuffix}";
|
version = "${majorVersion}.${minorVersion}${minorVersionSuffix}";
|
||||||
@@ -45,7 +45,7 @@ in stdenv.mkDerivation {
|
|||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://www.python.org/ftp/python/${majorVersion}.${minorVersion}/Python-${version}.tar.xz";
|
url = "https://www.python.org/ftp/python/${majorVersion}.${minorVersion}/Python-${version}.tar.xz";
|
||||||
sha256 = "0h6a5fr7ram2s483lh0pnmc4ncijb8llnpfdxdcl5dxr01hza400";
|
sha256 = "1c6v1n9nz4mlx9mw1125fxpmbrgniqdbbx9hnqx44maqazb2mzpf";
|
||||||
};
|
};
|
||||||
|
|
||||||
NIX_LDFLAGS = optionalString stdenv.isLinux "-lgcc_s";
|
NIX_LDFLAGS = optionalString stdenv.isLinux "-lgcc_s";
|
||||||
|
|||||||
@@ -1,15 +1,15 @@
|
|||||||
{ stdenv, fetchurl, cmake, openblasCompat, superlu, hdf5-cpp }:
|
{ stdenv, fetchurl, cmake, openblasCompat, superlu, hdf5 }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
version = "7.200.2";
|
version = "7.700.0";
|
||||||
name = "armadillo-${version}";
|
name = "armadillo-${version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://sourceforge/arma/armadillo-${version}.tar.xz";
|
url = "mirror://sourceforge/arma/armadillo-${version}.tar.xz";
|
||||||
sha256 = "1yvx75caks477jqwx5gspi6946jialddk00wdvg6dnh5wdi2xasm";
|
sha256 = "152x274hd3f59xgd27k9d3ikwb3w62v1v5hpw4lp1yzdyy8980pr";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ cmake openblasCompat superlu hdf5-cpp ];
|
buildInputs = [ cmake openblasCompat superlu hdf5 ];
|
||||||
|
|
||||||
cmakeFlags = [ "-DDETECT_HDF5=ON" ];
|
cmakeFlags = [ "-DDETECT_HDF5=ON" ];
|
||||||
|
|
||||||
@@ -20,6 +20,6 @@ stdenv.mkDerivation rec {
|
|||||||
homepage = http://arma.sourceforge.net;
|
homepage = http://arma.sourceforge.net;
|
||||||
license = licenses.mpl20;
|
license = licenses.mpl20;
|
||||||
platforms = platforms.unix;
|
platforms = platforms.unix;
|
||||||
maintainers = [ maintainers.juliendehos ];
|
maintainers = with maintainers; [ juliendehos knedlsepp ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -9,8 +9,9 @@ let
|
|||||||
version = "1.10.14";
|
version = "1.10.14";
|
||||||
sha256 = "10x0wvv2ly4lyyfd42k4xw0ar5qdbi9cksw3l5fcwf1y6mq8y8r3";
|
sha256 = "10x0wvv2ly4lyyfd42k4xw0ar5qdbi9cksw3l5fcwf1y6mq8y8r3";
|
||||||
|
|
||||||
self = stdenv.mkDerivation {
|
self = stdenv.mkDerivation {
|
||||||
name = "dbus-${version}";
|
name = "dbus-${version}";
|
||||||
|
inherit version;
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://dbus.freedesktop.org/releases/dbus/dbus-${version}.tar.gz";
|
url = "http://dbus.freedesktop.org/releases/dbus/dbus-${version}.tar.gz";
|
||||||
@@ -49,8 +50,6 @@ self = stdenv.mkDerivation {
|
|||||||
"--with-systemdsystemunitdir=$(out)/etc/systemd/system"
|
"--with-systemdsystemunitdir=$(out)/etc/systemd/system"
|
||||||
"--with-systemduserunitdir=$(out)/etc/systemd/user"
|
"--with-systemduserunitdir=$(out)/etc/systemd/user"
|
||||||
"--enable-user-session"
|
"--enable-user-session"
|
||||||
# this package installs nothing into those dirs and they create a dependency
|
|
||||||
"--datadir=/run/current-system/sw/share"
|
|
||||||
"--libexecdir=$(out)/libexec" # we don't need dbus-daemon-launch-helper
|
"--libexecdir=$(out)/libexec" # we don't need dbus-daemon-launch-helper
|
||||||
] ++ lib.optional (!x11Support) "--without-x";
|
] ++ lib.optional (!x11Support) "--without-x";
|
||||||
|
|
||||||
@@ -64,7 +63,7 @@ self = stdenv.mkDerivation {
|
|||||||
|
|
||||||
doCheck = true;
|
doCheck = true;
|
||||||
|
|
||||||
installFlags = "sysconfdir=$(out)/etc datadir=$(out)/share";
|
installFlags = [ "sysconfdir=$(out)/etc" ];
|
||||||
|
|
||||||
# it's executed from $lib by absolute path
|
# it's executed from $lib by absolute path
|
||||||
postFixup = ''
|
postFixup = ''
|
||||||
|
|||||||
@@ -3,14 +3,14 @@
|
|||||||
|
|
||||||
let
|
let
|
||||||
ver_maj = "2.36";
|
ver_maj = "2.36";
|
||||||
ver_min = "3";
|
ver_min = "4";
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "gdk-pixbuf-${ver_maj}.${ver_min}";
|
name = "gdk-pixbuf-${ver_maj}.${ver_min}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://gnome/sources/gdk-pixbuf/${ver_maj}/${name}.tar.xz";
|
url = "mirror://gnome/sources/gdk-pixbuf/${ver_maj}/${name}.tar.xz";
|
||||||
sha256 = "5223138f7d31afc6b356a049930304ec0abd6ac1113a5d3d1dba5cd4a4d639ec";
|
sha256 = "0b19901c3eb0596141d2d48ddb9dac79ad1524bdf59366af58ab38fcb9ee7463";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = [ "out" "dev" "devdoc" ];
|
outputs = [ "out" "dev" "devdoc" ];
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ stdenv.mkDerivation {
|
|||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
buildInputs = [ lzo lzip nettle libtasn1 libidn p11_kit zlib gmp autogen ]
|
buildInputs = [ lzo lzip libtasn1 libidn p11_kit zlib gmp autogen ]
|
||||||
++ lib.optional doCheck nettools
|
++ lib.optional doCheck nettools
|
||||||
++ lib.optional (stdenv.isFreeBSD || stdenv.isDarwin) libiconv
|
++ lib.optional (stdenv.isFreeBSD || stdenv.isDarwin) libiconv
|
||||||
++ lib.optional (tpmSupport && stdenv.isLinux) trousers
|
++ lib.optional (tpmSupport && stdenv.isLinux) trousers
|
||||||
@@ -47,6 +47,8 @@ stdenv.mkDerivation {
|
|||||||
|
|
||||||
nativeBuildInputs = [ perl pkgconfig ] ++ nativeBuildInputs;
|
nativeBuildInputs = [ perl pkgconfig ] ++ nativeBuildInputs;
|
||||||
|
|
||||||
|
propagatedBuildInputs = [ nettle ];
|
||||||
|
|
||||||
inherit doCheck;
|
inherit doCheck;
|
||||||
|
|
||||||
# Fixup broken libtool and pkgconfig files
|
# Fixup broken libtool and pkgconfig files
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ let
|
|||||||
inherit (stdenv.lib) optional optionalString;
|
inherit (stdenv.lib) optional optionalString;
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "gst-plugins-bad-1.10.2";
|
name = "gst-plugins-bad-1.10.3";
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
description = "Gstreamer Bad Plugins";
|
description = "Gstreamer Bad Plugins";
|
||||||
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "${meta.homepage}/src/gst-plugins-bad/${name}.tar.xz";
|
url = "${meta.homepage}/src/gst-plugins-bad/${name}.tar.xz";
|
||||||
sha256 = "0fisnnfpp3s8pbm6hjrfi4wjpq2da8c6w3ns9pjcg7590f9wm587";
|
sha256 = "1rwla1p57yzygb68z2xk5l5kvqzj5w3nxq0davkwk139zd8r6294";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = [ "out" "dev" ];
|
outputs = [ "out" "dev" ];
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "gst-plugins-base-1.10.2";
|
name = "gst-plugins-base-1.10.3";
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "Base plugins and helper libraries";
|
description = "Base plugins and helper libraries";
|
||||||
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "${meta.homepage}/src/gst-plugins-base/${name}.tar.xz";
|
url = "${meta.homepage}/src/gst-plugins-base/${name}.tar.xz";
|
||||||
sha256 = "086yjwmp4fykcqkj6zqhwrk2z49981kl8x545vz2wvblrc7x9h7v";
|
sha256 = "040pifl4cgsqqz2si4s1y5khj3zwm39w21siagxwp805swbrcag6";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = [ "out" "dev" ];
|
outputs = [ "out" "dev" ];
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "gstreamer-1.10.2";
|
name = "gstreamer-1.10.3";
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "Open source multimedia framework";
|
description = "Open source multimedia framework";
|
||||||
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "${meta.homepage}/src/gstreamer/${name}.tar.xz";
|
url = "${meta.homepage}/src/gstreamer/${name}.tar.xz";
|
||||||
sha256 = "0rcd4ya4k99x6ngm9v78as7ql0rqibkwshc13lb4rjdszs0qw3hm";
|
sha256 = "0gdnxg5igbhnpjhrzp31w1ww95j805byqd6mj3x29wli54dxrfc5";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = [ "out" "dev" ];
|
outputs = [ "out" "dev" ];
|
||||||
|
|||||||
@@ -27,4 +27,6 @@ rec {
|
|||||||
};
|
};
|
||||||
|
|
||||||
gst-validate = callPackage ./validate { inherit gst-plugins-base; };
|
gst-validate = callPackage ./validate { inherit gst-plugins-base; };
|
||||||
|
|
||||||
|
# note: gst-python is in ./python/default.nix - called under pythonPackages
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "gstreamer-editing-services-1.10.2";
|
name = "gstreamer-editing-services-1.10.3";
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
description = "Library for creation of audio/video non-linear editors";
|
description = "Library for creation of audio/video non-linear editors";
|
||||||
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "${meta.homepage}/src/gstreamer-editing-services/${name}.tar.xz";
|
url = "${meta.homepage}/src/gstreamer-editing-services/${name}.tar.xz";
|
||||||
sha256 = "0hx7bwj8li88qq09slvdxlnfq76hr35nyjvd4ixrz5gmkpmrl5fv";
|
sha256 = "0ax3qbi1m4wcii03ysln3lm8nhw3fr2rd35ndfy4mr4vg2nm5gxw";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = [ "out" "dev" ];
|
outputs = [ "out" "dev" ];
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ let
|
|||||||
inherit (stdenv.lib) optionals optionalString;
|
inherit (stdenv.lib) optionals optionalString;
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "gst-plugins-good-1.10.2";
|
name = "gst-plugins-good-1.10.3";
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
description = "Gstreamer Good Plugins";
|
description = "Gstreamer Good Plugins";
|
||||||
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "${meta.homepage}/src/gst-plugins-good/${name}.tar.xz";
|
url = "${meta.homepage}/src/gst-plugins-good/${name}.tar.xz";
|
||||||
sha256 = "04rksbhjj2yz32g523cfabwqn2s3byd94dpbxghxr0p9ridk53qr";
|
sha256 = "0mar8ss8bvpz699ql4kgndvna8qsv7kj372py4435ffl6hzfj1sf";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = [ "out" "dev" ];
|
outputs = [ "out" "dev" ];
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
assert withSystemLibav -> libav != null;
|
assert withSystemLibav -> libav != null;
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "gst-libav-1.10.2";
|
name = "gst-libav-1.10.3";
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
homepage = "http://gstreamer.freedesktop.org";
|
homepage = "http://gstreamer.freedesktop.org";
|
||||||
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "${meta.homepage}/src/gst-libav/${name}.tar.xz";
|
url = "${meta.homepage}/src/gst-libav/${name}.tar.xz";
|
||||||
sha256 = "0g778j7w4vpbhwjzyrzpajvr26nxm6vqby84v8g1w1hz44v71pd3";
|
sha256 = "1aajayv63ardkbmcg7pnh2d87r067325a5wzinwihaw6n5jw2sws";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = [ "out" "dev" ];
|
outputs = [ "out" "dev" ];
|
||||||
|
|||||||
@@ -6,14 +6,14 @@
|
|||||||
let
|
let
|
||||||
inherit (pythonPackages) python pygobject3;
|
inherit (pythonPackages) python pygobject3;
|
||||||
in stdenv.mkDerivation rec {
|
in stdenv.mkDerivation rec {
|
||||||
name = "gst-python-1.10.2";
|
name = "gst-python-1.10.3";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
urls = [
|
urls = [
|
||||||
"${meta.homepage}/src/gst-python/${name}.tar.xz"
|
"${meta.homepage}/src/gst-python/${name}.tar.xz"
|
||||||
"mirror://gentoo/distfiles/${name}.tar.xz"
|
"mirror://gentoo/distfiles/${name}.tar.xz"
|
||||||
];
|
];
|
||||||
sha256 = "1sljnqkxf2ix6yzghrapw5irl0rbp8aa8w2hggk7i6d9js10ls71";
|
sha256 = "bdfa2d06dfe0ce68f638b04fed6890db506416c1dcf1279e83458269d719a4e8";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [ ./different-path-with-pygobject.patch ];
|
patches = [ ./different-path-with-pygobject.patch ];
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "gst-plugins-ugly-1.10.2";
|
name = "gst-plugins-ugly-1.10.3";
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
description = "Gstreamer Ugly Plugins";
|
description = "Gstreamer Ugly Plugins";
|
||||||
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "${meta.homepage}/src/gst-plugins-ugly/${name}.tar.xz";
|
url = "${meta.homepage}/src/gst-plugins-ugly/${name}.tar.xz";
|
||||||
sha256 = "17gc2zd3v6spmm2d6912sqfcyyv5f2ghdhq31f5kx5mw5r6ds0zk";
|
sha256 = "1lkb8kznc9wxmhbp7k67b50y27nz8jp2x2flb91xzydz7b89f5f9";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = [ "out" "dev" ];
|
outputs = [ "out" "dev" ];
|
||||||
|
|||||||
@@ -5,11 +5,11 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "gst-vaapi-${version}";
|
name = "gst-vaapi-${version}";
|
||||||
version = "1.10.2";
|
version = "1.10.3";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "${meta.homepage}/src/gstreamer-vaapi/gstreamer-vaapi-${version}.tar.xz";
|
url = "${meta.homepage}/src/gstreamer-vaapi/gstreamer-vaapi-${version}.tar.xz";
|
||||||
sha256 = "1abzaj9kczap1xmalgzid1k3gqcn1ghnn76cn2kclc1gbfwd4ccy";
|
sha256 = "07ing6z7n0ylz5vknk3d2lw54a6szd6m8hqc3px6lahmd832ga6f";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = [ "out" "dev" ];
|
outputs = [ "out" "dev" ];
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "gst-validate-1.10.2";
|
name = "gst-validate-1.10.3";
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "Integration testing infrastructure for the GStreamer framework";
|
description = "Integration testing infrastructure for the GStreamer framework";
|
||||||
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "${meta.homepage}/src/gst-validate/${name}.tar.xz";
|
url = "${meta.homepage}/src/gst-validate/${name}.tar.xz";
|
||||||
sha256 = "1mwyk3b19aq78mjhmrpc7qqs9flrykrn1j763g5wx546swc489xy";
|
sha256 = "00icav26pj81cxdykf86rp3jw6lb178ydrqhcck43i94jdb4hsxy";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = [ "out" "dev" ];
|
outputs = [ "out" "dev" ];
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ with stdenv.lib;
|
|||||||
|
|
||||||
let
|
let
|
||||||
ver_maj = "3.22";
|
ver_maj = "3.22";
|
||||||
ver_min = "6";
|
ver_min = "7";
|
||||||
version = "${ver_maj}.${ver_min}";
|
version = "${ver_maj}.${ver_min}";
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://gnome/sources/gtk+/${ver_maj}/gtk+-${version}.tar.xz";
|
url = "mirror://gnome/sources/gtk+/${ver_maj}/gtk+-${version}.tar.xz";
|
||||||
sha256 = "eba75a216a117f4391beb2971ba20ff8a1823f109893f0ab6c2eac2210ea172f";
|
sha256 = "a3a27564bfb1679ebbc75c37cd2bcd6e727c8bdfbcd3984d29305bf9ee60d432";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = [ "out" "dev" ];
|
outputs = [ "out" "dev" ];
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ stdenv, fetchFromGitHub, python, llvm, clang }:
|
{ stdenv, fetchFromGitHub, python2, llvm, clang }:
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "libclc-2015-08-07";
|
name = "libclc-2015-08-07";
|
||||||
@@ -10,7 +10,7 @@ stdenv.mkDerivation {
|
|||||||
sha256 = "10n9qk1dild9yjkjjkzpmp9zid3ysdgvqrad554azcf755frch7g";
|
sha256 = "10n9qk1dild9yjkjjkzpmp9zid3ysdgvqrad554azcf755frch7g";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ python llvm clang ];
|
buildInputs = [ python2 llvm clang ];
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
sed -i 's,llvm_clang =.*,llvm_clang = "${clang}/bin/clang",' configure.py
|
sed -i 's,llvm_clang =.*,llvm_clang = "${clang}/bin/clang",' configure.py
|
||||||
@@ -18,7 +18,7 @@ stdenv.mkDerivation {
|
|||||||
'';
|
'';
|
||||||
|
|
||||||
configurePhase = ''
|
configurePhase = ''
|
||||||
python2 ./configure.py --prefix=$out
|
${python2.interpreter} ./configure.py --prefix=$out
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ stdenv, fetchurl, python }:
|
{ stdenv, fetchurl, python2 }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "ctemplate-${version}";
|
name = "ctemplate-${version}";
|
||||||
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
|
|||||||
sha256 = "0mi5g2xlws10z1g4x0cj6kd1r673kkav35pgzyqxa1w47xnwprcr";
|
sha256 = "0mi5g2xlws10z1g4x0cj6kd1r673kkav35pgzyqxa1w47xnwprcr";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ python ];
|
buildInputs = [ python2 ];
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
patchShebangs .
|
patchShebangs .
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
{ stdenv, fetchurl, pkgconfig, libpthreadstubs, libpciaccess, valgrind }:
|
{ stdenv, fetchurl, pkgconfig, libpthreadstubs, libpciaccess, valgrind }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "libdrm-2.4.74";
|
name = "libdrm-2.4.75";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://dri.freedesktop.org/libdrm/${name}.tar.bz2";
|
url = "http://dri.freedesktop.org/libdrm/${name}.tar.bz2";
|
||||||
sha256 = "d80dd5a76c401f4c8756dcccd999c63d7e0a3bad258d96a829055cfd86ef840b";
|
sha256 = "2d5a500eef412cc287d12268eed79d571e262d4957a2ec9258073f305985054f";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = [ "out" "dev" ];
|
outputs = [ "out" "dev" ];
|
||||||
|
|||||||
@@ -1,30 +1,51 @@
|
|||||||
{ stdenv, fetchurl, libelf }:
|
{ stdenv, fetchurl, libelf }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
let
|
||||||
name = "libdwarf-20161124";
|
version = "20161124";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://www.prevanders.net/${name}.tar.gz";
|
url = "http://www.prevanders.net/libdwarf-${version}.tar.gz";
|
||||||
sha512 = "38e480bce5ae8273fd585ec1d8ba94dc3e865a0ef3fcfcf38b5d92fa1ce41f8b"
|
sha512 = "38e480bce5ae8273fd585ec1d8ba94dc3e865a0ef3fcfcf38b5d92fa1ce41f8b"
|
||||||
+ "8c95a7cf8a6e69e7c6f638a3cc56ebbfb37b6317047309725fa17e7929096799";
|
+ "8c95a7cf8a6e69e7c6f638a3cc56ebbfb37b6317047309725fa17e7929096799";
|
||||||
};
|
};
|
||||||
|
|
||||||
configureFlags = [ "--enable-shared" "--disable-nonshared" ];
|
|
||||||
|
|
||||||
preConfigure = ''
|
|
||||||
cd libdwarf
|
|
||||||
'';
|
|
||||||
buildInputs = [ libelf ];
|
|
||||||
|
|
||||||
installPhase = ''
|
|
||||||
mkdir -p $out/lib $out/include
|
|
||||||
cp libdwarf.so.1 $out/lib
|
|
||||||
ln -s libdwarf.so.1 $out/lib/libdwarf.so
|
|
||||||
cp libdwarf.h dwarf.h $out/include
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
homepage = https://www.prevanders.net/dwarf.html;
|
homepage = https://www.prevanders.net/dwarf.html;
|
||||||
platforms = stdenv.lib.platforms.linux;
|
platforms = stdenv.lib.platforms.linux;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
in rec {
|
||||||
|
libdwarf = stdenv.mkDerivation rec {
|
||||||
|
name = "libdwarf-${version}";
|
||||||
|
|
||||||
|
configureFlags = [ "--enable-shared" "--disable-nonshared" ];
|
||||||
|
|
||||||
|
preConfigure = ''
|
||||||
|
cd libdwarf
|
||||||
|
'';
|
||||||
|
buildInputs = [ libelf ];
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
mkdir -p $out/lib $out/include
|
||||||
|
cp libdwarf.so.1 $out/lib
|
||||||
|
ln -s libdwarf.so.1 $out/lib/libdwarf.so
|
||||||
|
cp libdwarf.h dwarf.h $out/include
|
||||||
|
'';
|
||||||
|
|
||||||
|
inherit meta src;
|
||||||
|
};
|
||||||
|
|
||||||
|
dwarfdump = stdenv.mkDerivation rec {
|
||||||
|
name = "dwarfdump-${version}";
|
||||||
|
|
||||||
|
preConfigure = ''
|
||||||
|
cd dwarfdump
|
||||||
|
'';
|
||||||
|
|
||||||
|
buildInputs = [ libelf libdwarf ];
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
install -m755 -D dwarfdump $out/bin/dwarfdump
|
||||||
|
'';
|
||||||
|
|
||||||
|
inherit meta src;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user