Merge branch 'staging-next' into staging

This commit is contained in:
Jan Tojnar 2019-09-10 07:06:45 +02:00
commit 1716d62f63
No known key found for this signature in database
GPG Key ID: 7FAB2A15F7A607A4
82 changed files with 1206 additions and 617 deletions

View File

@ -1 +1 @@
19.09 20.03

View File

@ -31,10 +31,10 @@
<title>Build Container</title> <title>Build Container</title>
<programlisting> <programlisting>
buildContainer { buildContainer {
cmd = with pkgs; writeScript "run.sh" '' args = [ (with pkgs; writeScript "run.sh" ''
#!${bash}/bin/bash #!${bash}/bin/bash
${coreutils}/bin/exec ${bash}/bin/bash ${coreutils}/bin/exec ${bash}/bin/bash
''; <co xml:id='ex-ociTools-buildContainer-1' /> '').outPath ]; <co xml:id='ex-ociTools-buildContainer-1' />
mounts = { mounts = {
"/data" = { "/data" = {
@ -51,7 +51,7 @@ buildContainer {
<calloutlist> <calloutlist>
<callout arearefs='ex-ociTools-buildContainer-1'> <callout arearefs='ex-ociTools-buildContainer-1'>
<para> <para>
<varname>cmd</varname> specifies the program to run inside the container. <varname>args</varname> specifies a set of arguments to run inside the container.
This is the only required argument for <varname>buildContainer</varname>. This is the only required argument for <varname>buildContainer</varname>.
All referenced packages inside the derivation will be made available All referenced packages inside the derivation will be made available
inside the container inside the container

View File

@ -0,0 +1,263 @@
<section xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="sec-language-gnome">
<title>GNOME</title>
<section xml:id="ssec-gnome-packaging">
<title>Packaging GNOME applications</title>
<para>
Programs in the GNOME universe are written in various languages but they all use GObject-based libraries like GLib, GTK or GStreamer. These libraries are often modular, relying on looking into certain directories to find their modules. However, due to Nixs specific file system organization, this will fail without our intervention. Fortunately, the libraries usually allow overriding the directories through environment variables, either natively or thanks to a patch in nixpkgs. <link xlink:href="#fun-wrapProgram">Wrapping</link> the executables to ensure correct paths are available to the application constitutes a significant part of packaging a modern desktop application. In this section, we will describe various modules needed by such applications, environment variables needed to make the modules load, and finally a script that will do the work for us.
</para>
<section xml:id="ssec-gnome-settings">
<title>Settings</title>
<para>
<link xlink:href="https://developer.gnome.org/gio/stable/GSettings.html">GSettings</link> API is often used for storing settings. GSettings schemas are required, to know the type and other metadata of the stored values. GLib looks for <filename>glib-2.0/schemas/gschemas.compiled</filename> files inside the directories of <envar>XDG_DATA_DIRS</envar>.
</para>
<para>
On Linux, GSettings API is implemented using <link xlink:href="https://wiki.gnome.org/Projects/dconf">dconf</link> backend. You will need to add <literal>dconf</literal> GIO module to <envar>GIO_EXTRA_MODULES</envar> variable, otherwise the <literal>memory</literal> backend will be used and the saved settings will not be persistent.
</para>
<para>
Last you will need the dconf database D-Bus service itself. You can enable it using <option>programs.dconf.enable</option>.
</para>
<para>
Some applications will also require <package>gsettings-desktop-schemas</package> for things like reading proxy configuration or user interface customization. This dependency is often not mentioned by upstream, you should grep for <literal>org.gnome.desktop</literal> and <literal>org.gnome.system</literal> to see if the schemas are needed.
</para>
</section>
<section xml:id="ssec-gnome-icons">
<title>Icons</title>
<para>
When an application uses icons, an icon theme should be available in <envar>XDG_DATA_DIRS</envar>. The package for the default, icon-less <link xlink:href="https://www.freedesktop.org/wiki/Software/icon-theme/">hicolor-icon-theme</link> contains <link linkend="ssec-gnome-hooks-hicolor-icon-theme">a setup hook</link> that will pick up icon themes from <literal>buildInputs</literal> and pass it to our wrapper. Unfortunately, relying on that would mean every user has to download the theme included in the package expression no matter their preference. For that reason, we leave the installation of icon theme on the user. If you use one of the desktop environments, you probably already have an icon theme installed.
</para>
</section>
<section xml:id="ssec-gnome-themes">
<title>GTK Themes</title>
<para>
Previously, a GTK theme needed to be in <envar>XDG_DATA_DIRS</envar>. This is no longer necessary for most programs since GTK incorporated Adwaita theme. Some programs (for example, those designed for <link xlink:href="https://elementary.io/docs/human-interface-guidelines#human-interface-guidelines">elementary HIG</link>) might require a special theme like <package>pantheon.elementary-gtk-theme</package>.
</para>
</section>
<section xml:id="ssec-gnome-typelibs">
<title>GObject introspection typelibs</title>
<para>
<link xlink:href="https://wiki.gnome.org/Projects/GObjectIntrospection">GObject introspection</link> allows applications to use C libraries in other languages easily. It does this through <literal>typelib</literal> files searched in <envar>GI_TYPELIB_PATH</envar>.
</para>
</section>
<section xml:id="ssec-gnome-plugins">
<title>Various plug-ins</title>
<para>
If your application uses <link xlink:href="https://gstreamer.freedesktop.org/">GStreamer</link> or <link xlink:href="https://wiki.gnome.org/Projects/Grilo">Grilo</link>, you should set <envar>GST_PLUGIN_SYSTEM_PATH_1_0</envar> and <envar>GRL_PLUGIN_PATH</envar>, respectively.
</para>
</section>
</section>
<section xml:id="ssec-gnome-hooks">
<title>Onto <package>wrapGAppsHook</package></title>
<para>
Given the requirements above, the package expression would become messy quickly:
<programlisting>
preFixup = ''
for f in $(find $out/bin/ $out/libexec/ -type f -executable); do
wrapProgram "$f" \
--prefix GIO_EXTRA_MODULES : "${getLib gnome3.dconf}/lib/gio/modules" \
--prefix XDG_DATA_DIRS : "$out/share" \
--prefix XDG_DATA_DIRS : "$out/share/gsettings-schemas/${name}" \
--prefix XDG_DATA_DIRS : "${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}" \
--prefix XDG_DATA_DIRS : "${hicolor-icon-theme}/share" \
--prefix GI_TYPELIB_PATH : "${lib.makeSearchPath "lib/girepository-1.0" [ pango json-glib ]}"
done
'';
</programlisting>
Fortunately, there is <package>wrapGAppsHook</package>, that does the wrapping for us. In particular, it works in conjunction with other setup hooks that will populate the variable:
<itemizedlist>
<listitem xml:id="ssec-gnome-hooks-wrapgappshook">
<para>
<package>wrapGAppsHook</package> itself will add the packages <filename>share</filename> directory to <envar>XDG_DATA_DIRS</envar>.
</para>
</listitem>
<listitem xml:id="ssec-gnome-hooks-glib">
<para>
<package>glib</package> setup hook will populate <envar>GSETTINGS_SCHEMAS_PATH</envar> and then <package>wrapGAppsHook</package> will prepend it to <envar>XDG_DATA_DIRS</envar>.
</para>
</listitem>
<listitem xml:id="ssec-gnome-hooks-dconf">
<para>
<package>gnome3.dconf.lib</package> is a dependency of <package>wrapGAppsHook</package>, which then also adds it to the <envar>GIO_EXTRA_MODULES</envar> variable.
</para>
</listitem>
<listitem xml:id="ssec-gnome-hooks-hicolor-icon-theme">
<para>
<package>hicolor-icon-theme</package>s setup hook will add icon themes to <envar>XDG_ICON_DIRS</envar> which is prepended to <envar>XDG_DATA_DIRS</envar> by <package>wrapGAppsHook</package>.
</para>
</listitem>
<listitem xml:id="ssec-gnome-hooks-gobject-introspection">
<para>
<package>gobject-introspection</package> setup hook populates <envar>GI_TYPELIB_PATH</envar> variable with <filename>lib/girepository-1.0</filename> directories of dependencies, which is then added to wrapper by <package>wrapGAppsHook</package>. It also adds <filename>share</filename> directories of dependencies to <envar>XDG_DATA_DIRS</envar>, which is intended to promote GIR files but it also <link xlink:href="https://github.com/NixOS/nixpkgs/issues/32790">pollutes the closures</link> of packages using <package>wrapGAppsHook</package>.
</para>
<warning>
<para>
The setup hook <link xlink:href="https://github.com/NixOS/nixpkgs/issues/56943">currently</link> does not work in expressions with <literal>strictDeps</literal> enabled, like Python packages. In those cases, you will need to disable it with <code>strictDeps = false;</code>.
</para>
</warning>
</listitem>
<listitem xml:id="ssec-gnome-hooks-gst-grl-plugins">
<para>
Setup hooks of <package>gst_all_1.gstreamer</package> and <package>gnome3.grilo</package> will populate the <envar>GST_PLUGIN_SYSTEM_PATH_1_0</envar> and <envar>GRL_PLUGIN_PATH</envar> variables, respectively, which will then be added to the wrapper by <literal>wrapGAppsHook</literal>.
</para>
</listitem>
</itemizedlist>
</para>
<para>
You can also pass additional arguments to <literal>makeWrapper</literal> using <literal>gappsWrapperArgs</literal> in <literal>preFixup</literal> hook:
<programlisting>
preFixup = ''
gappsWrapperArgs+=(
# Thumbnailers
--prefix XDG_DATA_DIRS : "${gdk-pixbuf}/share"
--prefix XDG_DATA_DIRS : "${librsvg}/share"
--prefix XDG_DATA_DIRS : "${shared-mime-info}/share"
)
'';
</programlisting>
</para>
</section>
<section xml:id="ssec-gnome-updating">
<title>Updating GNOME packages</title>
<para>
Most GNOME package offer <link linkend="var-passthru-updateScript"><literal>updateScript</literal></link>, it is therefore possible to update to latest source tarball by running <command>nix-shell maintainers/scripts/update.nix --argstr package gnome3.nautilus</command> or even en masse with <command>nix-shell maintainers/scripts/update.nix --argstr path gnome3</command>. Read the packages <filename>NEWS</filename> file to see what changed.
</para>
</section>
<section xml:id="ssec-gnome-common-issues">
<title>Frequently encountered issues</title>
<variablelist>
<varlistentry xml:id="ssec-gnome-common-issues-no-schemas">
<term>
<computeroutput>GLib-GIO-ERROR **: <replaceable>06:04:50.903</replaceable>: No GSettings schemas are installed on the system</computeroutput>
</term>
<listitem>
<para>
There are no schemas avalable in <envar>XDG_DATA_DIRS</envar>. Temporarily add a random package containing schemas like <package>gsettings-desktop-schemas</package> to <literal>buildInputs</literal>. <link linkend="ssec-gnome-hooks-glib"><package>glib</package></link> and <link linkend="ssec-gnome-hooks-wrapgappshook"><package>wrapGAppsHook</package></link> setup hooks will take care of making the schemas available to application and you will see the actual missing schemas with the <link linkend="ssec-gnome-common-issues-missing-schema">next error</link>. Or you can try looking through the source code for the actual schemas used.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ssec-gnome-common-issues-missing-schema">
<term>
<computeroutput>GLib-GIO-ERROR **: <replaceable>06:04:50.903</replaceable>: Settings schema <replaceable>org.gnome.foo</replaceable> is not installed</computeroutput>
</term>
<listitem>
<para>
Package is missing some GSettings schemas. You can find out the package containing the schema with <command>nix-locate <replaceable>org.gnome.foo</replaceable>.gschema.xml</command> and let the hooks handle the wrapping as <link linkend="ssec-gnome-common-issues-no-schemas">above</link>.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ssec-gnome-common-issues-double-wrapped">
<term>
When using <package>wrapGAppsHook</package> with special derivers you can end up with double wrapped binaries.
</term>
<listitem>
<para>
This is because derivers like <function>python.pkgs.buildPythonApplication</function> or <function>qt5.mkDerivation</function> have setup-hooks automatically added that produce wrappers with <package>makeWrapper</package>. The simplest way to workaround that is to disable the <package>wrapGAppsHook</package> automatic wrapping with <code>dontWrapGApps = true;</code> and pass the arguments it intended to pass to <package>makeWrapper</package> to another.
</para>
<para>
In the case of a Python application it could look like:
<programlisting>
python3.pkgs.buildPythonApplication {
pname = "gnome-music";
version = "3.32.2";
nativeBuildInputs = [
wrapGAppsHook
gobject-introspection
...
];
dontWrapGApps = true;
# Arguments to be passed to `makeWrapper`, only used by buildPython*
makeWrapperArgs = [
"\${gappsWrapperArgs[@]}"
];
}
</programlisting>
And for a QT app like:
<programlisting>
mkDerivation {
pname = "calibre";
version = "3.47.0";
nativeBuildInputs = [
wrapGAppsHook
qmake
...
];
dontWrapGApps = true;
# Arguments to be passed to `makeWrapper`, only used by qt5s mkDerivation
qtWrapperArgs [
"\${gappsWrapperArgs[@]}"
];
}
</programlisting>
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ssec-gnome-common-issues-unwrappable-package">
<term>
I am packaging a project that cannot be wrapped, like a library or GNOME Shell extension.
</term>
<listitem>
<para>
You can rely on applications depending on the library set the necessary environment variables but that it often easy to miss. Instead we recommend to patch the paths in the source code whenever possible. Here are some examples:
<itemizedlist>
<listitem xml:id="ssec-gnome-common-issues-unwrappable-package-gnome-shell-ext">
<para>
<link xlink:href="https://github.com/NixOS/nixpkgs/blob/7bb8f05f12ca3cff9da72b56caa2f7472d5732bc/pkgs/desktops/gnome-3/core/gnome-shell-extensions/default.nix#L21-L24">Replacing a <envar>GI_TYPELIB_PATH</envar> in GNOME Shell extension</link> we are using <function>substituteAll</function> to include the path to a typelib into a patch.
</para>
</listitem>
<listitem xml:id="ssec-gnome-common-issues-unwrappable-package-gsettings">
<para>
The following examples are hardcoding GSettings schema paths. To get the schema paths we use the functions
<itemizedlist>
<listitem>
<para>
<function>glib.getSchemaPath</function> Takes a nix package attribute as an argument.
</para>
</listitem>
<listitem>
<para>
<function>glib.makeSchemaPath</function> Takes a package output like <literal>$out</literal> and a derivation name. You should use this if the schemas you need to hardcode are in the same derivation.
</para>
</listitem>
</itemizedlist>
</para>
<para xml:id="ssec-gnome-common-issues-unwrappable-package-gsettings-vala">
<link xlink:href="https://github.com/NixOS/nixpkgs/blob/7bb8f05f12ca3cff9da72b56caa2f7472d5732bc/pkgs/desktops/pantheon/apps/elementary-files/default.nix#L78-L86">Hard-coding GSettings schema path in Vala plug-in (dynamically loaded library)</link> here, <function>substituteAll</function> cannot be used since the schema comes from the same package preventing us from pass its path to the function, probably due to a <link xlink:href="https://github.com/NixOS/nix/issues/1846">Nix bug</link>.
</para>
<para xml:id="ssec-gnome-common-issues-unwrappable-package-gsettings-c">
<link xlink:href="https://github.com/NixOS/nixpkgs/blob/29c120c065d03b000224872251bed93932d42412/pkgs/development/libraries/glib-networking/default.nix#L31-L34">Hard-coding GSettings schema path in C library</link> nothing special other than using <link xlink:href="https://github.com/NixOS/nixpkgs/pull/67957#issuecomment-527717467">Coccinelle patch</link> to generate the patch itself.
</para>
</listitem>
</itemizedlist>
</para>
</listitem>
</varlistentry>
</variablelist>
</section>
</section>

View File

@ -14,6 +14,7 @@
<xi:include href="beam.xml" /> <xi:include href="beam.xml" />
<xi:include href="bower.xml" /> <xi:include href="bower.xml" />
<xi:include href="coq.xml" /> <xi:include href="coq.xml" />
<xi:include href="gnome.xml" />
<xi:include href="go.xml" /> <xi:include href="go.xml" />
<xi:include href="haskell.section.xml" /> <xi:include href="haskell.section.xml" />
<xi:include href="idris.section.xml" /> <xi:include href="idris.section.xml" />

View File

@ -699,7 +699,7 @@ passthru = {
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry> <varlistentry xml:id="var-passthru-updateScript">
<term> <term>
<varname>passthru.updateScript</varname> <varname>passthru.updateScript</varname>
</term> </term>
@ -2629,13 +2629,11 @@ addEnvHooks "$hostOffset" myBashFunction
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term> <term>
GStreamer GNOME platform
</term> </term>
<listitem> <listitem>
<para> <para>
Adds the GStreamer plugins subdirectory of each build input to the Hooks related to GNOME platform and related libraries like GLib, GTK and GStreamer are described in <xref linkend="sec-language-gnome" />.
<envar>GST_PLUGIN_SYSTEM_PATH_1_0</envar> or
<envar>GST_PLUGIN_SYSTEM_PATH</envar> environment variable.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>

View File

@ -134,7 +134,7 @@ rec {
On each release the first letter is bumped and a new animal is chosen On each release the first letter is bumped and a new animal is chosen
starting with that new letter. starting with that new letter.
*/ */
codeName = "Loris"; codeName = "Markhor";
/* Returns the current nixpkgs version suffix as string. */ /* Returns the current nixpkgs version suffix as string. */
versionSuffix = versionSuffix =

View File

@ -5840,6 +5840,10 @@
github = "sikmir"; github = "sikmir";
githubId = 688044; githubId = 688044;
name = "Nikolay Korotkiy"; name = "Nikolay Korotkiy";
keys = [{
longkeyid = "rsa2048/0xD1DE6D7F693663A5";
fingerprint = "ADF4 C13D 0E36 1240 BD01 9B51 D1DE 6D7F 6936 63A5";
}];
}; };
simonvandel = { simonvandel = {
email = "simon.vandel@gmail.com"; email = "simon.vandel@gmail.com";

View File

@ -279,6 +279,12 @@ xkb_symbols &quot;media&quot;
<programlisting> <programlisting>
<xref linkend="opt-services.xserver.displayManager.sessionCommands"/> = "setxkbmap -keycodes media"; <xref linkend="opt-services.xserver.displayManager.sessionCommands"/> = "setxkbmap -keycodes media";
</programlisting> </programlisting>
<para>
If you are manually starting the X server, you should set the argument
<literal>-xkbdir /etc/X11/xkb</literal>, otherwise X won't find your layout files.
For example with <command>xinit</command> run
<screen><prompt>$ </prompt>xinit -- -xkbdir /etc/X11/xkb</screen>
</para>
<para> <para>
To learn how to write layouts take a look at the XKB To learn how to write layouts take a look at the XKB
<link xlink:href="https://www.x.org/releases/current/doc/xorg-docs/input/XKB-Enhancing.html#Defining_New_Layouts"> <link xlink:href="https://www.x.org/releases/current/doc/xorg-docs/input/XKB-Enhancing.html#Defining_New_Layouts">

View File

@ -8,6 +8,7 @@
This section lists the release notes for each stable version of NixOS and This section lists the release notes for each stable version of NixOS and
current unstable revision. current unstable revision.
</para> </para>
<xi:include href="rl-2003.xml" />
<xi:include href="rl-1909.xml" /> <xi:include href="rl-1909.xml" />
<xi:include href="rl-1903.xml" /> <xi:include href="rl-1903.xml" />
<xi:include href="rl-1809.xml" /> <xi:include href="rl-1809.xml" />

View File

@ -449,8 +449,9 @@
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
<option>services.xserver.desktopManager.xterm</option> is now disabled by default. <option>services.xserver.desktopManager.xterm</option> is now disabled by default if <literal>stateVersion</literal> is 19.09 or higher.
It was not useful except for debugging purposes and was confusingly set as default in some circumstances. Previously the xterm desktopManager was enabled when xserver was enabled, but it isn't useful for all people so it didn't make sense to
have any desktopManager enabled default.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>

View File

@ -0,0 +1,80 @@
<section xmlns="http://docbook.org/ns/docbook"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xi="http://www.w3.org/2001/XInclude"
version="5.0"
xml:id="sec-release-20.03">
<title>Release 20.03 (“Markhor”, 2020.03/??)</title>
<section xmlns="http://docbook.org/ns/docbook"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xi="http://www.w3.org/2001/XInclude"
version="5.0"
xml:id="sec-release-20.03-highlights">
<title>Highlights</title>
<para>
In addition to numerous new and upgraded packages, this release has the
following highlights:
</para>
<itemizedlist>
<listitem>
<para>
Support is planned until the end of October 2020, handing over to 20.09.
</para>
</listitem>
</itemizedlist>
</section>
<section xmlns="http://docbook.org/ns/docbook"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xi="http://www.w3.org/2001/XInclude"
version="5.0"
xml:id="sec-release-20.03-new-services">
<title>New Services</title>
<para>
The following new services were added since the last release:
</para>
<itemizedlist>
<listitem>
<para />
</listitem>
</itemizedlist>
</section>
<section xmlns="http://docbook.org/ns/docbook"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xi="http://www.w3.org/2001/XInclude"
version="5.0"
xml:id="sec-release-20.03-incompatibilities">
<title>Backward Incompatibilities</title>
<para>
When upgrading from a previous release, please be aware of the following
incompatible changes:
</para>
<itemizedlist>
<listitem>
<para />
</listitem>
</itemizedlist>
</section>
<section xmlns="http://docbook.org/ns/docbook"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xi="http://www.w3.org/2001/XInclude"
version="5.0"
xml:id="sec-release-20.03-notable-changes">
<title>Other Notable Changes</title>
<itemizedlist>
<listitem>
<para />
</listitem>
</itemizedlist>
</section>
</section>

View File

@ -135,6 +135,9 @@ in
# outputs TODO: note that the tools will often not be linked by default # outputs TODO: note that the tools will often not be linked by default
postBuild = postBuild =
'' ''
# Remove wrapped binaries, they shouldn't be accessible via PATH.
find $out/bin -maxdepth 1 -name ".*-wrapped" -type l -delete
if [ -x $out/bin/glib-compile-schemas -a -w $out/share/glib-2.0/schemas ]; then if [ -x $out/bin/glib-compile-schemas -a -w $out/share/glib-2.0/schemas ]; then
$out/bin/glib-compile-schemas $out/share/glib-2.0/schemas $out/bin/glib-compile-schemas $out/share/glib-2.0/schemas
fi fi

View File

@ -43,9 +43,8 @@ in {
<literal>[DEFAULT]</literal> block along with the <literal>[DEFAULT]</literal> block along with the
<literal>to</literal> parameter. <literal>to</literal> parameter.
See See <literal>man r2e</literal> for more information on which
<literal>https://github.com/rss2email/rss2email/blob/master/r2e.1</literal> parameters are accepted.
for more information on which parameters are accepted.
''; '';
}; };

View File

@ -151,6 +151,7 @@ in
enableSubversionRepository = config.services.svnserve.enable; enableSubversionRepository = config.services.svnserve.enable;
enableTomcatWebApplication = config.services.tomcat.enable; enableTomcatWebApplication = config.services.tomcat.enable;
enableMongoDatabase = config.services.mongodb.enable; enableMongoDatabase = config.services.mongodb.enable;
enableInfluxDatabase = config.services.influxdb.enable;
}); });
dysnomia.properties = { dysnomia.properties = {

View File

@ -23,7 +23,7 @@ with lib;
type = types.listOf types.str; type = types.listOf types.str;
default = []; default = [];
example = ''[ "toxid1" "toxid2" ]''; example = ''[ "toxid1" "toxid2" ]'';
description = "peers to automacally connect to on startup"; description = "peers to automatically connect to on startup";
}; };
}; };
}; };

View File

@ -291,6 +291,16 @@ in
services.dbus.packages = [ cups.out ] ++ optional polkitEnabled cups-pk-helper; services.dbus.packages = [ cups.out ] ++ optional polkitEnabled cups-pk-helper;
# Allow asswordless printer admin for members of wheel group
security.polkit.extraConfig = mkIf polkitEnabled ''
polkit.addRule(function(action, subject) {
if (action.id == "org.opensuse.cupspkhelper.mechanism.all-edit" &&
subject.isInGroup("wheel")){
return polkit.Result.YES;
}
});
'';
# Cups uses libusb to talk to printers, and does not use the # Cups uses libusb to talk to printers, and does not use the
# linux kernel driver. If the driver is not in a black list, it # linux kernel driver. If the driver is not in a black list, it
# gets loaded, and then cups cannot access the printers. # gets loaded, and then cups cannot access the printers.

View File

@ -13,8 +13,7 @@ in
services.xserver.desktopManager.xterm.enable = mkOption { services.xserver.desktopManager.xterm.enable = mkOption {
type = types.bool; type = types.bool;
default = false; default = (versionOlder config.system.stateVersion "19.09");
defaultText = "config.services.xserver.enable";
description = "Enable a xterm terminal as a desktop manager."; description = "Enable a xterm terminal as a desktop manager.";
}; };

View File

@ -158,7 +158,10 @@ in
}); });
services.xserver.xkbDir = "${pkgs.xkb_patched}/etc/X11/xkb"; services.xserver = {
xkbDir = "${pkgs.xkb_patched}/etc/X11/xkb";
exportConfiguration = config.services.xserver.displayManager.startx.enable;
};
}; };

View File

@ -1,4 +1,6 @@
{ stdenv { mkDerivation
, lib
, qtbase
, fetchFromGitHub , fetchFromGitHub
, fftwSinglePrec , fftwSinglePrec
, ruby , ruby
@ -6,20 +8,21 @@
, aubio , aubio
, cmake , cmake
, pkgconfig , pkgconfig
, qt5
, libsForQt5
, boost , boost
, bash , bash
, makeWrapper
, jack2Full , jack2Full
, supercollider
, qscintilla
, qwt
}: }:
let let
supercollider = libsForQt5.callPackage ../../../development/interpreters/supercollider {
fftw = fftwSinglePrec;
};
in stdenv.mkDerivation rec { supercollider_single_prec = supercollider.override { fftw = fftwSinglePrec; };
in
mkDerivation rec {
version = "3.1.0"; version = "3.1.0";
pname = "sonic-pi"; pname = "sonic-pi";
@ -33,15 +36,14 @@ in stdenv.mkDerivation rec {
buildInputs = [ buildInputs = [
bash bash
cmake cmake
makeWrapper
pkgconfig pkgconfig
qt5.qtbase qtbase
libsForQt5.qscintilla qscintilla
libsForQt5.qwt qwt
ruby ruby
libffi libffi
aubio aubio
supercollider supercollider_single_prec
boost boost
]; ];
@ -80,20 +82,23 @@ in stdenv.mkDerivation rec {
installPhase = '' installPhase = ''
runHook preInstall runHook preInstall
cp -r . $out cp -r . $out
wrapProgram $out/bin/sonic-pi \ runHook postInstall
'';
# $out/bin/sonic-pi is a shell script, and wrapQtAppsHook doesn't wrap them.
dontWrapQtApps = true;
preFixup = ''
wrapQtApp "$out/bin/sonic-pi" \
--prefix PATH : ${ruby}/bin:${bash}/bin:${supercollider}/bin:${jack2Full}/bin \ --prefix PATH : ${ruby}/bin:${bash}/bin:${supercollider}/bin:${jack2Full}/bin \
--set AUBIO_LIB "${aubio}/lib/libaubio.so" --set AUBIO_LIB "${aubio}/lib/libaubio.so"
runHook postInstall
''; '';
meta = { meta = {
homepage = http://sonic-pi.net/; homepage = http://sonic-pi.net/;
description = "Free live coding synth for everyone originally designed to support computing and music lessons within schools"; description = "Free live coding synth for everyone originally designed to support computing and music lessons within schools";
license = stdenv.lib.licenses.mit; license = lib.licenses.mit;
maintainers = with stdenv.lib.maintainers; [ Phlogistique kamilchm ]; maintainers = with lib.maintainers; [ Phlogistique kamilchm ];
platforms = stdenv.lib.platforms.linux; platforms = lib.platforms.linux;
}; };
} }

View File

@ -1,6 +1,6 @@
let let
version = "2.6.2"; version = "2.6.2";
sha256 = "1j4249m5k3bi7di0wq6fm64zv3nlpgmg4hr5hnn94fyc09nz9n1r"; sha256 = "1j4249m5k3bi7di0wq6fm64zv3nlpgmg4hr5hnn94fyc09nz9n1r";
cargoSha256 = "18zd91n04wck3gd8szj4vxn3jq0bzq0h3rg0wcs6nzacbzhcx2sw"; cargoSha256 = "1wr0i54zc3l6n0x6cvlq9zfy3bw9w5fcvdz4vmyym9r1nkvk31s7";
in in
import ./parity.nix { inherit version sha256 cargoSha256; } import ./parity.nix { inherit version sha256 cargoSha256; }

View File

@ -1,6 +1,6 @@
let let
version = "2.5.7"; version = "2.5.7";
sha256 = "0aprs71cbf98dsvjz0kydngkvdg5x7dijji8j6xadgvsarl1ljnj"; sha256 = "0aprs71cbf98dsvjz0kydngkvdg5x7dijji8j6xadgvsarl1ljnj";
cargoSha256 = "0aa0nkv3jr7cdzswbxghxxv0y65a59jgs1682ch8vrasi0x17m1x"; cargoSha256 = "11mr5q5aynli9xm4wnxcypl3ij7f4b0p7l557yi9n0cvdraw8ki4";
in in
import ./parity.nix { inherit version sha256 cargoSha256; } import ./parity.nix { inherit version sha256 cargoSha256; }

View File

@ -3,6 +3,7 @@
{ {
inherit parinfer-rust; inherit parinfer-rust;
kak-ansi = pkgs.callPackage ./kak-ansi.nix { };
kak-auto-pairs = pkgs.callPackage ./kak-auto-pairs.nix { }; kak-auto-pairs = pkgs.callPackage ./kak-auto-pairs.nix { };
kak-buffers = pkgs.callPackage ./kak-buffers.nix { }; kak-buffers = pkgs.callPackage ./kak-buffers.nix { };
kak-fzf = pkgs.callPackage ./kak-fzf.nix { }; kak-fzf = pkgs.callPackage ./kak-fzf.nix { };

View File

@ -0,0 +1,32 @@
{ stdenv, fetchFromGitHub }:
stdenv.mkDerivation rec {
name = "kak-ansi";
version = "0.2.1";
src = fetchFromGitHub {
owner = "eraserhd";
repo = "kak-ansi";
rev = "v${version}";
sha256 = "0ddjih8hfyf6s4g7y46p1355kklaw1ydzzh61141i0r45wyb2d0d";
};
installPhase = ''
mkdir -p $out/bin $out/share/kak/autoload/plugins/
cp kak-ansi-filter $out/bin/
# Hard-code path of filter and don't try to build when Kakoune boots
sed '
/^declare-option.* ansi_filter /i\
declare-option -hidden str ansi_filter %{'"$out"'/bin/kak-ansi-filter}
/^declare-option.* ansi_filter /,/^}/d
' rc/ansi.kak >$out/share/kak/autoload/plugins/ansi.kak
'';
meta = with stdenv.lib; {
description = "Kakoune support for rendering ANSI code";
homepage = "https://github.com/eraserhd/kak-ansi";
license = licenses.unlicense;
maintainers = with maintainers; [ eraserhd ];
platforms = platforms.all;
};
}

View File

@ -152,7 +152,9 @@ stdenv.lib.makeScope pkgs.newScope (self: with self; {
installPhase = "installPlugins src/gimp-lqr-plugin"; installPhase = "installPlugins src/gimp-lqr-plugin";
}; };
gmic = pkgs.gmic.gimpPlugin; gmic = pkgs.gmic-qt.override {
variant = "gimp";
};
ufraw = pkgs.ufraw.gimpPlugin; ufraw = pkgs.ufraw.gimpPlugin;

View File

@ -88,7 +88,7 @@ python3Packages.buildPythonApplication {
--replace ${libsecp256k1_name} ${secp256k1}/lib/libsecp256k1${stdenv.hostPlatform.extensions.sharedLibrary} --replace ${libsecp256k1_name} ${secp256k1}/lib/libsecp256k1${stdenv.hostPlatform.extensions.sharedLibrary}
'' + (if enableQt then '' '' + (if enableQt then ''
substituteInPlace ./electrum/qrscanner.py \ substituteInPlace ./electrum/qrscanner.py \
--replace ${libzbar_name} ${zbar}/lib/libzbar${stdenv.hostPlatform.extensions.sharedLibrary} --replace ${libzbar_name} ${zbar.lib}/lib/libzbar${stdenv.hostPlatform.extensions.sharedLibrary}
'' else '' '' else ''
sed -i '/qdarkstyle/d' contrib/requirements/requirements.txt sed -i '/qdarkstyle/d' contrib/requirements/requirements.txt
''); '');

View File

@ -0,0 +1,29 @@
{ stdenv, fetchFromGitHub, sqlite, zlib, perl }:
stdenv.mkDerivation rec {
pname = "tippecanoe";
version = "1.34.3";
src = fetchFromGitHub {
owner = "mapbox";
repo = pname;
rev = version;
sha256 = "08pkxzwp4w5phrk9b0vszxnx8yymp50v0bcw96pz8qwk48z4xm0i";
};
buildInputs = [ sqlite zlib ];
checkInputs = [ perl ];
makeFlags = [ "PREFIX=$(out)" ];
enableParallelBuilding = true;
doCheck = true;
meta = with stdenv.lib; {
description = "Build vector tilesets from large collections of GeoJSON features";
homepage = https://github.com/mapbox/tippecanoe;
license = licenses.bsd2;
maintainers = with maintainers; [ sikmir ];
platforms = platforms.linux ++ platforms.darwin;
};
}

View File

@ -1,14 +1,14 @@
{ stdenv, buildGoPackage, fetchFromGitHub }: { stdenv, buildGoPackage, fetchFromGitHub }:
buildGoPackage rec { buildGoPackage rec {
version = "2.14.2"; version = "2.14.3";
pname = "helm"; pname = "helm";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "helm"; owner = "helm";
repo = "helm"; repo = "helm";
rev = "v${version}"; rev = "v${version}";
sha256 = "0hxfyfpmhgr5jilp2xm9d5vxiq5fcgqm2hh4g4izcgiz9bz7b6k0"; sha256 = "18ly31db2kxybjlisz8dfz3cdxs7j2wsh4rx5lwhbm5hpp42h17d";
}; };
goPackagePath = "k8s.io/helm"; goPackagePath = "k8s.io/helm";

View File

@ -2,7 +2,7 @@
buildGoPackage rec { buildGoPackage rec {
pname = "kontemplate"; pname = "kontemplate";
version = "1.7.0"; version = "1.8.0";
goPackagePath = "github.com/tazjin/kontemplate"; goPackagePath = "github.com/tazjin/kontemplate";
goDeps = ./deps.nix; goDeps = ./deps.nix;
@ -10,7 +10,7 @@ buildGoPackage rec {
owner = "tazjin"; owner = "tazjin";
repo = "kontemplate"; repo = "kontemplate";
rev = "v${version}"; rev = "v${version}";
sha256 = "0vzircajhrfq1nykwpl52cqgzyhy51w4ff7ldpgi95w3a4fz1hzz"; sha256 = "123mjmmm4hynraq1fpn3j5i0a1i87l265kkjraxxxbl0zacv74i1";
}; };
meta = with lib; { meta = with lib; {

View File

@ -1,111 +1,111 @@
# This file was generated by https://github.com/kamilchm/go2nix v1.2.1 # This file was generated by https://github.com/kamilchm/go2nix v1.3.0
[ [
{
goPackagePath = "github.com/Masterminds/goutils";
fetch = {
type = "git";
url = "https://github.com/Masterminds/goutils";
rev = "41ac8693c5c10a92ea1ff5ac3a7f95646f6123b0";
sha256 = "180px47gj936qyk5bkv5mbbgiil9abdjq6kwkf7sq70vyi9mcfiq";
};
}
{ {
goPackagePath = "github.com/Masterminds/semver"; goPackagePath = "github.com/Masterminds/semver";
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/Masterminds/semver"; url = "https://github.com/Masterminds/semver";
rev = "c84ddcca87bf5a941b138dde832a7e20b0159ad8"; rev = "5bc3b9184d48f1412b300b87a200cf020d9254cf";
sha256 = "1dcfdr018a0yszjpvr3wshvq9cc3kvy95l55si556p617wsn1wan"; sha256 = "1vdfm653v50jf63cw0kg2hslx50cn4mk6lj3p51bi11jrg48kfng";
}; };
} }
{ {
goPackagePath = "github.com/Masterminds/sprig"; goPackagePath = "github.com/Masterminds/sprig";
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/Masterminds/sprig"; url = "https://github.com/Masterminds/sprig";
rev = "77bb58b7f5e10889a1195c21b9e7a96ee166f199"; rev = "6f509977777c33eae63b2136d97f7b976cb971cc";
sha256 = "0q4g12f3nvda1skz33qzbbdd2vj3gjfwf361hyzlx20s71brk3bk"; sha256 = "05h9k6fhjxnpwlihj3z02q9kvqvnq53jix0ab84sx0666bci3cdh";
}; };
} }
{ {
goPackagePath = "github.com/alecthomas/template"; goPackagePath = "github.com/alecthomas/template";
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/alecthomas/template"; url = "https://github.com/alecthomas/template";
rev = "a0175ee3bccc567396460bf5acd36800cb10c49c"; rev = "fb15b899a75114aa79cc930e33c46b577cc664b1";
sha256 = "0qjgvvh26vk1cyfq9fadyhfgdj36f1iapbmr5xp6zqipldz8ffxj"; sha256 = "1vlasv4dgycydh5wx6jdcvz40zdv90zz1h7836z7lhsi2ymvii26";
}; };
} }
{ {
goPackagePath = "github.com/alecthomas/units"; goPackagePath = "github.com/alecthomas/units";
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/alecthomas/units"; url = "https://github.com/alecthomas/units";
rev = "2efee857e7cfd4f3d0138cc3cbb1b4966962b93a"; rev = "c3de453c63f4bdb4dadffab9805ec00426c505f7";
sha256 = "1j65b91qb9sbrml9cpabfrcf07wmgzzghrl7809hjjhrmbzri5bl"; sha256 = "0js37zlgv37y61j4a2d46jh72xm5kxmpaiw0ya9v944bjpc386my";
};
}
{
goPackagePath = "github.com/aokoli/goutils";
fetch = {
type = "git";
url = "https://github.com/aokoli/goutils";
rev = "3391d3790d23d03408670993e957e8f408993c34";
sha256 = "1yj4yjfwylica31sgj69ygb04p9xxi22kgfxd0j5f58zr8vwww2n";
}; };
} }
{ {
goPackagePath = "github.com/ghodss/yaml"; goPackagePath = "github.com/ghodss/yaml";
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/ghodss/yaml"; url = "https://github.com/ghodss/yaml";
rev = "e9ed3c6dfb39bb1a32197cb10d527906fe4da4b6"; rev = "25d852aebe32c875e9c044af3eef9c7dc6bc777f";
sha256 = "07cf0j3wbsl1gmn175mdgljcarfz4xbqd6pgc7b08a5lcn7zwhjz"; sha256 = "1w9yq0bxzygc4qwkwwiy7k1k1yviaspcqqv18255k2xkjv5ipccz";
}; };
} }
{ {
goPackagePath = "github.com/google/uuid"; goPackagePath = "github.com/google/uuid";
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/google/uuid"; url = "https://github.com/google/uuid";
rev = "dec09d789f3dba190787f8b4454c7d3c936fed9e"; rev = "c2e93f3ae59f2904160ceaab466009f965df46d6";
sha256 = "1hc4w67p6zkh2qk7wm1yrl69jjrjjk615mly5ll4iidn1m4mzi4i"; sha256 = "0zw8fvl6jqg0fmv6kmvhss0g4gkrbvgyvl2zgy5wdbdlgp4fja0h";
}; };
} }
{ {
goPackagePath = "github.com/huandu/xstrings"; goPackagePath = "github.com/huandu/xstrings";
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/huandu/xstrings"; url = "https://github.com/huandu/xstrings";
rev = "7bb0250b58e5c15670406e6f93ffda43281305b1"; rev = "8bbcf2f9ccb55755e748b7644164cd4bdce94c1d";
sha256 = "1fc8q65xvsxpa12p8hcjqap2pf72zqlwpm165js9kwbgm2sf977c"; sha256 = "1ivvc95514z63k7cpz71l0dwlanffmsh1pijhaqmp41kfiby8rsx";
}; };
} }
{ {
goPackagePath = "github.com/imdario/mergo"; goPackagePath = "github.com/imdario/mergo";
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/imdario/mergo"; url = "https://github.com/imdario/mergo";
rev = "9f23e2d6bd2a77f959b2bf6acdbefd708a83a4a4"; rev = "4c317f2286be3bd0c4f1a0e622edc6398ec4656d";
sha256 = "1lbzy8p8wv439sqgf0n21q52flf2wbamp6qa1jkyv6an0nc952q7"; sha256 = "0bihha1qsgfjk14yv1hwddv3d8dzxpbjlaxwwyys6lhgxz1cr9h9";
}; };
} }
{ {
goPackagePath = "golang.org/x/crypto"; goPackagePath = "golang.org/x/crypto";
fetch = { fetch = {
type = "git"; type = "git";
url = "https://go.googlesource.com/crypto"; url = "https://go.googlesource.com/crypto";
rev = "de0752318171da717af4ce24d0a2e8626afaeb11"; rev = "9756ffdc24725223350eb3266ffb92590d28f278";
sha256 = "1ps1dl2a5lwr3vbwcy8n4i1v73m567y024sk961fk281phrzp13i"; sha256 = "0q7hxaaq6lp0v8qqzifvysl47z5rfdlrxkh3d29vsl3wyby3dxl8";
}; };
} }
{ {
goPackagePath = "gopkg.in/alecthomas/kingpin.v2"; goPackagePath = "gopkg.in/alecthomas/kingpin.v2";
fetch = { fetch = {
type = "git"; type = "git";
url = "https://gopkg.in/alecthomas/kingpin.v2"; url = "https://gopkg.in/alecthomas/kingpin.v2";
rev = "947dcec5ba9c011838740e680966fd7087a71d0d"; rev = "947dcec5ba9c011838740e680966fd7087a71d0d";
sha256 = "0mndnv3hdngr3bxp7yxfd47cas4prv98sqw534mx7vp38gd88n5r"; sha256 = "0mndnv3hdngr3bxp7yxfd47cas4prv98sqw534mx7vp38gd88n5r";
}; };
} }
{ {
goPackagePath = "gopkg.in/yaml.v2"; goPackagePath = "gopkg.in/yaml.v2";
fetch = { fetch = {
type = "git"; type = "git";
url = "https://gopkg.in/yaml.v2"; url = "https://gopkg.in/yaml.v2";
rev = "5420a8b6744d3b0345ab293f6fcba19c978f1183"; rev = "51d6538a90f86fe93ac480b35f37b2be17fef232";
sha256 = "0dwjrs2lp2gdlscs7bsrmyc5yf6mm4fvgw71bzr9mv2qrd2q73s1"; sha256 = "01wj12jzsdqlnidpyjssmj0r4yavlqy7dwrg7adqd8dicjc4ncsa";
}; };
} }
] ]

View File

@ -4,15 +4,13 @@ with pythonPackages;
buildPythonApplication rec { buildPythonApplication rec {
pname = "rss2email"; pname = "rss2email";
version = "3.9"; # TODO: on next bump, the manpage will be updated. version = "3.10";
# Update nixos/modules/services/mail/rss2email.nix to point to it instead of
# to the online r2e.1
propagatedBuildInputs = [ feedparser beautifulsoup4 html2text ]; propagatedBuildInputs = [ feedparser beautifulsoup4 html2text ];
src = fetchurl { src = fetchurl {
url = "mirror://pypi/r/rss2email/${pname}-${version}.tar.gz"; url = "mirror://pypi/r/rss2email/${pname}-${version}.tar.gz";
sha256 = "02wj9zhmc2ym8ba1i0z9pm1c622z2fj7fxwagnxbvpr1402ahmr5"; sha256 = "1yjgbgpq9jjmpywwk6n4lzb2k7mqgdgfgm4jckv4zy0fn595pih1";
}; };
outputs = [ "out" "man" "doc" ]; outputs = [ "out" "man" "doc" ];
@ -30,14 +28,12 @@ buildPythonApplication rec {
# copy documentation # copy documentation
mkdir -p $doc/share/doc/rss2email mkdir -p $doc/share/doc/rss2email
cp AUTHORS COPYING CHANGELOG README $doc/share/doc/rss2email/ cp AUTHORS COPYING CHANGELOG README.rst $doc/share/doc/rss2email/
''; '';
# The tests currently fail, see postCheck = ''
# https://github.com/rss2email/rss2email/issues/14 env PATH=$out/bin:$PATH python ./test/test.py
# postCheck = '' '';
# env PYTHONPATH=.:$PYTHONPATH python ./test/test.py
# '';
meta = with lib; { meta = with lib; {
description = "A tool that converts RSS/Atom newsfeeds to email."; description = "A tool that converts RSS/Atom newsfeeds to email.";

View File

@ -1,13 +1,13 @@
{ stdenv, fetchgit }: { stdenv, fetchgit }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
rev = "e2a6a9cd9da70175881ab991220c86aa87179509"; rev = "779bf26f7d9754879fbc1e308fc35ee154fd4b97";
version = "2019-07-26"; version = "2019-09-07";
pname = "slack-theme-black"; pname = "slack-theme-black";
src = fetchgit { inherit rev; src = fetchgit { inherit rev;
url = "https://github.com/laCour/slack-night-mode"; url = "https://github.com/laCour/slack-night-mode";
sha256 = "1jwxy63qzgvr83idsgcg7yhm9kn0ybfji1m964c5c6ypzcm7j10v"; sha256 = "0p3wjwwchb0zw10rf5qlx7ffxryb42hixfrji36c57g1853qhw0f";
}; };
dontUnpack = true; dontUnpack = true;

View File

@ -2,19 +2,17 @@
buildGoModule rec { buildGoModule rec {
pname = "ipfs"; pname = "ipfs";
version = "0.4.21"; version = "0.4.22";
rev = "v${version}"; rev = "v${version}";
goPackagePath = "github.com/ipfs/go-ipfs";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "ipfs"; owner = "ipfs";
repo = "go-ipfs"; repo = "go-ipfs";
inherit rev; inherit rev;
sha256 = "0jlj89vjy4nw3x3j45r16y8bph5ss5lp907pjgqvad0naxbf99b0"; sha256 = "1drwkam2m1qdny51l7ja9vd33jffy8w0z0wbp28ajx4glp0kyra2";
}; };
modSha256 = "0d9rq0hig9jwv9jfajfyj2111arikqzdnyhf5aqkwahcblpx54iy"; modSha256 = "0jbzkifn88myk2vpd390clyl835978vpcfz912y8cnl26s6q677n";
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "A global, versioned, peer-to-peer filesystem"; description = "A global, versioned, peer-to-peer filesystem";

View File

@ -21,8 +21,8 @@ in buildPythonApplication rec {
doCheck = false; doCheck = false;
postFixup = '' postFixup = ''
wrapQtApp bin/git-cola wrapQtApp $out/bin/git-cola
wrapQtApp bin/git-dag wrapQtApp $out/bin/git-dag
''; '';

View File

@ -201,9 +201,9 @@ rec {
# https://github.com/docker/docker-ce/tree/v${version}/components/engine/hack/dockerfile/install/* # https://github.com/docker/docker-ce/tree/v${version}/components/engine/hack/dockerfile/install/*
docker_18_09 = makeOverridable dockerGen { docker_18_09 = makeOverridable dockerGen {
version = "18.09.8"; version = "18.09.9";
rev = "0dd43dd87fd530113bf44c9bba9ad8b20ce4637f"; rev = "039a7df9ba8097dd987370782fcdd6ea79b26016";
sha256 = "07ljxdqylbfbq1939hqyaav966ga7ds5b38dn7af1h0aks86y2s3"; sha256 = "0wqhjx9qs96q2jd091wffn3cyv2aslqn2cvpdpgljk8yr9s0yg7h";
runcRev = "425e105d5a03fabd737a126ad93d62a9eeede87f"; runcRev = "425e105d5a03fabd737a126ad93d62a9eeede87f";
runcSha256 = "05s4p12mgmdcy7gjralh41wlgds6m69zdgwbpdn1xjj2487dmhxf"; runcSha256 = "05s4p12mgmdcy7gjralh41wlgds6m69zdgwbpdn1xjj2487dmhxf";
containerdRev = "894b81a4b802e4eb2a91d1ce216b8817763c29fb"; containerdRev = "894b81a4b802e4eb2a91d1ce216b8817763c29fb";
@ -213,9 +213,9 @@ rec {
}; };
docker_19_03 = makeOverridable dockerGen { docker_19_03 = makeOverridable dockerGen {
version = "19.03.1"; version = "19.03.2";
rev = "74b1e89e8ac68948be88fe0aa1e2767ae28659fe"; rev = "6a30dfca03664a0b6bf0646a7d389ee7d0318e6e";
sha256 = "1m7bq7la29d8piwiq5whzcyrm7g3lv497wnri0lh6gxi10nwv06h"; sha256 = "0bghqwxlx4v06bwcv3c2wizbihhf983gvypx5sjcbgmiyd3bgb47";
runcRev = "425e105d5a03fabd737a126ad93d62a9eeede87f"; runcRev = "425e105d5a03fabd737a126ad93d62a9eeede87f";
runcSha256 = "05s4p12mgmdcy7gjralh41wlgds6m69zdgwbpdn1xjj2487dmhxf"; runcSha256 = "05s4p12mgmdcy7gjralh41wlgds6m69zdgwbpdn1xjj2487dmhxf";
containerdRev = "894b81a4b802e4eb2a91d1ce216b8817763c29fb"; containerdRev = "894b81a4b802e4eb2a91d1ce216b8817763c29fb";

View File

@ -35,7 +35,7 @@ let
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "4.0.0"; version = "4.1.0";
name = "qemu-" name = "qemu-"
+ stdenv.lib.optionalString xenSupport "xen-" + stdenv.lib.optionalString xenSupport "xen-"
+ stdenv.lib.optionalString hostCpuOnly "host-cpu-only-" + stdenv.lib.optionalString hostCpuOnly "host-cpu-only-"
@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
src = fetchurl { src = fetchurl {
url = "https://wiki.qemu.org/download/qemu-${version}.tar.bz2"; url = "https://wiki.qemu.org/download/qemu-${version}.tar.bz2";
sha256 = "085g6f75si8hbn94mnnjn1r7ysixn5bqj4bhqwvadj00fhzp2zvd"; sha256 = "1bpl6hwiw1jdxk4xmqp10qgki0dji0l2rzr10dyhyk8d85vxxw29";
}; };
nativeBuildInputs = [ python python.pkgs.sphinx pkgconfig flex bison ]; nativeBuildInputs = [ python python.pkgs.sphinx pkgconfig flex bison ];
@ -78,11 +78,6 @@ stdenv.mkDerivation rec {
./no-etc-install.patch ./no-etc-install.patch
./fix-qemu-ga.patch ./fix-qemu-ga.patch
./9p-ignore-noatime.patch ./9p-ignore-noatime.patch
(fetchpatch {
url = "https://git.qemu.org/?p=qemu.git;a=patch;h=d52680fc932efb8a2f334cc6993e705ed1e31e99";
name = "CVE-2019-12155.patch";
sha256 = "0h2q71mcz3gvlrbfkqcgla74jdg73hvzcrwr4max2ckpxx8x9207";
})
] ++ optional nixosTestRunner ./force-uid0-on-9p.patch ] ++ optional nixosTestRunner ./force-uid0-on-9p.patch
++ optionals stdenv.hostPlatform.isMusl [ ++ optionals stdenv.hostPlatform.isMusl [
(fetchpatch { (fetchpatch {

View File

@ -1,25 +1,13 @@
From 98b3e5993bbdb0013b6cc1814e0ad9555290c3af Mon Sep 17 00:00:00 2001
From: Will Dietz <w@wdtz.org>
Date: Tue, 23 Apr 2019 21:31:45 -0500
Subject: [PATCH] no install localstatedir
---
Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile diff --git a/Makefile b/Makefile
index 04a0d45050..5dc82d0eb7 100644 index 85862fb8..ed52c5ec 100644
--- a/Makefile --- a/Makefile
+++ b/Makefile +++ b/Makefile
@@ -786,7 +786,7 @@ endif @@ -841,7 +841,7 @@ endif
ICON_SIZES=16x16 24x24 32x32 48x48 64x64 128x128 256x256 512x512 ICON_SIZES=16x16 24x24 32x32 48x48 64x64 128x128 256x256 512x512
-install: all $(if $(BUILD_DOCS),install-doc) install-datadir install-localstatedir -install: all $(if $(BUILD_DOCS),install-doc) install-datadir install-localstatedir \
+install: all $(if $(BUILD_DOCS),install-doc) install-datadir +install: all $(if $(BUILD_DOCS),install-doc) install-datadir \
$(if $(INSTALL_BLOBS),$(edk2-decompressed)) \
recurse-install
ifneq ($(TOOLS),) ifneq ($(TOOLS),)
$(call install-prog,$(subst qemu-ga,qemu-ga$(EXESUF),$(TOOLS)),$(DESTDIR)$(bindir))
endif
--
2.21.GIT

View File

@ -1,7 +1,7 @@
{ stdenv, fetchzip }: { stdenv, fetchzip }:
let let
version = "1.207"; version = "2";
in fetchzip { in fetchzip {
name = "fira-code-${version}"; name = "fira-code-${version}";
@ -10,9 +10,10 @@ in fetchzip {
postFetch = '' postFetch = ''
mkdir -p $out/share/fonts mkdir -p $out/share/fonts
unzip -j $downloadedFile \*.otf -d $out/share/fonts/opentype unzip -j $downloadedFile \*.otf -d $out/share/fonts/opentype
unzip -j $downloadedFile \*.ttf -d $out/share/fonts/truetype
''; '';
sha256 = "13w2jklqndria2plgangl5gi56v1cj5ja9vznh9079kqnvq0cffz"; sha256 = "0kg9lrrjr6wrd4r96y0rnslnaw2276558a369qdvalwb3q1gi8d2";
meta = with stdenv.lib; { meta = with stdenv.lib; {
homepage = https://github.com/tonsky/FiraCode; homepage = https://github.com/tonsky/FiraCode;

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "shades-of-gray-theme"; pname = "shades-of-gray-theme";
version = "1.1.8"; version = "1.1.9";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "WernerFP"; owner = "WernerFP";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "08i2pkq7ygf9fs9cdrw4khrb8m1w2hvgmz064g36fh35r02sms3w"; sha256 = "1hg4g242cjncrx9cn7gbzl9gj7zz2fwrkzkkbfazzrdaylbwgm4i";
}; };
buildInputs = [ gtk_engines ]; buildInputs = [ gtk_engines ];

View File

@ -1,7 +1,7 @@
{ stdenv, meson, ninja, gettext, fetchurl, pkgconfig, gtk3, glib, icu { stdenv, meson, ninja, gettext, fetchurl, pkgconfig, gtk3, glib, icu
, wrapGAppsHook, gnome3, libxml2, libxslt, itstool , wrapGAppsHook, gnome3, libxml2, libxslt, itstool
, webkitgtk, libsoup, glib-networking, libsecret, gnome-desktop, libnotify, p11-kit , webkitgtk, libsoup, glib-networking, libsecret, gnome-desktop, libnotify, p11-kit
, sqlite, gcr, isocodes, desktop-file-utils, python3 , sqlite, gcr, isocodes, desktop-file-utils, python3, nettle
, gdk-pixbuf, gst_all_1, json-glib, libdazzle, libhandy }: , gdk-pixbuf, gst_all_1, json-glib, libdazzle, libhandy }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
gdk-pixbuf gnome3.adwaita-icon-theme gcr gdk-pixbuf gnome3.adwaita-icon-theme gcr
glib-networking gst_all_1.gstreamer gst_all_1.gst-plugins-base glib-networking gst_all_1.gstreamer gst_all_1.gst-plugins-base
gst_all_1.gst-plugins-good gst_all_1.gst-plugins-bad gst_all_1.gst-plugins-ugly gst_all_1.gst-plugins-good gst_all_1.gst-plugins-bad gst_all_1.gst-plugins-ugly
gst_all_1.gst-libav json-glib libdazzle gst_all_1.gst-libav json-glib libdazzle nettle
]; ];
postPatch = '' postPatch = ''

View File

@ -17,12 +17,6 @@ stdenv.mkDerivation rec {
buildInputs = [ bison flex ]; buildInputs = [ bison flex ];
patches = fetchpatch {
/* https://github.com/acpica/acpica/pull/389 */
url = "https://github.com/acpica/acpica/commit/935ca65f7806a3ef9bd02a947e50f3a1f586ac67.patch";
sha256 = "0jz4bakifphm425shbd1j99hldgy71m7scl8mwibm441d56l3ydf";
};
installPhase = installPhase =
'' ''
install -d $out/bin install -d $out/bin

View File

@ -94,7 +94,12 @@ self: super: builtins.intersectAttrs super {
# Won't find it's header files without help. # Won't find it's header files without help.
sfml-audio = appendConfigureFlag super.sfml-audio "--extra-include-dirs=${pkgs.openal}/include/AL"; sfml-audio = appendConfigureFlag super.sfml-audio "--extra-include-dirs=${pkgs.openal}/include/AL";
cachix = enableSeparateBinOutput super.cachix; cachix = overrideCabal (addBuildTools (enableSeparateBinOutput super.cachix) [pkgs.boost]) (drv: {
postPatch = (drv.postPatch or "") + ''
substituteInPlace cachix.cabal --replace "c++14" "c++17"
'';
});
ghcid = enableSeparateBinOutput super.ghcid; ghcid = enableSeparateBinOutput super.ghcid;
hzk = overrideCabal super.hzk (drv: { hzk = overrideCabal super.hzk (drv: {

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "cimg"; pname = "cimg";
version = "2.7.0"; version = "2.7.1";
src = fetchurl { src = fetchurl {
url = "http://cimg.eu/files/CImg_${version}.zip"; url = "http://cimg.eu/files/CImg_${version}.zip";
sha256 = "1la6332cppyciyn3pflbchxa3av72a70p0n1c9sm1hgfbjlydqnv"; sha256 = "1lw1hjk65zyd5x9w113yrqyy8db45jdzzkqslkipaiskl9f81y9z";
}; };
nativeBuildInputs = [ unzip ]; nativeBuildInputs = [ unzip ];

View File

@ -15,7 +15,7 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "graphene"; pname = "graphene";
version = "1.9.6"; version = "1.10.0";
outputs = [ "out" "devdoc" "installedTests" ]; outputs = [ "out" "devdoc" "installedTests" ];
@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
owner = "ebassi"; owner = "ebassi";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "0hb7s6g00l7zlf4hlfda55krn0pls9ajz0hcqrh8m656zr18ddwa"; sha256 = "16vqwih5bfxv7r3mm7iiha804rpsxzxjfrs4kx76d9q5yg2hayxr";
}; };
patches = [ patches = [

View File

@ -15,28 +15,19 @@
, json-glib , json-glib
}: }:
stdenv.mkDerivation { stdenv.mkDerivation rec {
pname = "gthree"; pname = "gthree";
version = "unstable-2019-08-21"; version = "0.2.0";
outputs = [ "out" "dev" "devdoc" ]; outputs = [ "out" "dev" "devdoc" ];
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "alexlarsson"; owner = "alexlarsson";
repo = "gthree"; repo = "gthree";
rev = "dac46b0f35e29319c004c7e17b5f345ef4c04cb8"; rev = version;
sha256 = "16ixis2g04000zffm44s7ir64vn3byz9a793g2s76aasqybl86i2"; sha256 = "16ap1ampnzsyhrs84b168d6889lh8sjr2j5sqv9mdbnnhy72p5cd";
}; };
patches = [
# correctly declare json-glib in .pc file
# https://github.com/alexlarsson/gthree/pull/61
(fetchpatch {
url = https://github.com/alexlarsson/gthree/commit/784b1f20e0b6eb15f113a51f74c2cba871249861.patch;
sha256 = "07vxafaxris5a98w751aw04nlw0l45np1lba08xd16wdzmkadz0x";
})
];
nativeBuildInputs = [ nativeBuildInputs = [
ninja ninja
meson meson
@ -64,7 +55,7 @@ stdenv.mkDerivation {
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "GObject/GTK port of three.js"; description = "GObject/GTK port of three.js";
homepage = https://github.com/alexlarsson/gthree; homepage = "https://github.com/alexlarsson/gthree";
license = licenses.mit; license = licenses.mit;
maintainers = with maintainers; [ jtojnar ]; maintainers = with maintainers; [ jtojnar ];
platforms = platforms.unix; platforms = platforms.unix;

View File

@ -1,26 +1,36 @@
{ fetchFromGitHub, stdenv, autoreconfHook, pkgconfig, gettext, python3 { fetchFromGitHub
, texinfo, help2man, libyaml, perl , stdenv
, autoreconfHook
, pkgconfig
, gettext
, python3
, texinfo
, help2man
, libyaml
, perl
}: }:
let stdenv.mkDerivation rec {
version = "3.10.0";
in stdenv.mkDerivation {
pname = "liblouis"; pname = "liblouis";
inherit version; version = "3.11.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "liblouis"; owner = "liblouis";
repo = "liblouis"; repo = "liblouis";
rev = "v${version}"; rev = "v${version}";
sha256 = "1wimv2wfl566jp8hhrxr91dmx20hldqzj70dar8i9k3hzq1kmb4q"; sha256 = "1y0pypgxchxczdnjkblibbvvy4gdk2pf8dzpqmbf824c7zpy8z5r";
}; };
outputs = [ "out" "dev" "man" "info" "doc" ]; outputs = [ "out" "dev" "man" "info" "doc" ];
nativeBuildInputs = [ nativeBuildInputs = [
autoreconfHook pkgconfig gettext python3 autoreconfHook
pkgconfig
gettext
python3
# Docs, man, info # Docs, man, info
texinfo help2man texinfo
help2man
]; ];
buildInputs = [ buildInputs = [

View File

@ -1,6 +1,5 @@
{ stdenv { stdenv
, fetchurl , fetchurl
, requireFile
, autoPatchelfHook , autoPatchelfHook
, fixDarwinDylibNames , fixDarwinDylibNames
, unzip , unzip
@ -23,7 +22,7 @@ let
# determine the version number, there might be different ones per architecture # determine the version number, there might be different ones per architecture
version = { version = {
x86_64-linux = "19.3.0.0.0"; x86_64-linux = "19.3.0.0.0";
x86_64-darwin = "18.1.0.0.0"; x86_64-darwin = "19.3.0.0.0";
}.${stdenv.hostPlatform.system} or throwSystem; }.${stdenv.hostPlatform.system} or throwSystem;
# hashes per component and architecture # hashes per component and architecture
@ -35,18 +34,15 @@ let
odbc = "1g1z6pdn76dp440fh49pm8ijfgjazx4cvxdi665fsr62h62xkvch"; odbc = "1g1z6pdn76dp440fh49pm8ijfgjazx4cvxdi665fsr62h62xkvch";
}; };
x86_64-darwin = { x86_64-darwin = {
basic = "fac3cdaaee7526f6c50ff167edb4ba7ab68efb763de24f65f63fb48cc1ba44c0"; basic = "f4335c1d53e8188a3a8cdfb97494ff87c4d0f481309284cf086dc64080a60abd";
sdk = "98e6d797f1ce11e59b042b232f62380cec29ec7d5387b88a9e074b741c13e63a"; sdk = "b46b4b87af593f7cfe447cfb903d1ae5073cec34049143ad8cdc9f3e78b23b27";
sqlplus = "02e66dc52398fced75e7efcb6b4372afcf617f7d88344fb7f0f4bb2bed371f3b"; sqlplus = "f7565c3cbf898b0a7953fbb0017c5edd9d11d1863781588b7caf3a69937a2e9e";
odbc = "5d0cdd7f9dd2e27affbc9b36ef9fc48e329713ecd36905fdd089366e365ae8a2"; odbc = "f91da40684abaa866aa059eb26b1322f2d527670a1937d678404c991eadeb725";
}; };
}.${stdenv.hostPlatform.system} or throwSystem; }.${stdenv.hostPlatform.system} or throwSystem;
# rels per component and architecture, optional # rels per component and architecture, optional
rels = { rels = {
x86_64-darwin = {
sdk = "2";
};
}.${stdenv.hostPlatform.system} or {}; }.${stdenv.hostPlatform.system} or {};
# convert platform to oracle architecture names # convert platform to oracle architecture names
@ -55,29 +51,24 @@ let
x86_64-darwin = "macos.x64"; x86_64-darwin = "macos.x64";
}.${stdenv.hostPlatform.system} or throwSystem; }.${stdenv.hostPlatform.system} or throwSystem;
shortArch = {
x86_64-linux = "linux";
x86_64-darwin = "macos";
}.${stdenv.hostPlatform.system} or throwSystem;
# calculate the filename of a single zip file # calculate the filename of a single zip file
srcFilename = component: arch: version: rel: srcFilename = component: arch: version: rel:
"instantclient-${component}-${arch}-${version}" + "instantclient-${component}-${arch}-${version}" +
(optionalString (rel != "") "-${rel}") + (optionalString (rel != "") "-${rel}") +
(optionalString (arch == "linux.x64") "dbru") + # ¯\_(ツ)_/¯ (optionalString (arch == "linux.x64" || arch == "macos.x64") "dbru") + # ¯\_(ツ)_/¯
".zip"; ".zip";
# fetcher for the clickthrough artifacts (requiring manual download)
fetchClickThrough = srcFilename: hash: (requireFile {
name = srcFilename;
url = "https://www.oracle.com/database/technologies/instant-client/downloads.html";
sha256 = hash;
});
# fetcher for the non clickthrough artifacts # fetcher for the non clickthrough artifacts
fetchSimple = srcFilename: hash: fetchurl { fetcher = srcFilename: hash: fetchurl {
url = "https://download.oracle.com/otn_software/linux/instantclient/193000/${srcFilename}"; url = "https://download.oracle.com/otn_software/${shortArch}/instantclient/193000/${srcFilename}";
sha256 = hash; sha256 = hash;
}; };
# pick the appropriate fetcher depending on the platform
fetcher = if stdenv.hostPlatform.system == "x86_64-linux" then fetchSimple else fetchClickThrough;
# assemble srcs # assemble srcs
srcs = map (component: srcs = map (component:
(fetcher (srcFilename component arch version rels.${component} or "") hashes.${component} or "")) (fetcher (srcFilename component arch version rels.${component} or "") hashes.${component} or ""))

View File

@ -2,7 +2,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "eth-typing"; pname = "eth-typing";
version = "2.0.0"; version = "2.1.0";
# Tests are missing from the PyPI source tarball so let's use GitHub # Tests are missing from the PyPI source tarball so let's use GitHub
# https://github.com/ethereum/eth-typing/issues/8 # https://github.com/ethereum/eth-typing/issues/8
@ -10,7 +10,7 @@ buildPythonPackage rec {
owner = "ethereum"; owner = "ethereum";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "017rshrz9kzax851hdbd3924jmr06h2sx3xdq7m4dwhgz3pgqfcy"; sha256 = "0chrrfw3kdaihgr2ryhljf56bflipzmfxai688xrc2yk7yiqnll5";
}; };
# setuptools-markdown uses pypandoc which is broken at the moment # setuptools-markdown uses pypandoc which is broken at the moment

View File

@ -3,7 +3,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "eth-utils"; pname = "eth-utils";
version = "1.4.1"; version = "1.7.0";
# Tests are missing from the PyPI source tarball so let's use GitHub # Tests are missing from the PyPI source tarball so let's use GitHub
# https://github.com/ethereum/eth-utils/issues/130 # https://github.com/ethereum/eth-utils/issues/130
@ -11,7 +11,7 @@ buildPythonPackage rec {
owner = "ethereum"; owner = "ethereum";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "1bwn7b5f0nzvwiw9zs63wy3qhaxvz2fhjp4wj9djp2337d7195h4"; sha256 = "0hhhdz764xgwj5zg3pjzpx10vh54q7kbvlnj9d67qkgwl3fkfgw2";
}; };
checkInputs = [ pytest hypothesis ]; checkInputs = [ pytest hypothesis ];

View File

@ -16,7 +16,6 @@ buildPythonPackage rec {
checkInputs = [ pytest cffi ]; checkInputs = [ pytest cffi ];
checkPhase = '' checkPhase = ''
export PYTHONPATH=.:$PYTHONPATH
py.test py.test
''; '';
@ -24,7 +23,7 @@ buildPythonPackage rec {
description = "Universal Python binding for the LMDB 'Lightning' Database"; description = "Universal Python binding for the LMDB 'Lightning' Database";
homepage = "https://github.com/dw/py-lmdb"; homepage = "https://github.com/dw/py-lmdb";
license = licenses.openldap; license = licenses.openldap;
maintainers = with maintainers; [ copumpkin ]; maintainers = with maintainers; [ copumpkin ivan ];
}; };
} }

View File

@ -1,23 +1,23 @@
{ stdenv, fetchgit, pythonPackages }: { lib, fetchFromGitHub, pythonPackages }:
pythonPackages.buildPythonApplication { pythonPackages.buildPythonApplication rec {
pname = "grabserial";
version = "1.9.8";
name = "grabserial-1.9.3"; src = fetchFromGitHub {
namePrefix = ""; owner = "tbird20d";
repo = "grabserial";
src = fetchgit { rev = "v${version}";
url = https://github.com/tbird20d/grabserial.git; sha256 = "1xmy3js4hzsxlkxc172hkjzxsc34mmg3vfz61h24c7svmfzyhbd5";
rev = "7cbf104b61ffdf68e6782a8e885050565399a014";
sha256 = "043r2p5jw0ymx8ka1d39q1ap39i7sliq5f4w3yr1n53lzshjmc5g";
}; };
propagatedBuildInputs = [ pythonPackages.pyserial ]; propagatedBuildInputs = [ pythonPackages.pyserial ];
meta = { meta = with lib; {
description = "Python based serial dump and timing program"; description = "Python based serial dump and timing program";
homepage = https://github.com/tbird20d/grabserial; homepage = "https://github.com/tbird20d/grabserial";
license = stdenv.lib.licenses.gpl2; license = licenses.gpl2;
maintainers = with stdenv.lib.maintainers; [ vmandela ]; maintainers = with maintainers; [ vmandela ];
platforms = stdenv.lib.platforms.linux; platforms = platforms.linux;
}; };
} }

View File

@ -4,21 +4,18 @@ with stdenv.lib;
buildGoPackage rec { buildGoPackage rec {
pname = "kind"; pname = "kind";
version = "0.3.0"; version = "0.5.1";
src = fetchFromGitHub { src = fetchFromGitHub {
rev = "v${version}"; rev = "v${version}";
owner = "kubernetes-sigs"; owner = "kubernetes-sigs";
repo = "kind"; repo = "kind";
sha256 = "1azl5knw1n7g42xp92r9k7y4rzwp9xx0spcldszrpry2v4lmc5sb"; sha256 = "12bjvma98dlxybqs43dggnd6cihxm18xz68a5jw8dzf0cg738gs8";
}; };
# move dev tool package that confuses the go compiler
patchPhase = "rm -r hack";
goDeps = ./deps.nix; goDeps = ./deps.nix;
goPackagePath = "sigs.k8s.io/kind"; goPackagePath = "sigs.k8s.io/kind";
excludedPackages = "images/base/entrypoint"; subPackages = [ "." ];
meta = { meta = {
description = "Kubernetes IN Docker - local clusters for testing Kubernetes"; description = "Kubernetes IN Docker - local clusters for testing Kubernetes";

View File

@ -14,8 +14,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/PuerkitoBio/purell"; url = "https://github.com/PuerkitoBio/purell";
rev = "v1.1.0"; rev = "v1.1.1";
sha256 = "0vsxyn1fbm7g873b8kf3hcsgqgncb5nmfq3zfsc35a9yhzarka91"; sha256 = "0c525frsxmalrn55hzzsxy17ng8avkd40ga0wxfw9haxsdjgqdqy";
}; };
} }
{ {
@ -41,8 +41,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/emicklei/go-restful"; url = "https://github.com/emicklei/go-restful";
rev = "ff4f55a20633"; rev = "v2.9.6";
sha256 = "1v5lj5142abz3gvbygp6xghpdx4ps2lwswl8559ivaidahwnc21c"; sha256 = "0dgjld5240xhz45rj929ffm452n931qfw3fx8x99vhlnii9qrwz2";
}; };
} }
{ {
@ -50,8 +50,17 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/evanphx/json-patch"; url = "https://github.com/evanphx/json-patch";
rev = "v4.2.0"; rev = "v4.5.0";
sha256 = "0cfvyhl3hjfc4z8hbkfc40yafv6r7y513zgp3jwf88isbd13r7a6"; sha256 = "144mk2v9q37l1qjf8498nff4hhz96mlkl7ls7ihixbmrji4lmch4";
};
}
{
goPackagePath = "github.com/fsnotify/fsnotify";
fetch = {
type = "git";
url = "https://github.com/fsnotify/fsnotify";
rev = "v1.4.7";
sha256 = "07va9crci0ijlivbb7q57d2rz9h27zgn2fsm60spjsqpdbvyrx4g";
}; };
} }
{ {
@ -59,8 +68,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/ghodss/yaml"; url = "https://github.com/ghodss/yaml";
rev = "v1.0.0"; rev = "73d445a93680";
sha256 = "0skwmimpy7hlh7pva2slpcplnm912rp3igs98xnqmn859kwa5v8g"; sha256 = "0pg53ky4sy3sp9j4n7vgf1p3gw4nbckwqfldcmmi9rf13kjh0mr7";
}; };
} }
{ {
@ -68,8 +77,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/go-openapi/jsonpointer"; url = "https://github.com/go-openapi/jsonpointer";
rev = "v0.17.0"; rev = "v0.19.2";
sha256 = "0sv2k1fwj6rsigc9489c19ap0jib1d0widm040h0sjdw2nadh3i2"; sha256 = "1s3cqf4svrbygvvpvi7hf122szsgihas52vqh0bba3avf4w03g9n";
}; };
} }
{ {
@ -77,8 +86,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/go-openapi/jsonreference"; url = "https://github.com/go-openapi/jsonreference";
rev = "v0.17.0"; rev = "v0.19.2";
sha256 = "1d0rk17wn755xsfi9pxifdpgs2p23bc0rkf95kjwxczyy6jbqdaj"; sha256 = "0v933yvcwyzzlpdxwb9204ki7lls2rwfd96ww2i901ndvz37kdf8";
}; };
} }
{ {
@ -86,8 +95,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/go-openapi/spec"; url = "https://github.com/go-openapi/spec";
rev = "v0.19.0"; rev = "v0.19.2";
sha256 = "1527dbn74c0gw9gib5lmdr5vjgp5h57r1j92c3wh37irz90vnb6a"; sha256 = "1r2my46qc85fp1j4lbddmd6c1n0am9bq1wyqsnw7x8raiznqxp5l";
}; };
} }
{ {
@ -95,8 +104,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/go-openapi/swag"; url = "https://github.com/go-openapi/swag";
rev = "v0.17.0"; rev = "v0.19.2";
sha256 = "1hhgbx59f7lcsqiza2is8q9walhf8mxfkwj7xql1scrn6ms2jmlv"; sha256 = "1mlxlajx2p9wjm72rmqjrx5g49q2sn04y45s3nrykkf6jqlq1v4z";
}; };
} }
{ {
@ -113,8 +122,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/golang/protobuf"; url = "https://github.com/golang/protobuf";
rev = "4bd1920723d7"; rev = "v1.3.1";
sha256 = "0z21hxin616xvkv075vdz416zm36qs0mbi76526l9yz8khbg7jmr"; sha256 = "15am4s4646qy6iv0g3kkqq52rzykqjhm4bf08dk0fy2r58knpsyl";
}; };
} }
{ {
@ -140,8 +149,17 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/googleapis/gnostic"; url = "https://github.com/googleapis/gnostic";
rev = "68f4ded48ba9"; rev = "v0.3.0";
sha256 = "0l6qkbpmy2qd0q8h7dghhv27qjngll739kzm389qdbjxj3inq2dl"; sha256 = "0bnxpkxw9kmwm27rxhgv3i0jn362wp9whmqrv0lb77874s5iz2lc";
};
}
{
goPackagePath = "github.com/hpcloud/tail";
fetch = {
type = "git";
url = "https://github.com/hpcloud/tail";
rev = "v1.0.0";
sha256 = "1njpzc0pi1acg5zx9y6vj9xi6ksbsc5d387rd6904hy6rh2m6kn0";
}; };
} }
{ {
@ -189,13 +207,40 @@
sha256 = "1lchgf27n276vma6iyxa0v1xds68n2g8lih5lavqnx5x6q5pw2ip"; sha256 = "1lchgf27n276vma6iyxa0v1xds68n2g8lih5lavqnx5x6q5pw2ip";
}; };
} }
{
goPackagePath = "github.com/kr/pretty";
fetch = {
type = "git";
url = "https://github.com/kr/pretty";
rev = "v0.1.0";
sha256 = "18m4pwg2abd0j9cn5v3k2ksk9ig4vlwxmlw9rrglanziv9l967qp";
};
}
{
goPackagePath = "github.com/kr/pty";
fetch = {
type = "git";
url = "https://github.com/kr/pty";
rev = "v1.1.5";
sha256 = "1bpq77b90z72cv9h66dvxsg2j197ylpgcps23xsjfbs752bykfw1";
};
}
{
goPackagePath = "github.com/kr/text";
fetch = {
type = "git";
url = "https://github.com/kr/text";
rev = "v0.1.0";
sha256 = "1gm5bsl01apvc84bw06hasawyqm4q84vx1pm32wr9jnd7a8vjgj1";
};
}
{ {
goPackagePath = "github.com/mailru/easyjson"; goPackagePath = "github.com/mailru/easyjson";
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/mailru/easyjson"; url = "https://github.com/mailru/easyjson";
rev = "60711f1a8329"; rev = "da37f6c1e481";
sha256 = "0234jp6134wkihdpdwq1hvzqblgl5khc1wp6dyi2h0hgh88bhdk1"; sha256 = "0yhamddd1jyqslp0hm5g07ki82sp52f0idfiqylx6fm24fin74gh";
}; };
} }
{ {
@ -230,8 +275,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/onsi/ginkgo"; url = "https://github.com/onsi/ginkgo";
rev = "11459a886d9c"; rev = "v1.8.0";
sha256 = "1nswc1fnrrs792qbix05h91bilj8rr3wxmxgwi97p2gjk0r292zh"; sha256 = "1326s5fxgasdpz1qqwrw4n5p3k0vz44msnyz14knrhlw5l97lx33";
}; };
} }
{ {
@ -239,8 +284,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/onsi/gomega"; url = "https://github.com/onsi/gomega";
rev = "dcabb60a477c"; rev = "v1.5.0";
sha256 = "1775lv5jbsgv3ghq5v2827slqlhqdadrzc1nkpq4y0hdv2qzrgkm"; sha256 = "1n7i4hksdgv410m43v2sw14bl5vy59dkp6nlw5l76nibbh37syr9";
}; };
} }
{ {
@ -248,8 +293,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/pkg/errors"; url = "https://github.com/pkg/errors";
rev = "v0.8.0"; rev = "v0.8.1";
sha256 = "001i6n71ghp2l6kdl3qq1v2vmghcz3kicv9a5wgcihrzigm75pp5"; sha256 = "0g5qcb4d4fd96midz0zdk8b9kz8xkzwfa8kr1cliqbg8sxsy5vd1";
}; };
} }
{ {
@ -293,8 +338,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/stretchr/objx"; url = "https://github.com/stretchr/objx";
rev = "v0.1.1"; rev = "v0.2.0";
sha256 = "0iph0qmpyqg4kwv8jsx6a56a7hhqq8swrazv40ycxk9rzr0s8yls"; sha256 = "0pcdvakxgddaiwcdj73ra4da05a3q4cgwbpm2w75ycq4kzv8ij8k";
}; };
} }
{ {
@ -302,8 +347,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/stretchr/testify"; url = "https://github.com/stretchr/testify";
rev = "v1.2.2"; rev = "v1.3.0";
sha256 = "0dlszlshlxbmmfxj5hlwgv3r22x0y1af45gn1vd198nvvs3pnvfs"; sha256 = "0wjchp2c8xbgcbbq32w3kvblk6q6yn533g78nxl6iskq6y95lxsy";
}; };
} }
{ {
@ -311,8 +356,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://go.googlesource.com/crypto"; url = "https://go.googlesource.com/crypto";
rev = "c2843e01d9a2"; rev = "5c40567a22f8";
sha256 = "01xgxbj5r79nmisdvpq48zfy8pzaaj90bn6ngd4nf33j9ar1dp8r"; sha256 = "17g8fb9vy2sqq8vgz8jdvf6c6d2290gm2qs0i4yzsd86mgn4dlrg";
}; };
} }
{ {
@ -320,8 +365,17 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://go.googlesource.com/net"; url = "https://go.googlesource.com/net";
rev = "3ec191127204"; rev = "3b0461eec859";
sha256 = "0zzhbkw3065dp1jscp7q8dxw3mkwj95ixnrr8j7c47skis0m11i3"; sha256 = "0l00c8l0a8xnv6qdpwfzxxsr58jggacgzdrwiprrfx2xqm37b6d5";
};
}
{
goPackagePath = "golang.org/x/sync";
fetch = {
type = "git";
url = "https://go.googlesource.com/sync";
rev = "112230192c58";
sha256 = "05i2k43j2d0llq768hg5pf3hb2yhfzp9la1w5wp0rsnnzblr0lfn";
}; };
} }
{ {
@ -329,8 +383,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://go.googlesource.com/sys"; url = "https://go.googlesource.com/sys";
rev = "d0b11bdaac8a"; rev = "d432491b9138";
sha256 = "18yfsmw622l7gc5sqriv5qmck6903vvhivpzp8i3xfy3z33dybdl"; sha256 = "0ijq720jr76yxdd6mh1rdpxh7q93w6149paclb4g39vhr84hfiv8";
}; };
} }
{ {
@ -338,8 +392,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://go.googlesource.com/text"; url = "https://go.googlesource.com/text";
rev = "v0.3.0"; rev = "v0.3.2";
sha256 = "0r6x6zjzhr8ksqlpiwm5gdd7s209kwk5p4lw54xjvz10cs3qlq19"; sha256 = "0flv9idw0jm5nm8lx25xqanbkqgfiym6619w575p7nrdh0riqwqh";
}; };
} }
{ {
@ -347,8 +401,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://go.googlesource.com/tools"; url = "https://go.googlesource.com/tools";
rev = "1f849cf54d09"; rev = "5aca471b1d59";
sha256 = "19a3srk9dcqad3sqd8mfg36pbaxcfkbzhp3jinhqxnzd90bds6am"; sha256 = "1i4h3q83w4y9s065w0wnnnwlssy69jbrj08k47ppsa8dnv85kyrf";
}; };
} }
{ {
@ -356,8 +410,17 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://gopkg.in/check.v1"; url = "https://gopkg.in/check.v1";
rev = "20d25e280405"; rev = "788fd7840127";
sha256 = "0k1m83ji9l1a7ng8a7v40psbymxasmssbrrhpdv2wl4rhs0nc3np"; sha256 = "0v3bim0j375z81zrpr5qv42knqs0y2qv2vkjiqi5axvb78slki1a";
};
}
{
goPackagePath = "gopkg.in/fsnotify.v1";
fetch = {
type = "git";
url = "https://gopkg.in/fsnotify.v1";
rev = "v1.4.7";
sha256 = "07va9crci0ijlivbb7q57d2rz9h27zgn2fsm60spjsqpdbvyrx4g";
}; };
} }
{ {
@ -369,13 +432,22 @@
sha256 = "00k5iqjcp371fllqxncv7jkf80hn1zww92zm78cclbcn4ybigkng"; sha256 = "00k5iqjcp371fllqxncv7jkf80hn1zww92zm78cclbcn4ybigkng";
}; };
} }
{
goPackagePath = "gopkg.in/tomb.v1";
fetch = {
type = "git";
url = "https://gopkg.in/tomb.v1";
rev = "dd632973f1e7";
sha256 = "1lqmq1ag7s4b3gc3ddvr792c5xb5k6sfn0cchr3i2s7f1c231zjv";
};
}
{ {
goPackagePath = "gopkg.in/yaml.v2"; goPackagePath = "gopkg.in/yaml.v2";
fetch = { fetch = {
type = "git"; type = "git";
url = "https://gopkg.in/yaml.v2"; url = "https://gopkg.in/yaml.v2";
rev = "v2.2.1"; rev = "v2.2.2";
sha256 = "0dwjrs2lp2gdlscs7bsrmyc5yf6mm4fvgw71bzr9mv2qrd2q73s1"; sha256 = "01wj12jzsdqlnidpyjssmj0r4yavlqy7dwrg7adqd8dicjc4ncsa";
}; };
} }
{ {
@ -419,8 +491,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/kubernetes/klog"; url = "https://github.com/kubernetes/klog";
rev = "v0.3.0"; rev = "v0.3.3";
sha256 = "05lp8ddqnbypgszv3ra7x105qpr8rr1g4rk2148wcmgfjrfhw437"; sha256 = "1gk1jhhyzsqcb4wnb02hkp8fwmk3ac924yzk87hfc6sgz43jplpn";
}; };
} }
{ {
@ -428,17 +500,17 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/kubernetes/kube-openapi"; url = "https://github.com/kubernetes/kube-openapi";
rev = "a01b7d5d6c22"; rev = "db7b694dc208";
sha256 = "182s6gqhzal5602dfyk9h8adsdqgh5fmgh0bifksp1x856v4aizx"; sha256 = "11pmxz6if6gphspyyjqrphwclg02mgnp30mn1i0lr8r21d64m148";
}; };
} }
{ {
goPackagePath = "sigs.k8s.io/kustomize"; goPackagePath = "sigs.k8s.io/kustomize/v3";
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/kubernetes-sigs/kustomize"; url = "https://github.com/kubernetes-sigs/kustomize";
rev = "v2.0.3"; rev = "4b67a6de1296";
sha256 = "1dfkpx9rllj1bzm5f52bx404kdds3zx1h38yqri9ha3p3pcb1bbb"; sha256 = "1qi5swzs3qix9mimrc660hxh9qgcrbcw49z4w27hdv27xl5fa0rd";
}; };
} }
{ {
@ -446,8 +518,8 @@
fetch = { fetch = {
type = "git"; type = "git";
url = "https://github.com/kubernetes-sigs/structured-merge-diff"; url = "https://github.com/kubernetes-sigs/structured-merge-diff";
rev = "ea680f03cc65"; rev = "15d366b2352e";
sha256 = "1drc908qcvwifvbz12vxahplycnaj177pz5ay6ygbn3q8824qv7b"; sha256 = "1anrx09ksgrwjwmbrcrk3hx8wyzjaakzmmn36nd23if36nv1xg11";
}; };
} }
{ {
@ -459,49 +531,4 @@
sha256 = "1p7hvjdr5jsyk7nys1g1pmgnf3ys6n320i6hds85afppk81k01kb"; sha256 = "1p7hvjdr5jsyk7nys1g1pmgnf3ys6n320i6hds85afppk81k01kb";
}; };
} }
{
goPackagePath = "github.com/vishvananda/netlink";
fetch = {
type = "git";
url = "https://github.com/vishvananda/netlink";
rev = "v1.0.0";
sha256 = "0hpzghf1a4cwawzhkiwdzin80h6hd09fskl77d5ppgc084yvj8x0";
};
}
{
goPackagePath = "github.com/vishvananda/netns";
fetch = {
type = "git";
url = "https://github.com/vishvananda/netns";
rev = "13995c7128cc";
sha256 = "1zk6w8158qi4niva5rijchbv9ixgmijsgqshh54wdaav4xrhjshn";
};
}
{
goPackagePath = "golang.org/x/oauth2";
fetch = {
type = "git";
url = "https://go.googlesource.com/oauth2";
rev = "9f3314589c9a";
sha256 = "13rr34jmgisgy8mc7yqz3474w4qbs01gz4b7zrgkvikdv4a6py3h";
};
}
{
goPackagePath = "golang.org/x/time";
fetch = {
type = "git";
url = "https://go.googlesource.com/time";
rev = "9d24e82272b4";
sha256 = "1f5nkr4vys2vbd8wrwyiq2f5wcaahhpxmia85d1gshcbqjqf8dkb";
};
}
{
goPackagePath = "k8s.io/utils";
fetch = {
type = "git";
url = "https://github.com/kubernetes/utils";
rev = "8fab8cb257d5";
sha256 = "0ckkl9zj8c0p5csfgsnvgb3vm91l2zgxgxhbjcf3ds3wryljalyj";
};
}
] ]

View File

@ -1,28 +1,51 @@
{ stdenv, fetchurl, qt4, flex, bison, docutils }: { lib, mkDerivation, fetchFromBitbucket, docutils, bison, flex, qmake
, qtbase
}:
stdenv.mkDerivation rec { mkDerivation rec {
name = "xxdiff-4.0.1"; pname = "xxdiff";
version = "5.0b1";
src = fetchurl { src = fetchFromBitbucket {
url = "mirror://sourceforge/xxdiff/${name}.tar.bz2"; owner = "blais";
sha256 = "0050qd12fvlcfdh0iwjsaxgxdq7jsl70f85fbi7pz23skpddsn5z"; repo = pname;
rev = "5e5f885dfc43559549a81c59e9e8c9525306356a";
sha256 = "0gbvxrkwkbvag3298j89smszghpr8ilxxfb0cvsknfqdf15b296w";
}; };
nativeBuildInputs = [ flex bison qt4 docutils ]; nativeBuildInputs = [ bison docutils flex qmake ];
buildInputs = [ qt4 ]; buildInputs = [ qtbase ];
QMAKE = "qmake"; dontUseQmakeConfigure = true;
configurePhase = "cd src; make -f Makefile.bootstrap"; # c++11 and above is needed for building with Qt 5.9+
NIX_CFLAGS_COMPILE = [ "-std=c++14" ];
installPhase = "mkdir -pv $out/bin; cp -v ../bin/xxdiff $out/bin"; sourceRoot = "source/src";
meta = with stdenv.lib; { postPatch = ''
homepage = http://furius.ca/xxdiff/; substituteInPlace xxdiff.pro --replace ../bin ./bin
'';
preConfigure = ''
make -f Makefile.bootstrap
'';
installPhase = ''
runHook preInstall
install -Dm555 -t $out/bin ./bin/xxdiff
install -Dm444 -t $out/share/doc/${pname} ${src}/README
runHook postInstall
'';
meta = with lib; {
description = "Graphical file and directories comparator and merge tool"; description = "Graphical file and directories comparator and merge tool";
homepage = "http://furius.ca/xxdiff/";
license = licenses.gpl2; license = licenses.gpl2;
maintainers = with maintainers; [ pSub raskin ];
platforms = platforms.linux; platforms = platforms.linux;
maintainers = with maintainers; [ pSub ];
}; };
} }

View File

@ -1,36 +0,0 @@
{ stdenv, fetchFromBitbucket, qtbase, flex, bison, docutils }:
stdenv.mkDerivation {
name = "xxdiff-5.0b1";
src = fetchFromBitbucket {
owner = "blais";
repo = "xxdiff";
rev = "5e5f885dfc43559549a81c59e9e8c9525306356a";
sha256 = "0gbvxrkwkbvag3298j89smszghpr8ilxxfb0cvsknfqdf15b296w";
};
nativeBuildInputs = [ flex bison docutils ];
buildInputs = [ qtbase ];
# Fixes build with Qt 5.9
NIX_CFLAGS_COMPILE = [ "-std=c++11" ];
preConfigure = ''
cd src
make -f Makefile.bootstrap
'';
postInstall = ''
install -D ../bin/xxdiff $out/bin/xxdiff
'';
meta = with stdenv.lib; {
homepage = http://furius.ca/xxdiff/;
description = "Graphical file and directories comparator and merge tool";
license = licenses.gpl2;
platforms = platforms.linux;
maintainers = with maintainers; [ pSub raskin ];
};
}

View File

@ -9,15 +9,15 @@
, gtk3 , gtk3
}: }:
stdenv.mkDerivation { stdenv.mkDerivation rec {
pname = "gnome-hexgl"; pname = "gnome-hexgl";
version = "unstable-2019-08-21"; version = "0.2.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "alexlarsson"; owner = "alexlarsson";
repo = "gnome-hexgl"; repo = "gnome-hexgl";
rev = "c6edde1250b830c7c8ee738905cb39abef67d4a6"; rev = version;
sha256 = "17j236damqij8n4a37psvkfxbbc18yw03s3hs0qxgfhl4671wf6z"; sha256 = "08iy2iciscd2wbhh6v4cpghx8r94v1ffbgla9yb3bcsdhlag0iw4";
}; };
nativeBuildInputs = [ nativeBuildInputs = [
@ -35,7 +35,7 @@ stdenv.mkDerivation {
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "Gthree port of HexGL"; description = "Gthree port of HexGL";
homepage = https://github.com/alexlarsson/gnome-hexgl; homepage = "https://github.com/alexlarsson/gnome-hexgl";
license = licenses.mit; license = licenses.mit;
maintainers = with maintainers; [ jtojnar ]; maintainers = with maintainers; [ jtojnar ];
platforms = platforms.unix; platforms = platforms.unix;

View File

@ -22,6 +22,12 @@ stdenv.mkDerivation rec {
name = "dolphin-emu-5.0-soundtouch-exception-fix.patch"; name = "dolphin-emu-5.0-soundtouch-exception-fix.patch";
sha256 = "0yd3l46nja5qiknnl30ryad98f3v8911jwnr67hn61dzx2kwbbaw"; sha256 = "0yd3l46nja5qiknnl30ryad98f3v8911jwnr67hn61dzx2kwbbaw";
}) })
# Fix build with gcc 8
(fetchpatch {
url = "https://salsa.debian.org/games-team/dolphin-emu/raw/9b7b4aeac1b60dcf28bdcafbed6bc498b2aeb0ad/debian/patches/03_gcc8.patch";
name = "03_gcc8.patch";
sha256 = "1da95gb8c95kd5cjhdvg19cv2z863lj3va5gx3bqc7g8r36glqxr";
})
]; ];
postPatch = '' postPatch = ''

View File

@ -0,0 +1,26 @@
{ stdenv, fetchFromGitHub }:
stdenv.mkDerivation rec {
version = "0.1.0";
pname = "wifi-password";
src = fetchFromGitHub {
owner = "rauchg";
repo = pname;
rev = version;
sha256 = "0sfvb40h7rz9jzp4l9iji3jg80paklqsbmnk5h7ipsv2xbsplp64";
};
installPhase = ''
mkdir -p $out/bin
cp wifi-password.sh $out/bin/wifi-password
'';
meta = {
homepage = https://github.com/rauchg/wifi-password;
description = "Get the password of the wifi you're on";
platforms = stdenv.lib.platforms.darwin;
license = stdenv.lib.licenses.mit;
maintainers = [ stdenv.lib.maintainers.nikitavoloboev ];
};
}

View File

@ -57,6 +57,7 @@ let
pygobject3 pygobject3
pycairo pycairo
pillow pillow
setuptools
]); ]);
installedTestsPython = python3.withPackages (p: with p; [ installedTestsPython = python3.withPackages (p: with p; [

View File

@ -145,7 +145,7 @@ let
NF_TABLES_IPV4 = whenAtLeast "4.17" yes; NF_TABLES_IPV4 = whenAtLeast "4.17" yes;
NF_TABLES_ARP = whenAtLeast "4.17" yes; NF_TABLES_ARP = whenAtLeast "4.17" yes;
NF_TABLES_IPV6 = whenAtLeast "4.17" yes; NF_TABLES_IPV6 = whenAtLeast "4.17" yes;
NF_TABLES_BRIDGE = whenAtLeast "4.17" yes; NF_TABLES_BRIDGE = whenBetween "4.17" "5.3" yes;
}; };
wireless = { wireless = {
@ -158,6 +158,9 @@ let
ATH9K_AHB = option yes; # Ditto, AHB bus ATH9K_AHB = option yes; # Ditto, AHB bus
B43_PHY_HT = option yes; B43_PHY_HT = option yes;
BCMA_HOST_PCI = option yes; BCMA_HOST_PCI = option yes;
RTW88 = whenAtLeast "5.2" module;
RTW88_8822BE = whenAtLeast "5.2" yes;
RTW88_8822CE = whenAtLeast "5.2" yes;
}; };
fb = { fb = {
@ -631,8 +634,8 @@ let
IDLE_PAGE_TRACKING = yes; IDLE_PAGE_TRACKING = yes;
IRDA_ULTRA = whenOlder "4.17" yes; # Ultra (connectionless) protocol IRDA_ULTRA = whenOlder "4.17" yes; # Ultra (connectionless) protocol
JOYSTICK_IFORCE_232 = option yes; # I-Force Serial joysticks and wheels JOYSTICK_IFORCE_232 = { optional = true; tristate = whenOlder "5.3" "y"; }; # I-Force Serial joysticks and wheels
JOYSTICK_IFORCE_USB = option yes; # I-Force USB joysticks and wheels JOYSTICK_IFORCE_USB = { optional = true; tristate = whenOlder "5.3" "y"; }; # I-Force USB joysticks and wheels
JOYSTICK_XPAD_FF = option yes; # X-Box gamepad rumble support JOYSTICK_XPAD_FF = option yes; # X-Box gamepad rumble support
JOYSTICK_XPAD_LEDS = option yes; # LED Support for Xbox360 controller 'BigX' LED JOYSTICK_XPAD_LEDS = option yes; # LED Support for Xbox360 controller 'BigX' LED
@ -700,6 +703,8 @@ let
PREEMPT = no; PREEMPT = no;
PREEMPT_VOLUNTARY = yes; PREEMPT_VOLUNTARY = yes;
X86_AMD_PLATFORM_DEVICE = yes;
} // optionalAttrs (stdenv.hostPlatform.system == "x86_64-linux" || stdenv.hostPlatform.system == "aarch64-linux") { } // optionalAttrs (stdenv.hostPlatform.system == "x86_64-linux" || stdenv.hostPlatform.system == "aarch64-linux") {
# Enable CPU/memory hotplug support # Enable CPU/memory hotplug support
# Allows you to dynamically add & remove CPUs/memory to a VM client running NixOS without requiring a reboot # Allows you to dynamically add & remove CPUs/memory to a VM client running NixOS without requiring a reboot

View File

@ -3,15 +3,15 @@
with stdenv.lib; with stdenv.lib;
buildLinux (args // rec { buildLinux (args // rec {
version = "5.2-rc7"; version = "5.3-rc8";
extraMeta.branch = "5.2"; extraMeta.branch = "5.3";
# modDirVersion needs to be x.y.z, will always add .0 # modDirVersion needs to be x.y.z, will always add .0
modDirVersion = if (modDirVersionArg == null) then builtins.replaceStrings ["-"] [".0-"] version else modDirVersionArg; modDirVersion = if (modDirVersionArg == null) then builtins.replaceStrings ["-"] [".0-"] version else modDirVersionArg;
src = fetchurl { src = fetchurl {
url = "https://git.kernel.org/torvalds/t/linux-${version}.tar.gz"; url = "https://git.kernel.org/torvalds/t/linux-${version}.tar.gz";
sha256 = "1128jb1y4gia5icv614ycp3c5mkvrb2l2wn20765b3si256g68n4"; sha256 = "01pr8xb9akjzafl8zkpwwkmlsjxghv5bx0larkjqdakjfspqnhzj";
}; };
# Should the testing kernels ever be built on Hydra? # Should the testing kernels ever be built on Hydra?

View File

@ -190,7 +190,6 @@ let
# To save space, exclude a bunch of unneeded stuff when copying. # To save space, exclude a bunch of unneeded stuff when copying.
(cd .. && rsync --archive --prune-empty-dirs \ (cd .. && rsync --archive --prune-empty-dirs \
--exclude='/build/' \ --exclude='/build/' \
--exclude='/Documentation/' \
* $dev/lib/modules/${modDirVersion}/source/) * $dev/lib/modules/${modDirVersion}/source/)
cd $dev/lib/modules/${modDirVersion}/source cd $dev/lib/modules/${modDirVersion}/source

View File

@ -19,14 +19,14 @@ in stdenv.mkDerivation rec {
sha256 = "1ng0x3wj3a1ckfd00yxa4za43xms92gdp7rdag060b7p39z7m4gf"; sha256 = "1ng0x3wj3a1ckfd00yxa4za43xms92gdp7rdag060b7p39z7m4gf";
}; };
outputs = [ "out" "dev" ]; outputs = [ "out" ] ++ lib.optional withUtils "lib" ++ [ "dev" ];
configureFlags = configureFlags = (if withUtils then [
if withUtils then [ "--with-localedir=${placeholder "lib"}/share/locale"
"--with-udevdir=${placeholder "out"}/lib/udev" "--with-udevdir=${placeholder "out"}/lib/udev"
] else [ ] else [
"--disable-v4l-utils" "--disable-v4l-utils"
]; ]);
postFixup = '' postFixup = ''
# Create symlink for V4l1 compatibility # Create symlink for V4l1 compatibility
@ -39,10 +39,8 @@ in stdenv.mkDerivation rec {
propagatedBuildInputs = [ libjpeg ]; propagatedBuildInputs = [ libjpeg ];
NIX_CFLAGS_COMPILE = lib.optional withQt "-std=c++11";
postPatch = '' postPatch = ''
patchShebangs . patchShebangs utils/cec-ctl/msg2ctl.pl
''; '';
meta = with stdenv.lib; { meta = with stdenv.lib; {

View File

@ -468,7 +468,7 @@ self: super:
<model> <model>
<configItem> <configItem>
<name>${name}</name> <name>${name}</name>
<_description>${layout.description}</_description> <description>${layout.description}</description>
<vendor>${layout.description}</vendor> <vendor>${layout.description}</vendor>
</configItem> </configItem>
</model> </model>
@ -484,8 +484,8 @@ self: super:
<layout> <layout>
<configItem> <configItem>
<name>${name}</name> <name>${name}</name>
<_shortDescription>${name}</_shortDescription> <shortDescription>${name}</shortDescription>
<_description>${layout.description}</_description> <description>${layout.description}</description>
<languageList> <languageList>
${concatMapStrings (lang: "<iso639Id>${lang}</iso639Id>\n") layout.languages} ${concatMapStrings (lang: "<iso639Id>${lang}</iso639Id>\n") layout.languages}
</languageList> </languageList>

View File

@ -4,13 +4,13 @@
{ stdenv, fetchgit }: { stdenv, fetchgit }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "2019-08-07"; version = "2019-09-08";
pname = "oh-my-zsh"; pname = "oh-my-zsh";
rev = "40fafe0f59371d1a9d83b83c614acfd1d740aabb"; rev = "fd4571d1b02ac68833a5b5c166395434723b9128";
src = fetchgit { inherit rev; src = fetchgit { inherit rev;
url = "https://github.com/robbyrussell/oh-my-zsh"; url = "https://github.com/robbyrussell/oh-my-zsh";
sha256 = "0vk78dkrgbj51jvbpn337d7dnsb3p7cdj4bk92m6xqby5lmk4q01"; sha256 = "1294na7mb48xa5iifbsjvggiznglnydlnwhb1zqwrmdi84qhydri";
}; };
pathsToLink = [ "/share/oh-my-zsh" ]; pathsToLink = [ "/share/oh-my-zsh" ];

View File

@ -25,6 +25,7 @@ python.pkgs.buildPythonApplication rec {
pyparsing pyparsing
jinja2 jinja2
nose nose
setuptools
six six
]; ];

View File

@ -0,0 +1,144 @@
{ lib
, mkDerivation
, fetchurl
, fetchpatch
, variant ? "standalone"
, fetchFromGitHub
, fetchFromGitLab
, cmake
, pkgconfig
, opencv
, openexr
, graphicsmagick
, fftw
, zlib
, libjpeg
, libtiff
, libpng
, curl
, krita ? null
, gimp ? null
, qtbase
, qttools
}:
let
variants = {
gimp = {
extraDeps = [
gimp
gimp.gtk
];
description = "GIMP plugin for the G'MIC image processing framework";
};
krita = {
extraDeps = [
krita
];
description = "Krita plugin for the G'MIC image processing framework";
};
standalone = {
description = "Versatile front-end to the image processing framework G'MIC";
};
};
in
assert lib.assertMsg (builtins.hasAttr variant variants) "gmic-qt variant ${variant} is not supported. Please use one of ${lib.concatStringsSep ", " (builtins.attrNames variants)}.";
assert lib.assertMsg (builtins.all (d: d != null) variants.${variant}.extraDeps or []) "gmic-qt variant ${variant} is missing one of its dependencies.";
mkDerivation rec {
pname = "gmic-qt${lib.optionalString (variant != "standalone") ''-${variant}''}";
version = "2.7.1";
gmic-community = fetchFromGitHub {
owner = "dtschump";
repo = "gmic-community";
rev = "3fd528f20a2a7d651e96078c205ff21efb9cdd1a";
sha256 = "08d37b49qgh5d4rds7hvr5wjj4p1y8cnbidz1cyqsibq0555pwq2";
};
CImg = fetchFromGitLab {
domain = "framagit.org";
owner = "dtschump";
repo = "CImg";
rev = "v.${version}";
sha256 = "1mfkjvf5r3ppc1dd6yvqn7xlhgzfg9k1k5v2sq2k9m70g8p7rgpd";
};
gmic_stdlib = fetchurl {
name = "gmic_stdlib.h";
url = "http://gmic.eu/gmic_stdlib${lib.replaceStrings ["."] [""] version}.h";
sha256 = "0v12smknr1s44s6wq2gbnw0hb98xrwp6i3zg9wf49cl7s9qf76j3";
};
gmic = fetchFromGitHub {
owner = "dtschump";
repo = "gmic";
rev = "v.${version}";
sha256 = "0pa6kflr1gqgzh8rk7bylvkxs989r5jy0q7b62mnzx8895slwfb5";
};
gmic_qt = fetchFromGitHub {
owner = "c-koi";
repo = "gmic-qt";
rev = "v.${version}";
sha256 = "08a0660083wv5fb1w9qqhm4f8cfwbqq723qzqq647mid1n7sy959";
};
patches = [
# Install GIMP plug-in to a correct destination
# https://github.com/c-koi/gmic-qt/pull/78
./fix-gimp-plugin-path.patch
];
unpackPhase = ''
cp -r ${gmic} gmic
ln -s ${gmic-community} gmic-community
cp -r ${gmic_qt} gmic_qt
chmod -R +w gmic gmic_qt
ln -s ${CImg} CImg
cp ${gmic_stdlib} gmic/src/gmic_stdlib.h
cd gmic_qt
'';
nativeBuildInputs = [
cmake
pkgconfig
];
buildInputs = [
qtbase
qttools
fftw
zlib
libjpeg
libtiff
libpng
opencv
openexr
graphicsmagick
curl
] ++ variants.${variant}.extraDeps or [];
cmakeFlags = [
"-DGMIC_QT_HOST=${if variant == "standalone" then "none" else variant}"
];
postFixup = lib.optionalString (variant == "gimp") ''
echo "wrapping $out/${gimp.targetPluginDir}/gmic_gimp_qt"
wrapQtApp "$out/${gimp.targetPluginDir}/gmic_gimp_qt"
'';
meta = with lib; {
description = variants.${variant}.description;
homepage = http://gmic.eu/;
license = licenses.gpl3;
platforms = platforms.unix;
};
}

View File

@ -0,0 +1,21 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 1483056..26d2b9a 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -473,6 +473,7 @@
execute_process(COMMAND gimptool-2.0 --libs-noui OUTPUT_VARIABLE GIMP2_LIBRARIES OUTPUT_STRIP_TRAILING_WHITESPACE)
execute_process(COMMAND gimptool-2.0 --cflags-noui OUTPUT_VARIABLE GIMP2_INCLUDE_DIRS OUTPUT_STRIP_TRAILING_WHITESPACE)
+ execute_process(COMMAND pkg-config gimp-2.0 --define-variable=prefix=${CMAKE_INSTALL_PREFIX} --variable gimplibdir OUTPUT_VARIABLE GIMP2_PKGLIBDIR OUTPUT_STRIP_TRAILING_WHITESPACE)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${GIMP2_INCLUDE_DIRS}")
set (gmic_qt_SRCS ${gmic_qt_SRCS} src/Host/Gimp/host_gimp.cpp)
@@ -484,7 +485,7 @@
${GIMP2_LIBRARIES}
${gmic_qt_LIBRARIES}
)
- install(TARGETS gmic_gimp_qt RUNTIME DESTINATION bin)
+ install(TARGETS gmic_gimp_qt RUNTIME DESTINATION "${GIMP2_PKGLIBDIR}/plug-ins")
elseif (${GMIC_QT_HOST} STREQUAL "krita")

View File

@ -1,46 +1,53 @@
{ stdenv, fetchurl, cmake, ninja, pkgconfig { stdenv
, opencv, openexr, graphicsmagick, fftw, zlib, libjpeg, libtiff, libpng , fetchurl
, withGimpPlugin ? true, gimp ? null}: , cmake
, ninja
, pkgconfig
, opencv
, openexr
, graphicsmagick
, fftw
, zlib
, libjpeg
, libtiff
, libpng
}:
assert withGimpPlugin -> gimp != null; stdenv.mkDerivation rec {
let
version = "2.2.2";
# CMakeLists.txt is missing from the tarball and Makefile is terrible
CMakeLists = fetchurl {
url = "https://github.com/dtschump/gmic/raw/v.${version}/CMakeLists.txt";
sha256 = "0lv5jrg98cpbk13fl4xm7l4sk1axfz054q570bpi741w815d7cpg";
};
in stdenv.mkDerivation {
pname = "gmic"; pname = "gmic";
inherit version; version = "2.7.1";
outputs = [ "out" "lib" "dev" "man" ] ++ stdenv.lib.optional withGimpPlugin "gimpPlugin"; outputs = [ "out" "lib" "dev" "man" ];
src = fetchurl { src = fetchurl {
url = "https://gmic.eu/files/source/gmic_${version}.tar.gz"; url = "https://gmic.eu/files/source/gmic_${version}.tar.gz";
sha256 = "0zqfj2ym5nn3ff93xh2wf9ayxqlznabbdi00xw4lm7vw3iwkzqnc"; sha256 = "1sxgmrxv1px07h5m7dcdg24c6x39ifjbc1fmz8p2ah91pm57h7n7";
}; };
nativeBuildInputs = [ cmake ninja pkgconfig ]; nativeBuildInputs = [
cmake
ninja
pkgconfig
];
buildInputs = [ buildInputs = [
fftw zlib libjpeg libtiff libpng opencv openexr graphicsmagick fftw
] ++ stdenv.lib.optionals withGimpPlugin [ gimp gimp.gtk ]; zlib
libjpeg
libtiff
libpng
opencv
openexr
graphicsmagick
];
cmakeFlags = [ cmakeFlags = [
"-DBUILD_LIB_STATIC=OFF" "-DBUILD_LIB_STATIC=OFF"
"-DBUILD_PLUGIN=${if withGimpPlugin then "ON" else "OFF"}"
"-DENABLE_DYNAMIC_LINKING=ON" "-DENABLE_DYNAMIC_LINKING=ON"
] ++ stdenv.lib.optional withGimpPlugin "-DPLUGIN_INSTALL_PREFIX=${placeholder "gimpPlugin"}/${gimp.targetPluginDir}"; ];
postPatch = ''
cp ${CMakeLists} CMakeLists.txt
'';
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "G'MIC is an open and full-featured framework for image processing"; description = "Open and full-featured framework for image processing";
homepage = http://gmic.eu/; homepage = http://gmic.eu/;
license = licenses.cecill20; license = licenses.cecill20;
platforms = platforms.unix; platforms = platforms.unix;

View File

@ -1,83 +0,0 @@
{ stdenv, fetchurl, fetchFromGitHub, cmake, pkgconfig
, opencv, openexr, graphicsmagick, fftw, zlib, libjpeg, libtiff, libpng
, curl, krita, qtbase, qttools
, fetchgit }:
let
version = "2.3.6";
in stdenv.mkDerivation rec {
pname = "gmic_krita_qt";
inherit version;
gmic-community = fetchFromGitHub {
owner = "dtschump";
repo = "gmic-community";
rev = "3fd528f20a2a7d651e96078c205ff21efb9cdd1a";
sha256 = "08d37b49qgh5d4rds7hvr5wjj4p1y8cnbidz1cyqsibq0555pwq2";
};
CImg = fetchgit {
url = "https://framagit.org/dtschump/CImg";
rev = "90f5657d8eab7b549ef945103ef680e747385805";
sha256 = "1af3dwqq18dkw0lz2gvnlw8y0kc1cw01hnc72rf3pg2wyjcp0pvc";
};
gmic_stdlib = fetchurl {
name = "gmic_stdlib.h";
# Version should e in sync with gmic. Basically the version string without dots
url = "http://gmic.eu/gmic_stdlib236.h";
sha256 = "0q5g87dsn9byd2qqsa9xrsggfb9qv055s3l2gc0jrcvpx2qbza4q";
};
gmic = fetchFromGitHub {
owner = "dtschump";
repo = "gmic";
rev = "v.${version}";
sha256 = "1yg9ri3n07drv8gz4x0mn39ryi801ibl26jaza47m19ma893m8fi";
};
gmic_qt = fetchFromGitHub {
owner = "c-koi";
repo = "gmic-qt";
rev = "v.${version}";
sha256= "0j9wqlq67dwzir36yg58xy5lbblwizvgcvlmzcv9d6l901d5ayf3";
};
unpackPhase = ''
cp -r ${gmic} gmic
ln -s ${gmic-community} gmic-community
cp -r ${gmic_qt} gmic_qt
chmod -R +w gmic gmic_qt
ln -s ${CImg} CImg
cp ${gmic_stdlib} gmic/src/gmic_stdlib.h
cd gmic_qt
'';
preConfigure = ''
make -C ../gmic/src CImg.h gmic_stdlib.h
'';
nativeBuildInputs = [ cmake pkgconfig ];
buildInputs = [
qtbase qttools fftw zlib libjpeg libtiff libpng
opencv openexr graphicsmagick curl krita
];
cmakeFlags = [ "-DGMIC_QT_HOST=krita" ];
installPhase = ''
mkdir -p $out/bin;
install -Dm755 gmic_krita_qt "$out/bin/gmic_krita_qt"
'';
meta = with stdenv.lib; {
description = "Krita plugin for the G'MIC image processing framework";
homepage = http://gmic.eu/;
license = licenses.gpl3;
platforms = platforms.unix;
};
}

View File

@ -1,15 +1,28 @@
{ stdenv, fetchFromGitHub, imagemagickBig, pkgconfig, python2Packages, perl { stdenv
, libX11, libv4l, qt5, gtk2, xmlto, docbook_xsl, autoreconfHook, dbus , lib
, enableVideo ? stdenv.isLinux, enableDbus ? stdenv.isLinux , fetchFromGitHub
, imagemagickBig
, pkgconfig
, libX11
, libv4l
, qtbase
, qtx11extras
, wrapQtAppsHook
, gtk3
, xmlto
, docbook_xsl
, autoreconfHook
, dbus
, enableVideo ? stdenv.isLinux
, enableDbus ? stdenv.isLinux
}: }:
with stdenv.lib; stdenv.mkDerivation rec {
let
inherit (python2Packages) pygtk python;
in stdenv.mkDerivation rec {
pname = "zbar"; pname = "zbar";
version = "0.23"; version = "0.23";
outputs = [ "out" "lib" "dev" "doc" "man" ];
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "mchehab"; owner = "mchehab";
repo = "zbar"; repo = "zbar";
@ -17,27 +30,49 @@ in stdenv.mkDerivation rec {
sha256 = "0hlxakpyjg4q9hp7yp3har1n78341b4knwyll28hn48vykg28pza"; sha256 = "0hlxakpyjg4q9hp7yp3har1n78341b4knwyll28hn48vykg28pza";
}; };
nativeBuildInputs = [ pkgconfig xmlto autoreconfHook docbook_xsl ]; nativeBuildInputs = [
pkgconfig
xmlto
autoreconfHook
docbook_xsl
wrapQtAppsHook
];
buildInputs = [ buildInputs = [
imagemagickBig python pygtk perl libX11 imagemagickBig
] ++ optional enableDbus dbus libX11
++ optionals enableVideo [ ] ++ lib.optionals enableDbus [
libv4l gtk2 qt5.qtbase qt5.qtx11extras dbus
] ++ lib.optionals enableVideo [
libv4l
gtk3
qtbase
qtx11extras
]; ];
configureFlags = (if enableDbus then [ configureFlags = [
"--with-dbusconfdir=$out/etc/dbus-1/system.d" "--without-python"
] else [ "--without-dbus" ]) ] ++ (if enableDbus then [
++ optionals (!enableVideo) [ "--with-dbusconfdir=${placeholder "out"}/etc"
"--disable-video" "--without-gtk" "--without-qt" ] else [
]; "--without-dbus"
]) ++ (if enableVideo then [
"--with-gtk=gtk3"
] else [
"--disable-video"
"--without-gtk"
"--without-qt"
]);
postInstall = optionalString enableDbus '' dontWrapQtApps = true;
install -Dm644 dbus/org.linuxtv.Zbar.conf $out/etc/dbus-1/system.d/org.linuxtv.Zbar.conf dontWrapGApps = true;
postFixup = lib.optionalString enableVideo ''
wrapProgram "$out/bin/zbarcam-gtk" "''${gappsWrapperArgs[@]}"
wrapQtApp "$out/bin/zbarcam-qt"
''; '';
meta = with stdenv.lib; { meta = with lib; {
description = "Bar code reader"; description = "Bar code reader";
longDescription = '' longDescription = ''
ZBar is an open source software suite for reading bar codes from various ZBar is an open source software suite for reading bar codes from various

View File

@ -1,5 +1,5 @@
{ stdenv, fetchFromGitHub, rustPlatform, cmake, perl, pkgconfig, zlib { stdenv, fetchFromGitHub, rustPlatform, cmake, perl, pkgconfig, zlib
, darwin, libiconv , darwin, libiconv, installShellFiles
}: }:
with rustPlatform; with rustPlatform;
@ -17,24 +17,20 @@ buildRustPackage rec {
sha256 = "14qlm9zb9v22hxbbi833xaq2b7qsxnmh15s317200vz5f1305hhw"; sha256 = "14qlm9zb9v22hxbbi833xaq2b7qsxnmh15s317200vz5f1305hhw";
}; };
nativeBuildInputs = [ cmake pkgconfig perl ]; nativeBuildInputs = [ cmake pkgconfig perl installShellFiles ];
buildInputs = [ zlib ] buildInputs = [ zlib ]
++ stdenv.lib.optionals stdenv.isDarwin [ ++ stdenv.lib.optionals stdenv.isDarwin [
libiconv darwin.apple_sdk.frameworks.Security ] libiconv darwin.apple_sdk.frameworks.Security ]
; ;
outputs = [ "out" "man" ];
postInstall = '' postInstall = ''
mkdir -p $out/share/man/man1 installManPage contrib/man/exa.1
cp contrib/man/exa.1 $out/share/man/man1/ installShellCompletion \
--name exa contrib/completions.bash \
mkdir -p $out/share/bash-completion/completions --name exa.fish contrib/completions.fish \
cp contrib/completions.bash $out/share/bash-completion/completions/exa --name _exa contrib/completions.zsh
mkdir -p $out/share/fish/vendor_completions.d
cp contrib/completions.fish $out/share/fish/vendor_completions.d/exa.fish
mkdir -p $out/share/zsh/site-functions
cp contrib/completions.zsh $out/share/zsh/site-functions/_exa
''; '';
# Some tests fail, but Travis ensures a proper build # Some tests fail, but Travis ensures a proper build

View File

@ -1,5 +1,5 @@
{ stdenv, fetchFromGitLab, rustPlatform, cmake, pkgconfig, openssl { stdenv, fetchFromGitLab, rustPlatform, cmake, pkgconfig, openssl
, darwin , darwin, installShellFiles
, x11Support ? stdenv.isLinux || stdenv.hostPlatform.isBSD , x11Support ? stdenv.isLinux || stdenv.hostPlatform.isBSD
, xclip ? null, xsel ? null , xclip ? null, xsel ? null
@ -27,7 +27,7 @@ buildRustPackage rec {
cargoSha256 = "1x4hxar60lwimldpsi0frdlssgsb72qahn3dmb980sj6cmbq3f0b"; cargoSha256 = "1x4hxar60lwimldpsi0frdlssgsb72qahn3dmb980sj6cmbq3f0b";
nativeBuildInputs = [ cmake pkgconfig ]; nativeBuildInputs = [ cmake pkgconfig installShellFiles ];
buildInputs = [ openssl ] buildInputs = [ openssl ]
++ stdenv.lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ CoreFoundation CoreServices Security AppKit ]) ++ stdenv.lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ CoreFoundation CoreServices Security AppKit ])
; ;
@ -41,9 +41,7 @@ buildRustPackage rec {
); );
postInstall = '' postInstall = ''
install -Dm644 contrib/completions/_ffsend "$out/share/zsh/site-functions/_ffsend" installShellCompletion contrib/completions/ffsend.{bash,fish} --zsh contrib/completions/_ffsend
install -Dm644 contrib/completions/ffsend.bash "$out/share/bash-completion/completions/ffsend.bash"
install -Dm644 contrib/completions/ffsend.fish "$out/share/fish/vendor_completions.d/ffsend.fish"
''; '';
# There's also .elv and .ps1 completion files but I don't know where to install those # There's also .elv and .ps1 completion files but I don't know where to install those

View File

@ -11,6 +11,9 @@ let
tclLibraries = stdenv.lib.optionals tkremind [ tcllib tk ]; tclLibraries = stdenv.lib.optionals tkremind [ tcllib tk ];
tclLibPaths = stdenv.lib.concatStringsSep " " tclLibPaths = stdenv.lib.concatStringsSep " "
(map (p: "${p}/lib/${p.libPrefix}") tclLibraries); (map (p: "${p}/lib/${p.libPrefix}") tclLibraries);
tkremindPatch = optionalString tkremind ''
substituteInPlace scripts/tkremind --replace "exec wish" "exec ${tk}/bin/wish"
'';
in stdenv.mkDerivation { in stdenv.mkDerivation {
name = "remind-3.1.16"; name = "remind-3.1.16";
src = fetchurl { src = fetchurl {
@ -21,8 +24,13 @@ in stdenv.mkDerivation {
nativeBuildInputs = optional tkremind makeWrapper; nativeBuildInputs = optional tkremind makeWrapper;
propagatedBuildInputs = tclLibraries; propagatedBuildInputs = tclLibraries;
postPatch = optionalString tkremind '' postPatch = ''
substituteInPlace scripts/tkremind --replace "exec wish" "exec ${tk}/bin/wish" substituteInPlace ./configure \
--replace "sleep 1" "true"
substituteInPlace ./src/init.c \
--replace "rkrphgvba(0);" "" \
--replace "rkrphgvba(1);" ""
${tkremindPatch}
''; '';
postInstall = optionalString tkremind '' postInstall = optionalString tkremind ''
@ -34,6 +42,6 @@ in stdenv.mkDerivation {
description = "Sophisticated calendar and alarm program for the console"; description = "Sophisticated calendar and alarm program for the console";
license = stdenv.lib.licenses.gpl2; license = stdenv.lib.licenses.gpl2;
maintainers = with stdenv.lib.maintainers; [raskin kovirobi]; maintainers = with stdenv.lib.maintainers; [raskin kovirobi];
platforms = with stdenv.lib.platforms; linux; platforms = with stdenv.lib.platforms; unix;
}; };
} }

View File

@ -38,11 +38,8 @@ python3Packages.buildPythonApplication rec {
checkInputs = with python3Packages; [ hypothesis pytest pytest-localserver pytest-subtesthack ]; checkInputs = with python3Packages; [ hypothesis pytest pytest-localserver pytest-subtesthack ];
postPatch = '' postPatch = ''
# Invalid argument: 'perform_health_check' is not a valid setting # see https://github.com/pimutils/vdirsyncer/pull/805
substituteInPlace tests/conftest.py \ substituteInPlace setup.cfg --replace --duration --durations
--replace "perform_health_check=False" ""
substituteInPlace tests/unit/test_repair.py \
--replace $'@settings(perform_health_check=False) # Using the random module for UIDs\n' ""
# for setuptools_scm: # for setuptools_scm:
echo 'Version: ${version}' >PKG-INFO echo 'Version: ${version}' >PKG-INFO

View File

@ -5,13 +5,13 @@
with stdenv.lib; with stdenv.lib;
stdenv.mkDerivation { stdenv.mkDerivation {
name = "toxvpn-2018-04-17"; name = "toxvpn-2019-09-09";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "cleverca22"; owner = "cleverca22";
repo = "toxvpn"; repo = "toxvpn";
rev = "dc766f98888f500ea51f002f59007eac3f3a0a06"; rev = "45083dec172ce167f7ed84d571ec2822ebe4d51a";
sha256 = "19br3fmrdm45fvymj9kvwikkn8m657yd5fkhx6grv35ckrj83mxz"; sha256 = "193crarrx6q0zd2p6dn67pzv8kngwi440zm1y54njgcz0v3fpxmb";
}; };
buildInputs = [ libtoxcore nlohmann_json libsodium zeromq ] buildInputs = [ libtoxcore nlohmann_json libsodium zeromq ]
@ -27,7 +27,7 @@ stdenv.mkDerivation {
description = "A powerful tool that allows one to make tunneled point to point connections over Tox"; description = "A powerful tool that allows one to make tunneled point to point connections over Tox";
homepage = https://github.com/cleverca22/toxvpn; homepage = https://github.com/cleverca22/toxvpn;
license = licenses.gpl3; license = licenses.gpl3;
maintainers = with maintainers; [ cleverca22 obadz ]; maintainers = with maintainers; [ cleverca22 obadz toonn ];
platforms = platforms.linux ++ platforms.darwin; platforms = platforms.linux ++ platforms.darwin;
}; };
} }

View File

@ -1,23 +1,16 @@
{stdenv, fetchurl, apacheAnt, jdk, axis2, dbus_java, fetchpatch }: {stdenv, fetchurl, apacheAnt, jdk, axis2, dbus_java }:
stdenv.mkDerivation { stdenv.mkDerivation {
name = "DisnixWebService-0.8"; name = "DisnixWebService-0.9";
src = fetchurl { src = fetchurl {
url = https://github.com/svanderburg/DisnixWebService/files/1756703/DisnixWebService-0.8.tar.gz; url = https://github.com/svanderburg/DisnixWebService/releases/download/DisnixWebService-0.9/DisnixWebService-0.9.tar.gz;
sha256 = "05hmyz17rmqlph0i321kmhabnpw84kqz32lgc5cd4shxyzsal9hz"; sha256 = "1z7w44bf023c0aqchjfi4mla3qbhsh87mdzx7pqn0sy74cjfgqvl";
}; };
buildInputs = [ apacheAnt jdk ]; buildInputs = [ apacheAnt jdk ];
PREFIX = ''''${env.out}''; PREFIX = ''''${env.out}'';
AXIS2_LIB = "${axis2}/lib"; AXIS2_LIB = "${axis2}/lib";
AXIS2_WEBAPP = "${axis2}/webapps/axis2"; AXIS2_WEBAPP = "${axis2}/webapps/axis2";
DBUS_JAVA_LIB = "${dbus_java}/share/java"; DBUS_JAVA_LIB = "${dbus_java}/share/java";
patches = [
# Safe to remove once https://github.com/svanderburg/DisnixWebService/pull/1 is merged
(fetchpatch {
url = "https://github.com/mmahut/DisnixWebService/commit/cf07918b8c81b4ce01e0b489c1b5a3ef9c9a1cd6.patch";
sha256 = "15zi1l69wzgwvvqx4492s7l444gfvc9vcm7ckgif4b6cvp837brn";
})
];
prePatch = '' prePatch = ''
sed -i -e "s|#JAVA_HOME=|JAVA_HOME=${jdk}|" \ sed -i -e "s|#JAVA_HOME=|JAVA_HOME=${jdk}|" \
-e "s|#AXIS2_LIB=|AXIS2_LIB=${axis2}/lib|" \ -e "s|#AXIS2_LIB=|AXIS2_LIB=${axis2}/lib|" \

View File

@ -1,11 +1,11 @@
{ stdenv, fetchurl, pkgconfig, glib, libxml2, libxslt, getopt, nixUnstable, dysnomia, libintl, libiconv }: { stdenv, fetchurl, pkgconfig, glib, libxml2, libxslt, getopt, nixUnstable, dysnomia, libintl, libiconv }:
stdenv.mkDerivation { stdenv.mkDerivation {
name = "disnix-0.8"; name = "disnix-0.9";
src = fetchurl { src = fetchurl {
url = https://github.com/svanderburg/disnix/files/1756701/disnix-0.8.tar.gz; url = https://github.com/svanderburg/disnix/releases/download/disnix-0.9/disnix-0.9.tar.gz;
sha256 = "02cmj1jqk5i90szjsn5csr7qb7n42v04rvl9syx0zi9sx9ldnb0w"; sha256 = "1kc4520zjc1z72mknylfvrsyda9rbmm5c9mw8w13zhdwg3zbna06";
}; };
nativeBuildInputs = [ pkgconfig ]; nativeBuildInputs = [ pkgconfig ];

View File

@ -1,11 +1,11 @@
{ stdenv, fetchurl, dysnomia, disnix, socat, pkgconfig, getopt }: { stdenv, fetchurl, dysnomia, disnix, socat, pkgconfig, getopt }:
stdenv.mkDerivation { stdenv.mkDerivation {
name = "disnixos-0.7.1"; name = "disnixos-0.8";
src = fetchurl { src = fetchurl {
url = https://github.com/svanderburg/disnixos/files/2281312/disnixos-0.7.1.tar.gz; url = https://github.com/svanderburg/disnixos/releases/download/disnixos-0.8/disnixos-0.8.tar.gz;
sha256 = "00d7mcj77lwbj67vnh81bw6k6pg2asimky4zkq32mh8dslnhpnz6"; sha256 = "186blirfx89i8hdp4a0djy4q9qr9wcl0ilwr66hlil0wxqj1sr91";
}; };
nativeBuildInputs = [ pkgconfig ]; nativeBuildInputs = [ pkgconfig ];

View File

@ -1,5 +1,5 @@
{ stdenv, fetchurl { stdenv, fetchurl
, ejabberd ? null, mysql ? null, postgresql ? null, subversion ? null, mongodb ? null, mongodb-tools ? null , ejabberd ? null, mysql ? null, postgresql ? null, subversion ? null, mongodb ? null, mongodb-tools ? null, influxdb ? null
, enableApacheWebApplication ? false , enableApacheWebApplication ? false
, enableAxis2WebService ? false , enableAxis2WebService ? false
, enableEjabberdDump ? false , enableEjabberdDump ? false
@ -8,6 +8,7 @@
, enableSubversionRepository ? false , enableSubversionRepository ? false
, enableTomcatWebApplication ? false , enableTomcatWebApplication ? false
, enableMongoDatabase ? false , enableMongoDatabase ? false
, enableInfluxDatabase ? false
, catalinaBaseDir ? "/var/tomcat" , catalinaBaseDir ? "/var/tomcat"
, jobTemplate ? "systemd" , jobTemplate ? "systemd"
, getopt , getopt
@ -18,12 +19,13 @@ assert enablePostgreSQLDatabase -> postgresql != null;
assert enableSubversionRepository -> subversion != null; assert enableSubversionRepository -> subversion != null;
assert enableEjabberdDump -> ejabberd != null; assert enableEjabberdDump -> ejabberd != null;
assert enableMongoDatabase -> (mongodb != null && mongodb-tools != null); assert enableMongoDatabase -> (mongodb != null && mongodb-tools != null);
assert enableInfluxDatabase -> influxdb != null;
stdenv.mkDerivation { stdenv.mkDerivation {
name = "dysnomia-0.8"; name = "dysnomia-0.9";
src = fetchurl { src = fetchurl {
url = https://github.com/svanderburg/dysnomia/files/1756700/dysnomia-0.8.tar.gz; url = https://github.com/svanderburg/dysnomia/releases/download/dysnomia-0.9/dysnomia-0.9.tar.gz;
sha256 = "0pc4zwmmlsz02a6a4srpwdwhqrfvn3wkn22sz3fg7lwxbdbd5k0z"; sha256 = "09pk2l3pss48kvm5wvskh842vakbzmjzxzfzyw1nkqnvni130ikl";
}; };
preConfigure = if enableEjabberdDump then "export PATH=$PATH:${ejabberd}/sbin" else ""; preConfigure = if enableEjabberdDump then "export PATH=$PATH:${ejabberd}/sbin" else "";
@ -37,6 +39,7 @@ stdenv.mkDerivation {
(if enableSubversionRepository then "--with-subversion" else "--without-subversion") (if enableSubversionRepository then "--with-subversion" else "--without-subversion")
(if enableTomcatWebApplication then "--with-tomcat=${catalinaBaseDir}" else "--without-tomcat") (if enableTomcatWebApplication then "--with-tomcat=${catalinaBaseDir}" else "--without-tomcat")
(if enableMongoDatabase then "--with-mongodb" else "--without-mongodb") (if enableMongoDatabase then "--with-mongodb" else "--without-mongodb")
(if enableInfluxDatabase then "--with-influxdb" else "--without-influxdb")
"--with-job-template=${jobTemplate}" "--with-job-template=${jobTemplate}"
]; ];
@ -46,7 +49,8 @@ stdenv.mkDerivation {
++ stdenv.lib.optional enablePostgreSQLDatabase postgresql ++ stdenv.lib.optional enablePostgreSQLDatabase postgresql
++ stdenv.lib.optional enableSubversionRepository subversion ++ stdenv.lib.optional enableSubversionRepository subversion
++ stdenv.lib.optional enableMongoDatabase mongodb ++ stdenv.lib.optional enableMongoDatabase mongodb
++ stdenv.lib.optional enableMongoDatabase mongodb-tools; ++ stdenv.lib.optional enableMongoDatabase mongodb-tools
++ stdenv.lib.optional enableInfluxDatabase influxdb;
meta = { meta = {
description = "Automated deployment of mutable components and services for Disnix"; description = "Automated deployment of mutable components and services for Disnix";

View File

@ -15,15 +15,20 @@ stdenv.mkDerivation {
sha256 = "0yrc302a2fhbzryb10718ky4fymfcps3lk67ivis1qab5kbp6z8r"; sha256 = "0yrc302a2fhbzryb10718ky4fymfcps3lk67ivis1qab5kbp6z8r";
}; };
buildInputs = [ imagemagick qrencode ] ++ stdenv.lib.optional testQR zbar;
dontBuild = true; dontBuild = true;
dontStrip = true; dontStrip = true;
dontPatchELF = true; dontPatchELF = true;
preInstall = '' preInstall = let
substituteInPlace asc-to-gif.sh \ substitutions = [
--replace "convert" "${imagemagick}/bin/convert" \ ''--replace "convert" "${imagemagick}/bin/convert"''
--replace "qrencode" "${qrencode.bin}/bin/qrencode" ''--replace "qrencode" "${qrencode.bin}/bin/qrencode"''
] ++ stdenv.lib.optional testQR [
''--replace "hash zbarimg" "true"'' # hash does not work on NixOS
''--replace "$(zbarimg --raw" "$(${zbar.out}/bin/zbarimg --raw"''
];
in ''
substituteInPlace asc-to-gif.sh ${stdenv.lib.concatStringsSep " " substitutions}
''; '';
installPhase = '' installPhase = ''

View File

@ -114,6 +114,7 @@ mapAliases ({
git-hub = gitAndTools.git-hub; # added 2016-04-29 git-hub = gitAndTools.git-hub; # added 2016-04-29
glib_networking = glib-networking; # added 2018-02-25 glib_networking = glib-networking; # added 2018-02-25
gnome-mpv = celluloid; # added 2019-08-22 gnome-mpv = celluloid; # added 2019-08-22
gmic_krita_qt = gmic-qt-krita; # added 2019-09-07
gnome-themes-standard = gnome-themes-extra; # added 2018-03-14 gnome-themes-standard = gnome-themes-extra; # added 2018-03-14
gnome_doc_utils = gnome-doc-utils; # added 2018-02-25 gnome_doc_utils = gnome-doc-utils; # added 2018-02-25
gnome_themes_standard = gnome-themes-standard; # added 2018-02-25 gnome_themes_standard = gnome-themes-standard; # added 2018-02-25

View File

@ -1694,7 +1694,11 @@ in
gmic = callPackage ../tools/graphics/gmic { }; gmic = callPackage ../tools/graphics/gmic { };
gmic_krita_qt = libsForQt5.callPackage ../tools/graphics/gmic_krita_qt { }; gmic-qt = libsForQt5.callPackage ../tools/graphics/gmic-qt { };
gmic-qt-krita = gmic-qt.override {
variant = "krita";
};
goa = callPackage ../development/tools/goa { }; goa = callPackage ../development/tools/goa { };
@ -4000,7 +4004,12 @@ in
iperf3 = callPackage ../tools/networking/iperf/3.nix { }; iperf3 = callPackage ../tools/networking/iperf/3.nix { };
iperf = iperf3; iperf = iperf3;
ipfs = callPackage ../applications/networking/ipfs { }; ipfs = callPackage ../applications/networking/ipfs {
# Version 0.4.22 fails to build with go 1.13 due to version validation:
# go: github.com/go-critic/go-critic@v0.0.0-20181204210945-ee9bf5809ead: invalid pseudo-version: does not match version-control timestamp (2019-02-10T22:04:43Z)
# This is fixed in master, but release containing the fix does not exist yet.
buildGoModule = buildGo112Module;
};
ipfs-migrator = callPackage ../applications/networking/ipfs-migrator { }; ipfs-migrator = callPackage ../applications/networking/ipfs-migrator { };
ipfs-cluster = callPackage ../applications/networking/ipfs-cluster { }; ipfs-cluster = callPackage ../applications/networking/ipfs-cluster { };
@ -7183,7 +7192,7 @@ in
zbackup = callPackage ../tools/backup/zbackup {}; zbackup = callPackage ../tools/backup/zbackup {};
zbar = callPackage ../tools/graphics/zbar { }; zbar = libsForQt5.callPackage ../tools/graphics/zbar { };
zdelta = callPackage ../tools/compression/zdelta { }; zdelta = callPackage ../tools/compression/zdelta { };
@ -10193,10 +10202,9 @@ in
xpwn = callPackage ../development/mobile/xpwn {}; xpwn = callPackage ../development/mobile/xpwn {};
xxdiff = callPackage ../development/tools/misc/xxdiff { xxdiff = libsForQt5.callPackage ../development/tools/misc/xxdiff { };
bison = bison2;
}; xxdiff-tip = xxdiff;
xxdiff-tip = libsForQt5.callPackage ../development/tools/misc/xxdiff/tip.nix { };
yaml2json = callPackage ../development/tools/yaml2json { }; yaml2json = callPackage ../development/tools/yaml2json { };
@ -15750,8 +15758,6 @@ in
linux_testing = callPackage ../os-specific/linux/kernel/linux-testing.nix { linux_testing = callPackage ../os-specific/linux/kernel/linux-testing.nix {
kernelPatches = [ kernelPatches = [
kernelPatches.bridge_stp_helper kernelPatches.bridge_stp_helper
kernelPatches.modinst_arg_list_too_long
kernelPatches.export_kernel_fpu_functions
]; ];
}; };
@ -20441,7 +20447,7 @@ in
wavebox = callPackage ../applications/networking/instant-messengers/wavebox { }; wavebox = callPackage ../applications/networking/instant-messengers/wavebox { };
sonic-pi = callPackage ../applications/audio/sonic-pi { }; sonic-pi = libsForQt5.callPackage ../applications/audio/sonic-pi { };
st = callPackage ../applications/misc/st { st = callPackage ../applications/misc/st {
conf = config.st.conf or null; conf = config.st.conf or null;
@ -20822,6 +20828,8 @@ in
inherit (linuxPackages) x86_energy_perf_policy; inherit (linuxPackages) x86_energy_perf_policy;
}; };
tippecanoe = callPackage ../applications/misc/tippecanoe { };
tmatrix = callPackage ../applications/misc/tmatrix { }; tmatrix = callPackage ../applications/misc/tmatrix { };
tnef = callPackage ../applications/misc/tnef { }; tnef = callPackage ../applications/misc/tnef { };
@ -24838,4 +24846,6 @@ in
nix-store-gcs-proxy = callPackage ../tools/nix/nix-store-gcs-proxy {}; nix-store-gcs-proxy = callPackage ../tools/nix/nix-store-gcs-proxy {};
wifi-password = callPackage ../os-specific/darwin/wifi-password {};
} }