Project import generated by Copybara.
GitOrigin-RevId: 83cbad92d73216bb0d9187c56cce0b91f9121d5a
This commit is contained in:
parent
5a70ea48eb
commit
78efc47b99
758 changed files with 17888 additions and 5784 deletions
|
@ -1,6 +1,6 @@
|
||||||
# Emacs {#sec-emacs}
|
# Emacs {#sec-emacs}
|
||||||
|
|
||||||
## Configuring Emacs
|
## Configuring Emacs {#sec-emacs-config}
|
||||||
|
|
||||||
The Emacs package comes with some extra helpers to make it easier to configure. `emacsWithPackages` allows you to manage packages from ELPA. This means that you will not have to install that packages from within Emacs. For instance, if you wanted to use `company` `counsel`, `flycheck`, `ivy`, `magit`, `projectile`, and `use-package` you could use this as a `~/.config/nixpkgs/config.nix` override:
|
The Emacs package comes with some extra helpers to make it easier to configure. `emacsWithPackages` allows you to manage packages from ELPA. This means that you will not have to install that packages from within Emacs. For instance, if you wanted to use `company` `counsel`, `flycheck`, `ivy`, `magit`, `projectile`, and `use-package` you could use this as a `~/.config/nixpkgs/config.nix` override:
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# Firefox
|
# Firefox {#sec-firefox}
|
||||||
|
|
||||||
## Build wrapped Firefox with extensions and policies
|
## Build wrapped Firefox with extensions and policies
|
||||||
|
|
||||||
|
@ -7,7 +7,7 @@ The `wrapFirefox` function allows to pass policies, preferences and extension th
|
||||||
```nix
|
```nix
|
||||||
{
|
{
|
||||||
myFirefox = wrapFirefox firefox-unwrapped {
|
myFirefox = wrapFirefox firefox-unwrapped {
|
||||||
extraExtensions = [
|
nixExtensions = [
|
||||||
(fetchFirefoxAddon {
|
(fetchFirefoxAddon {
|
||||||
name = "ublock";
|
name = "ublock";
|
||||||
url = "https://addons.mozilla.org/firefox/downloads/file/3679754/ublock_origin-1.31.0-an+fx.xpi";
|
url = "https://addons.mozilla.org/firefox/downloads/file/3679754/ublock_origin-1.31.0-an+fx.xpi";
|
||||||
|
@ -38,3 +38,12 @@ The `wrapFirefox` function allows to pass policies, preferences and extension th
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
If `nixExtensions != null` then all manually installed addons will be uninstalled from your browser profile.
|
||||||
|
To view available enterprise policies visit [enterprise policies](https://github.com/mozilla/policy-templates#enterprisepoliciesenabled)
|
||||||
|
or type into the Firefox url bar: `about:policies#documentation`.
|
||||||
|
Nix installed addons do not have a valid signature, which is why signature verification is disabled. This does not compromise security because downloaded addons are checksumed and manual addons can't be installed.
|
||||||
|
|
||||||
|
## Troubleshooting {#sec-firefox-troubleshooting}
|
||||||
|
If addons do not appear installed although they have been defined in your nix configuration file reset the local addon state of your Firefox profile by clicking `help -> restart with addons disabled -> restart -> refresh firefox`. This can happen if you switch from manual addon mode to nix addon mode and then back to manual mode and then again to nix addon mode.
|
||||||
|
|
||||||
|
|
|
@ -17,10 +17,10 @@
|
||||||
<xi:include href="locales.xml" />
|
<xi:include href="locales.xml" />
|
||||||
<xi:include href="nginx.section.xml" />
|
<xi:include href="nginx.section.xml" />
|
||||||
<xi:include href="opengl.section.xml" />
|
<xi:include href="opengl.section.xml" />
|
||||||
<xi:include href="shell-helpers.xml" />
|
<xi:include href="shell-helpers.section.xml" />
|
||||||
<xi:include href="steam.xml" />
|
<xi:include href="steam.xml" />
|
||||||
<xi:include href="cataclysm-dda.section.xml" />
|
<xi:include href="cataclysm-dda.section.xml" />
|
||||||
<xi:include href="urxvt.xml" />
|
<xi:include href="urxvt.section.xml" />
|
||||||
<xi:include href="weechat.section.xml" />
|
<xi:include href="weechat.section.xml" />
|
||||||
<xi:include href="xorg.section.xml" />
|
<xi:include href="xorg.section.xml" />
|
||||||
</chapter>
|
</chapter>
|
||||||
|
|
12
third_party/nixpkgs/doc/builders/packages/shell-helpers.section.md
vendored
Normal file
12
third_party/nixpkgs/doc/builders/packages/shell-helpers.section.md
vendored
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
# Interactive shell helpers {#sec-shell-helpers}
|
||||||
|
|
||||||
|
Some packages provide the shell integration to be more useful. But unlike other systems, nix doesn't have a standard `share` directory location. This is why a bunch `PACKAGE-share` scripts are shipped that print the location of the corresponding shared folder. Current list of such packages is as following:
|
||||||
|
|
||||||
|
- `fzf` : `fzf-share`
|
||||||
|
|
||||||
|
E.g. `fzf` can then used in the `.bashrc` like this:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
source "$(fzf-share)/completion.bash"
|
||||||
|
source "$(fzf-share)/key-bindings.bash"
|
||||||
|
```
|
|
@ -1,21 +0,0 @@
|
||||||
<section xmlns="http://docbook.org/ns/docbook"
|
|
||||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
|
||||||
xml:id="sec-shell-helpers">
|
|
||||||
<title>Interactive shell helpers</title>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
Some packages provide the shell integration to be more useful. But unlike other systems, nix doesn't have a standard share directory location. This is why a bunch <command>PACKAGE-share</command> scripts are shipped that print the location of the corresponding shared folder. Current list of such packages is as following:
|
|
||||||
<itemizedlist>
|
|
||||||
<listitem>
|
|
||||||
<para>
|
|
||||||
<literal>fzf</literal>: <command>fzf-share</command>
|
|
||||||
</para>
|
|
||||||
</listitem>
|
|
||||||
</itemizedlist>
|
|
||||||
E.g. <literal>fzf</literal> can then used in the .bashrc like this:
|
|
||||||
<screen>
|
|
||||||
source "$(fzf-share)/completion.bash"
|
|
||||||
source "$(fzf-share)/key-bindings.bash"
|
|
||||||
</screen>
|
|
||||||
</para>
|
|
||||||
</section>
|
|
71
third_party/nixpkgs/doc/builders/packages/urxvt.section.md
vendored
Normal file
71
third_party/nixpkgs/doc/builders/packages/urxvt.section.md
vendored
Normal file
|
@ -0,0 +1,71 @@
|
||||||
|
# Urxvt {#sec-urxvt}
|
||||||
|
|
||||||
|
Urxvt, also known as rxvt-unicode, is a highly customizable terminal emulator.
|
||||||
|
|
||||||
|
## Configuring urxvt {#sec-urxvt-conf}
|
||||||
|
|
||||||
|
In `nixpkgs`, urxvt is provided by the package `rxvt-unicode`. It can be configured to include your choice of plugins, reducing its closure size from the default configuration which includes all available plugins. To make use of this functionality, use an overlay or directly install an expression that overrides its configuration, such as
|
||||||
|
|
||||||
|
```nix
|
||||||
|
rxvt-unicode.override {
|
||||||
|
configure = { availablePlugins, ... }: {
|
||||||
|
plugins = with availablePlugins; [ perls resize-font vtwheel ];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
If the `configure` function returns an attrset without the `plugins` attribute, `availablePlugins` will be used automatically.
|
||||||
|
|
||||||
|
In order to add plugins but also keep all default plugins installed, it is possible to use the following method:
|
||||||
|
|
||||||
|
```nix
|
||||||
|
rxvt-unicode.override {
|
||||||
|
configure = { availablePlugins, ... }: {
|
||||||
|
plugins = (builtins.attrValues availablePlugins) ++ [ custom-plugin ];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
To get a list of all the plugins available, open the Nix REPL and run
|
||||||
|
|
||||||
|
```ShellSession
|
||||||
|
$ nix repl
|
||||||
|
:l <nixpkgs>
|
||||||
|
map (p: p.name) pkgs.rxvt-unicode.plugins
|
||||||
|
```
|
||||||
|
|
||||||
|
Alternatively, if your shell is bash or zsh and have completion enabled, simply type `nixpkgs.rxvt-unicode.plugins.<tab>`.
|
||||||
|
|
||||||
|
In addition to `plugins` the options `extraDeps` and `perlDeps` can be used to install extra packages. `extraDeps` can be used, for example, to provide `xsel` (a clipboard manager) to the clipboard plugin, without installing it globally:
|
||||||
|
|
||||||
|
```nix
|
||||||
|
rxvt-unicode.override {
|
||||||
|
configure = { availablePlugins, ... }: {
|
||||||
|
pluginsDeps = [ xsel ];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
`perlDeps` is a handy way to provide Perl packages to your custom plugins (in `$HOME/.urxvt/ext`). For example, if you need `AnyEvent` you can do:
|
||||||
|
|
||||||
|
```nix
|
||||||
|
rxvt-unicode.override {
|
||||||
|
configure = { availablePlugins, ... }: {
|
||||||
|
perlDeps = with perlPackages; [ AnyEvent ];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
## Packaging urxvt plugins {#sec-urxvt-pkg}
|
||||||
|
|
||||||
|
Urxvt plugins resides in `pkgs/applications/misc/rxvt-unicode-plugins`. To add a new plugin create an expression in a subdirectory and add the package to the set in `pkgs/applications/misc/rxvt-unicode-plugins/default.nix`.
|
||||||
|
|
||||||
|
A plugin can be any kind of derivation, the only requirement is that it should always install perl scripts in `$out/lib/urxvt/perl`. Look for existing plugins for examples.
|
||||||
|
|
||||||
|
If the plugin is itself a perl package that needs to be imported from other plugins or scripts, add the following passthrough:
|
||||||
|
|
||||||
|
```nix
|
||||||
|
passthru.perlPackages = [ "self" ];
|
||||||
|
```
|
||||||
|
|
||||||
|
This will make the urxvt wrapper pick up the dependency and set up the perl path accordingly.
|
115
third_party/nixpkgs/doc/builders/packages/urxvt.xml
vendored
115
third_party/nixpkgs/doc/builders/packages/urxvt.xml
vendored
|
@ -1,115 +0,0 @@
|
||||||
<section xmlns="http://docbook.org/ns/docbook"
|
|
||||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
|
||||||
xml:id="sec-urxvt">
|
|
||||||
<title>Urxvt</title>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
Urxvt, also known as rxvt-unicode, is a highly customizable terminal emulator.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<section xml:id="sec-urxvt-conf">
|
|
||||||
|
|
||||||
<title>Configuring urxvt</title>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
In <literal>nixpkgs</literal>, urxvt is provided by the package
|
|
||||||
<literal>rxvt-unicode</literal>. It can be configured to include your choice
|
|
||||||
of plugins, reducing its closure size from the default configuration which
|
|
||||||
includes all available plugins. To make use of this functionality, use an
|
|
||||||
overlay or directly install an expression that overrides its configuration,
|
|
||||||
such as
|
|
||||||
<programlisting>
|
|
||||||
rxvt-unicode.override {
|
|
||||||
configure = { availablePlugins, ... }: {
|
|
||||||
plugins = with availablePlugins; [ perls resize-font vtwheel ];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
</programlisting>
|
|
||||||
If the <literal>configure</literal> function returns an attrset without the
|
|
||||||
<literal>plugins</literal> attribute, <literal>availablePlugins</literal>
|
|
||||||
will be used automatically.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
In order to add plugins but also keep all default plugins installed, it is
|
|
||||||
possible to use the following method:
|
|
||||||
<programlisting>
|
|
||||||
rxvt-unicode.override {
|
|
||||||
configure = { availablePlugins, ... }: {
|
|
||||||
plugins = (builtins.attrValues availablePlugins) ++ [ custom-plugin ];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
</programlisting>
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
To get a list of all the plugins available, open the Nix REPL and run
|
|
||||||
<screen>
|
|
||||||
<prompt>$ </prompt>nix repl
|
|
||||||
:l <nixpkgs>
|
|
||||||
map (p: p.name) pkgs.rxvt-unicode.plugins
|
|
||||||
</screen>
|
|
||||||
Alternatively, if your shell is bash or zsh and have completion enabled,
|
|
||||||
simply type <literal>nixpkgs.rxvt-unicode.plugins.<tab></literal>.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
In addition to <literal>plugins</literal> the options
|
|
||||||
<literal>extraDeps</literal> and <literal>perlDeps</literal> can be used
|
|
||||||
to install extra packages.
|
|
||||||
<literal>extraDeps</literal> can be used, for example, to provide
|
|
||||||
<literal>xsel</literal> (a clipboard manager) to the clipboard plugin,
|
|
||||||
without installing it globally:
|
|
||||||
<programlisting>
|
|
||||||
rxvt-unicode.override {
|
|
||||||
configure = { availablePlugins, ... }: {
|
|
||||||
pluginsDeps = [ xsel ];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
</programlisting>
|
|
||||||
|
|
||||||
<literal>perlDeps</literal> is a handy way to provide Perl packages to
|
|
||||||
your custom plugins (in <literal>$HOME/.urxvt/ext</literal>). For example,
|
|
||||||
if you need <literal>AnyEvent</literal> you can do:
|
|
||||||
<programlisting>
|
|
||||||
rxvt-unicode.override {
|
|
||||||
configure = { availablePlugins, ... }: {
|
|
||||||
perlDeps = with perlPackages; [ AnyEvent ];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
</programlisting>
|
|
||||||
</para>
|
|
||||||
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section xml:id="sec-urxvt-pkg">
|
|
||||||
|
|
||||||
<title>Packaging urxvt plugins</title>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
Urxvt plugins resides in
|
|
||||||
<literal>pkgs/applications/misc/rxvt-unicode-plugins</literal>.
|
|
||||||
To add a new plugin create an expression in a subdirectory and add the
|
|
||||||
package to the set in
|
|
||||||
<literal>pkgs/applications/misc/rxvt-unicode-plugins/default.nix</literal>.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
A plugin can be any kind of derivation, the only requirement is that it
|
|
||||||
should always install perl scripts in <literal>$out/lib/urxvt/perl</literal>.
|
|
||||||
Look for existing plugins for examples.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
If the plugin is itself a perl package that needs to be imported from
|
|
||||||
other plugins or scripts, add the following passthrough:
|
|
||||||
<programlisting>
|
|
||||||
passthru.perlPackages = [ "self" ];
|
|
||||||
</programlisting>
|
|
||||||
This will make the urxvt wrapper pick up the dependency and set up the perl
|
|
||||||
path accordingly.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
</section>
|
|
||||||
|
|
||||||
</section>
|
|
|
@ -28,6 +28,22 @@
|
||||||
</para>
|
</para>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
|
<section xml:id="ssec-gnome-gdk-pixbuf-loaders">
|
||||||
|
<title>GdkPixbuf loaders</title>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
GTK applications typically use <link xlink:href="https://developer.gnome.org/gdk-pixbuf/stable/">GdkPixbuf</link> to load images. But <package>gdk-pixbuf</package> package only supports basic bitmap formats like JPEG, PNG or TIFF, requiring to use third-party loader modules for other formats. This is especially painful since GTK itself includes SVG icons, which cannot be rendered without a loader provided by <package>librsvg</package>.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Unlike other libraries mentioned in this section, GdkPixbuf only supports a single value in its controlling environment variable <envar>GDK_PIXBUF_MODULE_FILE</envar>. It is supposed to point to a cache file containing information about the available loaders. Each loader package will contain a <filename>lib/gdk-pixbuf-2.0/2.10.0/loaders.cache</filename> file describing the default loaders in <package>gdk-pixbuf</package> package plus the loader contained in the package itself. If you want to use multiple third-party loaders, you will need to create your own cache file manually. Fortunately, this is pretty rare as <link xlink:href="https://gitlab.gnome.org/federico/gdk-pixbuf-survey/blob/master/src/modules.md">not many loaders exist</link>.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
<package>gdk-pixbuf</package> contains <link linkend="ssec-gnome-hooks-gdk-pixbuf">a setup hook</link> that sets <envar>GDK_PIXBUF_MODULE_FILE</envar> from dependencies but as mentioned in further section, it is pretty limited. Loaders should propagate this setup hook.
|
||||||
|
</para>
|
||||||
|
</section>
|
||||||
|
|
||||||
<section xml:id="ssec-gnome-icons">
|
<section xml:id="ssec-gnome-icons">
|
||||||
<title>Icons</title>
|
<title>Icons</title>
|
||||||
|
|
||||||
|
@ -100,9 +116,16 @@ preFixup = ''
|
||||||
done
|
done
|
||||||
'';
|
'';
|
||||||
</programlisting>
|
</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:
|
</para>
|
||||||
|
<para>
|
||||||
|
Fortunately, there is <package xml:id="ssec-gnome-hooks-wrapgappshook">wrapGAppsHook</package>. It works in conjunction with other setup hooks that populate environment variables, and it will then wrap all executables in <filename>bin</filename> and <filename>libexec</filename> directories using said variables.
|
||||||
|
</para>
|
||||||
|
<para>
|
||||||
|
For convenience, it also adds <package>dconf.lib</package> for a GIO module implementing a GSettings backend using <package>dconf</package>, <package>gtk3</package> for GSettings schemas, and <package>librsvg</package> for GdkPixbuf loader to the closure. In case you are packaging a program without a graphical interface, you might want to use <package xml:id="ssec-gnome-hooks-wrapgappsnoguihook">wrapGAppsNoGuiHook</package>, which runs the same script as <package>wrapGAppsHook</package> but does not bring <package>gtk3</package> and <package>librsvg</package> into the closure.
|
||||||
|
</para>
|
||||||
|
<para>
|
||||||
<itemizedlist>
|
<itemizedlist>
|
||||||
<listitem xml:id="ssec-gnome-hooks-wrapgappshook">
|
<listitem>
|
||||||
<para>
|
<para>
|
||||||
<package>wrapGAppsHook</package> itself will add the package’s <filename>share</filename> directory to <envar>XDG_DATA_DIRS</envar>.
|
<package>wrapGAppsHook</package> itself will add the package’s <filename>share</filename> directory to <envar>XDG_DATA_DIRS</envar>.
|
||||||
</para>
|
</para>
|
||||||
|
@ -112,6 +135,11 @@ preFixup = ''
|
||||||
<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>.
|
<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>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
<listitem xml:id="ssec-gnome-hooks-gdk-pixbuf">
|
||||||
|
<para>
|
||||||
|
<package>gdk-pixbuf</package> setup hook will populate <envar>GDK_PIXBUF_MODULE_FILE</envar> with the path to biggest <filename>loaders.cache</filename> file from the dependencies containing <link xlink:href="ssec-gnome-gdk-pixbuf-loaders">GdkPixbuf loaders</link>. This works fine when there are only two packages containing loaders (<package>gdk-pixbuf</package> and e.g. <package>librsvg</package>) – it will choose the second one, reasonably expecting that it will be bigger since it describes extra loader in addition to the default ones. But when there are more than two loader packages, this logic will break. One possible solution would be constructing a custom cache file for each package containing a program like <filename>services/x11/gdk-pixbuf.nix</filename> NixOS module does. <package>wrapGAppsHook</package> copies the <envar>GDK_PIXBUF_MODULE_FILE</envar> environment variable into the produced wrapper.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
<listitem xml:id="ssec-gnome-hooks-gtk-drop-icon-theme-cache">
|
<listitem xml:id="ssec-gnome-hooks-gtk-drop-icon-theme-cache">
|
||||||
<para>
|
<para>
|
||||||
One of <package>gtk3</package>’s setup hooks will remove <filename>icon-theme.cache</filename> files from package’s icon theme directories to avoid conflicts. Icon theme packages should prevent this with <code>dontDropIconThemeCache = true;</code>.
|
One of <package>gtk3</package>’s setup hooks will remove <filename>icon-theme.cache</filename> files from package’s icon theme directories to avoid conflicts. Icon theme packages should prevent this with <code>dontDropIconThemeCache = true;</code>.
|
||||||
|
@ -178,7 +206,7 @@ preFixup = ''
|
||||||
</term>
|
</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>
|
<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.
|
There are no schemas available 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>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
|
@ -21,7 +21,7 @@
|
||||||
<xi:include href="lua.section.xml" />
|
<xi:include href="lua.section.xml" />
|
||||||
<xi:include href="maven.section.xml" />
|
<xi:include href="maven.section.xml" />
|
||||||
<xi:include href="node.section.xml" />
|
<xi:include href="node.section.xml" />
|
||||||
<xi:include href="ocaml.xml" />
|
<xi:include href="ocaml.section.xml" />
|
||||||
<xi:include href="perl.xml" />
|
<xi:include href="perl.xml" />
|
||||||
<xi:include href="php.section.xml" />
|
<xi:include href="php.section.xml" />
|
||||||
<xi:include href="python.section.xml" />
|
<xi:include href="python.section.xml" />
|
||||||
|
|
70
third_party/nixpkgs/doc/languages-frameworks/ocaml.section.md
vendored
Normal file
70
third_party/nixpkgs/doc/languages-frameworks/ocaml.section.md
vendored
Normal file
|
@ -0,0 +1,70 @@
|
||||||
|
# OCaml {#sec-language-ocaml}
|
||||||
|
|
||||||
|
OCaml libraries should be installed in `$(out)/lib/ocaml/${ocaml.version}/site-lib/`. Such directories are automatically added to the `$OCAMLPATH` environment variable when building another package that depends on them or when opening a `nix-shell`.
|
||||||
|
|
||||||
|
Given that most of the OCaml ecosystem is now built with dune, nixpkgs includes a convenience build support function called `buildDunePackage` that will build an OCaml package using dune, OCaml and findlib and any additional dependencies provided as `buildInputs` or `propagatedBuildInputs`.
|
||||||
|
|
||||||
|
Here is a simple package example. It defines an (optional) attribute `minimumOCamlVersion` that will be used to throw a descriptive evaluation error if building with an older OCaml is attempted. It uses the `fetchFromGitHub` fetcher to get its source. It sets the `doCheck` (optional) attribute to `true` which means that tests will be run with `dune runtest -p angstrom` after the build (`dune build -p angstrom`) is complete. It uses `alcotest` as a build input (because it is needed to run the tests) and `bigstringaf` and `result` as propagated build inputs (thus they will also be available to libraries depending on this library). The library will be installed using the `angstrom.install` file that dune generates.
|
||||||
|
|
||||||
|
```nix
|
||||||
|
{ stdenv
|
||||||
|
, fetchFromGitHub
|
||||||
|
, buildDunePackage
|
||||||
|
, alcotest
|
||||||
|
, result
|
||||||
|
, bigstringaf
|
||||||
|
}:
|
||||||
|
|
||||||
|
buildDunePackage rec {
|
||||||
|
pname = "angstrom";
|
||||||
|
version = "0.10.0";
|
||||||
|
|
||||||
|
minimumOCamlVersion = "4.03";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "inhabitedtype";
|
||||||
|
repo = pname;
|
||||||
|
rev = version;
|
||||||
|
sha256 = "0lh6024yf9ds0nh9i93r9m6p5psi8nvrqxl5x7jwl13zb0r9xfpw";
|
||||||
|
};
|
||||||
|
|
||||||
|
buildInputs = [ alcotest ];
|
||||||
|
propagatedBuildInputs = [ bigstringaf result ];
|
||||||
|
doCheck = true;
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
homepage = "https://github.com/inhabitedtype/angstrom";
|
||||||
|
description = "OCaml parser combinators built for speed and memory efficiency";
|
||||||
|
license = stdenv.lib.licenses.bsd3;
|
||||||
|
maintainers = with stdenv.lib.maintainers; [ sternenseemann ];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
Here is a second example, this time using a source archive generated with `dune-release`. It is a good idea to use this archive when it is available as it will usually contain substituted variables such as a `%%VERSION%%` field. This library does not depend on any other OCaml library and no tests are run after building it.
|
||||||
|
|
||||||
|
```nix
|
||||||
|
{ stdenv
|
||||||
|
, fetchurl
|
||||||
|
, buildDunePackage
|
||||||
|
}:
|
||||||
|
|
||||||
|
buildDunePackage rec {
|
||||||
|
pname = "wtf8";
|
||||||
|
version = "1.0.1";
|
||||||
|
|
||||||
|
minimumOCamlVersion = "4.01";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://github.com/flowtype/ocaml-${pname}/releases/download/v${version}/${pname}-${version}.tbz";
|
||||||
|
sha256 = "1msg3vycd3k8qqj61sc23qks541cxpb97vrnrvrhjnqxsqnh6ygq";
|
||||||
|
};
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
homepage = "https://github.com/flowtype/ocaml-wtf8";
|
||||||
|
description = "WTF-8 is a superset of UTF-8 that allows unpaired surrogates.";
|
||||||
|
license = licenses.mit;
|
||||||
|
maintainers = [ maintainers.eqyiel ];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
```
|
|
@ -1,73 +0,0 @@
|
||||||
<section xmlns="http://docbook.org/ns/docbook"
|
|
||||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
|
||||||
xml:id="sec-language-ocaml">
|
|
||||||
<title>OCaml</title>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
OCaml libraries should be installed in <literal>$(out)/lib/ocaml/${ocaml.version}/site-lib/</literal>. Such directories are automatically added to the <literal>$OCAMLPATH</literal> environment variable when building another package that depends on them or when opening a <literal>nix-shell</literal>.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
Given that most of the OCaml ecosystem is now built with dune, nixpkgs includes a convenience build support function called <literal>buildDunePackage</literal> that will build an OCaml package using dune, OCaml and findlib and any additional dependencies provided as <literal>buildInputs</literal> or <literal>propagatedBuildInputs</literal>.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
Here is a simple package example. It defines an (optional) attribute <literal>minimumOCamlVersion</literal> that will be used to throw a descriptive evaluation error if building with an older OCaml is attempted. It uses the <literal>fetchFromGitHub</literal> fetcher to get its source. It sets the <literal>doCheck</literal> (optional) attribute to <literal>true</literal> which means that tests will be run with <literal>dune runtest -p angstrom</literal> after the build (<literal>dune build -p angstrom</literal>) is complete. It uses <literal>alcotest</literal> as a build input (because it is needed to run the tests) and <literal>bigstringaf</literal> and <literal>result</literal> as propagated build inputs (thus they will also be available to libraries depending on this library). The library will be installed using the <literal>angstrom.install</literal> file that dune generates.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<programlisting>
|
|
||||||
{ stdenv, fetchFromGitHub, buildDunePackage, alcotest, result, bigstringaf }:
|
|
||||||
|
|
||||||
buildDunePackage rec {
|
|
||||||
pname = "angstrom";
|
|
||||||
version = "0.10.0";
|
|
||||||
|
|
||||||
minimumOCamlVersion = "4.03";
|
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
|
||||||
owner = "inhabitedtype";
|
|
||||||
repo = pname;
|
|
||||||
rev = version;
|
|
||||||
sha256 = "0lh6024yf9ds0nh9i93r9m6p5psi8nvrqxl5x7jwl13zb0r9xfpw";
|
|
||||||
};
|
|
||||||
|
|
||||||
buildInputs = [ alcotest ];
|
|
||||||
propagatedBuildInputs = [ bigstringaf result ];
|
|
||||||
doCheck = true;
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
homepage = "https://github.com/inhabitedtype/angstrom";
|
|
||||||
description = "OCaml parser combinators built for speed and memory efficiency";
|
|
||||||
license = stdenv.lib.licenses.bsd3;
|
|
||||||
maintainers = with stdenv.lib.maintainers; [ sternenseemann ];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
</programlisting>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
Here is a second example, this time using a source archive generated with <literal>dune-release</literal>. It is a good idea to use this archive when it is available as it will usually contain substituted variables such as a <literal>%%VERSION%%</literal> field. This library does not depend on any other OCaml library and no tests are run after building it.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<programlisting>
|
|
||||||
{ stdenv, fetchurl, buildDunePackage }:
|
|
||||||
|
|
||||||
buildDunePackage rec {
|
|
||||||
pname = "wtf8";
|
|
||||||
version = "1.0.1";
|
|
||||||
|
|
||||||
minimumOCamlVersion = "4.01";
|
|
||||||
|
|
||||||
src = fetchurl {
|
|
||||||
url = "https://github.com/flowtype/ocaml-${pname}/releases/download/v${version}/${pname}-${version}.tbz";
|
|
||||||
sha256 = "1msg3vycd3k8qqj61sc23qks541cxpb97vrnrvrhjnqxsqnh6ygq";
|
|
||||||
};
|
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
|
||||||
homepage = "https://github.com/flowtype/ocaml-wtf8";
|
|
||||||
description = "WTF-8 is a superset of UTF-8 that allows unpaired surrogates.";
|
|
||||||
license = licenses.mit;
|
|
||||||
maintainers = [ maintainers.eqyiel ];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
</programlisting>
|
|
||||||
</section>
|
|
2
third_party/nixpkgs/doc/stdenv/stdenv.xml
vendored
2
third_party/nixpkgs/doc/stdenv/stdenv.xml
vendored
|
@ -1989,7 +1989,7 @@ addEnvHooks "$hostOffset" myBashFunction
|
||||||
</term>
|
</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>
|
<para>
|
||||||
Exports <envar>GDK_PIXBUF_MODULE_FILE</envar> environment variable to the builder. Add librsvg package to <varname>buildInputs</varname> to get svg support.
|
Exports <envar>GDK_PIXBUF_MODULE_FILE</envar> environment variable to the builder. Add librsvg package to <varname>buildInputs</varname> to get svg support. See also <xref linkend="ssec-gnome-hooks-gdk-pixbuf" />.
|
||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
10
third_party/nixpkgs/lib/strings.nix
vendored
10
third_party/nixpkgs/lib/strings.nix
vendored
|
@ -569,9 +569,9 @@ rec {
|
||||||
standard GNU Autoconf scripts.
|
standard GNU Autoconf scripts.
|
||||||
|
|
||||||
Example:
|
Example:
|
||||||
enableFeature true "shared" "foo"
|
enableFeatureAs true "shared" "foo"
|
||||||
=> "--enable-shared=foo"
|
=> "--enable-shared=foo"
|
||||||
enableFeature false "shared" (throw "ignored")
|
enableFeatureAs false "shared" (throw "ignored")
|
||||||
=> "--disable-shared"
|
=> "--disable-shared"
|
||||||
*/
|
*/
|
||||||
enableFeatureAs = enable: feat: value: enableFeature enable feat + optionalString enable "=${value}";
|
enableFeatureAs = enable: feat: value: enableFeature enable feat + optionalString enable "=${value}";
|
||||||
|
@ -593,9 +593,9 @@ rec {
|
||||||
standard GNU Autoconf scripts.
|
standard GNU Autoconf scripts.
|
||||||
|
|
||||||
Example:
|
Example:
|
||||||
with_Feature true "shared" "foo"
|
withFeatureAs true "shared" "foo"
|
||||||
=> "--with-shared=foo"
|
=> "--with-shared=foo"
|
||||||
with_Feature false "shared" (throw "ignored")
|
withFeatureAs false "shared" (throw "ignored")
|
||||||
=> "--without-shared"
|
=> "--without-shared"
|
||||||
*/
|
*/
|
||||||
withFeatureAs = with_: feat: value: withFeature with_ feat + optionalString with_ "=${value}";
|
withFeatureAs = with_: feat: value: withFeature with_ feat + optionalString with_ "=${value}";
|
||||||
|
@ -674,7 +674,7 @@ rec {
|
||||||
else
|
else
|
||||||
false;
|
false;
|
||||||
|
|
||||||
/* Parse a string string as an int.
|
/* Parse a string as an int.
|
||||||
|
|
||||||
Type: string -> int
|
Type: string -> int
|
||||||
|
|
||||||
|
|
|
@ -652,6 +652,12 @@
|
||||||
githubId = 56009;
|
githubId = 56009;
|
||||||
name = "Arcadio Rubio García";
|
name = "Arcadio Rubio García";
|
||||||
};
|
};
|
||||||
|
archseer = {
|
||||||
|
email = "blaz@mxxn.io";
|
||||||
|
github = "archseer";
|
||||||
|
githubId = 1372918;
|
||||||
|
name = "Blaž Hrastnik";
|
||||||
|
};
|
||||||
arcnmx = {
|
arcnmx = {
|
||||||
email = "arcnmx@users.noreply.github.com";
|
email = "arcnmx@users.noreply.github.com";
|
||||||
github = "arcnmx";
|
github = "arcnmx";
|
||||||
|
@ -1252,6 +1258,16 @@
|
||||||
githubId = 3043718;
|
githubId = 3043718;
|
||||||
name = "Brett Lyons";
|
name = "Brett Lyons";
|
||||||
};
|
};
|
||||||
|
brodes = {
|
||||||
|
email = "me@brod.es";
|
||||||
|
github = "brhoades";
|
||||||
|
githubId = 4763746;
|
||||||
|
name = "Billy Rhoades";
|
||||||
|
keys = [{
|
||||||
|
longkeyid = "rsa4096/0x8AE74787A4B7C07E";
|
||||||
|
fingerprint = "BF4FCB85C69989B4ED95BF938AE74787A4B7C07E";
|
||||||
|
}];
|
||||||
|
};
|
||||||
bryanasdev000 = {
|
bryanasdev000 = {
|
||||||
email = "bryanasdev000@gmail.com";
|
email = "bryanasdev000@gmail.com";
|
||||||
github = "bryanasdev000";
|
github = "bryanasdev000";
|
||||||
|
|
|
@ -26,6 +26,19 @@
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>GNOME desktop environment was upgraded to 3.38, see its <link xlink:href="https://help.gnome.org/misc/release-notes/3.38/">release notes</link>.</para>
|
<para>GNOME desktop environment was upgraded to 3.38, see its <link xlink:href="https://help.gnome.org/misc/release-notes/3.38/">release notes</link>.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
<link xlink:href="https://www.gnuradio.org/">GNURadio</link> 3.8 was
|
||||||
|
<link xlink:href="https://github.com/NixOS/nixpkgs/issues/82263">finnally</link>
|
||||||
|
packaged, along with a rewrite to the Nix expressions, allowing users to
|
||||||
|
override the features upstream supports selecting to compile or not to.
|
||||||
|
Additionally, the attribute <code>gnuradio</code> and <code>gnuradio3_7</code>
|
||||||
|
now point to an externally wrapped by default derivations, that allow you to
|
||||||
|
also add `extraPythonPackages` to the Python interpreter used by GNURadio.
|
||||||
|
Missing environmental variables needed for operational GUI were also added
|
||||||
|
(<link xlink:href="https://github.com/NixOS/nixpkgs/issues/75478">#7547</link>).
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
|
|
|
@ -217,7 +217,7 @@ in
|
||||||
manualCache = pkgs.runCommandLocal "man-cache" { }
|
manualCache = pkgs.runCommandLocal "man-cache" { }
|
||||||
''
|
''
|
||||||
echo "MANDB_MAP ${manualPages}/share/man $out" > man.conf
|
echo "MANDB_MAP ${manualPages}/share/man $out" > man.conf
|
||||||
${pkgs.man-db}/bin/mandb -C man.conf -psc
|
${pkgs.man-db}/bin/mandb -C man.conf -psc >/dev/null 2>&1
|
||||||
'';
|
'';
|
||||||
in
|
in
|
||||||
''
|
''
|
||||||
|
|
|
@ -482,6 +482,7 @@
|
||||||
./services/misc/mediatomb.nix
|
./services/misc/mediatomb.nix
|
||||||
./services/misc/metabase.nix
|
./services/misc/metabase.nix
|
||||||
./services/misc/mwlib.nix
|
./services/misc/mwlib.nix
|
||||||
|
./services/misc/n8n.nix
|
||||||
./services/misc/nix-daemon.nix
|
./services/misc/nix-daemon.nix
|
||||||
./services/misc/nix-gc.nix
|
./services/misc/nix-gc.nix
|
||||||
./services/misc/nix-optimise.nix
|
./services/misc/nix-optimise.nix
|
||||||
|
|
|
@ -11,10 +11,20 @@ let
|
||||||
}
|
}
|
||||||
''
|
''
|
||||||
mkdir -p $out/bin
|
mkdir -p $out/bin
|
||||||
${lib.concatStringsSep "\n" (lib.mapAttrsToList (command: binary: ''
|
${lib.concatStringsSep "\n" (lib.mapAttrsToList (command: value:
|
||||||
|
let
|
||||||
|
opts = if builtins.isAttrs value
|
||||||
|
then value
|
||||||
|
else { executable = value; profile = null; extraArgs = []; };
|
||||||
|
args = lib.escapeShellArgs (
|
||||||
|
(optional (opts.profile != null) "--profile=${toString opts.profile}")
|
||||||
|
++ opts.extraArgs
|
||||||
|
);
|
||||||
|
in
|
||||||
|
''
|
||||||
cat <<_EOF >$out/bin/${command}
|
cat <<_EOF >$out/bin/${command}
|
||||||
#! ${pkgs.runtimeShell} -e
|
#! ${pkgs.runtimeShell} -e
|
||||||
exec /run/wrappers/bin/firejail ${binary} "\$@"
|
exec /run/wrappers/bin/firejail ${args} -- ${toString opts.executable} "\$@"
|
||||||
_EOF
|
_EOF
|
||||||
chmod 0755 $out/bin/${command}
|
chmod 0755 $out/bin/${command}
|
||||||
'') cfg.wrappedBinaries)}
|
'') cfg.wrappedBinaries)}
|
||||||
|
@ -25,12 +35,38 @@ in {
|
||||||
enable = mkEnableOption "firejail";
|
enable = mkEnableOption "firejail";
|
||||||
|
|
||||||
wrappedBinaries = mkOption {
|
wrappedBinaries = mkOption {
|
||||||
type = types.attrsOf types.path;
|
type = types.attrsOf (types.either types.path (types.submodule {
|
||||||
|
options = {
|
||||||
|
executable = mkOption {
|
||||||
|
type = types.path;
|
||||||
|
description = "Executable to run sandboxed";
|
||||||
|
example = literalExample "''${lib.getBin pkgs.firefox}/bin/firefox";
|
||||||
|
};
|
||||||
|
profile = mkOption {
|
||||||
|
type = types.nullOr types.path;
|
||||||
|
default = null;
|
||||||
|
description = "Profile to use";
|
||||||
|
example = literalExample "''${pkgs.firejail}/etc/firejail/firefox.profile";
|
||||||
|
};
|
||||||
|
extraArgs = mkOption {
|
||||||
|
type = types.listOf types.str;
|
||||||
|
default = [];
|
||||||
|
description = "Extra arguments to pass to firejail";
|
||||||
|
example = [ "--private=~/.firejail_home" ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}));
|
||||||
default = {};
|
default = {};
|
||||||
example = literalExample ''
|
example = literalExample ''
|
||||||
{
|
{
|
||||||
firefox = "''${lib.getBin pkgs.firefox}/bin/firefox";
|
firefox = {
|
||||||
mpv = "''${lib.getBin pkgs.mpv}/bin/mpv";
|
executable = "''${lib.getBin pkgs.firefox}/bin/firefox";
|
||||||
|
profile = "''${pkgs.firejail}/etc/firejail/firefox.profile";
|
||||||
|
};
|
||||||
|
mpv = {
|
||||||
|
executable = "''${lib.getBin pkgs.mpv}/bin/mpv";
|
||||||
|
profile = "''${pkgs.firejail}/etc/firejail/mpv.profile";
|
||||||
|
};
|
||||||
}
|
}
|
||||||
'';
|
'';
|
||||||
description = ''
|
description = ''
|
||||||
|
|
|
@ -103,7 +103,7 @@ in
|
||||||
programs.fish.shellAliases = mapAttrs (name: mkDefault) cfge.shellAliases;
|
programs.fish.shellAliases = mapAttrs (name: mkDefault) cfge.shellAliases;
|
||||||
|
|
||||||
# Required for man completions
|
# Required for man completions
|
||||||
documentation.man.generateCaches = true;
|
documentation.man.generateCaches = lib.mkDefault true;
|
||||||
|
|
||||||
environment.etc."fish/foreign-env/shellInit".text = cfge.shellInit;
|
environment.etc."fish/foreign-env/shellInit".text = cfge.shellInit;
|
||||||
environment.etc."fish/foreign-env/loginShellInit".text = cfge.loginShellInit;
|
environment.etc."fish/foreign-env/loginShellInit".text = cfge.loginShellInit;
|
||||||
|
|
|
@ -15,7 +15,7 @@ let
|
||||||
# This doesn't work in general because of missing development information.
|
# This doesn't work in general because of missing development information.
|
||||||
jack-libs = pkgs.runCommand "jack-libs" {} ''
|
jack-libs = pkgs.runCommand "jack-libs" {} ''
|
||||||
mkdir -p "$out/lib"
|
mkdir -p "$out/lib"
|
||||||
ln -s "${pkgs.pipewire.jack}/lib" "$out/lib/pipewire"
|
ln -s "${cfg.package.jack}/lib" "$out/lib/pipewire"
|
||||||
'';
|
'';
|
||||||
in {
|
in {
|
||||||
|
|
||||||
|
@ -28,6 +28,16 @@ in {
|
||||||
services.pipewire = {
|
services.pipewire = {
|
||||||
enable = mkEnableOption "pipewire service";
|
enable = mkEnableOption "pipewire service";
|
||||||
|
|
||||||
|
package = mkOption {
|
||||||
|
type = types.package;
|
||||||
|
default = pkgs.pipewire;
|
||||||
|
defaultText = "pkgs.pipewire";
|
||||||
|
example = literalExample "pkgs.pipewire";
|
||||||
|
description = ''
|
||||||
|
The pipewire derivation to use.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
socketActivation = mkOption {
|
socketActivation = mkOption {
|
||||||
default = true;
|
default = true;
|
||||||
type = types.bool;
|
type = types.bool;
|
||||||
|
@ -36,6 +46,32 @@ in {
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
extraConfig = mkOption {
|
||||||
|
type = types.lines;
|
||||||
|
default = "";
|
||||||
|
description = ''
|
||||||
|
Literal string to append to /etc/pipewire/pipewire.conf.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
sessionManager = mkOption {
|
||||||
|
type = types.nullOr types.string;
|
||||||
|
default = null;
|
||||||
|
example = literalExample ''"''${pipewire}/bin/pipewire-media-session"'';
|
||||||
|
description = ''
|
||||||
|
Path to the pipewire session manager executable.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
sessionManagerArguments = mkOption {
|
||||||
|
type = types.listOf types.string;
|
||||||
|
default = [];
|
||||||
|
example = literalExample ''[ "-p" "bluez5.msbc-support=true" ]'';
|
||||||
|
description = ''
|
||||||
|
Arguments passed to the pipewire session manager.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
alsa = {
|
alsa = {
|
||||||
enable = mkEnableOption "ALSA support";
|
enable = mkEnableOption "ALSA support";
|
||||||
support32Bit = mkEnableOption "32-bit ALSA support on 64-bit systems";
|
support32Bit = mkEnableOption "32-bit ALSA support on 64-bit systems";
|
||||||
|
@ -65,38 +101,83 @@ in {
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
environment.systemPackages = [ pkgs.pipewire ]
|
services.pipewire.sessionManager = mkDefault "${cfg.package}/bin/pipewire-media-session";
|
||||||
|
|
||||||
|
environment.systemPackages = [ cfg.package ]
|
||||||
++ lib.optional cfg.jack.enable jack-libs;
|
++ lib.optional cfg.jack.enable jack-libs;
|
||||||
|
|
||||||
systemd.packages = [ pkgs.pipewire ]
|
systemd.packages = [ cfg.package ]
|
||||||
++ lib.optional cfg.pulse.enable pkgs.pipewire.pulse;
|
++ lib.optional cfg.pulse.enable cfg.package.pulse;
|
||||||
|
|
||||||
# PipeWire depends on DBUS but doesn't list it. Without this booting
|
# PipeWire depends on DBUS but doesn't list it. Without this booting
|
||||||
# into a terminal results in the service crashing with an error.
|
# into a terminal results in the service crashing with an error.
|
||||||
systemd.user.sockets.pipewire.wantedBy = lib.mkIf cfg.socketActivation [ "sockets.target" ];
|
systemd.user.sockets.pipewire.wantedBy = lib.mkIf cfg.socketActivation [ "sockets.target" ];
|
||||||
systemd.user.sockets.pipewire-pulse.wantedBy = lib.mkIf (cfg.socketActivation && cfg.pulse.enable) ["sockets.target"];
|
systemd.user.sockets.pipewire-pulse.wantedBy = lib.mkIf (cfg.socketActivation && cfg.pulse.enable) ["sockets.target"];
|
||||||
systemd.user.services.pipewire.bindsTo = [ "dbus.service" ];
|
systemd.user.services.pipewire.bindsTo = [ "dbus.service" ];
|
||||||
services.udev.packages = [ pkgs.pipewire ];
|
services.udev.packages = [ cfg.package ];
|
||||||
|
|
||||||
# If any paths are updated here they must also be updated in the package test.
|
# If any paths are updated here they must also be updated in the package test.
|
||||||
sound.extraConfig = mkIf cfg.alsa.enable ''
|
environment.etc."alsa/conf.d/49-pipewire-modules.conf" = mkIf cfg.alsa.enable {
|
||||||
pcm_type.pipewire {
|
text = ''
|
||||||
libs.native = ${pkgs.pipewire.lib}/lib/alsa-lib/libasound_module_pcm_pipewire.so ;
|
pcm_type.pipewire {
|
||||||
${optionalString enable32BitAlsaPlugins
|
libs.native = ${cfg.package.lib}/lib/alsa-lib/libasound_module_pcm_pipewire.so ;
|
||||||
"libs.32Bit = ${pkgs.pkgsi686Linux.pipewire.lib}/lib/alsa-lib/libasound_module_pcm_pipewire.so ;"}
|
${optionalString enable32BitAlsaPlugins
|
||||||
}
|
"libs.32Bit = ${pkgs.pkgsi686Linux.pipewire.lib}/lib/alsa-lib/libasound_module_pcm_pipewire.so ;"}
|
||||||
pcm.!default {
|
}
|
||||||
@func getenv
|
ctl_type.pipewire {
|
||||||
vars [ PCM ]
|
libs.native = ${cfg.package.lib}/lib/alsa-lib/libasound_module_ctl_pipewire.so ;
|
||||||
default "plug:pipewire"
|
${optionalString enable32BitAlsaPlugins
|
||||||
playback_mode "-1"
|
"libs.32Bit = ${pkgs.pkgsi686Linux.pipewire.lib}/lib/alsa-lib/libasound_module_ctl_pipewire.so ;"}
|
||||||
capture_mode "-1"
|
}
|
||||||
}
|
'';
|
||||||
'';
|
};
|
||||||
environment.etc."alsa/conf.d/50-pipewire.conf" = mkIf cfg.alsa.enable {
|
environment.etc."alsa/conf.d/50-pipewire.conf" = mkIf cfg.alsa.enable {
|
||||||
source = "${pkgs.pipewire}/share/alsa/alsa.conf.d/50-pipewire.conf";
|
source = "${cfg.package}/share/alsa/alsa.conf.d/50-pipewire.conf";
|
||||||
|
};
|
||||||
|
environment.etc."alsa/conf.d/99-pipewire-default.conf" = mkIf cfg.alsa.enable {
|
||||||
|
source = "${cfg.package}/share/alsa/alsa.conf.d/99-pipewire-default.conf";
|
||||||
};
|
};
|
||||||
environment.sessionVariables.LD_LIBRARY_PATH =
|
environment.sessionVariables.LD_LIBRARY_PATH =
|
||||||
lib.optional cfg.jack.enable "/run/current-system/sw/lib/pipewire";
|
lib.optional cfg.jack.enable "/run/current-system/sw/lib/pipewire";
|
||||||
|
|
||||||
|
environment.etc."pipewire/pipewire.conf" = {
|
||||||
|
# Adapted from src/daemon/pipewire.conf.in
|
||||||
|
text = ''
|
||||||
|
set-prop link.max-buffers 16 # version < 3 clients can't handle more
|
||||||
|
|
||||||
|
add-spa-lib audio.convert* audioconvert/libspa-audioconvert
|
||||||
|
add-spa-lib api.alsa.* alsa/libspa-alsa
|
||||||
|
add-spa-lib api.v4l2.* v4l2/libspa-v4l2
|
||||||
|
add-spa-lib api.libcamera.* libcamera/libspa-libcamera
|
||||||
|
add-spa-lib api.bluez5.* bluez5/libspa-bluez5
|
||||||
|
add-spa-lib api.vulkan.* vulkan/libspa-vulkan
|
||||||
|
add-spa-lib api.jack.* jack/libspa-jack
|
||||||
|
add-spa-lib support.* support/libspa-support
|
||||||
|
|
||||||
|
load-module libpipewire-module-rtkit # rt.prio=20 rt.time.soft=200000 rt.time.hard=200000
|
||||||
|
load-module libpipewire-module-protocol-native
|
||||||
|
load-module libpipewire-module-profiler
|
||||||
|
load-module libpipewire-module-metadata
|
||||||
|
load-module libpipewire-module-spa-device-factory
|
||||||
|
load-module libpipewire-module-spa-node-factory
|
||||||
|
load-module libpipewire-module-client-node
|
||||||
|
load-module libpipewire-module-client-device
|
||||||
|
load-module libpipewire-module-portal
|
||||||
|
load-module libpipewire-module-access
|
||||||
|
load-module libpipewire-module-adapter
|
||||||
|
load-module libpipewire-module-link-factory
|
||||||
|
load-module libpipewire-module-session-manager
|
||||||
|
|
||||||
|
create-object spa-node-factory factory.name=support.node.driver node.name=Dummy priority.driver=8000
|
||||||
|
|
||||||
|
exec ${cfg.sessionManager} ${lib.concatStringsSep " " cfg.sessionManagerArguments}
|
||||||
|
|
||||||
|
${cfg.extraConfig}
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
environment.etc."pipewire/media-session.d/with-alsa" = mkIf cfg.alsa.enable { text = ""; };
|
||||||
|
environment.etc."pipewire/media-session.d/with-pulseaudio" = mkIf cfg.pulse.enable { text = ""; };
|
||||||
|
environment.etc."pipewire/media-session.d/with-jack" = mkIf cfg.jack.enable { text = ""; };
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -23,15 +23,6 @@ in {
|
||||||
default = null;
|
default = null;
|
||||||
description = "the thermald manual configuration file.";
|
description = "the thermald manual configuration file.";
|
||||||
};
|
};
|
||||||
|
|
||||||
adaptive = mkOption {
|
|
||||||
type = types.bool;
|
|
||||||
default = false;
|
|
||||||
description = ''
|
|
||||||
Whether to enable adaptive mode, only working on kernel versions greater than 5.8.
|
|
||||||
Thermald will detect this itself, safe to enable on kernel versions below 5.8.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -48,8 +39,8 @@ in {
|
||||||
--no-daemon \
|
--no-daemon \
|
||||||
${optionalString cfg.debug "--loglevel=debug"} \
|
${optionalString cfg.debug "--loglevel=debug"} \
|
||||||
${optionalString (cfg.configFile != null) "--config-file ${cfg.configFile}"} \
|
${optionalString (cfg.configFile != null) "--config-file ${cfg.configFile}"} \
|
||||||
${optionalString cfg.adaptive "--adaptive"} \
|
|
||||||
--dbus-enable
|
--dbus-enable
|
||||||
|
--adaptive
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
78
third_party/nixpkgs/nixos/modules/services/misc/n8n.nix
vendored
Normal file
78
third_party/nixpkgs/nixos/modules/services/misc/n8n.nix
vendored
Normal file
|
@ -0,0 +1,78 @@
|
||||||
|
{ config, pkgs, lib, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
|
||||||
|
let
|
||||||
|
cfg = config.services.n8n;
|
||||||
|
format = pkgs.formats.json {};
|
||||||
|
configFile = format.generate "n8n.json" cfg.settings;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.services.n8n = {
|
||||||
|
|
||||||
|
enable = mkEnableOption "n8n server";
|
||||||
|
|
||||||
|
openFirewall = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = false;
|
||||||
|
description = "Open ports in the firewall for the n8n web interface.";
|
||||||
|
};
|
||||||
|
|
||||||
|
settings = mkOption {
|
||||||
|
type = format.type;
|
||||||
|
default = {};
|
||||||
|
description = ''
|
||||||
|
Configuration for n8n, see <link xlink:href="https://docs.n8n.io/reference/configuration.html"/>
|
||||||
|
for supported values.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
services.n8n.settings = {
|
||||||
|
# We use this to open the firewall, so we need to know about the default at eval time
|
||||||
|
port = lib.mkDefault 5678;
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.services.n8n = {
|
||||||
|
description = "N8N service";
|
||||||
|
after = [ "network.target" ];
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
environment = {
|
||||||
|
# This folder must be writeable as the application is storing
|
||||||
|
# its data in it, so the StateDirectory is a good choice
|
||||||
|
N8N_USER_FOLDER = "/var/lib/n8n";
|
||||||
|
N8N_CONFIG_FILES = "${configFile}";
|
||||||
|
};
|
||||||
|
serviceConfig = {
|
||||||
|
Type = "simple";
|
||||||
|
ExecStart = "${pkgs.n8n}/bin/n8n";
|
||||||
|
Restart = "on-failure";
|
||||||
|
StateDirectory = "n8n";
|
||||||
|
|
||||||
|
# Basic Hardening
|
||||||
|
NoNewPrivileges = "yes";
|
||||||
|
PrivateTmp = "yes";
|
||||||
|
PrivateDevices = "yes";
|
||||||
|
DevicePolicy = "closed";
|
||||||
|
DynamicUser = "true";
|
||||||
|
ProtectSystem = "strict";
|
||||||
|
ProtectHome = "read-only";
|
||||||
|
ProtectControlGroups = "yes";
|
||||||
|
ProtectKernelModules = "yes";
|
||||||
|
ProtectKernelTunables = "yes";
|
||||||
|
RestrictAddressFamilies = "AF_UNIX AF_INET AF_INET6 AF_NETLINK";
|
||||||
|
RestrictNamespaces = "yes";
|
||||||
|
RestrictRealtime = "yes";
|
||||||
|
RestrictSUIDSGID = "yes";
|
||||||
|
MemoryDenyWriteExecute = "yes";
|
||||||
|
LockPersonality = "yes";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
networking.firewall = mkIf cfg.openFirewall {
|
||||||
|
allowedTCPPorts = [ cfg.settings.port ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
|
@ -70,6 +70,7 @@ in
|
||||||
description = "Zigbee2mqtt Service";
|
description = "Zigbee2mqtt Service";
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "multi-user.target" ];
|
||||||
after = [ "network.target" ];
|
after = [ "network.target" ];
|
||||||
|
environment.ZIGBEE2MQTT_DATA = cfg.dataDir;
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
ExecStart = "${cfg.package}/bin/zigbee2mqtt";
|
ExecStart = "${cfg.package}/bin/zigbee2mqtt";
|
||||||
User = "zigbee2mqtt";
|
User = "zigbee2mqtt";
|
||||||
|
|
|
@ -741,7 +741,7 @@ in
|
||||||
+ "'boot.loader.grub.mirroredBoots' to make the system bootable.";
|
+ "'boot.loader.grub.mirroredBoots' to make the system bootable.";
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
assertion = cfg.efiSupport || all (c: c < 2) (mapAttrsToList (_: c: c) bootDeviceCounters);
|
assertion = cfg.efiSupport || all (c: c < 2) (mapAttrsToList (n: c: if n == "nodev" then 0 else c) bootDeviceCounters);
|
||||||
message = "You cannot have duplicated devices in mirroredBoots";
|
message = "You cannot have duplicated devices in mirroredBoots";
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
|
|
|
@ -231,6 +231,7 @@ in
|
||||||
mysql-autobackup = handleTest ./mysql/mysql-autobackup.nix {};
|
mysql-autobackup = handleTest ./mysql/mysql-autobackup.nix {};
|
||||||
mysql-backup = handleTest ./mysql/mysql-backup.nix {};
|
mysql-backup = handleTest ./mysql/mysql-backup.nix {};
|
||||||
mysql-replication = handleTest ./mysql/mysql-replication.nix {};
|
mysql-replication = handleTest ./mysql/mysql-replication.nix {};
|
||||||
|
n8n = handleTest ./n8n.nix {};
|
||||||
nagios = handleTest ./nagios.nix {};
|
nagios = handleTest ./nagios.nix {};
|
||||||
nano = handleTest ./nano.nix {};
|
nano = handleTest ./nano.nix {};
|
||||||
nar-serve = handleTest ./nar-serve.nix {};
|
nar-serve = handleTest ./nar-serve.nix {};
|
||||||
|
|
20
third_party/nixpkgs/nixos/tests/cloud-init.nix
vendored
20
third_party/nixpkgs/nixos/tests/cloud-init.nix
vendored
|
@ -51,29 +51,31 @@ in makeTest {
|
||||||
networking.hostName = "";
|
networking.hostName = "";
|
||||||
};
|
};
|
||||||
testScript = ''
|
testScript = ''
|
||||||
machine.wait_for_unit("cloud-init.service")
|
# To wait until cloud-init terminates its run
|
||||||
machine.succeed("cat /tmp/cloudinit-write-file | grep -q 'cloudinit'")
|
unnamed.wait_for_unit("cloud-final.service")
|
||||||
|
|
||||||
|
unnamed.succeed("cat /tmp/cloudinit-write-file | grep -q 'cloudinit'")
|
||||||
|
|
||||||
# install snakeoil ssh key and provision .ssh/config file
|
# install snakeoil ssh key and provision .ssh/config file
|
||||||
machine.succeed("mkdir -p ~/.ssh")
|
unnamed.succeed("mkdir -p ~/.ssh")
|
||||||
machine.succeed(
|
unnamed.succeed(
|
||||||
"cat ${snakeOilPrivateKey} > ~/.ssh/id_snakeoil"
|
"cat ${snakeOilPrivateKey} > ~/.ssh/id_snakeoil"
|
||||||
)
|
)
|
||||||
machine.succeed("chmod 600 ~/.ssh/id_snakeoil")
|
unnamed.succeed("chmod 600 ~/.ssh/id_snakeoil")
|
||||||
|
|
||||||
machine.wait_for_unit("sshd.service")
|
unnamed.wait_for_unit("sshd.service")
|
||||||
|
|
||||||
# we should be able to log in as the root user, as well as the created nixos user
|
# we should be able to log in as the root user, as well as the created nixos user
|
||||||
machine.succeed(
|
unnamed.succeed(
|
||||||
"ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentityFile=~/.ssh/id_snakeoil root@localhost 'true'"
|
"ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentityFile=~/.ssh/id_snakeoil root@localhost 'true'"
|
||||||
)
|
)
|
||||||
machine.succeed(
|
unnamed.succeed(
|
||||||
"ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentityFile=~/.ssh/id_snakeoil nixos@localhost 'true'"
|
"ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentityFile=~/.ssh/id_snakeoil nixos@localhost 'true'"
|
||||||
)
|
)
|
||||||
|
|
||||||
# test changing hostname via cloud-init worked
|
# test changing hostname via cloud-init worked
|
||||||
assert (
|
assert (
|
||||||
machine.succeed(
|
unnamed.succeed(
|
||||||
"ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentityFile=~/.ssh/id_snakeoil nixos@localhost 'hostname'"
|
"ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentityFile=~/.ssh/id_snakeoil nixos@localhost 'hostname'"
|
||||||
).strip()
|
).strip()
|
||||||
== "test"
|
== "test"
|
||||||
|
|
9
third_party/nixpkgs/nixos/tests/firejail.nix
vendored
9
third_party/nixpkgs/nixos/tests/firejail.nix
vendored
|
@ -11,6 +11,10 @@ import ./make-test-python.nix ({ pkgs, ...} : {
|
||||||
enable = true;
|
enable = true;
|
||||||
wrappedBinaries = {
|
wrappedBinaries = {
|
||||||
bash-jailed = "${pkgs.bash}/bin/bash";
|
bash-jailed = "${pkgs.bash}/bin/bash";
|
||||||
|
bash-jailed2 = {
|
||||||
|
executable = "${pkgs.bash}/bin/bash";
|
||||||
|
extraArgs = [ "--private=~/firejail-home" ];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -53,6 +57,11 @@ import ./make-test-python.nix ({ pkgs, ...} : {
|
||||||
)
|
)
|
||||||
machine.fail("sudo -u alice bash-jailed -c 'cat ~/my-secrets/secret' | grep -q s3cret")
|
machine.fail("sudo -u alice bash-jailed -c 'cat ~/my-secrets/secret' | grep -q s3cret")
|
||||||
|
|
||||||
|
# Test extraArgs
|
||||||
|
machine.succeed("sudo -u alice mkdir /home/alice/firejail-home")
|
||||||
|
machine.succeed("sudo -u alice bash-jailed2 -c 'echo test > /home/alice/foo'")
|
||||||
|
machine.fail("sudo -u alice cat /home/alice/foo")
|
||||||
|
machine.succeed("sudo -u alice cat /home/alice/firejail-home/foo | grep test")
|
||||||
|
|
||||||
# Test path acl with firejail executable
|
# Test path acl with firejail executable
|
||||||
machine.succeed("sudo -u alice firejail -- bash -c 'cat ~/public' | grep -q publ1c")
|
machine.succeed("sudo -u alice firejail -- bash -c 'cat ~/public' | grep -q publ1c")
|
||||||
|
|
25
third_party/nixpkgs/nixos/tests/n8n.nix
vendored
Normal file
25
third_party/nixpkgs/nixos/tests/n8n.nix
vendored
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
import ./make-test-python.nix ({ lib, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
|
||||||
|
let
|
||||||
|
port = 5678;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
name = "n8n";
|
||||||
|
meta.maintainers = with maintainers; [ freezeboy ];
|
||||||
|
|
||||||
|
nodes.machine =
|
||||||
|
{ pkgs, ... }:
|
||||||
|
{
|
||||||
|
services.n8n = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
testScript = ''
|
||||||
|
machine.wait_for_unit("n8n.service")
|
||||||
|
machine.wait_for_open_port("${toString port}")
|
||||||
|
machine.succeed("curl --fail http://localhost:${toString port}/")
|
||||||
|
'';
|
||||||
|
})
|
|
@ -32,6 +32,11 @@ mkDerivation rec {
|
||||||
url = "https://github.com/falkTX/Cadence/commit/1fd3275e7daf4b75f59ef1f85a9e2e93bd5c0731.patch";
|
url = "https://github.com/falkTX/Cadence/commit/1fd3275e7daf4b75f59ef1f85a9e2e93bd5c0731.patch";
|
||||||
sha256 = "0q791jsh8vmjg678dzhbp1ykq8xrrlxl1mbgs3g8if1ccj210vd8";
|
sha256 = "0q791jsh8vmjg678dzhbp1ykq8xrrlxl1mbgs3g8if1ccj210vd8";
|
||||||
})
|
})
|
||||||
|
# Fix build with Qt 5.15
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://github.com/falkTX/Cadence/commit/c167f35fbb76c4246c730b29262a59da73010412.patch";
|
||||||
|
sha256 = "1gm9q6gx03sla5vcnisznc95pjdi2703f8b3mj2kby9rfx2pylyh";
|
||||||
|
})
|
||||||
];
|
];
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
|
@ -96,7 +101,5 @@ mkDerivation rec {
|
||||||
license = stdenv.lib.licenses.gpl2Plus;
|
license = stdenv.lib.licenses.gpl2Plus;
|
||||||
maintainers = with stdenv.lib.maintainers; [ worldofpeace ];
|
maintainers = with stdenv.lib.maintainers; [ worldofpeace ];
|
||||||
platforms = [ "x86_64-linux" ];
|
platforms = [ "x86_64-linux" ];
|
||||||
# Needs QT 5.14
|
|
||||||
broken = true;
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{ stdenv, fetchFromGitHub
|
{ stdenv, fetchFromGitHub
|
||||||
, llvm, qt48Full, qrencode, libmicrohttpd, libjack2, alsaLib, faust, curl
|
, llvm, qt48Full, qrencode, libmicrohttpd_0_9_70, libjack2, alsaLib, faust, curl
|
||||||
, bc, coreutils, which, libsndfile, pkg-config
|
, bc, coreutils, which, libsndfile, pkg-config
|
||||||
}:
|
}:
|
||||||
|
|
||||||
|
@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
llvm qt48Full qrencode libmicrohttpd libjack2 alsaLib faust curl
|
llvm qt48Full qrencode libmicrohttpd_0_9_70 libjack2 alsaLib faust curl
|
||||||
bc coreutils which libsndfile pkg-config
|
bc coreutils which libsndfile pkg-config
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
|
@ -3,13 +3,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "geonkick";
|
pname = "geonkick";
|
||||||
version = "2.5.0";
|
version = "2.5.1";
|
||||||
|
|
||||||
src = fetchFromGitLab {
|
src = fetchFromGitLab {
|
||||||
owner = "iurie-sw";
|
owner = "iurie-sw";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "19zbz4v2n5ph4af721xls7ignmis2q2yqyd0m97g9b3njrgnfy3n";
|
sha256 = "14svwrxqw15j6wjy3x8s28yyrafa31bm7d1ns5h6gvpndccwc1kw";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake pkg-config ];
|
nativeBuildInputs = [ cmake pkg-config ];
|
||||||
|
|
|
@ -14,13 +14,13 @@
|
||||||
|
|
||||||
mkDerivation rec {
|
mkDerivation rec {
|
||||||
pname = "MellowPlayer";
|
pname = "MellowPlayer";
|
||||||
version = "3.6.6";
|
version = "3.6.7";
|
||||||
|
|
||||||
src = fetchFromGitLab {
|
src = fetchFromGitLab {
|
||||||
owner = "ColinDuquesnoy";
|
owner = "ColinDuquesnoy";
|
||||||
repo = "MellowPlayer";
|
repo = "MellowPlayer";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "14y175fl6wg04fz0fhx553r8z3nwqrs2lr3rdls70bhwx5x6lavw";
|
sha256 = "1p0z8hkbxaxrqjmknjwxb0mpf3xdssik3m5cwrsv1881k1x2x5qs";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake pkgconfig ];
|
nativeBuildInputs = [ cmake pkgconfig ];
|
||||||
|
|
53
third_party/nixpkgs/pkgs/applications/audio/mympd/default.nix
vendored
Normal file
53
third_party/nixpkgs/pkgs/applications/audio/mympd/default.nix
vendored
Normal file
|
@ -0,0 +1,53 @@
|
||||||
|
{ stdenv
|
||||||
|
, fetchFromGitHub
|
||||||
|
, cmake
|
||||||
|
, pkg-config
|
||||||
|
, mpd_clientlib
|
||||||
|
, openssl
|
||||||
|
, lua5_3
|
||||||
|
, libid3tag
|
||||||
|
, flac
|
||||||
|
, mongoose
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "mympd";
|
||||||
|
version = "6.8.1";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "jcorporation";
|
||||||
|
repo = "myMPD";
|
||||||
|
rev = "v${version}";
|
||||||
|
sha256 = "dIGg2mLxN6XBDH3GFXtF7nB9a/zf/qMlPCvIulFRXn8=";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
pkg-config
|
||||||
|
cmake
|
||||||
|
];
|
||||||
|
buildInputs = [
|
||||||
|
mpd_clientlib
|
||||||
|
openssl
|
||||||
|
lua5_3
|
||||||
|
libid3tag
|
||||||
|
flac
|
||||||
|
];
|
||||||
|
|
||||||
|
cmakeFlags = [
|
||||||
|
"-DENABLE_LUA=ON"
|
||||||
|
# Otherwise, it tries to parse $out/etc/mympd.conf on startup.
|
||||||
|
"-DCMAKE_INSTALL_SYSCONFDIR=/etc"
|
||||||
|
# similarly here
|
||||||
|
"-DCMAKE_INSTALL_LOCALSTATEDIR=/var/lib/mympd"
|
||||||
|
];
|
||||||
|
# See https://github.com/jcorporation/myMPD/issues/315
|
||||||
|
hardeningDisable = [ "strictoverflow" ];
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
homepage = "https://jcorporation.github.io/mympd";
|
||||||
|
description = "A standalone and mobile friendly web mpd client with a tiny footprint and advanced features";
|
||||||
|
maintainers = [ stdenv.lib.maintainers.doronbehar ];
|
||||||
|
platforms = stdenv.lib.platforms.linux;
|
||||||
|
license = stdenv.lib.licenses.gpl2Plus;
|
||||||
|
};
|
||||||
|
}
|
|
@ -8,13 +8,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "pt2-clone";
|
pname = "pt2-clone";
|
||||||
version = "1.25_fix";
|
version = "1.26_fix";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "8bitbubsy";
|
owner = "8bitbubsy";
|
||||||
repo = "pt2-clone";
|
repo = "pt2-clone";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "1slv8qjxsj67z6984nl67g53mq0sdls2cbikvfjmgmad1wkh98ma";
|
sha256 = "1ikhgagniiq4irsy8i3g64m6cl61lnfvs163n8gs4hm426yckyb8";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake ];
|
nativeBuildInputs = [ cmake ];
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{ stdenv, fetchFromGitHub, rustPlatform, pkgconfig, openssl
|
{ stdenv, fetchFromGitHub, rustPackages_1_45, pkgconfig, openssl
|
||||||
, withALSA ? true, alsaLib ? null
|
, withALSA ? true, alsaLib ? null
|
||||||
, withPulseAudio ? false, libpulseaudio ? null
|
, withPulseAudio ? false, libpulseaudio ? null
|
||||||
, withPortAudio ? false, portaudio ? null
|
, withPortAudio ? false, portaudio ? null
|
||||||
|
@ -7,7 +7,10 @@
|
||||||
, dbus ? null
|
, dbus ? null
|
||||||
}:
|
}:
|
||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
# rust >= 1.48 causes a panic within spotifyd on music playback. as long as
|
||||||
|
# there is no upstream fix for the issue we use an older version of rust.
|
||||||
|
# Upstream issue: https://github.com/Spotifyd/spotifyd/issues/719
|
||||||
|
rustPackages_1_45.rustPlatform.buildRustPackage rec {
|
||||||
pname = "spotifyd";
|
pname = "spotifyd";
|
||||||
version = "0.2.24";
|
version = "0.2.24";
|
||||||
|
|
||||||
|
|
|
@ -4,11 +4,11 @@ cups, vivaldi-ffmpeg-codecs, libpulseaudio, at-spi2-core }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "exodus";
|
pname = "exodus";
|
||||||
version = "20.11.23";
|
version = "20.12.4";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://downloads.exodus.io/releases/${pname}-linux-x64-${version}.zip";
|
url = "https://downloads.exodus.io/releases/${pname}-linux-x64-${version}.zip";
|
||||||
sha256 = "0hcvgph2m4nbrarhw2cggc8q5jxwnibiz2mbkypgizphk5svdj9l";
|
sha256 = "1j1iqmcbwfj72l7g83ah701bipas9cqwazyhh0af5hp2ckj9nmmf";
|
||||||
};
|
};
|
||||||
|
|
||||||
sourceRoot = ".";
|
sourceRoot = ".";
|
||||||
|
|
|
@ -2,12 +2,12 @@
|
||||||
|
|
||||||
let
|
let
|
||||||
pname = "ledger-live-desktop";
|
pname = "ledger-live-desktop";
|
||||||
version = "2.17.1";
|
version = "2.18.0";
|
||||||
name = "${pname}-${version}";
|
name = "${pname}-${version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/LedgerHQ/${pname}/releases/download/v${version}/${pname}-${version}-linux-x86_64.AppImage";
|
url = "https://github.com/LedgerHQ/${pname}/releases/download/v${version}/${pname}-${version}-linux-x86_64.AppImage";
|
||||||
sha256 = "1r0cl4jfgg0b3zr46bh9dhhg2qgsh3xj99w3ryyjdxydfvychvz8";
|
sha256 = "19sx9n5mij68v07vy65h1c16rgbpll3kagr437cjb7r95k3nk2zn";
|
||||||
};
|
};
|
||||||
|
|
||||||
appimageContents = appimageTools.extractType2 {
|
appimageContents = appimageTools.extractType2 {
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
{ stdenv, wrapQtAppsHook, makeDesktopItem
|
{ stdenv, wrapQtAppsHook, makeDesktopItem
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
, fetchpatch
|
|
||||||
, cmake, qttools, pkgconfig
|
, cmake, qttools, pkgconfig
|
||||||
, qtbase, qtdeclarative, qtgraphicaleffects
|
, qtbase, qtdeclarative, qtgraphicaleffects
|
||||||
, qtmultimedia, qtxmlpatterns
|
, qtmultimedia, qtxmlpatterns
|
||||||
|
@ -28,13 +27,13 @@ in
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "monero-gui";
|
pname = "monero-gui";
|
||||||
version = "0.17.1.4";
|
version = "0.17.1.5";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "monero-project";
|
owner = "monero-project";
|
||||||
repo = "monero-gui";
|
repo = "monero-gui";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "1ixjfdlvwr2an2s9jaql240bk7jpq5hhm5c4hww0bicyy3fp12ng";
|
sha256 = "0qlcqli0wvrjfy89mbgh1hpmk60dxgn5sws93h8lhgyfwx557iw0";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
@ -59,14 +58,7 @@ stdenv.mkDerivation rec {
|
||||||
chmod -R +w source/monero
|
chmod -R +w source/monero
|
||||||
'';
|
'';
|
||||||
|
|
||||||
patches = [
|
patches = [ ./move-log-file.patch ];
|
||||||
./move-log-file.patch
|
|
||||||
# fix build failure due to invalid use of CMAKE_PREFIX_PATH
|
|
||||||
(fetchpatch {
|
|
||||||
url = "https://github.com/monero-project/monero-gui/commit/ef2be82c21b0934522ad8e110805b66f5948da1f.patch";
|
|
||||||
sha256 = "1rhazk2xwa5dv1cmkrkq8yr08qxslg4k929cvlliabrx20kbr5z5";
|
|
||||||
})
|
|
||||||
];
|
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
# set monero-gui version
|
# set monero-gui version
|
||||||
|
|
|
@ -17,13 +17,13 @@ assert trezorSupport -> all (x: x!=null) [ libusb1 protobuf python3 ];
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "monero";
|
pname = "monero";
|
||||||
version = "0.17.1.3";
|
version = "0.17.1.5";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "monero-project";
|
owner = "monero-project";
|
||||||
repo = "monero";
|
repo = "monero";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "1ddkdfd8i5q509qziwcx1f6nm8axs4a1ppzv2y5lgsqpq375if6j";
|
sha256 = "0yy9n2qng02j314h8fh5n0mcy6vpdks0yk4d8ifn8hj03f3g2c8b";
|
||||||
fetchSubmodules = true;
|
fetchSubmodules = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "turbo-geth";
|
pname = "turbo-geth";
|
||||||
version = "2020.11.04";
|
version = "2020.12.01";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "ledgerwatch";
|
owner = "ledgerwatch";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "1iidj7cvpazk2v419l6k7h67rkx0mni3fcxfjpwrp0815fy1c2ri";
|
sha256 = "0l1qj10vhfkrk66zihz8m24pnyj8jbb65a7amvphp07r199swy2a";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = "16vawkky612zf45d8dhipjmhrprmi28z9wdcnjy07x3bxdyfbhfr";
|
vendorSha256 = "16vawkky612zf45d8dhipjmhrprmi28z9wdcnjy07x3bxdyfbhfr";
|
||||||
|
|
|
@ -14,14 +14,14 @@ let
|
||||||
sha256Hash = "sha256-aAMhhJWcVFdvEZt8fI3tF12Eg3TzlU+kUFMNeCYN1os=";
|
sha256Hash = "sha256-aAMhhJWcVFdvEZt8fI3tF12Eg3TzlU+kUFMNeCYN1os=";
|
||||||
};
|
};
|
||||||
betaVersion = {
|
betaVersion = {
|
||||||
version = "4.1.0.18"; # "Android Studio 4.1 RC 3"
|
version = "4.2.0.17"; # "Android Studio 4.2 Beta 1"
|
||||||
build = "201.6823847";
|
build = "202.6987402";
|
||||||
sha256Hash = "sha256-qbxmR9g8DSKzcP09bJuc+am79BSXWG39UQxFEb1bZ88=";
|
sha256Hash = "07qr0b1zdzpc1nsi6593518dxp89dcjfp4lznb1d3id8vbqla4i7";
|
||||||
};
|
};
|
||||||
latestVersion = { # canary & dev
|
latestVersion = { # canary & dev
|
||||||
version = "4.2.0.16"; # "Android Studio 4.2 Canary 16"
|
version = "2020.3.1.2"; # "Android Studio Arctic Fox Canary 2"
|
||||||
build = "202.6939830";
|
build = "202.7006259";
|
||||||
sha256Hash = "sha256-2Xh0GR4BHZI6ofdyMI2icrztI2BmiHWT+1bEZIZ58IE=";
|
sha256Hash = "1d4brfx1fh1vlcjkb0x8hjj2qgz2dl5wbaiy8dj8w03vcf493nc5";
|
||||||
};
|
};
|
||||||
in {
|
in {
|
||||||
# Attributes are named by their corresponding release channels
|
# Attributes are named by their corresponding release channels
|
||||||
|
|
|
@ -154,6 +154,8 @@ in stdenv.mkDerivation {
|
||||||
'' + lib.optionalString withNS ''
|
'' + lib.optionalString withNS ''
|
||||||
mkdir -p $out/Applications
|
mkdir -p $out/Applications
|
||||||
mv nextstep/Emacs.app $out/Applications
|
mv nextstep/Emacs.app $out/Applications
|
||||||
|
'' + lib.optionalString (nativeComp && withNS) ''
|
||||||
|
ln -snf $out/lib/emacs/*/native-lisp $out/Applications/Emacs.app/Contents/native-lisp
|
||||||
'';
|
'';
|
||||||
|
|
||||||
postFixup = lib.concatStringsSep "\n" [
|
postFixup = lib.concatStringsSep "\n" [
|
||||||
|
|
|
@ -21,6 +21,6 @@ buildGoModule rec {
|
||||||
description = "Render markdown on the CLI, with pizzazz!";
|
description = "Render markdown on the CLI, with pizzazz!";
|
||||||
homepage = "https://github.com/charmbracelet/glow";
|
homepage = "https://github.com/charmbracelet/glow";
|
||||||
license = licenses.mit;
|
license = licenses.mit;
|
||||||
maintainers = with maintainers; [ ehmry Br1ght0ne penguwin ];
|
maintainers = with maintainers; [ Br1ght0ne penguwin ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
38
third_party/nixpkgs/pkgs/applications/editors/greenfoot/default.nix
vendored
Normal file
38
third_party/nixpkgs/pkgs/applications/editors/greenfoot/default.nix
vendored
Normal file
|
@ -0,0 +1,38 @@
|
||||||
|
{ stdenv, fetchurl, makeWrapper, jdk }:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "greenfoot";
|
||||||
|
version = "3.6.1";
|
||||||
|
src = fetchurl {
|
||||||
|
# We use the deb here. First instinct might be to go for the "generic" JAR
|
||||||
|
# download, but that is actually a graphical installer that is much harder
|
||||||
|
# to unpack than the deb.
|
||||||
|
url = "https://www.greenfoot.org/download/files/Greenfoot-linux-${builtins.replaceStrings ["."] [""] version}.deb";
|
||||||
|
sha256 = "112h6plpclj8kbv093m4pcczljhpd8d47d7a2am1yfgbyckx6hf0";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [ makeWrapper ];
|
||||||
|
|
||||||
|
unpackPhase = ''
|
||||||
|
ar xf $src
|
||||||
|
tar xf data.tar.xz
|
||||||
|
'';
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
mkdir -p $out
|
||||||
|
cp -r usr/* $out
|
||||||
|
rm -r $out/share/greenfoot/jdk
|
||||||
|
rm -r $out/share/greenfoot/javafx
|
||||||
|
|
||||||
|
makeWrapper ${jdk}/bin/java $out/bin/greenfoot \
|
||||||
|
--add-flags "-Djavafx.embed.singleThread=true -Dawt.useSystemAAFontSettings=on -Xmx512M -cp \"$out/share/greenfoot/bluej.jar\" bluej.Boot -greenfoot=true -bluej.compiler.showunchecked=false -greenfoot.scenarios=$out/share/doc/Greenfoot/scenarios -greenfoot.url.javadoc=file://$out/share/doc/Greenfoot/API"
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
description = "A simple integrated development environment for Java";
|
||||||
|
homepage = "https://www.greenfoot.org/";
|
||||||
|
license = licenses.gpl2ClasspathPlus;
|
||||||
|
maintainers = [ maintainers.charvp ];
|
||||||
|
platforms = platforms.unix;
|
||||||
|
};
|
||||||
|
}
|
|
@ -2,11 +2,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "kdev-php";
|
pname = "kdev-php";
|
||||||
version = "5.5.2";
|
version = "5.6.0";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/KDE/${pname}/archive/v${version}.tar.gz";
|
url = "https://github.com/KDE/${pname}/archive/v${version}.tar.gz";
|
||||||
sha256 = "0z32x0297g078jk3jhzb4vrf8jhw0qprvqzm9p097h8x0026w42l";
|
sha256 = "1j5m9mhjzp2r4wdwnnnckms8ic536s6y0iyry2zdndbsy215hqlz";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake extra-cmake-modules ];
|
nativeBuildInputs = [ cmake extra-cmake-modules ];
|
||||||
|
|
|
@ -2,11 +2,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "kdev-python";
|
pname = "kdev-python";
|
||||||
version = "5.5.2";
|
version = "5.6.0";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/KDE/${pname}/archive/v${version}.tar.gz";
|
url = "https://github.com/KDE/${pname}/archive/v${version}.tar.gz";
|
||||||
sha256 = "1qxvsz19iv5fr0nvz75b13knmsbkhkgvlvrhip8y4j66ypscs652";
|
sha256 = "1bm6jk7gkl4vi579x99mja4znrzzp15zk66ss600dn8aq11jrxv2";
|
||||||
};
|
};
|
||||||
|
|
||||||
cmakeFlags = [
|
cmakeFlags = [
|
||||||
|
|
|
@ -10,11 +10,11 @@
|
||||||
|
|
||||||
mkDerivation rec {
|
mkDerivation rec {
|
||||||
pname = "kdevelop";
|
pname = "kdevelop";
|
||||||
version = "5.5.2";
|
version = "5.6.0";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://kde/stable/${pname}/${version}/src/${pname}-${version}.tar.xz";
|
url = "mirror://kde/stable/${pname}/${version}/src/${pname}-${version}.tar.xz";
|
||||||
sha256 = "1nkl3z1n1l7ly2zvmbx2sdhx5q72wcvpwhzsz3qgw1474qd9i3i2";
|
sha256 = "0cpmavxz5fi0f1rjinvn6id1nplvjwg00l0n36s0ybygqkacgb9q";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
@ -6,13 +6,13 @@
|
||||||
|
|
||||||
mkDerivation rec {
|
mkDerivation rec {
|
||||||
pname = "sigil";
|
pname = "sigil";
|
||||||
version = "1.4.2";
|
version = "1.4.3";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
repo = "Sigil";
|
repo = "Sigil";
|
||||||
owner = "Sigil-Ebook";
|
owner = "Sigil-Ebook";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "1vn444ax5af1gbhkm9lz46jc7zi4grf16cb4wqyb6hvgj2gbl0iw";
|
sha256 = "1hk8kmhvkwfimbxzhwbnb8qdpf4n36cdzl9wfvi574i9pps36hnz";
|
||||||
};
|
};
|
||||||
|
|
||||||
pythonPath = with python3Packages; [ lxml ];
|
pythonPath = with python3Packages; [ lxml ];
|
||||||
|
|
|
@ -10,14 +10,14 @@
|
||||||
|
|
||||||
pythonPackages.buildPythonPackage {
|
pythonPackages.buildPythonPackage {
|
||||||
pname = "hydrus";
|
pname = "hydrus";
|
||||||
version = "413";
|
version = "420";
|
||||||
format = "other";
|
format = "other";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "hydrusnetwork";
|
owner = "hydrusnetwork";
|
||||||
repo = "hydrus";
|
repo = "hydrus";
|
||||||
rev = "9fbed11bef499e01a6799b298bea7d0967d30430";
|
rev = "067c4862a0ed8dd9264b464c69975b520139809f";
|
||||||
sha256 = "1dl7qpzmlxl376lzm0chmwvf4nl55wz6fwcsw0ikb33rm8r33gq4";
|
sha256 = "12x0rv2yxsczdaxvpb5ggf4jwzjd1vd7ml0r61s4342zwvjrhji9";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
@ -5,11 +5,11 @@ watchdog, wtforms }:
|
||||||
|
|
||||||
python3.pkgs.buildPythonApplication rec {
|
python3.pkgs.buildPythonApplication rec {
|
||||||
pname = "archivy";
|
pname = "archivy";
|
||||||
version = "0.8.5";
|
version = "0.9.2";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
sha256 = "144ckgxjaw29yp5flyxd1rnkm7hlim4zgy6xng7x0a9j54h527iq";
|
sha256 = "5cb760da57dc9dcdd62c0af824993d1715ec7035915629b4046d8bf50442756c";
|
||||||
};
|
};
|
||||||
|
|
||||||
# Relax some dependencies
|
# Relax some dependencies
|
||||||
|
|
|
@ -3,13 +3,13 @@
|
||||||
|
|
||||||
mkDerivation rec {
|
mkDerivation rec {
|
||||||
pname = "AusweisApp2";
|
pname = "AusweisApp2";
|
||||||
version = "1.20.2";
|
version = "1.22.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "Governikus";
|
owner = "Governikus";
|
||||||
repo = "AusweisApp2";
|
repo = "AusweisApp2";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "1vibk3wmn54qr2mwz537hrr959y0r1zabp0gsijhzj2mk68g9pnb";
|
sha256 = "00isb8xcbm419nvxx2ri0n8x5d403733h2whjqjcd3hmpx3x4q1h";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake pkgconfig ];
|
nativeBuildInputs = [ cmake pkgconfig ];
|
||||||
|
|
|
@ -1,26 +1,27 @@
|
||||||
{ mkDerivation, lib, fetchFromGitHub, cmake, python3, qtbase, qtquickcontrols2, qtgraphicaleffects, curaengine, plugins ? [] }:
|
{ mkDerivation, lib, fetchFromGitHub, cmake, python3, qtbase,
|
||||||
|
qtquickcontrols2, qtgraphicaleffects, curaengine, plugins ? [] }:
|
||||||
|
|
||||||
mkDerivation rec {
|
mkDerivation rec {
|
||||||
pname = "cura";
|
pname = "cura";
|
||||||
version = "4.7.1";
|
version = "4.8.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "Ultimaker";
|
owner = "Ultimaker";
|
||||||
repo = "Cura";
|
repo = "Cura";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "19an168iad3cb5w8i71c0wbr79qnz5qnpxqx1j6dgh64qz6ffn2r";
|
sha256 = "060fqzspipm93ks0inrj7yrj5wmvkdfv8xaxrv22590yb9f95s9m";
|
||||||
};
|
};
|
||||||
|
|
||||||
materials = fetchFromGitHub {
|
materials = fetchFromGitHub {
|
||||||
owner = "Ultimaker";
|
owner = "Ultimaker";
|
||||||
repo = "fdm_materials";
|
repo = "fdm_materials";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "1w6i0dlff8b30q987x3y0zv8847fc8ppfcr9vi982msmv284c89z";
|
sha256 = "0hi9w1fsnazlr0vvxdr3alsdb8m1vjjfp5zhmlz4kyyxhsy3bc33";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ qtbase qtquickcontrols2 qtgraphicaleffects ];
|
buildInputs = [ qtbase qtquickcontrols2 qtgraphicaleffects ];
|
||||||
propagatedBuildInputs = with python3.pkgs; [
|
propagatedBuildInputs = with python3.pkgs; [
|
||||||
libsavitar numpy-stl pyserial requests uranium zeroconf
|
libsavitar numpy-stl pyserial requests uranium zeroconf pynest2d
|
||||||
sentry-sdk trimesh
|
sentry-sdk trimesh
|
||||||
] ++ plugins;
|
] ++ plugins;
|
||||||
nativeBuildInputs = [ cmake python3.pkgs.wrapPython ];
|
nativeBuildInputs = [ cmake python3.pkgs.wrapPython ];
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "curaengine";
|
pname = "curaengine";
|
||||||
version = "4.7.1";
|
version = "4.8.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "Ultimaker";
|
owner = "Ultimaker";
|
||||||
repo = "CuraEngine";
|
repo = "CuraEngine";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "177fk6j4gn3ssi8j1qxj8p4486f7jkz328vc75agxnh7vhd4mwsm";
|
sha256 = "083l327ry6hv3yaa1p8dx1hx7fm12b0lh5nlbshxjyym0vi15rw2";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake ];
|
nativeBuildInputs = [ cmake ];
|
||||||
|
|
|
@ -16,6 +16,10 @@ buildGoModule rec {
|
||||||
|
|
||||||
vendorSha256 = "1552k85z4s6gv7sss7dccv3h8x22j2sr12icp6s7s0a3i4iwyksw";
|
vendorSha256 = "1552k85z4s6gv7sss7dccv3h8x22j2sr12icp6s7s0a3i4iwyksw";
|
||||||
|
|
||||||
|
buildFlagsArray = ''
|
||||||
|
-ldflags=-s -w -X github.com/tomwright/dasel/internal.Version=${version}
|
||||||
|
'';
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
description = "Query and update data structures from the command line";
|
description = "Query and update data structures from the command line";
|
||||||
longDescription = ''
|
longDescription = ''
|
||||||
|
|
|
@ -19,7 +19,7 @@
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
version = "4.0.5";
|
version = "4.0.6";
|
||||||
|
|
||||||
# electrum is not compatible with dnspython 2.0.0 yet
|
# electrum is not compatible with dnspython 2.0.0 yet
|
||||||
# use the latest 1.x release instead
|
# use the latest 1.x release instead
|
||||||
|
@ -43,7 +43,7 @@ let
|
||||||
owner = "spesmilo";
|
owner = "spesmilo";
|
||||||
repo = "electrum";
|
repo = "electrum";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "0fdsgxzgsxvx6hhjag894nzzdfq989bx1d4anljzcz2ppy4ivpxg";
|
sha256 = "0mdbg2sq56nv0hx0rrcbgrv1lv89nqc6cqigivgk665hhjm4v5kq";
|
||||||
|
|
||||||
extraPostFetch = ''
|
extraPostFetch = ''
|
||||||
mv $out ./all
|
mv $out ./all
|
||||||
|
@ -58,7 +58,7 @@ py.pkgs.buildPythonApplication {
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://download.electrum.org/${version}/Electrum-${version}.tar.gz";
|
url = "https://download.electrum.org/${version}/Electrum-${version}.tar.gz";
|
||||||
sha256 = "06ml9lwa5k2dp56sm5s7dsl6qirqmgim7rn853cqcq9n45z41437";
|
sha256 = "0sp8p720g3rqnh52ddhaw2v4hjgpxcwbackw9qc1g9xac1q0942d";
|
||||||
};
|
};
|
||||||
|
|
||||||
postUnpack = ''
|
postUnpack = ''
|
||||||
|
|
|
@ -1,16 +1,32 @@
|
||||||
{ fetchurl, stdenv, pkg-config, wrapGAppsHook, curl, gnome2, gpsd, gtk2
|
{ stdenv, fetchbzr, autoreconfHook, texinfo, help2man, imagemagick, pkg-config
|
||||||
|
, curl, gnome2, gpsd, gtk2, wrapGAppsHook
|
||||||
, intltool, libexif, python3Packages, sqlite }:
|
, intltool, libexif, python3Packages, sqlite }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
let
|
||||||
pname = "foxtrotgps";
|
srcs = {
|
||||||
version = "1.2.2";
|
foxtrot = fetchbzr {
|
||||||
|
url = "lp:foxtrotgps";
|
||||||
src = fetchurl {
|
rev = "326";
|
||||||
url = "https://www.foxtrotgps.org/releases/foxtrotgps-${version}.tar.xz";
|
sha256 = "191pgcy5rng8djy22a5z9s8gssc73f9p5hm4ig52ra189cb48d8k";
|
||||||
sha256 = "0grn35j5kwc286dxx18fv32qa330xmalqliwy6zirxmj6dffvrkg";
|
};
|
||||||
|
screenshots = fetchbzr {
|
||||||
|
url = "lp:foxtrotgps/screenshots";
|
||||||
|
rev = "2";
|
||||||
|
sha256 = "1sgysn3dhfhrv7rj7wf8f2119vmhc1s1zzsp4r3nlrr45d20wmsv";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
in stdenv.mkDerivation rec {
|
||||||
|
pname = "foxtrotgps";
|
||||||
|
version = "1.2.2+326";
|
||||||
|
|
||||||
nativeBuildInputs = [ pkg-config wrapGAppsHook ];
|
# Pull directly from bzr because gpsd API version 9 is not supported on latest release
|
||||||
|
src = srcs.foxtrot;
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
./gps-status-fix.patch
|
||||||
|
];
|
||||||
|
|
||||||
|
nativeBuildInputs = [ pkg-config autoreconfHook texinfo help2man imagemagick wrapGAppsHook ];
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
curl.dev
|
curl.dev
|
||||||
|
@ -22,7 +38,16 @@ stdenv.mkDerivation rec {
|
||||||
sqlite.dev
|
sqlite.dev
|
||||||
(python3Packages.python.withPackages (pythonPackages: with python3Packages;
|
(python3Packages.python.withPackages (pythonPackages: with python3Packages;
|
||||||
[ beautifulsoup4 feedparser sqlalchemy ]))
|
[ beautifulsoup4 feedparser sqlalchemy ]))
|
||||||
];
|
];
|
||||||
|
|
||||||
|
postUnpack = ''
|
||||||
|
cp -R ${srcs.screenshots} $sourceRoot/doc/screenshots
|
||||||
|
chmod -R u+w $sourceRoot/doc/screenshots
|
||||||
|
'';
|
||||||
|
|
||||||
|
preConfigure = ''
|
||||||
|
intltoolize --automake --copy --force
|
||||||
|
'';
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
description = "GPS/GIS application optimized for small screens";
|
description = "GPS/GIS application optimized for small screens";
|
||||||
|
|
14
third_party/nixpkgs/pkgs/applications/misc/foxtrotgps/gps-status-fix.patch
vendored
Normal file
14
third_party/nixpkgs/pkgs/applications/misc/foxtrotgps/gps-status-fix.patch
vendored
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
--- foxtrot/src/gps_functions.c.orig 2020-12-04 15:02:22.290163204 -0600
|
||||||
|
+++ foxtrot/src/gps_functions.c 2020-12-04 15:04:54.470648534 -0600
|
||||||
|
@@ -762,7 +762,11 @@
|
||||||
|
{
|
||||||
|
gpsdata->fix.time = (time_t) 0;
|
||||||
|
}
|
||||||
|
+#if GPSD_API_MAJOR_VERSION >= 9
|
||||||
|
+ gpsdata->valid = (libgps_gpsdata.fix.status != STATUS_NO_FIX);
|
||||||
|
+#else
|
||||||
|
gpsdata->valid = (libgps_gpsdata.status != STATUS_NO_FIX);
|
||||||
|
+#endif
|
||||||
|
if (gpsdata->valid)
|
||||||
|
{
|
||||||
|
gpsdata->seen_valid = TRUE;
|
|
@ -1,17 +1,38 @@
|
||||||
{ stdenv, fetchurl, pkgconfig, libgphoto2, libexif, popt, gettext
|
{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig
|
||||||
, libjpeg, readline, libtool
|
, gettext
|
||||||
|
, libexif
|
||||||
|
, libgphoto2
|
||||||
|
, libjpeg
|
||||||
|
, libtool
|
||||||
|
, popt
|
||||||
|
, readline
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "gphoto2-2.5.26";
|
pname = "gphoto2";
|
||||||
|
version = "2.5.26";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchFromGitHub {
|
||||||
url = "mirror://sourceforge/gphoto/${name}.tar.bz2";
|
owner = "gphoto";
|
||||||
sha256 = "0bxbcn31xalsvjp8fra324hf2105y3ps7zlyfz11v71j0lxj2lvn";
|
repo = "gphoto2";
|
||||||
|
rev = "v${version}";
|
||||||
|
sha256 = "1w01j3qvjl2nlfs38rnsmjvn3r0r2xf7prxz1i6yarbpj3fzwqqc";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig gettext libtool ];
|
nativeBuildInputs = [
|
||||||
buildInputs = [ libgphoto2 libexif popt libjpeg readline ];
|
autoreconfHook
|
||||||
|
pkgconfig
|
||||||
|
gettext
|
||||||
|
libtool
|
||||||
|
];
|
||||||
|
|
||||||
|
buildInputs = [
|
||||||
|
libexif
|
||||||
|
libgphoto2
|
||||||
|
libjpeg
|
||||||
|
popt
|
||||||
|
readline
|
||||||
|
];
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
description = "A ready to use set of digital camera software applications";
|
description = "A ready to use set of digital camera software applications";
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
let
|
let
|
||||||
pname = "joplin-desktop";
|
pname = "joplin-desktop";
|
||||||
version = "1.4.15";
|
version = "1.4.19";
|
||||||
name = "${pname}-${version}";
|
name = "${pname}-${version}";
|
||||||
|
|
||||||
inherit (stdenv.hostPlatform) system;
|
inherit (stdenv.hostPlatform) system;
|
||||||
|
@ -16,8 +16,8 @@ let
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/laurent22/joplin/releases/download/v${version}/Joplin-${version}.${suffix}";
|
url = "https://github.com/laurent22/joplin/releases/download/v${version}/Joplin-${version}.${suffix}";
|
||||||
sha256 = {
|
sha256 = {
|
||||||
x86_64-linux = "12wh7f1a9sn250lqnb8c9b5gqr8r76kxrhl0kgsm2lg93jgpvvbb";
|
x86_64-linux = "1xyj30pnlczchbh4awb955sxh51v89d170f4yk0v1jkj7dg2wjgj";
|
||||||
x86_64-darwin = "1jzfqwyz3vkmmkdzx3iw36fbjq7fns46v8crmg5n09w9kvf22qil";
|
x86_64-darwin = "166yp2rr87p0lh64ngs498a50ahcann8z5s0g2p0azs6wi54a6kw";
|
||||||
}.${system} or throwSystem;
|
}.${system} or throwSystem;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -35,13 +35,13 @@
|
||||||
|
|
||||||
buildPythonApplication rec {
|
buildPythonApplication rec {
|
||||||
pname = "orca";
|
pname = "orca";
|
||||||
version = "3.38.0";
|
version = "3.38.1";
|
||||||
|
|
||||||
format = "other";
|
format = "other";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||||
sha256 = "1vkg6p1dlrgx1yyscmy0m58inaq4ljshbdxw0nhi1nwqk3bpjchw";
|
sha256 = "1sqmq9xhcm3rc3mbhj1bdn55bkpzbk72xhmgka75syxh77gzz0ld";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
|
|
|
@ -5,13 +5,13 @@
|
||||||
|
|
||||||
python3Packages.buildPythonApplication rec {
|
python3Packages.buildPythonApplication rec {
|
||||||
pname = "pdfarranger";
|
pname = "pdfarranger";
|
||||||
version = "1.6.0";
|
version = "1.6.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "jeromerobert";
|
owner = pname;
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "03siz4ar6flyvrrgh7hr7sslc6n9x5d9i13lc5rm2qnssd0qdich";
|
sha256 = "wJ6ImWpszfgErfLh7YgHirVKFIt0ij8A/CdYJmkNBP0=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
@ -33,6 +33,10 @@ python3Packages.buildPythonApplication rec {
|
||||||
|
|
||||||
# incompatible with wrapGAppsHook
|
# incompatible with wrapGAppsHook
|
||||||
strictDeps = false;
|
strictDeps = false;
|
||||||
|
dontWrapGApps = true;
|
||||||
|
preFixup = ''
|
||||||
|
makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
|
||||||
|
'';
|
||||||
|
|
||||||
doCheck = false; # no tests
|
doCheck = false; # no tests
|
||||||
|
|
||||||
|
|
|
@ -27,13 +27,13 @@ assert i3GapsSupport -> ! i3Support && jsoncpp != null && i3-gaps != null;
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "polybar";
|
pname = "polybar";
|
||||||
version = "3.4.3";
|
version = "3.5.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = pname;
|
owner = pname;
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "0fsfh3xv0c0hz10xqzvd01c0p0wvzcnanbyczi45zhaxfrisb39w";
|
sha256 = "1kga98cgllsjcq692l27y01sgl8ii4wxp70kmdcwxkrliylg3dji";
|
||||||
fetchSubmodules = true;
|
fetchSubmodules = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -32,6 +32,10 @@ mkDerivation rec {
|
||||||
url = "https://aur.archlinux.org/cgit/aur.git/plain/fix-qtgui-include.patch?h=qlandkartegt";
|
url = "https://aur.archlinux.org/cgit/aur.git/plain/fix-qtgui-include.patch?h=qlandkartegt";
|
||||||
sha256 = "16hql8ignzw4n1hlp4icbvaddqcadh2rjns0bvis720535112sc8";
|
sha256 = "16hql8ignzw4n1hlp4icbvaddqcadh2rjns0bvis720535112sc8";
|
||||||
})
|
})
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://aur.archlinux.org/cgit/aur.git/plain/fix-timespec.patch?h=qlandkartegt";
|
||||||
|
sha256 = "1yzdwfsgjn7q04r9f7s5qk50y25hdl384dxrmpfmkm97fmpgyr7w";
|
||||||
|
})
|
||||||
(fetchpatch {
|
(fetchpatch {
|
||||||
url = "https://aur.archlinux.org/cgit/aur.git/plain/fix-ver_str.patch?h=qlandkartegt";
|
url = "https://aur.archlinux.org/cgit/aur.git/plain/fix-ver_str.patch?h=qlandkartegt";
|
||||||
sha256 = "13fg05gqrjfa9j00lrqz1b06xf6r5j01kl6l06vkn0hz1jzxss5m";
|
sha256 = "13fg05gqrjfa9j00lrqz1b06xf6r5j01kl6l06vkn0hz1jzxss5m";
|
||||||
|
|
|
@ -17,10 +17,10 @@ let
|
||||||
|
|
||||||
pname = "simplenote";
|
pname = "simplenote";
|
||||||
|
|
||||||
version = "2.1.0";
|
version = "2.2.0";
|
||||||
|
|
||||||
sha256 = {
|
sha256 = {
|
||||||
x86_64-linux = "0lg48nq493anpnm20vw72y242nxa1g903bxzp4pngzxyi986jddz";
|
x86_64-linux = "123b0fh14068s2z3k6s5mmh46xwlz02qfnpmj838zlm5hckjmifv";
|
||||||
}.${system} or throwSystem;
|
}.${system} or throwSystem;
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
|
|
|
@ -20,14 +20,14 @@
|
||||||
}:
|
}:
|
||||||
|
|
||||||
mkDerivation rec {
|
mkDerivation rec {
|
||||||
version = "1.0.1";
|
version = "1.1.0";
|
||||||
pname = "syncthingtray";
|
pname = "syncthingtray";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "Martchus";
|
owner = "Martchus";
|
||||||
repo = "syncthingtray";
|
repo = "syncthingtray";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "1dln5gh3p8nz9qmg07cw2s0lpzp3rfhyrwdhczj89g27bwk0lr4k";
|
sha256 = "0nzkzx870hzil2kny1irp4w2kxz5gmpchr2qxb7q4f9cnih92n0j";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ qtbase cpp-utilities qtutilities ]
|
buildInputs = [ qtbase cpp-utilities qtutilities ]
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{ stdenv, stdenvGcc6, lib
|
{ stdenv, stdenvGcc6, lib
|
||||||
, fetchFromGitHub, cmake, libmicrohttpd, openssl
|
, fetchFromGitHub, cmake, libmicrohttpd_0_9_70, openssl
|
||||||
, opencl-headers, ocl-icd, hwloc, cudatoolkit
|
, opencl-headers, ocl-icd, hwloc, cudatoolkit
|
||||||
, devDonationLevel ? "0.0"
|
, devDonationLevel ? "0.0"
|
||||||
, cudaSupport ? false
|
, cudaSupport ? false
|
||||||
|
@ -27,7 +27,7 @@ stdenv'.mkDerivation rec {
|
||||||
++ lib.optional (!openclSupport) "-DOpenCL_ENABLE=OFF";
|
++ lib.optional (!openclSupport) "-DOpenCL_ENABLE=OFF";
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake ];
|
nativeBuildInputs = [ cmake ];
|
||||||
buildInputs = [ libmicrohttpd openssl hwloc ]
|
buildInputs = [ libmicrohttpd_0_9_70 openssl hwloc ]
|
||||||
++ lib.optional cudaSupport cudatoolkit
|
++ lib.optional cudaSupport cudatoolkit
|
||||||
++ lib.optionals openclSupport [ opencl-headers ocl-icd ];
|
++ lib.optionals openclSupport [ opencl-headers ocl-icd ];
|
||||||
|
|
||||||
|
|
|
@ -13,9 +13,15 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake qttools wrapQtAppsHook ];
|
nativeBuildInputs = [ cmake qttools wrapQtAppsHook ];
|
||||||
buildInputs = [ bzip2 qtbase libnova proj openjpeg libpng ];
|
buildInputs = [ bzip2 qtbase libnova proj openjpeg libpng ];
|
||||||
cmakeFlags = [ "-DOPENJPEG_INCLUDE_DIR=${openjpeg.dev}/include/openjpeg-2.3" ];
|
cmakeFlags = [ "-DOPENJPEG_INCLUDE_DIR=${openjpeg.dev}/include/openjpeg-2.3" ]
|
||||||
|
++ stdenv.lib.optionals stdenv.isDarwin [ "-DLIBNOVA_LIBRARY=${libnova}/lib/libnova.dylib" ];
|
||||||
|
|
||||||
postInstall = ''
|
postInstall = if stdenv.isDarwin then ''
|
||||||
|
mkdir -p "$out/Applications" "$out/XyGrib/XyGrib.app/Contents/Resources"
|
||||||
|
cp "../data/img/xyGrib.icns" "$out/XyGrib/XyGrib.app/Contents/Resources/xyGrib.icns"
|
||||||
|
mv $out/XyGrib/XyGrib.app $out/Applications
|
||||||
|
wrapQtApp "$out/Applications/XyGrib.app/Contents/MacOS/XyGrib"
|
||||||
|
'' else ''
|
||||||
wrapQtApp $out/XyGrib/XyGrib
|
wrapQtApp $out/XyGrib/XyGrib
|
||||||
mkdir -p $out/bin
|
mkdir -p $out/bin
|
||||||
ln -s $out/XyGrib/XyGrib $out/bin/xygrib
|
ln -s $out/XyGrib/XyGrib $out/bin/xygrib
|
||||||
|
@ -29,6 +35,6 @@ stdenv.mkDerivation rec {
|
||||||
of global and large area atmospheric and wave models.'';
|
of global and large area atmospheric and wave models.'';
|
||||||
license = licenses.gpl3;
|
license = licenses.gpl3;
|
||||||
platforms = platforms.all;
|
platforms = platforms.all;
|
||||||
maintainers = [ maintainers.j03 ];
|
maintainers = with maintainers; [ j03 SuperSandro2000 ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -18,20 +18,14 @@
|
||||||
, ffmpeg, libxslt, libxml2, at-spi2-core
|
, ffmpeg, libxslt, libxml2, at-spi2-core
|
||||||
, jre8
|
, jre8
|
||||||
, pipewire_0_2
|
, pipewire_0_2
|
||||||
|
, libva
|
||||||
|
|
||||||
# optional dependencies
|
# optional dependencies
|
||||||
, libgcrypt ? null # gnomeSupport || cupsSupport
|
, libgcrypt ? null # gnomeSupport || cupsSupport
|
||||||
, libva ? null # useVaapi
|
|
||||||
, libdrm ? null, wayland ? null, mesa ? null, libxkbcommon ? null # useOzone
|
, libdrm ? null, wayland ? null, mesa ? null, libxkbcommon ? null # useOzone
|
||||||
|
|
||||||
# package customization
|
# package customization
|
||||||
, useOzone ? false
|
, useOzone ? true
|
||||||
, useVaapi ? !(useOzone || stdenv.isAarch64) # Built if supported, but disabled in the wrapper
|
|
||||||
# VA-API TODOs:
|
|
||||||
# - Ozone: M81 fails to build due to "ozone_platform_gbm = false"
|
|
||||||
# - Possible solutions: Write a patch to fix the build (wrong gn dependencies)
|
|
||||||
# or build with minigbm
|
|
||||||
# - AArch64: Causes serious regressions (https://github.com/NixOS/nixpkgs/pull/85253#issuecomment-614405879)
|
|
||||||
, gnomeSupport ? false, gnome ? null
|
, gnomeSupport ? false, gnome ? null
|
||||||
, gnomeKeyringSupport ? false, libgnome-keyring3 ? null
|
, gnomeKeyringSupport ? false, libgnome-keyring3 ? null
|
||||||
, proprietaryCodecs ? true
|
, proprietaryCodecs ? true
|
||||||
|
@ -141,8 +135,8 @@ let
|
||||||
pciutils protobuf speechd libXdamage at-spi2-core
|
pciutils protobuf speechd libXdamage at-spi2-core
|
||||||
jre
|
jre
|
||||||
pipewire_0_2
|
pipewire_0_2
|
||||||
] ++ optional useVaapi libva
|
libva
|
||||||
++ optional gnomeKeyringSupport libgnome-keyring3
|
] ++ optional gnomeKeyringSupport libgnome-keyring3
|
||||||
++ optionals gnomeSupport [ gnome.GConf libgcrypt ]
|
++ optionals gnomeSupport [ gnome.GConf libgcrypt ]
|
||||||
++ optionals cupsSupport [ libgcrypt cups ]
|
++ optionals cupsSupport [ libgcrypt cups ]
|
||||||
++ optional pulseSupport libpulseaudio
|
++ optional pulseSupport libpulseaudio
|
||||||
|
@ -220,9 +214,8 @@ let
|
||||||
custom_toolchain = "//build/toolchain/linux/unbundle:default";
|
custom_toolchain = "//build/toolchain/linux/unbundle:default";
|
||||||
host_toolchain = "//build/toolchain/linux/unbundle:default";
|
host_toolchain = "//build/toolchain/linux/unbundle:default";
|
||||||
is_official_build = true;
|
is_official_build = true;
|
||||||
is_debug = false;
|
|
||||||
|
|
||||||
proprietary_codecs = false;
|
use_vaapi = !stdenv.isAarch64; # TODO: Remove once M88 is released
|
||||||
use_sysroot = false;
|
use_sysroot = false;
|
||||||
use_gnome_keyring = gnomeKeyringSupport;
|
use_gnome_keyring = gnomeKeyringSupport;
|
||||||
use_gio = gnomeSupport;
|
use_gio = gnomeSupport;
|
||||||
|
@ -238,7 +231,6 @@ let
|
||||||
rtc_use_pipewire = true;
|
rtc_use_pipewire = true;
|
||||||
|
|
||||||
treat_warnings_as_errors = false;
|
treat_warnings_as_errors = false;
|
||||||
is_clang = stdenv.cc.isClang;
|
|
||||||
clang_use_chrome_plugins = false;
|
clang_use_chrome_plugins = false;
|
||||||
blink_symbol_level = 0;
|
blink_symbol_level = 0;
|
||||||
symbol_level = 0;
|
symbol_level = 0;
|
||||||
|
@ -256,14 +248,11 @@ let
|
||||||
proprietary_codecs = true;
|
proprietary_codecs = true;
|
||||||
enable_hangout_services_extension = true;
|
enable_hangout_services_extension = true;
|
||||||
ffmpeg_branding = "Chrome";
|
ffmpeg_branding = "Chrome";
|
||||||
} // optionalAttrs useVaapi {
|
|
||||||
use_vaapi = true;
|
|
||||||
} // optionalAttrs pulseSupport {
|
} // optionalAttrs pulseSupport {
|
||||||
use_pulseaudio = true;
|
use_pulseaudio = true;
|
||||||
link_pulseaudio = true;
|
link_pulseaudio = true;
|
||||||
} // optionalAttrs useOzone {
|
} // optionalAttrs useOzone {
|
||||||
use_ozone = true;
|
use_ozone = true;
|
||||||
ozone_platform_gbm = false;
|
|
||||||
use_xkbcommon = true;
|
use_xkbcommon = true;
|
||||||
use_glib = true;
|
use_glib = true;
|
||||||
use_gtk = true;
|
use_gtk = true;
|
||||||
|
|
|
@ -15,7 +15,6 @@
|
||||||
, enablePepperFlash ? false
|
, enablePepperFlash ? false
|
||||||
, enableWideVine ? false
|
, enableWideVine ? false
|
||||||
, enableVaapi ? false # Disabled by default due to unofficial support
|
, enableVaapi ? false # Disabled by default due to unofficial support
|
||||||
, useOzone ? true
|
|
||||||
, cupsSupport ? true
|
, cupsSupport ? true
|
||||||
, pulseSupport ? config.pulseaudio or stdenv.isLinux
|
, pulseSupport ? config.pulseaudio or stdenv.isLinux
|
||||||
, commandLineArgs ? ""
|
, commandLineArgs ? ""
|
||||||
|
@ -34,15 +33,13 @@ let
|
||||||
|
|
||||||
mkChromiumDerivation = callPackage ./common.nix ({
|
mkChromiumDerivation = callPackage ./common.nix ({
|
||||||
inherit channel gnome gnomeSupport gnomeKeyringSupport proprietaryCodecs
|
inherit channel gnome gnomeSupport gnomeKeyringSupport proprietaryCodecs
|
||||||
cupsSupport pulseSupport useOzone;
|
cupsSupport pulseSupport;
|
||||||
gnChromium = gn.overrideAttrs (oldAttrs: {
|
gnChromium = gn.overrideAttrs (oldAttrs: {
|
||||||
inherit (upstream-info.deps.gn) version;
|
inherit (upstream-info.deps.gn) version;
|
||||||
src = fetchgit {
|
src = fetchgit {
|
||||||
inherit (upstream-info.deps.gn) url rev sha256;
|
inherit (upstream-info.deps.gn) url rev sha256;
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
# TODO: Cleanup useOzone and useVaapi in common.nix:
|
|
||||||
useVaapi = !stdenv.isAarch64; # TODO: Might be best to not set use_vaapi anymore (default is fine)
|
|
||||||
});
|
});
|
||||||
|
|
||||||
browser = callPackage ./browser.nix { inherit channel enableWideVine; };
|
browser = callPackage ./browser.nix { inherit channel enableWideVine; };
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
{
|
{
|
||||||
"stable": {
|
"stable": {
|
||||||
"version": "87.0.4280.66",
|
"version": "87.0.4280.88",
|
||||||
"sha256": "0hgpg31gkksqgyvycsan7l7vjypc7cr6ikjfygf2zv7dhbmf9a19",
|
"sha256": "1h09g9b2zxad85vd146ymvg3w2kpngpi78yig3dn1vrmhwr4aiiy",
|
||||||
"sha256bin64": "09hjhxjihhxq5i2wadpa0g72a6iis0igarr8arrcah4122icdr77",
|
"sha256bin64": "0n3fm6wf8zfkv135d50xl8xxrnng3q55vyxkck1da8jyvh18bijb",
|
||||||
"deps": {
|
"deps": {
|
||||||
"gn": {
|
"gn": {
|
||||||
"version": "2020-09-09",
|
"version": "2020-09-09",
|
||||||
|
@ -12,28 +12,28 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"chromedriver": {
|
"chromedriver": {
|
||||||
"version": "87.0.4280.20",
|
"version": "87.0.4280.88",
|
||||||
"sha256_linux": "1cpk7mb32z3a7c7cbaaxskpv91il3i8kgsdp2q8zw9w762kql953",
|
"sha256_linux": "141mr2jiy3nslwd3s43m4i6plkv9wv5fgi78cn7mz0ac9x6fpcgx",
|
||||||
"sha256_darwin": "06mx2yk6xy46azvkbyvhqm11prxbh67pfi50fcwxb0zqllbq7scr"
|
"sha256_darwin": "048hsqp6575r980m769lzznvxypmfcwn89f1d3ik751ymzmb5r78"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"beta": {
|
"beta": {
|
||||||
"version": "87.0.4280.66",
|
"version": "88.0.4324.27",
|
||||||
"sha256": "0hgpg31gkksqgyvycsan7l7vjypc7cr6ikjfygf2zv7dhbmf9a19",
|
"sha256": "0mciiyh3sn2zrl8g6znylc2pm9sb0wzsclgavf7mmlknri5sjblc",
|
||||||
"sha256bin64": "15n01jia8sxv3a7vfbla40rq45x54pyksg0kg14bm0br6m3n65pz",
|
"sha256bin64": "0qf2j1j3p94s724rwh8fydpjn88cs9yxxhjf5axvqwi7q3h35cfx",
|
||||||
"deps": {
|
"deps": {
|
||||||
"gn": {
|
"gn": {
|
||||||
"version": "2020-09-09",
|
"version": "2020-11-05",
|
||||||
"url": "https://gn.googlesource.com/gn",
|
"url": "https://gn.googlesource.com/gn",
|
||||||
"rev": "e002e68a48d1c82648eadde2f6aafa20d08c36f2",
|
"rev": "53d92014bf94c3893886470a1c7c1289f8818db0",
|
||||||
"sha256": "0x4c7amxwzxs39grqs3dnnz0531mpf1p75niq7zhinyfqm86i4dk"
|
"sha256": "1xcm07qjk6m2czi150fiqqxql067i832adck6zxrishm70c9jbr9"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"dev": {
|
"dev": {
|
||||||
"version": "88.0.4324.27",
|
"version": "89.0.4343.0",
|
||||||
"sha256": "0mciiyh3sn2zrl8g6znylc2pm9sb0wzsclgavf7mmlknri5sjblc",
|
"sha256": "0jmc1l0lysl5zax98fjhzsfq3c1sqh3n3xscidafflx362wcfpwa",
|
||||||
"sha256bin64": "0ax27j42167yyx90h5k6ra898kn626w5cvgmafm3al9kyfsx36m4",
|
"sha256bin64": "1v6xik8kf531y0g5xj0c8szjmak0qvh77kwkw7p7hqxqmnwwp06d",
|
||||||
"deps": {
|
"deps": {
|
||||||
"gn": {
|
"gn": {
|
||||||
"version": "2020-11-05",
|
"version": "2020-11-05",
|
||||||
|
|
|
@ -27,7 +27,7 @@ rec {
|
||||||
meta = {
|
meta = {
|
||||||
description = "A web browser built from Firefox source tree";
|
description = "A web browser built from Firefox source tree";
|
||||||
homepage = "http://www.mozilla.com/en-US/firefox/";
|
homepage = "http://www.mozilla.com/en-US/firefox/";
|
||||||
maintainers = with lib.maintainers; [ eelco andir ];
|
maintainers = with lib.maintainers; [ eelco ];
|
||||||
platforms = lib.platforms.unix;
|
platforms = lib.platforms.unix;
|
||||||
badPlatforms = lib.platforms.darwin;
|
badPlatforms = lib.platforms.darwin;
|
||||||
broken = stdenv.buildPlatform.is32bit; # since Firefox 60, build on 32-bit platforms fails with "out of memory".
|
broken = stdenv.buildPlatform.is32bit; # since Firefox 60, build on 32-bit platforms fails with "out of memory".
|
||||||
|
@ -51,7 +51,7 @@ rec {
|
||||||
meta = {
|
meta = {
|
||||||
description = "A web browser built from Firefox Extended Support Release source tree";
|
description = "A web browser built from Firefox Extended Support Release source tree";
|
||||||
homepage = "http://www.mozilla.com/en-US/firefox/";
|
homepage = "http://www.mozilla.com/en-US/firefox/";
|
||||||
maintainers = with lib.maintainers; [ eelco andir ];
|
maintainers = with lib.maintainers; [ eelco ];
|
||||||
platforms = lib.platforms.unix;
|
platforms = lib.platforms.unix;
|
||||||
badPlatforms = lib.platforms.darwin;
|
badPlatforms = lib.platforms.darwin;
|
||||||
broken = stdenv.buildPlatform.is32bit; # since Firefox 60, build on 32-bit platforms fails with "out of memory".
|
broken = stdenv.buildPlatform.is32bit; # since Firefox 60, build on 32-bit platforms fails with "out of memory".
|
||||||
|
|
|
@ -41,7 +41,7 @@ let
|
||||||
# https://github.com/mozilla/policy-templates#enterprisepoliciesenabled
|
# https://github.com/mozilla/policy-templates#enterprisepoliciesenabled
|
||||||
, extraPolicies ? {}
|
, extraPolicies ? {}
|
||||||
, firefoxLibName ? "firefox" # Important for tor package or the like
|
, firefoxLibName ? "firefox" # Important for tor package or the like
|
||||||
, extraExtensions ? [ ]
|
, nixExtensions ? null
|
||||||
}:
|
}:
|
||||||
|
|
||||||
assert forceWayland -> (browser ? gtk3); # Can only use the wayland backend if gtk3 is being used
|
assert forceWayland -> (browser ? gtk3); # Can only use the wayland backend if gtk3 is being used
|
||||||
|
@ -100,19 +100,21 @@ let
|
||||||
policiesJson = builtins.toFile "policies.json"
|
policiesJson = builtins.toFile "policies.json"
|
||||||
(builtins.toJSON enterprisePolicies);
|
(builtins.toJSON enterprisePolicies);
|
||||||
|
|
||||||
|
usesNixExtensions = nixExtensions != null;
|
||||||
|
|
||||||
extensions = builtins.map (a:
|
extensions = builtins.map (a:
|
||||||
if ! (builtins.hasAttr "extid" a) then
|
if ! (builtins.hasAttr "extid" a) then
|
||||||
throw "extraExtensions has an invalid entry. Missing extid attribute. Please use fetchfirefoxaddon"
|
throw "nixExtensions has an invalid entry. Missing extid attribute. Please use fetchfirefoxaddon"
|
||||||
else
|
else
|
||||||
a
|
a
|
||||||
) extraExtensions;
|
) (if usesNixExtensions then nixExtensions else []);
|
||||||
|
|
||||||
enterprisePolicies =
|
enterprisePolicies =
|
||||||
{
|
{
|
||||||
policies = {
|
policies = lib.optionalAttrs usesNixExtensions {
|
||||||
DisableAppUpdate = true;
|
DisableAppUpdate = true;
|
||||||
} //
|
} //
|
||||||
{
|
lib.optionalAttrs usesNixExtensions {
|
||||||
ExtensionSettings = {
|
ExtensionSettings = {
|
||||||
"*" = {
|
"*" = {
|
||||||
blocked_install_message = "You can't have manual extension mixed with nix extensions";
|
blocked_install_message = "You can't have manual extension mixed with nix extensions";
|
||||||
|
@ -137,7 +139,7 @@ let
|
||||||
// to be able to install addons that do not have an extid
|
// to be able to install addons that do not have an extid
|
||||||
// Security is maintained because only user whitelisted addons
|
// Security is maintained because only user whitelisted addons
|
||||||
// with a checksum can be installed
|
// with a checksum can be installed
|
||||||
lockPref("xpinstall.signatures.required", false);
|
${ lib.optionalString usesNixExtensions ''lockPref("xpinstall.signatures.required", false)'' };
|
||||||
${extraPrefs}
|
${extraPrefs}
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
|
|
@ -31,12 +31,12 @@ let
|
||||||
|
|
||||||
in mkDerivationWith python3Packages.buildPythonApplication rec {
|
in mkDerivationWith python3Packages.buildPythonApplication rec {
|
||||||
pname = "qutebrowser";
|
pname = "qutebrowser";
|
||||||
version = "1.14.0";
|
version = "1.14.1";
|
||||||
|
|
||||||
# the release tarballs are different from the git checkout!
|
# the release tarballs are different from the git checkout!
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/qutebrowser/qutebrowser/releases/download/v${version}/${pname}-${version}.tar.gz";
|
url = "https://github.com/qutebrowser/qutebrowser/releases/download/v${version}/${pname}-${version}.tar.gz";
|
||||||
sha256 = "0jip413yvyhdaywz0iadc32aaanjnhbx1d1vwzx3z1xbgc4i9svn";
|
sha256 = "15l7jphy1qjsh6y6kd5mgkxsl6ymm9564g1yypa946jbyrgi8k2m";
|
||||||
};
|
};
|
||||||
|
|
||||||
# Needs tox
|
# Needs tox
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "k9s";
|
pname = "k9s";
|
||||||
version = "0.24.1";
|
version = "0.24.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "derailed";
|
owner = "derailed";
|
||||||
repo = "k9s";
|
repo = "k9s";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "1b67a417b0914ccl7drdfd7bq1qsfkw9haqz4m5j96qb0l5p71w2";
|
sha256 = "0cr7ap9yfd9flcph98rxap2f46fc3v689v31mc8n7vxi9jr07irh";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildFlagsArray = ''
|
buildFlagsArray = ''
|
||||||
|
|
|
@ -2,16 +2,16 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "starboard";
|
pname = "starboard";
|
||||||
version = "0.6.0";
|
version = "0.7.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "aquasecurity";
|
owner = "aquasecurity";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "00d3cnd3n6laa6rphw5w9xk8slpp4a603vzhixzg01sghq26gy22";
|
sha256 = "1xj0fa52973h7cg3scxn85lav98q6fz82dwd5cls3p39ghnhzn5l";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = "0y816r75rp1a4rp7j0a8wzrfi2mdf4ji1vz2vaj5s7x9ik6rc13r";
|
vendorSha256 = "07cz4p8k927ash5ncw1r56bcn592imgywbyzkvhnn50pap91m0q0";
|
||||||
|
|
||||||
subPackages = [ "cmd/starboard" ];
|
subPackages = [ "cmd/starboard" ];
|
||||||
|
|
||||||
|
|
|
@ -720,11 +720,11 @@
|
||||||
"version": "0.8.0"
|
"version": "0.8.0"
|
||||||
},
|
},
|
||||||
"packet": {
|
"packet": {
|
||||||
"owner": "terraform-providers",
|
"owner": "packethost",
|
||||||
"repo": "terraform-provider-packet",
|
"repo": "terraform-provider-packet",
|
||||||
"rev": "v2.9.0",
|
"rev": "v3.2.0",
|
||||||
"sha256": "0d9r272gidkwn4zr130ml047512qq5d5d599s63blzy6m38vilha",
|
"sha256": "sha256-YIv4OPRbR00YTVwz0iJ/y6qTbj50nsi5ylrWEx1kZck=",
|
||||||
"version": "2.9.0"
|
"version": "3.2.0"
|
||||||
},
|
},
|
||||||
"pagerduty": {
|
"pagerduty": {
|
||||||
"owner": "terraform-providers",
|
"owner": "terraform-providers",
|
||||||
|
|
|
@ -1,15 +1,13 @@
|
||||||
{ stdenv, lib, buildEnv, buildGoPackage, fetchFromGitHub, makeWrapper, coreutils
|
{ stdenv, lib, buildGoModule, fetchFromGitHub, makeWrapper, coreutils
|
||||||
, runCommand, runtimeShell, writeText, terraform-providers, fetchpatch }:
|
, runCommand, runtimeShell, writeText, terraform-providers, fetchpatch }:
|
||||||
|
|
||||||
let
|
let
|
||||||
goPackagePath = "github.com/hashicorp/terraform";
|
generic = { version, sha256, vendorSha256 ? null, ... }@attrs:
|
||||||
|
let attrs' = builtins.removeAttrs attrs [ "version" "sha256" "vendorSha256" ];
|
||||||
generic = { version, sha256, ... }@attrs:
|
in buildGoModule ({
|
||||||
let attrs' = builtins.removeAttrs attrs [ "version" "sha256" ];
|
|
||||||
in buildGoPackage ({
|
|
||||||
name = "terraform-${version}";
|
name = "terraform-${version}";
|
||||||
|
|
||||||
inherit goPackagePath;
|
inherit vendorSha256;
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "hashicorp";
|
owner = "hashicorp";
|
||||||
|
@ -18,7 +16,7 @@ let
|
||||||
inherit sha256;
|
inherit sha256;
|
||||||
};
|
};
|
||||||
|
|
||||||
postPatch = ''
|
postConfigure = ''
|
||||||
# speakeasy hardcodes /bin/stty https://github.com/bgentry/speakeasy/issues/22
|
# speakeasy hardcodes /bin/stty https://github.com/bgentry/speakeasy/issues/22
|
||||||
substituteInPlace vendor/github.com/bgentry/speakeasy/speakeasy_unix.go \
|
substituteInPlace vendor/github.com/bgentry/speakeasy/speakeasy_unix.go \
|
||||||
--replace "/bin/stty" "${coreutils}/bin/stty"
|
--replace "/bin/stty" "${coreutils}/bin/stty"
|
||||||
|
@ -34,9 +32,12 @@ let
|
||||||
'';
|
'';
|
||||||
|
|
||||||
preCheck = ''
|
preCheck = ''
|
||||||
export HOME=$TMP
|
export HOME=$TMPDIR
|
||||||
|
export TF_SKIP_REMOTE_TESTS=1
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
subPackages = [ "." ];
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
description =
|
description =
|
||||||
"Tool for building, changing, and versioning infrastructure";
|
"Tool for building, changing, and versioning infrastructure";
|
||||||
|
@ -163,6 +164,14 @@ in rec {
|
||||||
passthru = { inherit plugins; };
|
passthru = { inherit plugins; };
|
||||||
});
|
});
|
||||||
|
|
||||||
|
terraform_0_14 = pluggable (generic {
|
||||||
|
version = "0.14.0";
|
||||||
|
sha256 = "0pbglnvb6cx8zrz791lfa67dmjqfsyysbxm2083b1lhlmbybi9ax";
|
||||||
|
vendorSha256 = "1gxhdj98np482jm76aj6zbbmkn7vfk8b878hzz59iywgbdr1r4m1";
|
||||||
|
patches = [ ./provider-path.patch ];
|
||||||
|
passthru = { inherit plugins; };
|
||||||
|
});
|
||||||
|
|
||||||
# Tests that the plugins are being used. Terraform looks at the specific
|
# Tests that the plugins are being used. Terraform looks at the specific
|
||||||
# file pattern and if the plugin is not found it will try to download it
|
# file pattern and if the plugin is not found it will try to download it
|
||||||
# from the Internet. With sandboxing enable this test will fail if that is
|
# from the Internet. With sandboxing enable this test will fail if that is
|
||||||
|
|
|
@ -5,13 +5,13 @@ buildGoModule rec {
|
||||||
/* Do not use "dev" as a version. If you do, Tilt will consider itself
|
/* Do not use "dev" as a version. If you do, Tilt will consider itself
|
||||||
running in development environment and try to serve assets from the
|
running in development environment and try to serve assets from the
|
||||||
source tree, which is not there once build completes. */
|
source tree, which is not there once build completes. */
|
||||||
version = "0.17.12";
|
version = "0.17.13";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "tilt-dev";
|
owner = "tilt-dev";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "0l70nmxvk30h56bs46cgakddzdf3laj1y88d0jchij0yy7ixa61f";
|
sha256 = "sha256-x3U5OF8T3z9kHcYe7SwKVEKNiEsi8AEvA1rlOma4y+8=";
|
||||||
};
|
};
|
||||||
vendorSha256 = null;
|
vendorSha256 = null;
|
||||||
|
|
||||||
|
|
59
third_party/nixpkgs/pkgs/applications/networking/dyndns/dyndnsc/default.nix
vendored
Normal file
59
third_party/nixpkgs/pkgs/applications/networking/dyndns/dyndnsc/default.nix
vendored
Normal file
|
@ -0,0 +1,59 @@
|
||||||
|
{ stdenv, lib, python3Packages }:
|
||||||
|
|
||||||
|
python3Packages.buildPythonApplication rec {
|
||||||
|
pname = "dyndnsc";
|
||||||
|
version = "0.5.1";
|
||||||
|
|
||||||
|
src = python3Packages.fetchPypi {
|
||||||
|
inherit pname version;
|
||||||
|
hash = "sha256-Sy6U0XhIQ9mPmznmWKqoyqE34vaE84fwlivouaF7Dd0=";
|
||||||
|
};
|
||||||
|
|
||||||
|
postPatch = ''
|
||||||
|
substituteInPlace setup.py --replace "bottle==" "bottle>="
|
||||||
|
'';
|
||||||
|
|
||||||
|
nativeBuildInputs = with python3Packages; [ pytestrunner ];
|
||||||
|
propagatedBuildInputs = with python3Packages; [
|
||||||
|
daemonocle
|
||||||
|
dnspython
|
||||||
|
netifaces
|
||||||
|
requests
|
||||||
|
setuptools
|
||||||
|
];
|
||||||
|
checkInputs = with python3Packages; [ bottle pytestCheckHook ];
|
||||||
|
|
||||||
|
disabledTests = [
|
||||||
|
# dnswanip connects to an external server to discover the
|
||||||
|
# machine's IP address.
|
||||||
|
"dnswanip"
|
||||||
|
] ++ lib.optionals stdenv.isDarwin [
|
||||||
|
# The tests that spawn a server using Bottle cannot be run on
|
||||||
|
# macOS or Windows as the default multiprocessing start method
|
||||||
|
# on those platforms is 'spawn', which requires the code to be
|
||||||
|
# run to be picklable, which this code isn't.
|
||||||
|
# Additionaly, other start methods are unsafe and prone to failure
|
||||||
|
# on macOS; see https://bugs.python.org/issue33725.
|
||||||
|
"BottleServer"
|
||||||
|
];
|
||||||
|
# Allow tests that bind or connect to localhost on macOS.
|
||||||
|
__darwinAllowLocalNetworking = true;
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Dynamic DNS update client with support for multiple protocols";
|
||||||
|
longDescription = ''
|
||||||
|
Dyndnsc is a command line client for sending updates to Dynamic
|
||||||
|
DNS (DDNS, DynDNS) services. It supports multiple protocols and
|
||||||
|
services, and it has native support for IPv6. The configuration
|
||||||
|
file allows using foreign, but compatible services. Dyndnsc
|
||||||
|
ships many different IP detection mechanisms, support for
|
||||||
|
configuring multiple services in one place and it has a daemon
|
||||||
|
mode for running unattended. It has a plugin system to provide
|
||||||
|
external notification services.
|
||||||
|
'';
|
||||||
|
homepage = "https://github.com/infothrill/python-dyndnsc";
|
||||||
|
license = licenses.mit;
|
||||||
|
maintainers = with maintainers; [ AluisioASG ];
|
||||||
|
platforms = platforms.unix;
|
||||||
|
};
|
||||||
|
}
|
|
@ -1,7 +1,7 @@
|
||||||
{ callPackage, libsForQt5 }:
|
{ callPackage, libsForQt5 }:
|
||||||
|
|
||||||
let
|
let
|
||||||
stableVersion = "2.2.16";
|
stableVersion = "2.2.17";
|
||||||
previewVersion = stableVersion;
|
previewVersion = stableVersion;
|
||||||
addVersion = args:
|
addVersion = args:
|
||||||
let version = if args.stable then stableVersion else previewVersion;
|
let version = if args.stable then stableVersion else previewVersion;
|
||||||
|
@ -26,8 +26,8 @@ let
|
||||||
};
|
};
|
||||||
mkGui = args: libsForQt5.callPackage (import ./gui.nix (addVersion args // extraArgs)) { };
|
mkGui = args: libsForQt5.callPackage (import ./gui.nix (addVersion args // extraArgs)) { };
|
||||||
mkServer = args: callPackage (import ./server.nix (addVersion args // extraArgs)) { };
|
mkServer = args: callPackage (import ./server.nix (addVersion args // extraArgs)) { };
|
||||||
guiSrcHash = "1kz5gr5rwqp1hn9fw17v6sy2467506zks574nqcd2vgxzhr6cy6x";
|
guiSrcHash = "0dfyxr983w6lmbcvaf32bnm9cz7y7fp9jfaz8zxp1dvr6dr06cmv";
|
||||||
serverSrcHash = "1r6qj1l8jgyjm67agn83zp9c2n7pgfzwyh8a5q314zxi18nm6rqp";
|
serverSrcHash = "0m5ajd2zkafx89hvp202m351h1dygfc3jssl3m7nd7r42csyi2vj";
|
||||||
in {
|
in {
|
||||||
guiStable = mkGui {
|
guiStable = mkGui {
|
||||||
stable = true;
|
stable = true;
|
||||||
|
|
|
@ -7,10 +7,10 @@ in {
|
||||||
pname = "discord";
|
pname = "discord";
|
||||||
binaryName = "Discord";
|
binaryName = "Discord";
|
||||||
desktopName = "Discord";
|
desktopName = "Discord";
|
||||||
version = "0.0.12";
|
version = "0.0.13";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://dl.discordapp.net/apps/linux/${version}/discord-${version}.tar.gz";
|
url = "https://dl.discordapp.net/apps/linux/${version}/discord-${version}.tar.gz";
|
||||||
sha256 = "0qrzvc8cp8azb1b2wb5i4jh9smjfw5rxiw08bfqm8p3v74ycvwk8";
|
sha256 = "0d5z6cbj9dg3hjw84pyg75f8dwdvi2mqxb9ic8dfqzk064ssiv7y";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
ptb = callPackage ./base.nix rec {
|
ptb = callPackage ./base.nix rec {
|
||||||
|
|
|
@ -4,13 +4,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "toxic";
|
pname = "toxic";
|
||||||
version = "0.9.1";
|
version = "0.10.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "Tox";
|
owner = "Tox";
|
||||||
repo = "toxic";
|
repo = "toxic";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "1j0yd33sm824dy4mhwfxqkywa46yhqy5hd5wq4lp7lgl6m6mypar";
|
sha256 = "1v9cdpy6i3xl70g75zg33sqi4aqp20by0pyjhjg5iz24fxvfaw6c";
|
||||||
};
|
};
|
||||||
|
|
||||||
makeFlags = [ "PREFIX=$(out)"];
|
makeFlags = [ "PREFIX=$(out)"];
|
||||||
|
|
|
@ -27,11 +27,11 @@ with stdenv.lib;
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "mutt";
|
pname = "mutt";
|
||||||
version = "2.0.2";
|
version = "2.0.3";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://ftp.mutt.org/pub/mutt/${pname}-${version}.tar.gz";
|
url = "http://ftp.mutt.org/pub/mutt/${pname}-${version}.tar.gz";
|
||||||
sha256 = "1j0i2jmlk5sc78af9flj3ynj0iiwa8biw7jgf12qm5lppsx1h4j7";
|
sha256 = "1vf1ab3mnx7p4s4n4pssajj211s3zr4730bwgsjx9gxcnyppqclw";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = optional smimeSupport (fetchpatch {
|
patches = optional smimeSupport (fetchpatch {
|
||||||
|
|
|
@ -1,665 +1,665 @@
|
||||||
{
|
{
|
||||||
version = "78.5.0";
|
version = "78.5.1";
|
||||||
sources = [
|
sources = [
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/af/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/af/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "af";
|
locale = "af";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "011468ce085f2b5da8968b0622733d9fa25b47ec5e83b3bf4171323948aebb35";
|
sha256 = "87cb38398aaa5af68e562a5fc6d20d3d3477d871979bd4a635c94c440e66a482";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/ar/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/ar/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "ar";
|
locale = "ar";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "661b0f1981b21df20b910f9d833d86c2812b189097ad7e1affc7338abb4f0c5c";
|
sha256 = "935efae7caa116e16c341d64634954d77cafbc5e28626b46f5385b8416060f51";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/ast/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/ast/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "ast";
|
locale = "ast";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "c1acc2b6d5dd22adeab3106c3c6925ce0c1a434e1d38b3f699fab4ca319eab14";
|
sha256 = "a5868dc7987529790910e638b64b15295a2d57e449fa515f4e17a4ab88a830e6";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/be/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/be/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "be";
|
locale = "be";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "6f76341164c182dd8392d2d1abbb0408a3ab773a7389dbf1eb9bb4042d49f500";
|
sha256 = "af52b29567ce26159890f70fcdccd4cafd49c7fc75c620bb606727fd27b7049a";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/bg/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/bg/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "bg";
|
locale = "bg";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "4e97b38383d3a145645ca518449e37e42b5b25cbb98cb72f52657b4813f2b343";
|
sha256 = "91856a4745a8bdefac7c2b0193766a4f0009378dfe941dbbe1afcae2ffae2337";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/br/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/br/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "br";
|
locale = "br";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "1d5bcb706bf2eb589aa0c64589fc5b22021977947d6e1099f339a46c55a56f84";
|
sha256 = "d5ba5fe368c99377a264d8574607335fc4317dad447bb38fdc6a5b53d2e95b49";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/ca/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/ca/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "ca";
|
locale = "ca";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "3284b98707ee67977f148bd20d88750cc03799d9ba4aa5668c44901846fb8bcf";
|
sha256 = "396a1d7b668c7f47b56d7cb41e6e914f03e9e517a14b4698abedb501037ef2c1";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/cak/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/cak/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "cak";
|
locale = "cak";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "7998d66eaf3edc4ee156dff06a30de8abae08ff66b380ea93d7ec0b827a0ea29";
|
sha256 = "914b76ad8268db608be0595039a68189146ded384c23407ccbcd78a5e74e19ae";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/cs/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/cs/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "cs";
|
locale = "cs";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "5ba37c9dd7a1fc291bcc8b24ef025432dbd5f8a45ea2a4d1273177c6a7c8f6bd";
|
sha256 = "4b62702cabecfbb2567b19446f405936c9d948dad6f65a2e3f21809d4f2b1176";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/cy/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/cy/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "cy";
|
locale = "cy";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "baaad2ef28f51b6f57fa6f0583e8e0125c50ea3b4c94dea5854faf9826aecad0";
|
sha256 = "736d245bd7766ac8c611a6801b3769a84baf4abae94818e0cfcadde8521850ad";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/da/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/da/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "da";
|
locale = "da";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "6113ed3f5a36f16e64f0cc499eb683a0d7d377d0cce37882f46f203893b789d8";
|
sha256 = "53143b51b84ee74ee9131d3b3b80e2cf873e5a8c22478c87db34a9d2ac34607a";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/de/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/de/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "de";
|
locale = "de";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "81490e8cd8110285177c27f4057ff48ed1bdb55c94c83cc78e262b9cfcbd87ea";
|
sha256 = "2f3a4d8bf96e9653dd3883ac4399c650e87831d7df137358401966683d382e6c";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/dsb/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/dsb/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "dsb";
|
locale = "dsb";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "4c6abc365842c902ff184b403a6c271760bd8e71da9efa90d30310e032b03729";
|
sha256 = "81a3674dd2495da673a2fe3e3d200d7cadf83f9c67ff92bf2d607f6546bc2f38";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/el/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/el/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "el";
|
locale = "el";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "d492a83d3ddaf5beead77fd90a2334ca4ed90023d4c4ad478249a360f49cd5be";
|
sha256 = "651e8f535b2518bc4e56706cfb76da6d0e35d4fec031f8426cbefb404e4790d7";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/en-CA/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/en-CA/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "en-CA";
|
locale = "en-CA";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "d7ddc5a22e89827067255726824e46d3355906441051c9faa04e6241cb833955";
|
sha256 = "775983115d98e3581db993f6202fdad1de6b23d38e5bb7edfd965ad6bc0ae425";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/en-GB/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/en-GB/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "en-GB";
|
locale = "en-GB";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "10ff106bb933374661e3398ea4ce02c205242d1f7a647504161e295b5e3d1e11";
|
sha256 = "d0a3569c76b85fdca01e5098cf279b08a63d2d9023e92cadf3f8dc136d76c619";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/en-US/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/en-US/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "en-US";
|
locale = "en-US";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "297429aff3f10ab7c2859a37ec351b6b0a478495b8a34e8b492ae3473f052c7f";
|
sha256 = "4363d8fd759ac4f4783eeb76726c8cf22e5afb3c171f26fe5cca5ab194ab6959";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/es-AR/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/es-AR/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "es-AR";
|
locale = "es-AR";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "c8bafb3476d127d28f565ea5dd749b0c870087f395e0aabfb848a004846498e9";
|
sha256 = "3a04a2e42935c97c7ef003e4a690c0433783b57ce56700f07ad8b590e48b4ad0";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/es-ES/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/es-ES/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "es-ES";
|
locale = "es-ES";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "d8c5350627e7e6f48fbfa863bed1971254104ee299d81d1f36b99d6c6ee54313";
|
sha256 = "f70a3feb09b79153d18e2a382017abbd6e015c78d4d55ff66f8b199b450172c4";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/et/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/et/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "et";
|
locale = "et";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "f2a1001b0bb87965e40cd832102d2233b732273930d36715ff2db900b37c9ed2";
|
sha256 = "c739f5306a2526baf74e57a029371390d02f8c119681b0f154481ae32c67c18c";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/eu/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/eu/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "eu";
|
locale = "eu";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "30c6da377a8fc4596f6a67b189c1c9f7a9075df96ed3a59b4da7e0e77157d950";
|
sha256 = "9f95f4f1ec40e2732e053e68b31529b827f95876ad890d752f5380158f53b9e6";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/fa/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/fa/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "fa";
|
locale = "fa";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "8f98dd01764a5d244c25c3c409b8dbcaa1d3daf7b3a970c60d3d37fd5ffc4294";
|
sha256 = "e53dd458656ee9f39e996042016256949c974161c51b1bee63a401d90d59bace";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/fi/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/fi/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "fi";
|
locale = "fi";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "be5f152b28ee21d916b184999023a1a5adddd1d2c7448e7eb37bd08948f6a14c";
|
sha256 = "b0a96b08e986e49ee6526ab098fb0d44700b3a2aa7f96205b318fdd4b938ef51";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/fr/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/fr/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "fr";
|
locale = "fr";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "c1b2d725c43196dfe3f9bfd291dfae84ba392151222589d80e3921e627667d59";
|
sha256 = "872da741245da7466de58d766a0362983d59a111a65a333881d3636defe00eb4";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/fy-NL/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/fy-NL/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "fy-NL";
|
locale = "fy-NL";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "622c42950cc7d3889372b6e0c5833dc5c5f608ab23ca9962e0af67ce4b2f8ff5";
|
sha256 = "d57862f51ec01e63ab77916ab352276b7f4992b089508dee0c9c5d389ab88d95";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/ga-IE/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/ga-IE/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "ga-IE";
|
locale = "ga-IE";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "7293859380e07d362192cd9dcf88b8da04cde6e102f0b8d51a00021bf8fd9e98";
|
sha256 = "bda41b8eff5a5004f753944c49f15ddbd1f76c19b0310481251e04ff64309597";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/gd/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/gd/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "gd";
|
locale = "gd";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "f54b892150bd49d028337a88d3a0b2df896a47a6904067b381d385281d2c681e";
|
sha256 = "0671af342859574cb96dbe119d76d7ffa92a8c3fef11eee2a03f662ea71fb84a";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/gl/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/gl/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "gl";
|
locale = "gl";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "58c88bf739fde7e0f7e279106622abde617a0aa267f34f1c10f8d886800dc50b";
|
sha256 = "b458d6f79914fc4c551b3fa4444dc5ad4fa8d3310907a33a3480bf363bcdbfdb";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/he/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/he/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "he";
|
locale = "he";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "8278c7580356c360c74ad161a6ee052e9398e39a2a5b75217ac0239db28ee4cf";
|
sha256 = "146f2a8417827d2d6352f7cc20486ecca8fd1e0ad384d4eb2d8b2635edf2075f";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/hr/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/hr/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "hr";
|
locale = "hr";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "b20bef1b7fab8d63c5cc6336dd59264e7c62a9a4c6f2db4232ed27624b26a3cb";
|
sha256 = "5c510bd3a8f8015e5c8a7c0cff401e3557b0cdca83bff77d2384c8f75f287152";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/hsb/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/hsb/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "hsb";
|
locale = "hsb";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "ad4797a36c713b5026a4da131fc46f341cb8b72e5ad2f07a677bfedca8401163";
|
sha256 = "605ae5746f0df98c7a561550da9cc938d0e06a222f422910ab118fa89d09e793";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/hu/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/hu/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "hu";
|
locale = "hu";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "1f3dea138c4f82f91b9aaf891b9959d1cdda273f20af811d967ed55058f69064";
|
sha256 = "7d42f5e242e04d06bb9abd9bde8fe21571fa13f91b027369a048447d4de8526c";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/hy-AM/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/hy-AM/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "hy-AM";
|
locale = "hy-AM";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "836668531a555d9bd23fbb3c3b27cc647a327d02e6db1903248fc6b3d59c5dc1";
|
sha256 = "74b0b31089be36c0538eb24c98e57123f24599b4122aac5b08c4eb914f6a8f7d";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/id/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/id/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "id";
|
locale = "id";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "1d74cd88cddf7b22ef8b19ee6cfedaaade15cecf68712ec8568888d0708c9c81";
|
sha256 = "291ad6b1fcdc537e723ee76cf0a40a3084bdf1ebec68fc3c8c54714618f5d790";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/is/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/is/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "is";
|
locale = "is";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "a6e3320211b207e9a36c6197dbf97e746d2e9e9b7bda444a8511550b5846d329";
|
sha256 = "188e2cab8e00421b8a5f9c9a174e8a529ab404a0f4f3976797e41848eb0abc4d";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/it/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/it/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "it";
|
locale = "it";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "f0e659e6888590394a652033f3d15b29ff9318b4c88faae51d6347f1441201b3";
|
sha256 = "12daeb5314ae81a82ce95c35dc9e34d676fe8b666a84a38aea36367b52aa2c95";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/ja/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/ja/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "ja";
|
locale = "ja";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "a2ffc461e6d942222bef4229a820bf8536ef41dce83efc458d82476d5f98f5a4";
|
sha256 = "cdd41967d60abff6053f1736375cbbdb521bbdf5aa25110ca8e08bb365c853ca";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/ka/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/ka/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "ka";
|
locale = "ka";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "6a374b791fac25bfc3f10726d93497291163dd95b1372dc09db70c098822f4f9";
|
sha256 = "9548232d8df327e6282b5413d904d5742aadfa75574b1333a235df2097337032";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/kab/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/kab/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "kab";
|
locale = "kab";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "a23dc5cfef7bcbe32c32363d0048813a24cfbb19f17c3041b23fc751936dcadc";
|
sha256 = "ca35aa36ed5794661372e76f24dd6c98d11d35da76aff5396215ebe9331aa881";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/kk/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/kk/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "kk";
|
locale = "kk";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "2187f7d763d34787de0d9870f746548459bd0a2ef0676286d2f9ce9bc9092ef1";
|
sha256 = "dd90fff1a4ee8380e03e59ef324298d1591833a021d14a11fdb2829cd3a934f3";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/ko/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/ko/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "ko";
|
locale = "ko";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "ff88da9f6c77e8f5c1bebab542abc51266ba03d97fc5d22b86cf52a26db75e63";
|
sha256 = "4dae3766bf420a0cfb5473fa95356f0061b657a7ebfdc808b69a8e639564893b";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/lt/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/lt/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "lt";
|
locale = "lt";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "77531cad8587aba9c4091bd22c79e40e45d3c57083b5af3e54af3576ed45134b";
|
sha256 = "de4b448d9651692bc4eb38447d94c94e37d93dae816edb5f3936d56a58aa41af";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/ms/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/ms/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "ms";
|
locale = "ms";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "aaa346d9bcc1cbd84beedb75c9949d4a2cd8bf80496a31e2018c2493fed68339";
|
sha256 = "08593e72643de8f79b6d90a0c41d6031f915097d3f28f1e7e901c21caa0ab037";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/nb-NO/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/nb-NO/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "nb-NO";
|
locale = "nb-NO";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "dac3f1eeef73c247f9c79a09b7ffab1498be6c96865b5f21ee28d398941430a1";
|
sha256 = "21caa07be03725788c41fa527e7656a0467194e8a498de87f2455b571c4e14b2";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/nl/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/nl/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "nl";
|
locale = "nl";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "e0b3df7064e08e34f85b9a83d2bef990f66ad0e1bc86f764139fc57d005d1aa3";
|
sha256 = "7c1c00a8e03d0a8e4fa9cdc3b4acce51215e9f273660e48ad76347e6003a1985";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/nn-NO/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/nn-NO/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "nn-NO";
|
locale = "nn-NO";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "eb420586e8be191ffc41f4a920506336cc9dccbf229c260a7f193cbe169a6da4";
|
sha256 = "103bc1307f47c20102e14362fcd6da696eb122fe77f680e70cd0849c9c03c47a";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/pa-IN/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/pa-IN/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "pa-IN";
|
locale = "pa-IN";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "12f7c97b130ce40dd1dcd00a16a20000113b7be33c87ab9002848439ce626abd";
|
sha256 = "388d01d0881573164816d7ddf6a08c17ad966616f1c8e8e429f821d2bb179a62";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/pl/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/pl/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "pl";
|
locale = "pl";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "5ad96dee4b422c820da8a76ab64e62e919c21d99b01b92f346a55acada7cf8ac";
|
sha256 = "160651e72037bb89ac62534714ce9ecbebdec0cf1f8a6127396c68ab531745f9";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/pt-BR/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/pt-BR/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "pt-BR";
|
locale = "pt-BR";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "7d6568c067796f21079a4f6bf3374a1b91807a9b30270587cf815892d86e1590";
|
sha256 = "6d2064a6ed4bb684384f7e79b61cfceb66a9a26900e9947b3666c36d6b8793cd";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/pt-PT/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/pt-PT/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "pt-PT";
|
locale = "pt-PT";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "22058d65e2ba94f39ca6ada6750beacf2bacac0f296a34542fde01e897e4a4e2";
|
sha256 = "2ccc7a3d9d845f1a3e2ad3869cbd4cefa10e44992c27444a599f6f1429070f32";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/rm/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/rm/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "rm";
|
locale = "rm";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "c61ff10e4260eb2650fc1a4e0ca8df6c4e4e2e9525168ceaef86a9b8b2ddba54";
|
sha256 = "05e45497c19d46292617de4f247f014f7b14a684f74bfd314caf408416dc5b19";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/ro/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/ro/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "ro";
|
locale = "ro";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "2ec34bfd9fe4a0f0cf17f132146ab2a589c986a8b4317124f3bfc34ac48f732a";
|
sha256 = "bf01cf8c987e46f03236dbaab14aa551464019f471aa111299b6c7538e995f80";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/ru/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/ru/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "ru";
|
locale = "ru";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "b835dd1757f5cdc580a2b91f01a8089c1396d9eacee665fe9976019f8523fdec";
|
sha256 = "a3cbdfa26ff487d0efdabfa9dc324b75ec1446964f1c0192afcd67565dfc4a51";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/si/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/si/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "si";
|
locale = "si";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "3722e47d39024c13dd799e0c89cf79a1302817605f7025388cd5f62fea15d168";
|
sha256 = "fb26eef7b0c5b233e41f8d4ad79f11aa7d0db21b155bf0d9284881cabb51f6e4";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/sk/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/sk/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "sk";
|
locale = "sk";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "4717620562c338f533053677d8956490d2d42abfd52beb6a0d41466ba3e72a36";
|
sha256 = "d462f2606bfd7f6e0e45334a68d266889f0f9f927f08d5b92c39329711a8c4cf";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/sl/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/sl/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "sl";
|
locale = "sl";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "d712c5b3dddfa181877353d28667d410bea3a1f3d85e92dc058a3f3ac5ff4824";
|
sha256 = "b6011aefaf1eb60c8849b4ecc7a7a6fa0a72def8ba690f5b7ca61de3e089c9a4";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/sq/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/sq/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "sq";
|
locale = "sq";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "8443ae1161c6b3e807c9d4abc01824e894a11b6f6c9a52d3097b8301461ac0c3";
|
sha256 = "aeed36c0d6129dc58d496f8f6177a88950a4c4cfe2e4ac157fb389ea79488b11";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/sr/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/sr/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "sr";
|
locale = "sr";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "13f093880d41748efa8f1566e5884d632f2fa80d4eb4f1a8dd1dc20ea626cee8";
|
sha256 = "f55cb398b3e6420acf6791d9ab5592b9915d299c5111ea917934b5729d22dd7f";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/sv-SE/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/sv-SE/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "sv-SE";
|
locale = "sv-SE";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "ee9d7262a8b6cd8460b2f1c4c0102b68f9a0983e1f021f2283ead172f07e3f37";
|
sha256 = "036b4f2b3d6cd24bcdcdbc1da1f44df2fba012f22ab96d0840a8c7ae0b945055";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/th/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/th/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "th";
|
locale = "th";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "09cd7b862cb8caa511b6d550bb668f0fd51fdfee5b2f6a31814282785688e4de";
|
sha256 = "316ae39fb02b9ad1b28bbe7a21342e5e85dd7593978b4935b7be20253fe6b761";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/tr/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/tr/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "tr";
|
locale = "tr";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "0d9f63aa7b63d571d7414755bd4e8bc27b7c5fd093ee46ed0fc2db469940dcd5";
|
sha256 = "73811e185274d880abdb15503a928a537428460080245426a07cf1c01e38f1c6";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/uk/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/uk/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "uk";
|
locale = "uk";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "0aa64449381edeed7c37d18e03f74dac2f5038a6c3c5de9fa6ad037b139bb5bb";
|
sha256 = "8ff9e333cf16a02e7888f297851b5a9316c5b57cf546f592f12d2aab6e3bed48";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/uz/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/uz/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "uz";
|
locale = "uz";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "eabd24b838a072cb1aa9bebf3c573b3a6e7a364b759aebd62d12b16911956a00";
|
sha256 = "899c0c8c886fbaa6a6609a500bb374797bd36272138a6fcdc6aca7c7b6a6fe66";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/vi/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/vi/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "vi";
|
locale = "vi";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "ce9b5afcb60fc0f17a384a9096b26626f3d3f570222910a46872688009aee262";
|
sha256 = "13afdad34f64a1c96f9612c10c8af880e9718ae10d8a1578bc397b238a936dbd";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/zh-CN/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/zh-CN/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "zh-CN";
|
locale = "zh-CN";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "9d69c7ef37282a7741d2392456c9ef5f5700fa1b718889e93bf7010fa99617db";
|
sha256 = "00a1d01acabd210ba70ed6d0842ab5e1674109c7f39f561e8295d1ffd5f80a0d";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-x86_64/zh-TW/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-x86_64/zh-TW/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "zh-TW";
|
locale = "zh-TW";
|
||||||
arch = "linux-x86_64";
|
arch = "linux-x86_64";
|
||||||
sha256 = "6001d4e74212b72b2a3583438925d2431bb28994a661b4b47e77268e7790e526";
|
sha256 = "19b84b15a6bbf593a342c874822764bd73022d2c846fe20a6d7d91aceeb1ee15";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/af/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/af/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "af";
|
locale = "af";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "e30adc9074f08e04a4477f59eff6af83bcdf22ccafa1aef5ace219a830c50f38";
|
sha256 = "4c1487a6b823a76d477085e66b377f536f2cfd95b4ddc6804b97c792af77c554";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/ar/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/ar/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "ar";
|
locale = "ar";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "6d9456fd3f76de33a3f7c46d8197d83c36c832922b83de64cf4c2f5a56f7729d";
|
sha256 = "d33576a1d8c346195a20c8a222281d682d14f604654ff173eb28ca8a9343574b";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/ast/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/ast/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "ast";
|
locale = "ast";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "1427f7741ba5c5da163ecfce3053bdab7b14c8fc2e8c046c244f7eea6d015a2e";
|
sha256 = "09d68977bc121e562f3c697bd1d87b21250c8a0bcac013940e3806d4a69a749d";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/be/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/be/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "be";
|
locale = "be";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "97258efe6425869e4710c07e880df2a3f6c14d626e6512374043cff226f141fb";
|
sha256 = "bb58501c902788b2d1f8f308468aa57447a15979cab59dc89c27e3738748b6d9";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/bg/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/bg/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "bg";
|
locale = "bg";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "a30496a969a954525dbcf1ec0e94d8533baea3809e61d6c1c6e299f883d9676d";
|
sha256 = "373bd3548f518a4ae56e8a103b64eb76c3139b984a5af8013de56b133a0d44c0";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/br/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/br/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "br";
|
locale = "br";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "16dfc1b869bb10ce7c56f1b22981586678cd81a42e13c4075ebc1da76728258d";
|
sha256 = "40934c8ec7070ad29cb0111624de431a0cdeeff9c7c01d8781444e33f65acbca";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/ca/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/ca/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "ca";
|
locale = "ca";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "bd29d4b8376355090adca0185194d3c9b6124c336bec0dababaa4a214f9945fb";
|
sha256 = "fbce4213fe7564f2af3f980f5844961cac9a7ec2a30b23d7cdd4e5db6aa4ebaa";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/cak/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/cak/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "cak";
|
locale = "cak";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "b9723a8f8b8a61d01f09b18f1dff6529d22c89653586ad032831c87683da12b8";
|
sha256 = "2aaf7ea23606be03f5f7168aaa4286760f236d084babd1f81540f8b62b37962c";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/cs/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/cs/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "cs";
|
locale = "cs";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "55ff98744b2f120a855c8a3bc435d39209504b7eda92560be40b8cb3fbe007f0";
|
sha256 = "880e36431f76161674fdb9f2902c9d5487bed528a198722458b7e6e76e80e9b5";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/cy/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/cy/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "cy";
|
locale = "cy";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "818a93f5a4f02e8cf7b3373c31c435dffca3fc1f86d5acc3fd4355bca21f9cf0";
|
sha256 = "eddb4dcac8063e5b245eb1c095c4ff98cb03714bf5b07f0366b89d670a9d95dd";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/da/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/da/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "da";
|
locale = "da";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "7df66098805f276e1498fa28c00aa7eaa8a8993b561261c54f7091a808ff6766";
|
sha256 = "2425487caaab7979f504d37cf6b100c7cb030e8e5495b6723fa4f953348e4f40";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/de/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/de/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "de";
|
locale = "de";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "194831e85294b41a4c1bcec8a2f20f337786054525d50e2fd6dfd6134385d2d8";
|
sha256 = "81df3e5ba46fe5959f785c06bef0b70daa55e8f8721cfff0bf55a76f7343b32f";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/dsb/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/dsb/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "dsb";
|
locale = "dsb";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "e7344c6b2c90bca56adfca1619e1bfdc0e473f7230d4c1059d6516cee8d51759";
|
sha256 = "995d3aaf3df22aa3166f161b98113fc25b813dc7cee2743b2bdd6913b4a620c4";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/el/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/el/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "el";
|
locale = "el";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "e2d4680ced58f78699f7bdc2c3493d6157cf2c9261aa697cd6092ed0687a7bbe";
|
sha256 = "ad5162a76dba9c37e2542fa7ed08c63edce9955600e9b50889abb03e352ddf23";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/en-CA/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/en-CA/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "en-CA";
|
locale = "en-CA";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "6afd7bb703c62763b787d77b7467881f07d12e73d32d07c6461642307e3b9f5f";
|
sha256 = "c605520e5e65449855c355147f18b813f66d38dce52e8d3a23b90afbec5bcbf1";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/en-GB/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/en-GB/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "en-GB";
|
locale = "en-GB";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "78114f1a1dff6c5430b148fbb8707e03cd3ec1d05af48082755190ae45e94dd4";
|
sha256 = "63b0d984ee8296c5185ed1aab279a0ef065986d989edbd0a7683b9db6a6d94bb";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/en-US/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/en-US/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "en-US";
|
locale = "en-US";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "beb328b15c7b981b10f26cad6325a04257be20e25e819fa771f88fe5e5c98aec";
|
sha256 = "b5404037f2678d36acbb225f43d426a86db9a4828a69b1beaf44dc3b5264ae7e";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/es-AR/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/es-AR/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "es-AR";
|
locale = "es-AR";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "3c096d5225f8fe273b6f0adc119ea419cf60e7a7723fb3a63a6dec1be6e4c3ef";
|
sha256 = "cefe0ff79bacc9c16fe649c0d7b4f932afca6ebb10c8426fac527485e92f4422";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/es-ES/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/es-ES/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "es-ES";
|
locale = "es-ES";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "68796cda86944bfb70207b79c162c0b2fdb66b17511300c799204fce58d2c2b2";
|
sha256 = "de7c6685c4e73ee334faf83c809b2f45d55c971282ba99aecfd5d1c8b05577da";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/et/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/et/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "et";
|
locale = "et";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "6187058a289cb43e89916e484ac46c2359fc9c452d07dd4dab2e3ff8ae397c47";
|
sha256 = "e5174b12c61221436a5926224f61f218bfe762086f1d5bb814af5f7708592392";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/eu/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/eu/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "eu";
|
locale = "eu";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "ad587a3b25de553b69ab9aa61b9d99c4f4d7dd37b05672540eda7907b21f2857";
|
sha256 = "66bfbb4edc775117a6f048f52084fff9828633166ac6234a7c1dc0d67311677f";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/fa/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/fa/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "fa";
|
locale = "fa";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "8c06bbd83b5485b113bf4d0ca69af9ca21c7854ff38b19831eadae0c586dc606";
|
sha256 = "072163a9d1a94b1f5c297c794791b4bd3e7f7e6897e7f7615df59a9dd2232a52";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/fi/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/fi/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "fi";
|
locale = "fi";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "bac6ecf3d22f6097f8cccb7da81866941426ee7bbb690937a2333b411a305fbd";
|
sha256 = "9c269f267251bee9828acfd78d04bf149767dfe5247ae4f53ec5b0bd65c410ba";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/fr/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/fr/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "fr";
|
locale = "fr";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "859457a9c0bae23e4acf901d38de814858c60fe1a5e28ee897b2c2f4c86bc29a";
|
sha256 = "6ccfac2b5d96491c4d5dc7b00e4458617ca68fe07917941559534a31424c977c";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/fy-NL/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/fy-NL/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "fy-NL";
|
locale = "fy-NL";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "d5a91d212e0c9c6c533bd7f05edca3dbea93eba0bf0d34eabd1e9ba7c7138e8b";
|
sha256 = "1b470c45c9d52a8a84c59dbb4ed0e6966d124ffdc3ea865e4d02289bd39b346f";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/ga-IE/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/ga-IE/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "ga-IE";
|
locale = "ga-IE";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "980e053f0bcd5096753213fd6cc252be388312980032132bf912af2d4249278a";
|
sha256 = "a1cbb9a4c1bf91f920da9e4e0e39e6ecff0a8c87413898c1930ce69dadad9a26";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/gd/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/gd/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "gd";
|
locale = "gd";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "7b61b433d2f55191f7ecc63e04ceabcebcc85ab211553b71de575bbf14db05ee";
|
sha256 = "909be2cc362ed839f373eb22d27c5f3c569b1c82fc2ba5aaf270d605029d336c";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/gl/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/gl/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "gl";
|
locale = "gl";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "2dbb2021eacf17f5d42d0f8edc32a3f4d0ae3964cc8b44b0875fcee9bbd8ebbe";
|
sha256 = "8ffadcffd16aca8befd4b9c230b7da750e6a694add7ee465227a0c3f31a5c655";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/he/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/he/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "he";
|
locale = "he";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "b64fdf97d7f3029ffe465bbe621735970c73682cbde03935c2ad94325a7a77cf";
|
sha256 = "a9242889345131a405d138d0ec8e470eb49c59ada18b1e8f78004f307ceb41b1";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/hr/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/hr/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "hr";
|
locale = "hr";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "05606268efa91e8266a75f9f53dae8e8095fd70bc1095e2cc160171eb32e9a0a";
|
sha256 = "eb1f5496811677e28b2ed034da40ebf1fef324673e0f3acb2c21f0db5c71f592";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/hsb/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/hsb/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "hsb";
|
locale = "hsb";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "8a2dd27b17cbfad0846a40b4863c72e0754137e4ae581998ff291b4428a069ef";
|
sha256 = "643a2b11a0775a71a8fa6c25097cfe297e6bc190fb29eee18ddd3d16fb61d989";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/hu/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/hu/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "hu";
|
locale = "hu";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "01daa9ab4f5d096a9a5e138db4debeee302fb875f885e644eea88103c5c62111";
|
sha256 = "61d91bed542a7e014a8d11e46e1b3d97e8bef1303bba397b3d4da0585b1e68af";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/hy-AM/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/hy-AM/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "hy-AM";
|
locale = "hy-AM";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "69159084189c5700e5c8c27bf4cc0345fcafe0879b7f7cca285246a41e411578";
|
sha256 = "2e6739d14a45529ed2a68abb8ed03ad901b4e7770efebd382f6e9626c86da036";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/id/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/id/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "id";
|
locale = "id";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "798203a12f76cb3c698363da72b235fc9abfc5a68913f3265c9b17b14318eb73";
|
sha256 = "8753bc4c7292cd0c6ee382bb5572e432222e7c39ed739904d91ed1ece5a8197e";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/is/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/is/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "is";
|
locale = "is";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "19544548a0b0217f5f5256949d74897c784298dfe762174487ab2ba2557a55e7";
|
sha256 = "4f624262b72fce7d258b6f7c264f7d2266ebcfdd59fce895e4e85c72fa784637";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/it/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/it/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "it";
|
locale = "it";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "b1ae17f3d4533db0107ab280ec4e8ecc610db9581d44ed52d8ca87c821c37c1b";
|
sha256 = "6298ce45c4a659e47877302d61a50dfc7e0634e7c3e7036aeec49da5a2839073";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/ja/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/ja/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "ja";
|
locale = "ja";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "c16c27372c28063a06e31fc440294a655fb72bc033efbfd797d150e99e6ebaed";
|
sha256 = "85a7b01f65c79b0e13c4f8a18f3950f0a250f380fc8756b8fb1709680a148554";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/ka/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/ka/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "ka";
|
locale = "ka";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "3057efd5078776f1690890d601153a73e2450051a0edb61e92d196318b644679";
|
sha256 = "f7b18243b9985b54eb8684b62bad47b7b021eb959f467fec9876c866d92b1727";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/kab/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/kab/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "kab";
|
locale = "kab";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "ce8010b362b601819fac825ce27b9efd8af8f0965f8f1cabb21bfcddb2ec7315";
|
sha256 = "cc8eb77d0d0ea95a1e2b13db51da4f18a9500aeacee1cbe505da67f2b6a9b979";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/kk/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/kk/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "kk";
|
locale = "kk";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "b73930d1508bdcaecfb9ce280f0d86fd5dc7a3d26160caa0eabbe47243956139";
|
sha256 = "6999faf34774806e1e4257a139dd97dd50a889a7729fef4f51a8b41bb4ad169e";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/ko/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/ko/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "ko";
|
locale = "ko";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "24d6e557b6419bb3a512646edb6e1e4d01ce1c0e134b9bb9cc54ad5acb6a0675";
|
sha256 = "42b0bf1ebfce252fdfca3ed8de9f227bbb054bf591e6155b716b18e9613a9cff";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/lt/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/lt/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "lt";
|
locale = "lt";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "c9dc7dc77a1c1acdc1e244e6b1201ecd3305b5c10ef946ceb880fb66d57c249a";
|
sha256 = "6ffe9b52189579bee34604499649901be5c8be2a026eb70a33ac9eb4e3b21880";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/ms/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/ms/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "ms";
|
locale = "ms";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "d3a0b9fc5b38de919515df9dc6ca696c7c70f629b192e8cae099a55432d466d3";
|
sha256 = "640942eb04d84d24bd28cf5e49e57497934810394b50693bad591cf3b783e1bf";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/nb-NO/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/nb-NO/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "nb-NO";
|
locale = "nb-NO";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "80f552a61288f1d1a6346d302919fd90f63c2d349a2d33921eac9a65c341a7d9";
|
sha256 = "c0d35274192ae664314e91fd9364609cbbf142f8177d37210c9c49fdf8d31086";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/nl/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/nl/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "nl";
|
locale = "nl";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "89007857be04b59bf724a2f6c295c0948a885c8da8c7a7060922e04f616baf30";
|
sha256 = "864ac834a0f44ce112deb107abce170802abaa63556f0aad88ee828bf3f8a98c";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/nn-NO/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/nn-NO/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "nn-NO";
|
locale = "nn-NO";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "b7a8060d3138a55a29374d890b326e77105f41e809053d34c24464a892c6bdbc";
|
sha256 = "e821eaf0388885e3b5e88001a2c4410cdf065059b79a3581c324f53d1cf59eb5";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/pa-IN/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/pa-IN/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "pa-IN";
|
locale = "pa-IN";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "69f803555cc9b3ba7fbf638e101b76bef10a234747cd0764e906e5d2adbb9a97";
|
sha256 = "5a0afbf815683afd24c258ac66a45dc300028b4d41a9950784355645874459ed";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/pl/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/pl/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "pl";
|
locale = "pl";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "4cd4da857d9cbdc5d89e07529d30df28a758c3c105160d2217b50206147c21e5";
|
sha256 = "cebdc0a0188edc63fce0b4fe0a4a3f22ab792ad486bd1e10e635ac8f641f1b5d";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/pt-BR/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/pt-BR/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "pt-BR";
|
locale = "pt-BR";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "43fca4ac927932589b58e60f7b3b1cdcdc1d73b6f9073e0c1eb2993527afe9be";
|
sha256 = "7bbf9aa4d48bf84a7455dcebc6b7476e4c1ffa085c1771fbdf302f71d10e4825";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/pt-PT/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/pt-PT/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "pt-PT";
|
locale = "pt-PT";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "25591b73b7ae5d28441baeeae3fb3a5a47f36ea21db763b95782494fd8491122";
|
sha256 = "b84c28dfb5d677768a6e0f69c8ea63fcaf884839739789ac72f50e7b8884f8ca";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/rm/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/rm/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "rm";
|
locale = "rm";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "14a0725f1083ab9c4baafe6944604cc5781cc9d3d44cbc406874b5ce01df785d";
|
sha256 = "f34eea430a9e929c25ad961b1c92724c5539a46cbbfb9a97a5c7edca4996115a";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/ro/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/ro/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "ro";
|
locale = "ro";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "f32af00602a13e262e6b34c8b5783b31a991dee72d82c841086d21e37d669dcd";
|
sha256 = "115cd666282822f35924d4de3b33fd0dd3d790d278bb35849ada579d43d5ac54";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/ru/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/ru/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "ru";
|
locale = "ru";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "367e7865f1c5d10eb912fce96a34bf6ce25ca48e4ec9209bce8af06412be7781";
|
sha256 = "961eb62e639f8f7c7c5695bd39df50fe4b3401e7aeade8281600779bb8edd374";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/si/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/si/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "si";
|
locale = "si";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "da0494be7a26f0a531d108ca20a0bc9763860e44adaa6149ea059f46daabbe0c";
|
sha256 = "0887999609e47839a0f7600215c3083ce939fe13abc0c38cf701449224dbc87a";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/sk/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/sk/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "sk";
|
locale = "sk";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "1c5078f413207049a35c69be32c6996cad169cadc009b3f079b3adc8a932ca22";
|
sha256 = "a3b9281efc4c0cd6cb454f2c5b97567b4d2c6567076cee188e85c30a45213f98";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/sl/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/sl/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "sl";
|
locale = "sl";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "d8a5edf78b5a87c0b3baf0199231e6e9224e1afdf4eff05780b6c9b98657c1ef";
|
sha256 = "141e9a41dba4c2a3eee4370d2db6e14f8805fee2d70c20ecbb9865b7a0dcaa77";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/sq/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/sq/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "sq";
|
locale = "sq";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "fefcb88c0c5f6ee62ba8224417a629d8a4f0c18b20fcb037c36af772b0d2b71c";
|
sha256 = "6a50fdac7993294937756a169b4b0ac7fe021611c5c6a730ea194ee7302c95dc";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/sr/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/sr/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "sr";
|
locale = "sr";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "c42818c409de6447c1aa00f8aa6422a9fbb6fa16f01d5076331937c1145a4b87";
|
sha256 = "2ec4c2f367bceb3f05c75e55366cc66fae6593fc35c79d7bea57f34f93d79dba";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/sv-SE/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/sv-SE/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "sv-SE";
|
locale = "sv-SE";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "c27d87cde88f38f3611358b5fb3622611c38860ee37d1d90aaabcb4db614a031";
|
sha256 = "4a9027f9aa74bd9c6e3cbf02ac1918f1b9dfbda57ed0344a99fccad9fa271f79";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/th/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/th/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "th";
|
locale = "th";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "df9b827a723675e70131d147fa6f6325f6e6a14a6b95f6f5b6fae4552501c6b0";
|
sha256 = "f394b18a364fa84ff5eeeee00c841248ba4095285833ce625b700fd500b9c0cc";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/tr/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/tr/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "tr";
|
locale = "tr";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "7a9d6e1b5927c7c54b73062a59d366cd5153896a89e95005177fdf4b789eda42";
|
sha256 = "9f180c1b6b604fc597bf1ecb10e3521c70953cb70d4292105cb3bc7cbeb806c0";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/uk/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/uk/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "uk";
|
locale = "uk";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "c421df09d5bbb5e4de273258757df28e5a6eba291a4eabbf28db71a50cb11da7";
|
sha256 = "f828ac8f52bda71f913462e60fb7ea2221de4f824063b95b85709320a820db8a";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/uz/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/uz/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "uz";
|
locale = "uz";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "296ca42b0c9f67ef0bb545f458334ec26e03be3327fd1e1b066d8324965704b2";
|
sha256 = "8d3dd4a1bbe008e4d346c22c01bafe988dde88fa6c9919c50194b9b155bc821f";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/vi/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/vi/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "vi";
|
locale = "vi";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "46579d9723f5ccc84700c2544f3d1235db338471306d87a1caa0ac4fb337c8bd";
|
sha256 = "4db40b3debca281c59e926bd0f9cb4e5cd2150bf27235f1178ed8e497616a031";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/zh-CN/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/zh-CN/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "zh-CN";
|
locale = "zh-CN";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "9bf0df6568eadf611891f49591975166da95eb4e78e1191eb3354a81637907d2";
|
sha256 = "399707f970a01e2f3c2eacc81f2f3bb33b1f49433c3ba6c49f4615b499f0c246";
|
||||||
}
|
}
|
||||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.0/linux-i686/zh-TW/thunderbird-78.5.0.tar.bz2";
|
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/78.5.1/linux-i686/zh-TW/thunderbird-78.5.1.tar.bz2";
|
||||||
locale = "zh-TW";
|
locale = "zh-TW";
|
||||||
arch = "linux-i686";
|
arch = "linux-i686";
|
||||||
sha256 = "8fee4fd8980d551317fc8f98f29938034f5ff90b765e73ef8cd09f8fe68f90c8";
|
sha256 = "27ad21908069582a4a7641dc9a7d9acc69d4842382499cef2cee2f84d0fc3856";
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
@ -71,13 +71,13 @@ assert waylandSupport -> gtk3Support == true;
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "thunderbird";
|
pname = "thunderbird";
|
||||||
version = "78.5.0";
|
version = "78.5.1";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url =
|
url =
|
||||||
"mirror://mozilla/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.xz";
|
"mirror://mozilla/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.xz";
|
||||||
sha512 =
|
sha512 =
|
||||||
"0c32dz8p7rrr0w13l2ynf9snj59ij1v2ld3s75vz1hvks4dikwgcbm44wmvmbisvgyfgzdsphafzlq3kz3j1ja30qjigl0dj709vr6s";
|
"202s2h9fsvg4chy93rgxdf4vlavf3wbp9vqgh0nrgk5wcdhz17144vhw1bmxia8hf99snq2a3ix6haidwl8d2n6l2nfsjzcnphhxd9z";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
18
third_party/nixpkgs/pkgs/applications/networking/n8n/default.nix
vendored
Normal file
18
third_party/nixpkgs/pkgs/applications/networking/n8n/default.nix
vendored
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
{ pkgs, nodejs, stdenv, lib, ... }:
|
||||||
|
|
||||||
|
let
|
||||||
|
nodePackages = import ./node-composition.nix {
|
||||||
|
inherit pkgs nodejs;
|
||||||
|
inherit (stdenv.hostPlatform) system;
|
||||||
|
};
|
||||||
|
in
|
||||||
|
nodePackages.n8n.override {
|
||||||
|
nativeBuildInputs = with pkgs.nodePackages; [
|
||||||
|
node-pre-gyp
|
||||||
|
];
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Free and open fair-code licensed node based Workflow Automation Tool";
|
||||||
|
maintainers = with maintainers; [ freezeboy ];
|
||||||
|
license = licenses.asl20;
|
||||||
|
};
|
||||||
|
}
|
8
third_party/nixpkgs/pkgs/applications/networking/n8n/generate-dependencies.sh
vendored
Executable file
8
third_party/nixpkgs/pkgs/applications/networking/n8n/generate-dependencies.sh
vendored
Executable file
|
@ -0,0 +1,8 @@
|
||||||
|
#!/usr/bin/env nix-shell
|
||||||
|
#! nix-shell -i bash -p nodePackages.node2nix
|
||||||
|
|
||||||
|
node2nix \
|
||||||
|
--node-env node-env.nix \
|
||||||
|
--input package.json \
|
||||||
|
--output node-packages.nix \
|
||||||
|
--composition node-composition.nix
|
17
third_party/nixpkgs/pkgs/applications/networking/n8n/node-composition.nix
vendored
Normal file
17
third_party/nixpkgs/pkgs/applications/networking/n8n/node-composition.nix
vendored
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
# This file has been generated by node2nix 1.8.0. Do not edit!
|
||||||
|
|
||||||
|
{pkgs ? import <nixpkgs> {
|
||||||
|
inherit system;
|
||||||
|
}, system ? builtins.currentSystem, nodejs ? pkgs."nodejs-12_x"}:
|
||||||
|
|
||||||
|
let
|
||||||
|
nodeEnv = import ./node-env.nix {
|
||||||
|
inherit (pkgs) stdenv python2 utillinux runCommand writeTextFile;
|
||||||
|
inherit nodejs;
|
||||||
|
libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
|
||||||
|
};
|
||||||
|
in
|
||||||
|
import ./node-packages.nix {
|
||||||
|
inherit (pkgs) fetchurl fetchgit;
|
||||||
|
inherit nodeEnv;
|
||||||
|
}
|
542
third_party/nixpkgs/pkgs/applications/networking/n8n/node-env.nix
vendored
Normal file
542
third_party/nixpkgs/pkgs/applications/networking/n8n/node-env.nix
vendored
Normal file
|
@ -0,0 +1,542 @@
|
||||||
|
# This file originates from node2nix
|
||||||
|
|
||||||
|
{stdenv, nodejs, python2, utillinux, libtool, runCommand, writeTextFile}:
|
||||||
|
|
||||||
|
let
|
||||||
|
python = if nodejs ? python then nodejs.python else python2;
|
||||||
|
|
||||||
|
# Create a tar wrapper that filters all the 'Ignoring unknown extended header keyword' noise
|
||||||
|
tarWrapper = runCommand "tarWrapper" {} ''
|
||||||
|
mkdir -p $out/bin
|
||||||
|
|
||||||
|
cat > $out/bin/tar <<EOF
|
||||||
|
#! ${stdenv.shell} -e
|
||||||
|
$(type -p tar) "\$@" --warning=no-unknown-keyword --delay-directory-restore
|
||||||
|
EOF
|
||||||
|
|
||||||
|
chmod +x $out/bin/tar
|
||||||
|
'';
|
||||||
|
|
||||||
|
# Function that generates a TGZ file from a NPM project
|
||||||
|
buildNodeSourceDist =
|
||||||
|
{ name, version, src, ... }:
|
||||||
|
|
||||||
|
stdenv.mkDerivation {
|
||||||
|
name = "node-tarball-${name}-${version}";
|
||||||
|
inherit src;
|
||||||
|
buildInputs = [ nodejs ];
|
||||||
|
buildPhase = ''
|
||||||
|
export HOME=$TMPDIR
|
||||||
|
tgzFile=$(npm pack | tail -n 1) # Hooks to the pack command will add output (https://docs.npmjs.com/misc/scripts)
|
||||||
|
'';
|
||||||
|
installPhase = ''
|
||||||
|
mkdir -p $out/tarballs
|
||||||
|
mv $tgzFile $out/tarballs
|
||||||
|
mkdir -p $out/nix-support
|
||||||
|
echo "file source-dist $out/tarballs/$tgzFile" >> $out/nix-support/hydra-build-products
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
includeDependencies = {dependencies}:
|
||||||
|
stdenv.lib.optionalString (dependencies != [])
|
||||||
|
(stdenv.lib.concatMapStrings (dependency:
|
||||||
|
''
|
||||||
|
# Bundle the dependencies of the package
|
||||||
|
mkdir -p node_modules
|
||||||
|
cd node_modules
|
||||||
|
|
||||||
|
# Only include dependencies if they don't exist. They may also be bundled in the package.
|
||||||
|
if [ ! -e "${dependency.name}" ]
|
||||||
|
then
|
||||||
|
${composePackage dependency}
|
||||||
|
fi
|
||||||
|
|
||||||
|
cd ..
|
||||||
|
''
|
||||||
|
) dependencies);
|
||||||
|
|
||||||
|
# Recursively composes the dependencies of a package
|
||||||
|
composePackage = { name, packageName, src, dependencies ? [], ... }@args:
|
||||||
|
builtins.addErrorContext "while evaluating node package '${packageName}'" ''
|
||||||
|
DIR=$(pwd)
|
||||||
|
cd $TMPDIR
|
||||||
|
|
||||||
|
unpackFile ${src}
|
||||||
|
|
||||||
|
# Make the base dir in which the target dependency resides first
|
||||||
|
mkdir -p "$(dirname "$DIR/${packageName}")"
|
||||||
|
|
||||||
|
if [ -f "${src}" ]
|
||||||
|
then
|
||||||
|
# Figure out what directory has been unpacked
|
||||||
|
packageDir="$(find . -maxdepth 1 -type d | tail -1)"
|
||||||
|
|
||||||
|
# Restore write permissions to make building work
|
||||||
|
find "$packageDir" -type d -exec chmod u+x {} \;
|
||||||
|
chmod -R u+w "$packageDir"
|
||||||
|
|
||||||
|
# Move the extracted tarball into the output folder
|
||||||
|
mv "$packageDir" "$DIR/${packageName}"
|
||||||
|
elif [ -d "${src}" ]
|
||||||
|
then
|
||||||
|
# Get a stripped name (without hash) of the source directory.
|
||||||
|
# On old nixpkgs it's already set internally.
|
||||||
|
if [ -z "$strippedName" ]
|
||||||
|
then
|
||||||
|
strippedName="$(stripHash ${src})"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Restore write permissions to make building work
|
||||||
|
chmod -R u+w "$strippedName"
|
||||||
|
|
||||||
|
# Move the extracted directory into the output folder
|
||||||
|
mv "$strippedName" "$DIR/${packageName}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Unset the stripped name to not confuse the next unpack step
|
||||||
|
unset strippedName
|
||||||
|
|
||||||
|
# Include the dependencies of the package
|
||||||
|
cd "$DIR/${packageName}"
|
||||||
|
${includeDependencies { inherit dependencies; }}
|
||||||
|
cd ..
|
||||||
|
${stdenv.lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."}
|
||||||
|
'';
|
||||||
|
|
||||||
|
pinpointDependencies = {dependencies, production}:
|
||||||
|
let
|
||||||
|
pinpointDependenciesFromPackageJSON = writeTextFile {
|
||||||
|
name = "pinpointDependencies.js";
|
||||||
|
text = ''
|
||||||
|
var fs = require('fs');
|
||||||
|
var path = require('path');
|
||||||
|
|
||||||
|
function resolveDependencyVersion(location, name) {
|
||||||
|
if(location == process.env['NIX_STORE']) {
|
||||||
|
return null;
|
||||||
|
} else {
|
||||||
|
var dependencyPackageJSON = path.join(location, "node_modules", name, "package.json");
|
||||||
|
|
||||||
|
if(fs.existsSync(dependencyPackageJSON)) {
|
||||||
|
var dependencyPackageObj = JSON.parse(fs.readFileSync(dependencyPackageJSON));
|
||||||
|
|
||||||
|
if(dependencyPackageObj.name == name) {
|
||||||
|
return dependencyPackageObj.version;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
return resolveDependencyVersion(path.resolve(location, ".."), name);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function replaceDependencies(dependencies) {
|
||||||
|
if(typeof dependencies == "object" && dependencies !== null) {
|
||||||
|
for(var dependency in dependencies) {
|
||||||
|
var resolvedVersion = resolveDependencyVersion(process.cwd(), dependency);
|
||||||
|
|
||||||
|
if(resolvedVersion === null) {
|
||||||
|
process.stderr.write("WARNING: cannot pinpoint dependency: "+dependency+", context: "+process.cwd()+"\n");
|
||||||
|
} else {
|
||||||
|
dependencies[dependency] = resolvedVersion;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Read the package.json configuration */
|
||||||
|
var packageObj = JSON.parse(fs.readFileSync('./package.json'));
|
||||||
|
|
||||||
|
/* Pinpoint all dependencies */
|
||||||
|
replaceDependencies(packageObj.dependencies);
|
||||||
|
if(process.argv[2] == "development") {
|
||||||
|
replaceDependencies(packageObj.devDependencies);
|
||||||
|
}
|
||||||
|
replaceDependencies(packageObj.optionalDependencies);
|
||||||
|
|
||||||
|
/* Write the fixed package.json file */
|
||||||
|
fs.writeFileSync("package.json", JSON.stringify(packageObj, null, 2));
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
in
|
||||||
|
''
|
||||||
|
node ${pinpointDependenciesFromPackageJSON} ${if production then "production" else "development"}
|
||||||
|
|
||||||
|
${stdenv.lib.optionalString (dependencies != [])
|
||||||
|
''
|
||||||
|
if [ -d node_modules ]
|
||||||
|
then
|
||||||
|
cd node_modules
|
||||||
|
${stdenv.lib.concatMapStrings (dependency: pinpointDependenciesOfPackage dependency) dependencies}
|
||||||
|
cd ..
|
||||||
|
fi
|
||||||
|
''}
|
||||||
|
'';
|
||||||
|
|
||||||
|
# Recursively traverses all dependencies of a package and pinpoints all
|
||||||
|
# dependencies in the package.json file to the versions that are actually
|
||||||
|
# being used.
|
||||||
|
|
||||||
|
pinpointDependenciesOfPackage = { packageName, dependencies ? [], production ? true, ... }@args:
|
||||||
|
''
|
||||||
|
if [ -d "${packageName}" ]
|
||||||
|
then
|
||||||
|
cd "${packageName}"
|
||||||
|
${pinpointDependencies { inherit dependencies production; }}
|
||||||
|
cd ..
|
||||||
|
${stdenv.lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."}
|
||||||
|
fi
|
||||||
|
'';
|
||||||
|
|
||||||
|
# Extract the Node.js source code which is used to compile packages with
|
||||||
|
# native bindings
|
||||||
|
nodeSources = runCommand "node-sources" {} ''
|
||||||
|
tar --no-same-owner --no-same-permissions -xf ${nodejs.src}
|
||||||
|
mv node-* $out
|
||||||
|
'';
|
||||||
|
|
||||||
|
# Script that adds _integrity fields to all package.json files to prevent NPM from consulting the cache (that is empty)
|
||||||
|
addIntegrityFieldsScript = writeTextFile {
|
||||||
|
name = "addintegrityfields.js";
|
||||||
|
text = ''
|
||||||
|
var fs = require('fs');
|
||||||
|
var path = require('path');
|
||||||
|
|
||||||
|
function augmentDependencies(baseDir, dependencies) {
|
||||||
|
for(var dependencyName in dependencies) {
|
||||||
|
var dependency = dependencies[dependencyName];
|
||||||
|
|
||||||
|
// Open package.json and augment metadata fields
|
||||||
|
var packageJSONDir = path.join(baseDir, "node_modules", dependencyName);
|
||||||
|
var packageJSONPath = path.join(packageJSONDir, "package.json");
|
||||||
|
|
||||||
|
if(fs.existsSync(packageJSONPath)) { // Only augment packages that exist. Sometimes we may have production installs in which development dependencies can be ignored
|
||||||
|
console.log("Adding metadata fields to: "+packageJSONPath);
|
||||||
|
var packageObj = JSON.parse(fs.readFileSync(packageJSONPath));
|
||||||
|
|
||||||
|
if(dependency.integrity) {
|
||||||
|
packageObj["_integrity"] = dependency.integrity;
|
||||||
|
} else {
|
||||||
|
packageObj["_integrity"] = "sha1-000000000000000000000000000="; // When no _integrity string has been provided (e.g. by Git dependencies), add a dummy one. It does not seem to harm and it bypasses downloads.
|
||||||
|
}
|
||||||
|
|
||||||
|
if(dependency.resolved) {
|
||||||
|
packageObj["_resolved"] = dependency.resolved; // Adopt the resolved property if one has been provided
|
||||||
|
} else {
|
||||||
|
packageObj["_resolved"] = dependency.version; // Set the resolved version to the version identifier. This prevents NPM from cloning Git repositories.
|
||||||
|
}
|
||||||
|
|
||||||
|
if(dependency.from !== undefined) { // Adopt from property if one has been provided
|
||||||
|
packageObj["_from"] = dependency.from;
|
||||||
|
}
|
||||||
|
|
||||||
|
fs.writeFileSync(packageJSONPath, JSON.stringify(packageObj, null, 2));
|
||||||
|
}
|
||||||
|
|
||||||
|
// Augment transitive dependencies
|
||||||
|
if(dependency.dependencies !== undefined) {
|
||||||
|
augmentDependencies(packageJSONDir, dependency.dependencies);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(fs.existsSync("./package-lock.json")) {
|
||||||
|
var packageLock = JSON.parse(fs.readFileSync("./package-lock.json"));
|
||||||
|
|
||||||
|
if(packageLock.lockfileVersion !== 1) {
|
||||||
|
process.stderr.write("Sorry, I only understand lock file version 1!\n");
|
||||||
|
process.exit(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
if(packageLock.dependencies !== undefined) {
|
||||||
|
augmentDependencies(".", packageLock.dependencies);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
# Reconstructs a package-lock file from the node_modules/ folder structure and package.json files with dummy sha1 hashes
|
||||||
|
reconstructPackageLock = writeTextFile {
|
||||||
|
name = "addintegrityfields.js";
|
||||||
|
text = ''
|
||||||
|
var fs = require('fs');
|
||||||
|
var path = require('path');
|
||||||
|
|
||||||
|
var packageObj = JSON.parse(fs.readFileSync("package.json"));
|
||||||
|
|
||||||
|
var lockObj = {
|
||||||
|
name: packageObj.name,
|
||||||
|
version: packageObj.version,
|
||||||
|
lockfileVersion: 1,
|
||||||
|
requires: true,
|
||||||
|
dependencies: {}
|
||||||
|
};
|
||||||
|
|
||||||
|
function augmentPackageJSON(filePath, dependencies) {
|
||||||
|
var packageJSON = path.join(filePath, "package.json");
|
||||||
|
if(fs.existsSync(packageJSON)) {
|
||||||
|
var packageObj = JSON.parse(fs.readFileSync(packageJSON));
|
||||||
|
dependencies[packageObj.name] = {
|
||||||
|
version: packageObj.version,
|
||||||
|
integrity: "sha1-000000000000000000000000000=",
|
||||||
|
dependencies: {}
|
||||||
|
};
|
||||||
|
processDependencies(path.join(filePath, "node_modules"), dependencies[packageObj.name].dependencies);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function processDependencies(dir, dependencies) {
|
||||||
|
if(fs.existsSync(dir)) {
|
||||||
|
var files = fs.readdirSync(dir);
|
||||||
|
|
||||||
|
files.forEach(function(entry) {
|
||||||
|
var filePath = path.join(dir, entry);
|
||||||
|
var stats = fs.statSync(filePath);
|
||||||
|
|
||||||
|
if(stats.isDirectory()) {
|
||||||
|
if(entry.substr(0, 1) == "@") {
|
||||||
|
// When we encounter a namespace folder, augment all packages belonging to the scope
|
||||||
|
var pkgFiles = fs.readdirSync(filePath);
|
||||||
|
|
||||||
|
pkgFiles.forEach(function(entry) {
|
||||||
|
if(stats.isDirectory()) {
|
||||||
|
var pkgFilePath = path.join(filePath, entry);
|
||||||
|
augmentPackageJSON(pkgFilePath, dependencies);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
augmentPackageJSON(filePath, dependencies);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
processDependencies("node_modules", lockObj.dependencies);
|
||||||
|
|
||||||
|
fs.writeFileSync("package-lock.json", JSON.stringify(lockObj, null, 2));
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
prepareAndInvokeNPM = {packageName, bypassCache, reconstructLock, npmFlags, production}:
|
||||||
|
let
|
||||||
|
forceOfflineFlag = if bypassCache then "--offline" else "--registry http://www.example.com";
|
||||||
|
in
|
||||||
|
''
|
||||||
|
# Pinpoint the versions of all dependencies to the ones that are actually being used
|
||||||
|
echo "pinpointing versions of dependencies..."
|
||||||
|
source $pinpointDependenciesScriptPath
|
||||||
|
|
||||||
|
# Patch the shebangs of the bundled modules to prevent them from
|
||||||
|
# calling executables outside the Nix store as much as possible
|
||||||
|
patchShebangs .
|
||||||
|
|
||||||
|
# Deploy the Node.js package by running npm install. Since the
|
||||||
|
# dependencies have been provided already by ourselves, it should not
|
||||||
|
# attempt to install them again, which is good, because we want to make
|
||||||
|
# it Nix's responsibility. If it needs to install any dependencies
|
||||||
|
# anyway (e.g. because the dependency parameters are
|
||||||
|
# incomplete/incorrect), it fails.
|
||||||
|
#
|
||||||
|
# The other responsibilities of NPM are kept -- version checks, build
|
||||||
|
# steps, postprocessing etc.
|
||||||
|
|
||||||
|
export HOME=$TMPDIR
|
||||||
|
cd "${packageName}"
|
||||||
|
runHook preRebuild
|
||||||
|
|
||||||
|
${stdenv.lib.optionalString bypassCache ''
|
||||||
|
${stdenv.lib.optionalString reconstructLock ''
|
||||||
|
if [ -f package-lock.json ]
|
||||||
|
then
|
||||||
|
echo "WARNING: Reconstruct lock option enabled, but a lock file already exists!"
|
||||||
|
echo "This will most likely result in version mismatches! We will remove the lock file and regenerate it!"
|
||||||
|
rm package-lock.json
|
||||||
|
else
|
||||||
|
echo "No package-lock.json file found, reconstructing..."
|
||||||
|
fi
|
||||||
|
|
||||||
|
node ${reconstructPackageLock}
|
||||||
|
''}
|
||||||
|
|
||||||
|
node ${addIntegrityFieldsScript}
|
||||||
|
''}
|
||||||
|
|
||||||
|
npm ${forceOfflineFlag} --nodedir=${nodeSources} ${npmFlags} ${stdenv.lib.optionalString production "--production"} rebuild
|
||||||
|
|
||||||
|
if [ "''${dontNpmInstall-}" != "1" ]
|
||||||
|
then
|
||||||
|
# NPM tries to download packages even when they already exist if npm-shrinkwrap is used.
|
||||||
|
rm -f npm-shrinkwrap.json
|
||||||
|
|
||||||
|
npm ${forceOfflineFlag} --nodedir=${nodeSources} ${npmFlags} ${stdenv.lib.optionalString production "--production"} install
|
||||||
|
fi
|
||||||
|
'';
|
||||||
|
|
||||||
|
# Builds and composes an NPM package including all its dependencies
|
||||||
|
buildNodePackage =
|
||||||
|
{ name
|
||||||
|
, packageName
|
||||||
|
, version
|
||||||
|
, dependencies ? []
|
||||||
|
, buildInputs ? []
|
||||||
|
, production ? true
|
||||||
|
, npmFlags ? ""
|
||||||
|
, dontNpmInstall ? false
|
||||||
|
, bypassCache ? false
|
||||||
|
, reconstructLock ? false
|
||||||
|
, preRebuild ? ""
|
||||||
|
, dontStrip ? true
|
||||||
|
, unpackPhase ? "true"
|
||||||
|
, buildPhase ? "true"
|
||||||
|
, ... }@args:
|
||||||
|
|
||||||
|
let
|
||||||
|
extraArgs = removeAttrs args [ "name" "dependencies" "buildInputs" "dontStrip" "dontNpmInstall" "preRebuild" "unpackPhase" "buildPhase" ];
|
||||||
|
in
|
||||||
|
stdenv.mkDerivation ({
|
||||||
|
name = "node_${name}-${version}";
|
||||||
|
buildInputs = [ tarWrapper python nodejs ]
|
||||||
|
++ stdenv.lib.optional (stdenv.isLinux) utillinux
|
||||||
|
++ stdenv.lib.optional (stdenv.isDarwin) libtool
|
||||||
|
++ buildInputs;
|
||||||
|
|
||||||
|
inherit nodejs;
|
||||||
|
|
||||||
|
inherit dontStrip; # Stripping may fail a build for some package deployments
|
||||||
|
inherit dontNpmInstall preRebuild unpackPhase buildPhase;
|
||||||
|
|
||||||
|
compositionScript = composePackage args;
|
||||||
|
pinpointDependenciesScript = pinpointDependenciesOfPackage args;
|
||||||
|
|
||||||
|
passAsFile = [ "compositionScript" "pinpointDependenciesScript" ];
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
# Create and enter a root node_modules/ folder
|
||||||
|
mkdir -p $out/lib/node_modules
|
||||||
|
cd $out/lib/node_modules
|
||||||
|
|
||||||
|
# Compose the package and all its dependencies
|
||||||
|
source $compositionScriptPath
|
||||||
|
|
||||||
|
${prepareAndInvokeNPM { inherit packageName bypassCache reconstructLock npmFlags production; }}
|
||||||
|
|
||||||
|
# Create symlink to the deployed executable folder, if applicable
|
||||||
|
if [ -d "$out/lib/node_modules/.bin" ]
|
||||||
|
then
|
||||||
|
ln -s $out/lib/node_modules/.bin $out/bin
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Create symlinks to the deployed manual page folders, if applicable
|
||||||
|
if [ -d "$out/lib/node_modules/${packageName}/man" ]
|
||||||
|
then
|
||||||
|
mkdir -p $out/share
|
||||||
|
for dir in "$out/lib/node_modules/${packageName}/man/"*
|
||||||
|
do
|
||||||
|
mkdir -p $out/share/man/$(basename "$dir")
|
||||||
|
for page in "$dir"/*
|
||||||
|
do
|
||||||
|
ln -s $page $out/share/man/$(basename "$dir")
|
||||||
|
done
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Run post install hook, if provided
|
||||||
|
runHook postInstall
|
||||||
|
'';
|
||||||
|
} // extraArgs);
|
||||||
|
|
||||||
|
# Builds a development shell
|
||||||
|
buildNodeShell =
|
||||||
|
{ name
|
||||||
|
, packageName
|
||||||
|
, version
|
||||||
|
, src
|
||||||
|
, dependencies ? []
|
||||||
|
, buildInputs ? []
|
||||||
|
, production ? true
|
||||||
|
, npmFlags ? ""
|
||||||
|
, dontNpmInstall ? false
|
||||||
|
, bypassCache ? false
|
||||||
|
, reconstructLock ? false
|
||||||
|
, dontStrip ? true
|
||||||
|
, unpackPhase ? "true"
|
||||||
|
, buildPhase ? "true"
|
||||||
|
, ... }@args:
|
||||||
|
|
||||||
|
let
|
||||||
|
extraArgs = removeAttrs args [ "name" "dependencies" "buildInputs" ];
|
||||||
|
|
||||||
|
nodeDependencies = stdenv.mkDerivation ({
|
||||||
|
name = "node-dependencies-${name}-${version}";
|
||||||
|
|
||||||
|
buildInputs = [ tarWrapper python nodejs ]
|
||||||
|
++ stdenv.lib.optional (stdenv.isLinux) utillinux
|
||||||
|
++ stdenv.lib.optional (stdenv.isDarwin) libtool
|
||||||
|
++ buildInputs;
|
||||||
|
|
||||||
|
inherit dontStrip; # Stripping may fail a build for some package deployments
|
||||||
|
inherit dontNpmInstall unpackPhase buildPhase;
|
||||||
|
|
||||||
|
includeScript = includeDependencies { inherit dependencies; };
|
||||||
|
pinpointDependenciesScript = pinpointDependenciesOfPackage args;
|
||||||
|
|
||||||
|
passAsFile = [ "includeScript" "pinpointDependenciesScript" ];
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
mkdir -p $out/${packageName}
|
||||||
|
cd $out/${packageName}
|
||||||
|
|
||||||
|
source $includeScriptPath
|
||||||
|
|
||||||
|
# Create fake package.json to make the npm commands work properly
|
||||||
|
cp ${src}/package.json .
|
||||||
|
chmod 644 package.json
|
||||||
|
${stdenv.lib.optionalString bypassCache ''
|
||||||
|
if [ -f ${src}/package-lock.json ]
|
||||||
|
then
|
||||||
|
cp ${src}/package-lock.json .
|
||||||
|
fi
|
||||||
|
''}
|
||||||
|
|
||||||
|
# Go to the parent folder to make sure that all packages are pinpointed
|
||||||
|
cd ..
|
||||||
|
${stdenv.lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."}
|
||||||
|
|
||||||
|
${prepareAndInvokeNPM { inherit packageName bypassCache reconstructLock npmFlags production; }}
|
||||||
|
|
||||||
|
# Expose the executables that were installed
|
||||||
|
cd ..
|
||||||
|
${stdenv.lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."}
|
||||||
|
|
||||||
|
mv ${packageName} lib
|
||||||
|
ln -s $out/lib/node_modules/.bin $out/bin
|
||||||
|
'';
|
||||||
|
} // extraArgs);
|
||||||
|
in
|
||||||
|
stdenv.mkDerivation {
|
||||||
|
name = "node-shell-${name}-${version}";
|
||||||
|
|
||||||
|
buildInputs = [ python nodejs ] ++ stdenv.lib.optional (stdenv.isLinux) utillinux ++ buildInputs;
|
||||||
|
buildCommand = ''
|
||||||
|
mkdir -p $out/bin
|
||||||
|
cat > $out/bin/shell <<EOF
|
||||||
|
#! ${stdenv.shell} -e
|
||||||
|
$shellHook
|
||||||
|
exec ${stdenv.shell}
|
||||||
|
EOF
|
||||||
|
chmod +x $out/bin/shell
|
||||||
|
'';
|
||||||
|
|
||||||
|
# Provide the dependencies in a development shell through the NODE_PATH environment variable
|
||||||
|
inherit nodeDependencies;
|
||||||
|
shellHook = stdenv.lib.optionalString (dependencies != []) ''
|
||||||
|
export NODE_PATH=${nodeDependencies}/lib/node_modules
|
||||||
|
export PATH="${nodeDependencies}/bin:$PATH"
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
in
|
||||||
|
{
|
||||||
|
buildNodeSourceDist = stdenv.lib.makeOverridable buildNodeSourceDist;
|
||||||
|
buildNodePackage = stdenv.lib.makeOverridable buildNodePackage;
|
||||||
|
buildNodeShell = stdenv.lib.makeOverridable buildNodeShell;
|
||||||
|
}
|
6929
third_party/nixpkgs/pkgs/applications/networking/n8n/node-packages.nix
generated
vendored
Normal file
6929
third_party/nixpkgs/pkgs/applications/networking/n8n/node-packages.nix
generated
vendored
Normal file
File diff suppressed because it is too large
Load diff
3
third_party/nixpkgs/pkgs/applications/networking/n8n/package.json
vendored
Normal file
3
third_party/nixpkgs/pkgs/applications/networking/n8n/package.json
vendored
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
[
|
||||||
|
"n8n"
|
||||||
|
]
|
|
@ -14,16 +14,16 @@
|
||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
pname = "espanso";
|
pname = "espanso";
|
||||||
version = "0.7.2";
|
version = "0.7.3";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "federico-terzi";
|
owner = "federico-terzi";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "11b02i254dn5nwk8m2g21ixz22qcqgcf90vwll0n3yny78p40hn0";
|
sha256 = "1q47r43midkq9574gl8gdv3ylvrnbhdc39rrw4y4yk6jbdf5wwkm";
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoSha256 = "1cnz6rbqbb08j67bw485qi22pi31b3l3yzgr6w1qx780ldf1zd54";
|
cargoSha256 = "0mxksifjagx25qkyg6ym0zlhal8014j8iim54cd44ndbkkiqlyxc";
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
extra-cmake-modules
|
extra-cmake-modules
|
||||||
|
|
|
@ -344,8 +344,6 @@ in (mkDrv rec {
|
||||||
# Schema files for validation are not included in the source tarball
|
# Schema files for validation are not included in the source tarball
|
||||||
"--without-export-validation"
|
"--without-export-validation"
|
||||||
|
|
||||||
"--disable-libnumbertext" # system-libnumbertext"
|
|
||||||
|
|
||||||
# We do tarball prefetching ourselves
|
# We do tarball prefetching ourselves
|
||||||
"--disable-fetch-external"
|
"--disable-fetch-external"
|
||||||
"--enable-build-opensymbol"
|
"--enable-build-opensymbol"
|
||||||
|
@ -368,6 +366,7 @@ in (mkDrv rec {
|
||||||
"--without-system-libfreehand"
|
"--without-system-libfreehand"
|
||||||
"--without-system-liblangtag"
|
"--without-system-liblangtag"
|
||||||
"--without-system-libmspub"
|
"--without-system-libmspub"
|
||||||
|
"--without-system-libnumbertext"
|
||||||
"--without-system-libpagemaker"
|
"--without-system-libpagemaker"
|
||||||
"--without-system-libstaroffice"
|
"--without-system-libstaroffice"
|
||||||
"--without-system-libepubgen"
|
"--without-system-libepubgen"
|
||||||
|
|
|
@ -10,11 +10,11 @@ let
|
||||||
in
|
in
|
||||||
buildPythonApplication rec {
|
buildPythonApplication rec {
|
||||||
pname = "todoman";
|
pname = "todoman";
|
||||||
version = "3.8.0";
|
version = "3.9.0";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
sha256 = "1aq7f63bhs9dnwzp15nfr07f2ki6s3lnqfap3b09rhchn6lfznwb";
|
sha256 = "e7e5cab13ecce0562b1f13f46ab8cbc079caed4b462f2371929f8a4abff2bcbe";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
@ -1,50 +1,41 @@
|
||||||
{ stdenv, fetchFromGitHub
|
{ stdenv, fetchFromGitHub, cmake, alsaLib, espeak, glibc, gpsd
|
||||||
, alsaLib, espeak, glibc, gpsd
|
|
||||||
, hamlib, perl, python, udev }:
|
, hamlib, perl, python, udev }:
|
||||||
|
|
||||||
with stdenv.lib;
|
with stdenv.lib;
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "direwolf";
|
pname = "direwolf";
|
||||||
version = "1.5";
|
version = "1.6";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "wb2osz";
|
owner = "wb2osz";
|
||||||
repo = "direwolf";
|
repo = "direwolf";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "1w55dv9xqgc9mpincsj017838vmvdy972fhis3ddskyfvhhzgcsk";
|
sha256 = "0xmz64m02knbrpasfij4rrq53ksxna5idxwgabcw4n2b1ig7pyx5";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [ cmake ];
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
espeak gpsd hamlib perl python
|
espeak gpsd hamlib perl python
|
||||||
] ++ (optionals stdenv.isLinux [alsaLib udev]);
|
] ++ (optionals stdenv.isLinux [alsaLib udev]);
|
||||||
|
|
||||||
makeFlags = [ "DESTDIR=$(out)" ];
|
patches = [
|
||||||
|
./udev-fix.patch
|
||||||
|
];
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
substituteInPlace symbols.c \
|
substituteInPlace src/symbols.c \
|
||||||
--replace /usr/share/direwolf/symbols-new.txt $out/share/direwolf/symbols-new.txt \
|
--replace /usr/share/direwolf/symbols-new.txt $out/share/direwolf/symbols-new.txt \
|
||||||
--replace /opt/local/share/direwolf/symbols-new.txt $out/share/direwolf/symbols-new.txt
|
--replace /opt/local/share/direwolf/symbols-new.txt $out/share/direwolf/symbols-new.txt
|
||||||
substituteInPlace decode_aprs.c \
|
substituteInPlace src/decode_aprs.c \
|
||||||
--replace /usr/share/direwolf/tocalls.txt $out/share/direwolf/tocalls.txt \
|
--replace /usr/share/direwolf/tocalls.txt $out/share/direwolf/tocalls.txt \
|
||||||
--replace /opt/local/share/direwolf/tocalls.txt $out/share/direwolf/tocalls.txt
|
--replace /opt/local/share/direwolf/tocalls.txt $out/share/direwolf/tocalls.txt
|
||||||
substituteInPlace dwespeak.sh \
|
substituteInPlace scripts/dwespeak.sh \
|
||||||
--replace espeak ${espeak}/bin/espeak
|
--replace espeak ${espeak}/bin/espeak
|
||||||
'' + (optionalString stdenv.isLinux ''
|
substituteInPlace cmake/cpack/direwolf.desktop.in \
|
||||||
substituteInPlace Makefile.linux \
|
--replace 'Terminal=false' 'Terminal=true' \
|
||||||
--replace /usr/include/pthread.h ${stdenv.glibc.dev}/include/pthread.h \
|
--replace 'Exec=@APPLICATION_DESKTOP_EXEC@' 'Exec=direwolf' \
|
||||||
--replace /usr/include/alsa ${alsaLib.dev}/include/alsa \
|
|
||||||
--replace /usr/include/gps.h ${gpsd}/include/gps.h \
|
|
||||||
--replace /usr/include/hamlib ${hamlib}/include/hamlib \
|
|
||||||
--replace /usr/include/libudev.h ${udev.dev}/include/libudev.h \
|
|
||||||
--replace /etc/udev $out/etc/udev \
|
|
||||||
--replace 'Exec=xterm -hold -title \"Dire Wolf\" -bg white -e \"$(DESTDIR)/bin/direwolf\"' "Exec=$out/bin/direwolf" \
|
|
||||||
--replace '#Terminal=true' 'Terminal=true' \
|
|
||||||
--replace 'Path=$(HOME)' '#Path='
|
|
||||||
'');
|
|
||||||
|
|
||||||
preInstall = ''
|
|
||||||
mkdir -p $out/bin
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
|
|
11
third_party/nixpkgs/pkgs/applications/radio/direwolf/udev-fix.patch
vendored
Normal file
11
third_party/nixpkgs/pkgs/applications/radio/direwolf/udev-fix.patch
vendored
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
--- direwolf/conf/CMakeLists.txt.orig 2020-12-04 11:12:59.739390894 -0600
|
||||||
|
+++ direwolf/conf/CMakeLists.txt 2020-12-04 11:23:09.146594795 -0600
|
||||||
|
@@ -26,7 +26,7 @@
|
||||||
|
|
||||||
|
# install udev rules for CM108
|
||||||
|
if(LINUX)
|
||||||
|
- install(FILES "${CUSTOM_CONF_DIR}/99-direwolf-cmedia.rules" DESTINATION /etc/udev/rules.d/)
|
||||||
|
+ install(FILES "${CUSTOM_CONF_DIR}/99-direwolf-cmedia.rules" DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/udev/rules.d/")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
install(FILES "${CMAKE_BINARY_DIR}/direwolf.conf" DESTINATION ${INSTALL_CONF_DIR})
|
|
@ -2,12 +2,12 @@
|
||||||
libsamplerate, libpulseaudio, libXinerama, gettext, pkgconfig, alsaLib }:
|
libsamplerate, libpulseaudio, libXinerama, gettext, pkgconfig, alsaLib }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
version = "4.1.16";
|
version = "4.1.17";
|
||||||
pname = "fldigi";
|
pname = "fldigi";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz";
|
url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz";
|
||||||
sha256 = "1dfkvhs0ri5kbyskk730ik8ix5z138qys26b31p6kixd8jjkw3k4";
|
sha256 = "1gzff60sn3h05279f9mdi1rkdws52m28shcil16911lvlq6ki13m";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ libXinerama gettext hamlib fltk14 libjpeg libpng portaudio
|
buildInputs = [ libXinerama gettext hamlib fltk14 libjpeg libpng portaudio
|
||||||
|
|
|
@ -6,12 +6,12 @@
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
version = "1.3.52";
|
version = "1.3.53";
|
||||||
pname = "flrig";
|
pname = "flrig";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://sourceforge/fldigi/${pname}-${version}.tar.gz";
|
url = "mirror://sourceforge/fldigi/${pname}-${version}.tar.gz";
|
||||||
sha256 = "18c154080vl25cy4l5amh96abm6kzm7mzld9h58pabc28yqq8zl8";
|
sha256 = "1m0fa891scpaf719002w9gpg1famx84kpzav1mw1fafmbzyvjw1i";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
|
|
|
@ -41,6 +41,7 @@ stdenv.mkDerivation rec {
|
||||||
orc
|
orc
|
||||||
pkgconfig
|
pkgconfig
|
||||||
pythonPackages.Mako
|
pythonPackages.Mako
|
||||||
|
pythonPackages.six
|
||||||
|
|
||||||
# UHD support is optional, but gnuradio is built with it, so there's
|
# UHD support is optional, but gnuradio is built with it, so there's
|
||||||
# nothing to be gained by leaving it out.
|
# nothing to be gained by leaving it out.
|
||||||
|
|
295
third_party/nixpkgs/pkgs/applications/radio/gnuradio/3.7.nix
vendored
Normal file
295
third_party/nixpkgs/pkgs/applications/radio/gnuradio/3.7.nix
vendored
Normal file
|
@ -0,0 +1,295 @@
|
||||||
|
{ stdenv
|
||||||
|
, fetchFromGitHub
|
||||||
|
, fetchpatch
|
||||||
|
, cmake
|
||||||
|
# Remove gcc and python references
|
||||||
|
, removeReferencesTo
|
||||||
|
, pkgconfig
|
||||||
|
, cppunit
|
||||||
|
, swig
|
||||||
|
, orc
|
||||||
|
, boost
|
||||||
|
, log4cpp
|
||||||
|
, mpir
|
||||||
|
, doxygen
|
||||||
|
, python
|
||||||
|
, codec2
|
||||||
|
, gsm
|
||||||
|
, fftwFloat
|
||||||
|
, alsaLib
|
||||||
|
, libjack2
|
||||||
|
, CoreAudio
|
||||||
|
, uhd
|
||||||
|
, comedilib
|
||||||
|
, libusb1
|
||||||
|
, SDL
|
||||||
|
, gsl
|
||||||
|
, cppzmq
|
||||||
|
, zeromq
|
||||||
|
# GUI related
|
||||||
|
, gtk2
|
||||||
|
, pango
|
||||||
|
, cairo
|
||||||
|
, qt4
|
||||||
|
, qwt6_qt4
|
||||||
|
# Features available to override, the list of them is in featuresInfo. They
|
||||||
|
# are all turned on by default
|
||||||
|
, features ? {}
|
||||||
|
# If one wishes to use a different src or name for a very custom build
|
||||||
|
, overrideSrc ? {}
|
||||||
|
, pname ? "gnuradio"
|
||||||
|
, versionAttr ? {
|
||||||
|
major = "3.7";
|
||||||
|
minor = "14";
|
||||||
|
patch = "0";
|
||||||
|
}
|
||||||
|
, fetchSubmodules ? true
|
||||||
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
sourceSha256 = "1nh4f9dmygprlbqybd3j1byg9fsr6065n140mvc4b0v8qqygmhrc";
|
||||||
|
featuresInfo = {
|
||||||
|
# Needed always
|
||||||
|
basic = {
|
||||||
|
native = [
|
||||||
|
cmake
|
||||||
|
pkgconfig
|
||||||
|
orc
|
||||||
|
];
|
||||||
|
runtime = [ boost log4cpp mpir ];
|
||||||
|
pythonNative = with python.pkgs; [ Mako six ];
|
||||||
|
};
|
||||||
|
volk = {
|
||||||
|
cmakeEnableFlag = "VOLK";
|
||||||
|
};
|
||||||
|
doxygen = {
|
||||||
|
native = [ doxygen ];
|
||||||
|
cmakeEnableFlag = "DOXYGEN";
|
||||||
|
};
|
||||||
|
sphinx = {
|
||||||
|
pythonNative = with python.pkgs; [ sphinx ];
|
||||||
|
cmakeEnableFlag = "SPHINX";
|
||||||
|
};
|
||||||
|
python-support = {
|
||||||
|
pythonRuntime = [ python.pkgs.six ];
|
||||||
|
native = [
|
||||||
|
swig
|
||||||
|
python
|
||||||
|
];
|
||||||
|
cmakeEnableFlag = "PYTHON";
|
||||||
|
};
|
||||||
|
testing-support = {
|
||||||
|
native = [ cppunit ];
|
||||||
|
cmakeEnableFlag = "TESTING";
|
||||||
|
};
|
||||||
|
gnuradio-runtime = {
|
||||||
|
cmakeEnableFlag = "GNURADIO_RUNTIME";
|
||||||
|
};
|
||||||
|
gr-ctrlport = {
|
||||||
|
cmakeEnableFlag = "GR_CTRLPORT";
|
||||||
|
native = [
|
||||||
|
swig
|
||||||
|
];
|
||||||
|
};
|
||||||
|
gnuradio-companion = {
|
||||||
|
pythonRuntime = with python.pkgs; [
|
||||||
|
pyyaml
|
||||||
|
cheetah
|
||||||
|
lxml
|
||||||
|
pygtk
|
||||||
|
numpy
|
||||||
|
# propagated by pygtk, but since wrapping is done externally, it help
|
||||||
|
# the wrapper if it's here
|
||||||
|
pycairo
|
||||||
|
pygobject2
|
||||||
|
];
|
||||||
|
runtime = [
|
||||||
|
gtk2
|
||||||
|
pango
|
||||||
|
cairo
|
||||||
|
];
|
||||||
|
cmakeEnableFlag = "GRC";
|
||||||
|
};
|
||||||
|
gr-blocks = {
|
||||||
|
cmakeEnableFlag = "GR_BLOCKS";
|
||||||
|
};
|
||||||
|
gr-fec = {
|
||||||
|
cmakeEnableFlag = "GR_FEC";
|
||||||
|
};
|
||||||
|
gr-fft = {
|
||||||
|
runtime = [ fftwFloat ];
|
||||||
|
cmakeEnableFlag = "GR_FFT";
|
||||||
|
};
|
||||||
|
gr-filter = {
|
||||||
|
runtime = [ fftwFloat ];
|
||||||
|
cmakeEnableFlag = "GR_FILTER";
|
||||||
|
};
|
||||||
|
gr-analog = {
|
||||||
|
cmakeEnableFlag = "GR_ANALOG";
|
||||||
|
};
|
||||||
|
gr-digital = {
|
||||||
|
cmakeEnableFlag = "GR_DIGITAL";
|
||||||
|
};
|
||||||
|
gr-dtv = {
|
||||||
|
cmakeEnableFlag = "GR_DTV";
|
||||||
|
};
|
||||||
|
gr-atsc = {
|
||||||
|
cmakeEnableFlag = "GR_ATSC";
|
||||||
|
};
|
||||||
|
gr-audio = {
|
||||||
|
runtime = []
|
||||||
|
++ stdenv.lib.optionals stdenv.isLinux [ alsaLib libjack2 ]
|
||||||
|
++ stdenv.lib.optionals stdenv.isDarwin [ CoreAudio ]
|
||||||
|
;
|
||||||
|
cmakeEnableFlag = "GR_AUDIO";
|
||||||
|
};
|
||||||
|
gr-comedi = {
|
||||||
|
runtime = [ comedilib ];
|
||||||
|
cmakeEnableFlag = "GR_COMEDI";
|
||||||
|
};
|
||||||
|
gr-channels = {
|
||||||
|
cmakeEnableFlag = "GR_CHANNELS";
|
||||||
|
};
|
||||||
|
gr-noaa = {
|
||||||
|
cmakeEnableFlag = "GR_NOAA";
|
||||||
|
};
|
||||||
|
gr-pager = {
|
||||||
|
cmakeEnableFlag = "GR_PAGER";
|
||||||
|
};
|
||||||
|
gr-qtgui = {
|
||||||
|
runtime = [ qt4 qwt6_qt4 ];
|
||||||
|
pythonRuntime = [ python.pkgs.pyqt4 ];
|
||||||
|
cmakeEnableFlag = "GR_QTGUI";
|
||||||
|
};
|
||||||
|
gr-trellis = {
|
||||||
|
cmakeEnableFlag = "GR_TRELLIS";
|
||||||
|
};
|
||||||
|
gr-uhd = {
|
||||||
|
runtime = [ uhd ];
|
||||||
|
cmakeEnableFlag = "GR_UHD";
|
||||||
|
};
|
||||||
|
gr-utils = {
|
||||||
|
cmakeEnableFlag = "GR_UTILS";
|
||||||
|
};
|
||||||
|
gr-video-sdl = {
|
||||||
|
runtime = [ SDL ];
|
||||||
|
cmakeEnableFlag = "GR_VIDEO_SDL";
|
||||||
|
};
|
||||||
|
gr-vocoder = {
|
||||||
|
runtime = [ codec2 gsm ];
|
||||||
|
cmakeEnableFlag = "GR_VOCODER";
|
||||||
|
};
|
||||||
|
gr-fcd = {
|
||||||
|
runtime = [ libusb1 ];
|
||||||
|
cmakeEnableFlag = "GR_FCD";
|
||||||
|
};
|
||||||
|
gr-wavelet = {
|
||||||
|
cmakeEnableFlag = "GR_WAVELET";
|
||||||
|
runtime = [ gsl ];
|
||||||
|
};
|
||||||
|
gr-zeromq = {
|
||||||
|
runtime = [ cppzmq zeromq ];
|
||||||
|
cmakeEnableFlag = "GR_ZEROMQ";
|
||||||
|
};
|
||||||
|
gr-wxgui = {
|
||||||
|
pythonRuntime = with python.pkgs; [ numpy wxPython ];
|
||||||
|
cmakeEnableFlag = "GR_WXGUI";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
shared = (import ./shared.nix {
|
||||||
|
inherit
|
||||||
|
stdenv
|
||||||
|
python
|
||||||
|
removeReferencesTo
|
||||||
|
featuresInfo
|
||||||
|
features
|
||||||
|
versionAttr
|
||||||
|
sourceSha256
|
||||||
|
overrideSrc
|
||||||
|
fetchFromGitHub
|
||||||
|
fetchSubmodules
|
||||||
|
;
|
||||||
|
qt = qt4;
|
||||||
|
gtk = gtk2;
|
||||||
|
});
|
||||||
|
inherit (shared)
|
||||||
|
version
|
||||||
|
src
|
||||||
|
hasFeature # function
|
||||||
|
nativeBuildInputs
|
||||||
|
buildInputs
|
||||||
|
disallowedReferences
|
||||||
|
postInstall
|
||||||
|
passthru
|
||||||
|
doCheck
|
||||||
|
dontWrapPythonPrograms
|
||||||
|
meta
|
||||||
|
;
|
||||||
|
cmakeFlags = shared.cmakeFlags
|
||||||
|
# From some reason, if these are not set, libcodec2 and gsm are
|
||||||
|
# not detected properly (slightly different then what's in
|
||||||
|
# ./default.nix).
|
||||||
|
++ stdenv.lib.optionals (hasFeature "gr-vocoder" features) [
|
||||||
|
"-DLIBCODEC2_LIBRARIES=${codec2}/lib/libcodec2.so"
|
||||||
|
"-DLIBCODEC2_INCLUDE_DIR=${codec2}/include"
|
||||||
|
"-DLIBGSM_LIBRARIES=${gsm}/lib/libgsm.so"
|
||||||
|
"-DLIBGSM_INCLUDE_DIR=${gsm}/include/gsm"
|
||||||
|
]
|
||||||
|
;
|
||||||
|
stripDebugList = shared.stripDebugList
|
||||||
|
# gr-fcd feature was dropped in 3.8
|
||||||
|
++ stdenv.lib.optionals (hasFeature "gr-fcd" features) [ "share/gnuradio/examples/fcd" ]
|
||||||
|
;
|
||||||
|
preConfigure = ''
|
||||||
|
''
|
||||||
|
# wxgui and pygtk are not looked up properly, so we force them to be
|
||||||
|
# detected as found, if they are requested by the `features` attrset.
|
||||||
|
+ stdenv.lib.optionalString (hasFeature "gr-wxgui" features) ''
|
||||||
|
sed -i 's/.*wx\.version.*/set(WX_FOUND TRUE)/g' gr-wxgui/CMakeLists.txt
|
||||||
|
''
|
||||||
|
+ stdenv.lib.optionalString (hasFeature "gnuradio-companion" features) ''
|
||||||
|
sed -i 's/.*pygtk_version.*/set(PYGTK_FOUND TRUE)/g' grc/CMakeLists.txt
|
||||||
|
''
|
||||||
|
# If python-support is disabled, don't install volk's (git submodule)
|
||||||
|
# volk_modtool - it references python.
|
||||||
|
#
|
||||||
|
# NOTE: The same is done for 3.8, but we don't put this string in
|
||||||
|
# ./shared.nix since on the next release of 3.8 it won't be needed there,
|
||||||
|
# but it will be needed for 3.7, probably for ever.
|
||||||
|
+ stdenv.lib.optionalString (!hasFeature "python-support" features) ''
|
||||||
|
sed -i -e "/python\/volk_modtool/d" volk/CMakeLists.txt
|
||||||
|
''
|
||||||
|
;
|
||||||
|
patches = [
|
||||||
|
# Don't install python referencing files if python support is disabled.
|
||||||
|
# See: https://github.com/gnuradio/gnuradio/pull/3856
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://github.com/gnuradio/gnuradio/commit/acef55433d15c231661fa44751f9a2d90a4baa4b.diff";
|
||||||
|
sha256 = "2CEX44Ll8frfLXTIWjdDhKl7aXcjiAWsezVdwrynelE=";
|
||||||
|
})
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://github.com/gnuradio/gnuradio/commit/a2681edcfaabcb1ecf878ae861161b6a6bf8459d.diff";
|
||||||
|
sha256 = "2Pitgu8accs16B5X5+/q51hr+IY9DMsA15f56gAtBs8=";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
in
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
inherit
|
||||||
|
pname
|
||||||
|
version
|
||||||
|
src
|
||||||
|
nativeBuildInputs
|
||||||
|
buildInputs
|
||||||
|
cmakeFlags
|
||||||
|
preConfigure
|
||||||
|
# disallowedReferences
|
||||||
|
stripDebugList
|
||||||
|
patches
|
||||||
|
postInstall
|
||||||
|
passthru
|
||||||
|
doCheck
|
||||||
|
dontWrapPythonPrograms
|
||||||
|
meta
|
||||||
|
;
|
||||||
|
}
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue