Merge branch 'master' into staging
This commit is contained in:
commit
dc01684799
@ -195,6 +195,11 @@ lib.mapAttrs (n: v: v // { shortName = n; }) rec {
|
||||
fullName = "Unspecified free software license";
|
||||
};
|
||||
|
||||
g4sl = {
|
||||
fullName = "Geant4 Software License";
|
||||
url = https://geant4.web.cern.ch/geant4/license/LICENSE.html;
|
||||
};
|
||||
|
||||
gpl1 = spdx {
|
||||
spdxId = "GPL-1.0";
|
||||
fullName = "GNU General Public License v1.0 only";
|
||||
|
@ -44,12 +44,12 @@ rec {
|
||||
packedRefsName = toString path + "/packed-refs";
|
||||
in if lib.pathExists fileName
|
||||
then
|
||||
let fileContent = readFile fileName;
|
||||
let fileContent = lib.fileContents fileName;
|
||||
# Sometimes git stores the commitId directly in the file but
|
||||
# sometimes it stores something like: «ref: refs/heads/branch-name»
|
||||
matchRef = match "^ref: (.*)\n$" fileContent;
|
||||
matchRef = match "^ref: (.*)$" fileContent;
|
||||
in if isNull matchRef
|
||||
then lib.removeSuffix "\n" fileContent
|
||||
then fileContent
|
||||
else readCommitFromFile path (lib.head matchRef)
|
||||
# Sometimes, the file isn't there at all and has been packed away in the
|
||||
# packed-refs file, so we have to grep through it:
|
||||
|
@ -479,4 +479,14 @@ rec {
|
||||
absolutePaths = builtins.map (path: builtins.toPath (root + "/" + path)) relativePaths;
|
||||
in
|
||||
absolutePaths;
|
||||
|
||||
/* Read the contents of a file removing the trailing \n
|
||||
|
||||
Example:
|
||||
$ echo "1.0" > ./version
|
||||
|
||||
fileContents ./version
|
||||
=> "1.0"
|
||||
*/
|
||||
fileContents = file: removeSuffix "\n" (builtins.readFile file);
|
||||
}
|
||||
|
@ -62,11 +62,13 @@ rec {
|
||||
isInt add sub lessThan
|
||||
seq deepSeq genericClosure;
|
||||
|
||||
inherit (import ./strings.nix) fileContents;
|
||||
|
||||
# Return the Nixpkgs version number.
|
||||
nixpkgsVersion =
|
||||
let suffixFile = ../.version-suffix; in
|
||||
readFile ../.version
|
||||
+ (if pathExists suffixFile then readFile suffixFile else "pre-git");
|
||||
fileContents ../.version
|
||||
+ (if pathExists suffixFile then fileContents suffixFile else "pre-git");
|
||||
|
||||
# Whether we're being called by nix-shell.
|
||||
inNixShell = builtins.getEnv "IN_NIX_SHELL" == "1";
|
||||
|
@ -31,6 +31,7 @@ effect after you run <command>nixos-rebuild</command>.</para>
|
||||
<xi:include href="taskserver.xml" />
|
||||
<xi:include href="acme.xml" />
|
||||
<xi:include href="input-methods.xml" />
|
||||
<xi:include href="emacs.xml" />
|
||||
|
||||
<!-- Apache; libvirtd virtualisation -->
|
||||
|
||||
|
@ -60,6 +60,7 @@ let
|
||||
cp ${../../modules/services/misc/taskserver/doc.xml} configuration/taskserver.xml
|
||||
cp ${../../modules/security/acme.xml} configuration/acme.xml
|
||||
cp ${../../modules/i18n/input-method/default.xml} configuration/input-methods.xml
|
||||
cp ${../../modules/services/editors/emacs.xml} configuration/emacs.xml
|
||||
ln -s ${optionsDocBook} options-db.xml
|
||||
echo "${version}" > version
|
||||
'';
|
||||
@ -122,7 +123,7 @@ let
|
||||
<targetset>
|
||||
<targetsetinfo>
|
||||
Allows for cross-referencing olinks between the manpages
|
||||
and the HTML/PDF manuals.
|
||||
and manual.
|
||||
</targetsetinfo>
|
||||
|
||||
<document targetdoc="manual">&manualtargets;</document>
|
||||
@ -221,34 +222,14 @@ in rec {
|
||||
mkdir -p $dst/epub/OEBPS/images/callouts
|
||||
cp -r ${docbook5_xsl}/xml/xsl/docbook/images/callouts/*.gif $dst/epub/OEBPS/images/callouts
|
||||
echo "application/epub+zip" > mimetype
|
||||
zip -0Xq "$dst/NixOS Manual - NixOS community.epub" mimetype
|
||||
zip -Xr9D "$dst/NixOS Manual - NixOS community.epub" $dst/epub/*
|
||||
manual="$dst/nixos-manual.epub"
|
||||
zip -0Xq "$manual" mimetype
|
||||
cd $dst/epub && zip -Xr9D "$manual" *
|
||||
|
||||
rm -rf $dst/epub
|
||||
|
||||
mkdir -p $out/nix-support
|
||||
echo "doc-epub manual $dst/NixOS Manual - NixOS community.epub" >> $out/nix-support/hydra-build-products
|
||||
'';
|
||||
};
|
||||
|
||||
|
||||
manualPDF = stdenv.mkDerivation {
|
||||
name = "nixos-manual-pdf";
|
||||
|
||||
inherit sources;
|
||||
|
||||
buildInputs = [ libxml2 libxslt dblatex dblatex.tex ];
|
||||
|
||||
buildCommand = ''
|
||||
${copySources}
|
||||
|
||||
dst=$out/share/doc/nixos
|
||||
mkdir -p $dst
|
||||
xmllint --xinclude manual.xml | dblatex -o $dst/manual.pdf - \
|
||||
-P target.database.document="${olinkDB}/olinkdb.xml" \
|
||||
-P doc.collab.show=0 \
|
||||
-P latex.output.revhistory=0
|
||||
|
||||
mkdir -p $out/nix-support
|
||||
echo "doc-pdf manual $dst/manual.pdf" >> $out/nix-support/hydra-build-products
|
||||
echo "doc-epub manual $manual" >> $out/nix-support/hydra-build-products
|
||||
'';
|
||||
};
|
||||
|
||||
|
@ -33,12 +33,19 @@ has the following highlights: </para>
|
||||
following incompatible changes:</para>
|
||||
|
||||
<itemizedlist>
|
||||
|
||||
<listitem>
|
||||
<para>Shell aliases for systemd sub-commands
|
||||
<link xlink:href="https://github.com/NixOS/nixpkgs/pull/15598">were dropped</link>:
|
||||
<command>start</command>, <command>stop</command>,
|
||||
<command>restart</command>, <command>status</command>.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Redis now binds to 127.0.0.1 only instead of listening to all network interfaces. This is the default
|
||||
behavior of Redis 3.2</para>
|
||||
</listitem>
|
||||
|
||||
</itemizedlist>
|
||||
|
||||
|
||||
|
@ -35,57 +35,42 @@ in
|
||||
nixosLabel = mkOption {
|
||||
type = types.str;
|
||||
description = ''
|
||||
NixOS version name to be used in the names of generated
|
||||
outputs and boot labels.
|
||||
|
||||
If you ever wanted to influence the labels in your GRUB menu,
|
||||
this is option is for you.
|
||||
|
||||
Can be set directly or with <envar>NIXOS_LABEL</envar>
|
||||
environment variable for <command>nixos-rebuild</command>,
|
||||
e.g.:
|
||||
|
||||
<screen>
|
||||
#!/bin/sh
|
||||
today=`date +%Y%m%d`
|
||||
branch=`(cd nixpkgs ; git branch 2>/dev/null | sed -n '/^\* / { s|^\* ||; p; }')`
|
||||
revision=`(cd nixpkgs ; git rev-parse HEAD)`
|
||||
export NIXOS_LABEL="$today.$branch-''${revision:0:7}"
|
||||
nixos-rebuild switch</screen>
|
||||
Label to be used in the names of generated outputs and boot
|
||||
labels.
|
||||
'';
|
||||
};
|
||||
|
||||
nixosVersion = mkOption {
|
||||
internal = true;
|
||||
type = types.str;
|
||||
description = "NixOS version.";
|
||||
description = "The full NixOS version (e.g. <literal>16.03.1160.f2d4ee1</literal>).";
|
||||
};
|
||||
|
||||
nixosRelease = mkOption {
|
||||
readOnly = true;
|
||||
type = types.str;
|
||||
default = readFile releaseFile;
|
||||
description = "NixOS release.";
|
||||
default = fileContents releaseFile;
|
||||
description = "The NixOS release (e.g. <literal>16.03</literal>).";
|
||||
};
|
||||
|
||||
nixosVersionSuffix = mkOption {
|
||||
internal = true;
|
||||
type = types.str;
|
||||
default = if pathExists suffixFile then readFile suffixFile else "pre-git";
|
||||
description = "NixOS version suffix.";
|
||||
default = if pathExists suffixFile then fileContents suffixFile else "pre-git";
|
||||
description = "The NixOS version suffix (e.g. <literal>1160.f2d4ee1</literal>).";
|
||||
};
|
||||
|
||||
nixosRevision = mkOption {
|
||||
internal = true;
|
||||
type = types.str;
|
||||
default = if pathExists revisionFile then readFile revisionFile else "master";
|
||||
description = "NixOS Git revision hash.";
|
||||
default = if pathExists revisionFile then fileContents revisionFile else "master";
|
||||
description = "The Git revision from which this NixOS configuration was built.";
|
||||
};
|
||||
|
||||
nixosCodeName = mkOption {
|
||||
readOnly = true;
|
||||
type = types.str;
|
||||
description = "NixOS release code name.";
|
||||
description = "The NixOS release code name (e.g. <literal>Emu</literal>).";
|
||||
};
|
||||
|
||||
defaultChannel = mkOption {
|
||||
@ -102,8 +87,8 @@ in
|
||||
system = {
|
||||
# These defaults are set here rather than up there so that
|
||||
# changing them would not rebuild the manual
|
||||
nixosLabel = mkDefault (maybeEnv "NIXOS_LABEL" cfg.nixosVersion);
|
||||
nixosVersion = mkDefault (maybeEnv "NIXOS_VERSION" (cfg.nixosRelease + cfg.nixosVersionSuffix));
|
||||
nixosLabel = mkDefault cfg.nixosVersion;
|
||||
nixosVersion = mkDefault (cfg.nixosRelease + cfg.nixosVersionSuffix);
|
||||
nixosRevision = mkIf (pathIsDirectory gitRepo) (mkDefault gitCommitId);
|
||||
nixosVersionSuffix = mkIf (pathIsDirectory gitRepo) (mkDefault (".git." + gitCommitId));
|
||||
|
||||
|
@ -97,7 +97,7 @@ in
|
||||
|
||||
# Configure system tunables
|
||||
boot.kernel.sysctl = {
|
||||
# Removed under grsecurity
|
||||
# Read-only under grsecurity
|
||||
"kernel.kptr_restrict" = mkForce null;
|
||||
} // optionalAttrs config.nix.useSandbox {
|
||||
# chroot(2) restrictions that conflict with sandboxed Nix builds
|
||||
|
@ -47,6 +47,7 @@ in {
|
||||
};
|
||||
|
||||
configuration = mkOption {
|
||||
default = "";
|
||||
type = types.lines;
|
||||
description = ''
|
||||
The configuration that Mopidy should use.
|
||||
|
578
nixos/modules/services/editors/emacs.xml
Normal file
578
nixos/modules/services/editors/emacs.xml
Normal file
@ -0,0 +1,578 @@
|
||||
<chapter xmlns="http://docbook.org/ns/docbook"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude"
|
||||
version="5.0"
|
||||
xml:id="module-services-emacs">
|
||||
|
||||
<title>Emacs</title>
|
||||
|
||||
<!--
|
||||
Documentation contributors:
|
||||
Damien Cassou @DamienCassou
|
||||
Thomas Tuegel @ttuegel
|
||||
Rodney Lorrimar @rvl
|
||||
-->
|
||||
|
||||
<para>
|
||||
<link xlink:href="http://www.gnu.org/software/emacs/">Emacs</link>
|
||||
is an extensible, customizable, self-documenting real-time display
|
||||
editor — and more. At its core is an interpreter for Emacs Lisp, a
|
||||
dialect of the Lisp programming language with extensions to
|
||||
support text editing.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Emacs runs within a graphical desktop environment using the X
|
||||
Window System, but works equally well on a text terminal. Under
|
||||
<productname>OS X</productname>, a "Mac port" edition is
|
||||
available, which uses Apple's native GUI frameworks.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<productname>Nixpkgs</productname> provides a superior environment
|
||||
for running <application>Emacs</application>. It's simple to
|
||||
create custom builds by overriding the default packages. Chaotic
|
||||
collections of Emacs Lisp code and extensions can be brought under
|
||||
control using declarative package
|
||||
management. <productname>NixOS</productname> even provides a
|
||||
<command>systemd</command> user service for automatically
|
||||
starting the Emacs daemon.
|
||||
</para>
|
||||
|
||||
<section>
|
||||
<title>Installing <application>Emacs</application></title>
|
||||
|
||||
<para>
|
||||
Emacs can installed in the normal way for Nix (see <xref
|
||||
linkend="sec-package-management" />). In addition, a NixOS
|
||||
<emphasis>service</emphasis> can be enabled.
|
||||
</para>
|
||||
|
||||
<section>
|
||||
<title>The Different Releases of Emacs</title>
|
||||
|
||||
<para>
|
||||
<productname>Nixpkgs</productname> defines several basic Emacs
|
||||
packages. The following are attributes belonging to the
|
||||
<varname>pkgs</varname> set:
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><varname>emacs</varname></term>
|
||||
<term><varname>emacs24</varname></term>
|
||||
<listitem>
|
||||
<para>
|
||||
The latest stable version of Emacs 24 using the <link
|
||||
xlink:href="http://www.gtk.org">GTK+ 2</link> widget
|
||||
toolkit.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>emacs24-nox</varname></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Emacs 24 built without any dependency on X11
|
||||
libraries.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>emacs24Macport</varname></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Emacs 24 with the "Mac port" patches, providing a more
|
||||
native look and feel under OS X.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>emacs25pre</varname></term>
|
||||
<listitem>
|
||||
<para>
|
||||
A pretest version of what will become the first
|
||||
version of Emacs 25.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
If those aren't suitable, then the following imitation Emacs
|
||||
editors are also available in Nixpkgs:
|
||||
<link xlink:href="https://www.gnu.org/software/zile/">Zile</link>,
|
||||
<link xlink:href="http://homepage.boetes.org/software/mg/">mg</link>,
|
||||
<link xlink:href="http://yi-editor.github.io/">Yi</link>.
|
||||
</para>
|
||||
|
||||
</section>
|
||||
<section>
|
||||
<title>Adding Packages to Emacs</title>
|
||||
<para>
|
||||
Emacs includes an entire ecosystem of functionality beyond
|
||||
text editing, including a project planner, mail and news
|
||||
reader, debugger interface, calendar, and more.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Most extensions are gotten with the Emacs packaging system
|
||||
(<filename>package.el</filename>) from <link
|
||||
xlink:href="https://elpa.gnu.org/">Emacs Lisp Package Archive
|
||||
(<acronym>ELPA</acronym>)</link>,
|
||||
<link xlink:href="https://melpa.org/"><acronym>MELPA</acronym></link>,
|
||||
<link xlink:href="https://stable.melpa.org/">MELPA Stable</link>,
|
||||
and <link xlink:href="http://orgmode.org/elpa.html">Org ELPA</link>.
|
||||
Nixpkgs is regularly updated to mirror all these archives.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Under NixOS, you can continue to use
|
||||
<function>package-list-packages</function> and
|
||||
<function>package-install</function> to install packages. You
|
||||
can also declare the set of Emacs packages you need using the
|
||||
derivations from Nixpkgs. The rest of this section discusses
|
||||
declarative installation of Emacs packages through nixpkgs.
|
||||
</para>
|
||||
|
||||
<note>
|
||||
<para>
|
||||
This documentation describes the new Emacs packages
|
||||
framework in NixOS 16.03
|
||||
(<varname>emacsPackagesNg</varname>) which should not be
|
||||
confused with the previous and deprecated framework
|
||||
(<varname>emacs24Packages</varname>).
|
||||
</para>
|
||||
</note>
|
||||
|
||||
<para>
|
||||
The first step to declare the list of packages you want in
|
||||
your Emacs installation is to create a dedicated
|
||||
derivation. This can be done in a dedicated
|
||||
<filename>emacs.nix</filename> file such as:
|
||||
|
||||
<example xml:id="ex-emacsNix">
|
||||
<title>Nix expression to build Emacs with packages (<filename>emacs.nix</filename>)</title>
|
||||
<programlisting language="nix">
|
||||
/*
|
||||
This is a nix expression to build Emacs and some Emacs packages I like
|
||||
from source on any distribution where Nix is installed. This will install
|
||||
all the dependencies from the nixpkgs repository and build the binary files
|
||||
without interfering with the host distribution.
|
||||
|
||||
To build the project, type the following from the current directory:
|
||||
|
||||
$ nix-build emacs.nix
|
||||
|
||||
To run the newly compiled executable:
|
||||
|
||||
$ ./result/bin/emacs
|
||||
*/
|
||||
{ pkgs ? import <nixpkgs> {} }: <co xml:id="ex-emacsNix-1" />
|
||||
|
||||
let
|
||||
myEmacs = pkgs.emacs; <co xml:id="ex-emacsNix-2" />
|
||||
emacsWithPackages = (pkgs.emacsPackagesNgGen myEmacs).emacsWithPackages; <co xml:id="ex-emacsNix-3" />
|
||||
in
|
||||
emacsWithPackages (epkgs: (with epkgs.melpaStablePackages; [ <co xml:id="ex-emacsNix-4" />
|
||||
magit # ; Integrate git <C-x g>
|
||||
zerodark-theme # ; Nicolas' theme
|
||||
]) ++ (with epkgs.melpaPackages; [ <co xml:id="ex-emacsNix-5" />
|
||||
undo-tree # ; <C-x u> to show the undo tree
|
||||
zoom-frm # ; increase/decrease font size for all buffers %lt;C-x C-+>
|
||||
]) ++ (with epkgs.elpaPackages; [ <co xml:id="ex-emacsNix-6" />
|
||||
auctex # ; LaTeX mode
|
||||
beacon # ; highlight my cursor when scrolling
|
||||
nameless # ; hide current package name everywhere in elisp code
|
||||
]) ++ [
|
||||
pkgs.notmuch # From main packages set <co xml:id="ex-emacsNix-7" />
|
||||
])
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
<calloutlist>
|
||||
<callout arearefs="ex-emacsNix-1">
|
||||
<para>
|
||||
The first non-comment line in this file
|
||||
(<literal>{ pkgs ? ... }</literal>)
|
||||
indicates that the whole file represents a function.
|
||||
</para>
|
||||
</callout>
|
||||
|
||||
<callout arearefs="ex-emacsNix-2">
|
||||
<para>
|
||||
The <varname>let</varname> expression below defines a
|
||||
<varname>myEmacs</varname> binding pointing to the current
|
||||
stable version of Emacs. This binding is here to separate the
|
||||
choice of the Emacs binary from the specification of the
|
||||
required packages.
|
||||
</para>
|
||||
</callout>
|
||||
|
||||
<callout arearefs="ex-emacsNix-3">
|
||||
<para>
|
||||
This generates an <varname>emacsWithPackages</varname>
|
||||
function. It takes a single argument: a function from a
|
||||
package set to a list of packages (the packages that will
|
||||
be available in Emacs).
|
||||
</para>
|
||||
</callout>
|
||||
|
||||
<callout arearefs="ex-emacsNix-4">
|
||||
<para>
|
||||
The rest of the file specifies the list of packages to
|
||||
install. In the example, two packages
|
||||
(<varname>magit</varname> and
|
||||
<varname>zerodark-theme</varname>) are taken from MELPA
|
||||
stable.
|
||||
</para>
|
||||
</callout>
|
||||
|
||||
<callout arearefs="ex-emacsNix-5">
|
||||
<para>
|
||||
Two packages (<varname>undo-tree</varname> and
|
||||
<varname>zoom-frm</varname>) are taken from MELPA.
|
||||
</para>
|
||||
</callout>
|
||||
|
||||
<callout arearefs="ex-emacsNix-6">
|
||||
<para>Three packages are taken from GNU ELPA.</para>
|
||||
</callout>
|
||||
|
||||
<callout arearefs="ex-emacsNix-7">
|
||||
<para>
|
||||
<varname>notmuch</varname> is taken from a nixpkgs derivation
|
||||
which contains an Emacs mode.
|
||||
</para>
|
||||
</callout>
|
||||
|
||||
</calloutlist>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The result of this configuration will be an
|
||||
<command>emacs</command> command which launches Emacs with all
|
||||
of your chosen packages in the <varname>load-path</varname>.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
You can check that it works by executing this in a terminal:
|
||||
|
||||
<screen>
|
||||
$ nix-build emacs.nix
|
||||
$ ./result/bin/emacs -q
|
||||
</screen>
|
||||
|
||||
and then typing <literal>M-x package-initialize</literal>.
|
||||
Check that you can use all the packages you want in this
|
||||
Emacs instance. For example, try switching to the zerodark
|
||||
theme through
|
||||
<literal>M-x load-theme <RET> zerodark <RET> y</literal>.
|
||||
</para>
|
||||
|
||||
<tip>
|
||||
<para>
|
||||
A few popular extensions worth checking out are: auctex,
|
||||
company, edit-server, flycheck, helm, iedit, magit,
|
||||
multiple-cursors, projectile, and yasnippet.
|
||||
</para>
|
||||
</tip>
|
||||
|
||||
<para>
|
||||
The list of available packages in the various ELPA
|
||||
repositories can be seen with the following commands:
|
||||
<example>
|
||||
<title>Querying Emacs packages</title>
|
||||
<programlisting><![CDATA[
|
||||
nix-env -f "<nixpkgs>" -qaP -A emacsPackagesNg.elpaPackages
|
||||
nix-env -f "<nixpkgs>" -qaP -A emacsPackagesNg.melpaPackages
|
||||
nix-env -f "<nixpkgs>" -qaP -A emacsPackagesNg.melpaStablePackages
|
||||
nix-env -f "<nixpkgs>" -qaP -A emacsPackagesNg.orgPackages
|
||||
]]></programlisting>
|
||||
</example>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
If you are on NixOS, you can install this particular Emacs for
|
||||
all users by adding it to the list of system packages
|
||||
(see <xref linkend="sec-declarative-package-mgmt" />). Simply
|
||||
modify your file <filename>configuration.nix</filename> to
|
||||
make it contain:
|
||||
<example>
|
||||
<title>Custom Emacs in <filename>configuration.nix</filename></title>
|
||||
<programlisting><![CDATA[
|
||||
{
|
||||
environment.systemPackages = [
|
||||
# [...]
|
||||
(import /path/to/emacs.nix { inherit pkgs; })
|
||||
];
|
||||
}
|
||||
]]></programlisting>
|
||||
</example>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
In this case, the next <command>nixos-rebuild switch</command>
|
||||
will take care of adding your <command>emacs</command> to the
|
||||
<varname>PATH</varname> environment variable
|
||||
(see <xref linkend="sec-changing-config" />).
|
||||
</para>
|
||||
|
||||
<!-- fixme: i think the following is better done with config.nix
|
||||
https://nixos.org/nixpkgs/manual/#sec-modify-via-packageOverrides
|
||||
-->
|
||||
<para>
|
||||
If you are not on NixOS or want to install this particular
|
||||
Emacs only for yourself, you can do so by adding it to your
|
||||
<filename>~/.nixpkgs/config.nix</filename>
|
||||
(see <link xlink:href="http://nixos.org/nixpkgs/manual/#sec-modify-via-packageOverrides">Nixpkgs manual</link>):
|
||||
<example>
|
||||
<title>Custom Emacs in <filename>~/.nixpkgs/system.nix</filename></title>
|
||||
<programlisting><![CDATA[
|
||||
{
|
||||
packageOverrides = super: let self = super.pkgs; in {
|
||||
myemacs = import /path/to/emacs.nix { pkgs = self; };
|
||||
};
|
||||
}
|
||||
]]></programlisting>
|
||||
</example>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
In this case, the next
|
||||
<literal>nix-env -f '<nixpkgs>' -iA myemacs</literal>
|
||||
will take care of adding your emacs to the
|
||||
<varname>PATH</varname> environment variable.
|
||||
</para>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<title>Advanced Emacs Configuration</title>
|
||||
|
||||
<para>
|
||||
If you want, you can tweak the Emacs package itself from your
|
||||
<filename>emacs.nix</filename>. For example, if you want to
|
||||
have a GTK+3-based Emacs instead of the default GTK+2-based
|
||||
binary and remove the automatically generated
|
||||
<filename>emacs.desktop</filename> (useful is you only use
|
||||
<command>emacsclient</command>), you can change your file
|
||||
<filename>emacs.nix</filename> in this way:
|
||||
</para>
|
||||
|
||||
<example xml:id="ex-emacsGtk3Nix">
|
||||
<title>Custom Emacs build</title>
|
||||
<programlisting><![CDATA[
|
||||
{ pkgs ? import <nixpkgs> {} }:
|
||||
let
|
||||
myEmacs = pkgs.lib.overrideDerivation (pkgs.emacs.override {
|
||||
# Use gtk3 instead of the default gtk2
|
||||
withGTK3 = true;
|
||||
withGTK2 = false;
|
||||
}) (attrs: {
|
||||
# I don't want emacs.desktop file because I only use
|
||||
# emacsclient.
|
||||
postInstall = attrs.postInstall + ''
|
||||
rm $out/share/applications/emacs.desktop
|
||||
'';
|
||||
});
|
||||
in [...]
|
||||
]]></programlisting>
|
||||
</example>
|
||||
|
||||
<para>
|
||||
After building this file as shown in <xref linkend="ex-emacsNix" />,
|
||||
you will get an GTK3-based Emacs binary pre-loaded with your
|
||||
favorite packages.
|
||||
</para>
|
||||
</section>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<title>Running Emacs as a Service</title>
|
||||
<para>
|
||||
<productname>NixOS</productname> provides an optional
|
||||
<command>systemd</command> service which launches
|
||||
<link xlink:href="https://www.gnu.org/software/emacs/manual/html_node/emacs/Emacs-Server.html">
|
||||
Emacs daemon
|
||||
</link>
|
||||
with the user's login session.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<emphasis>Source:</emphasis>
|
||||
<filename>modules/services/editors/emacs.nix</filename>
|
||||
</para>
|
||||
|
||||
<section>
|
||||
<title>Enabling the Service</title>
|
||||
|
||||
<para>
|
||||
To install and enable the <command>systemd</command>
|
||||
user service for Emacs daemon, add the following to your
|
||||
<filename>configuration.nix</filename>:
|
||||
|
||||
<programlisting><![CDATA[
|
||||
services.emacs.enable = true;
|
||||
services.emacs.package = import /home/cassou/.emacs.d { pkgs = pkgs; };
|
||||
]]></programlisting>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The <varname>services.emacs.package</varname> option allows a
|
||||
custom derivation to be used, for example, one created by
|
||||
<function>emacsWithPackages</function>.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Ensure that the Emacs server is enabled for your user's Emacs
|
||||
configuration, either by customizing the
|
||||
<varname>server-mode</varname> variable, or by adding
|
||||
<literal>(server-start)</literal> to
|
||||
<filename>~/.emacs.d/init.el</filename>.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
To start the daemon, execute the following:
|
||||
|
||||
<screen>
|
||||
$ nixos-rebuild switch # to activate the new configuration.nix
|
||||
$ systemctl --user daemon-reload # to force systemd reload
|
||||
$ systemctl --user start emacs.service # to start the Emacs daemon
|
||||
</screen>
|
||||
|
||||
The server should now be ready to serve Emacs clients.
|
||||
</para>
|
||||
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<title>Starting the client</title>
|
||||
<para>
|
||||
Ensure that the emacs server is enabled, either by customizing
|
||||
the <varname>server-mode</varname> variable, or by adding
|
||||
<literal>(server-start)</literal> to
|
||||
<filename>~/.emacs</filename>.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
To connect to the emacs daemon, run one of the following:
|
||||
<programlisting><![CDATA[
|
||||
emacsclient FILENAME
|
||||
emacsclient --create-frame # opens a new frame (window)
|
||||
emacsclient --create-frame --tty # opens a new frame on the current terminal
|
||||
]]></programlisting>
|
||||
</para>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<title>Configuring the <varname>EDITOR</varname> variable</title>
|
||||
<!--<title><command>emacsclient</command> as the Default Editor</title>-->
|
||||
|
||||
<para>
|
||||
If <varname>services.emacs.defaultEditor</varname> is
|
||||
<literal>true</literal>, the <varname>EDITOR</varname> variable
|
||||
will be set to a wrapper script which launches
|
||||
<command>emacsclient</command>.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Any setting of <varname>EDITOR</varname> in the shell config
|
||||
files will override
|
||||
<varname>services.emacs.defaultEditor</varname>.
|
||||
To make sure <varname>EDITOR</varname> refers to the Emacs
|
||||
wrapper script, remove any existing <varname>EDITOR</varname>
|
||||
assignment from <filename>.profile</filename>,
|
||||
<filename>.bashrc</filename>, <filename>.zshenv</filename> or
|
||||
any other shell config file.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
If you have formed certain bad habits when editing files,
|
||||
these can be corrected with a shell alias to the wrapper
|
||||
script:
|
||||
<programlisting>alias vi=$EDITOR</programlisting>
|
||||
</para>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<title>Per-User Enabling of the Service</title>
|
||||
|
||||
<para>
|
||||
In general, <command>systemd</command> user services
|
||||
are globally enabled by symlinks in
|
||||
<filename>/etc/systemd/user</filename>. In the case where
|
||||
Emacs daemon is not wanted for all users, it is possible to
|
||||
install the service but not globally enable it:
|
||||
|
||||
<programlisting><![CDATA[
|
||||
services.emacs.enable = false;
|
||||
services.emacs.install = true;
|
||||
]]></programlisting>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
To enable the <command>systemd</command> user service for just
|
||||
the currently logged in user, run:
|
||||
|
||||
<programlisting>systemctl --user enable emacs</programlisting>
|
||||
|
||||
This will add the symlink
|
||||
<filename>~/.config/systemd/user/emacs.service</filename>.
|
||||
</para>
|
||||
</section>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<title>Configuring Emacs</title>
|
||||
|
||||
<para>
|
||||
The Emacs init file should be changed to load the extension
|
||||
packages at startup:
|
||||
|
||||
<example>
|
||||
<title>Package initialization in <filename>.emacs</filename></title>
|
||||
<programlisting><![CDATA[
|
||||
(require 'package)
|
||||
|
||||
;; optional. makes unpure packages archives unavailable
|
||||
(setq package-archives nil)
|
||||
|
||||
(setq package-enable-at-startup nil)
|
||||
(package-initialize)
|
||||
]]></programlisting>
|
||||
</example>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
After the declarative emacs package configuration has been
|
||||
tested, previously downloaded packages can be cleaned up by
|
||||
removing <filename>~/.emacs.d/elpa</filename> (do make a backup
|
||||
first, in case you forgot a package).
|
||||
</para>
|
||||
|
||||
<!--
|
||||
todo: is it worth documenting customizations for
|
||||
server-switch-hook, server-done-hook?
|
||||
-->
|
||||
|
||||
<section>
|
||||
<title>A Major Mode for Nix Expressions</title>
|
||||
|
||||
<para>
|
||||
Of interest may be <varname>melpaPackages.nix-mode</varname>,
|
||||
which provides syntax highlighting for the Nix language. This is
|
||||
particularly convenient if you regularly edit Nix files.
|
||||
</para>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<title>Accessing man pages</title>
|
||||
<para>
|
||||
You can use <function>woman</function> to get completion of all
|
||||
available man pages. For example, type <literal>M-x woman
|
||||
<RET> nixos-rebuild <RET>.</literal>
|
||||
</para>
|
||||
</section>
|
||||
</section>
|
||||
|
||||
</chapter>
|
@ -11,12 +11,6 @@ let
|
||||
|
||||
cfg = config.services.nixosManual;
|
||||
|
||||
versionModule =
|
||||
{ system.nixosVersionSuffix = config.system.nixosVersionSuffix;
|
||||
system.nixosRevision = config.system.nixosRevision;
|
||||
nixpkgs.system = config.nixpkgs.system;
|
||||
};
|
||||
|
||||
/* For the purpose of generating docs, evaluate options with each derivation
|
||||
in `pkgs` (recursively) replaced by a fake with path "\${pkgs.attribute.path}".
|
||||
It isn't perfect, but it seems to cover a vast majority of use cases.
|
||||
@ -24,12 +18,12 @@ let
|
||||
the path above will be shown and not e.g. `${config.services.foo.package}`. */
|
||||
manual = import ../../../doc/manual {
|
||||
inherit pkgs;
|
||||
version = config.system.nixosVersion;
|
||||
revision = config.system.nixosRevision;
|
||||
version = config.system.nixosRelease;
|
||||
revision = "release-${config.system.nixosRelease}";
|
||||
options =
|
||||
let
|
||||
scrubbedEval = evalModules {
|
||||
modules = [ versionModule ] ++ baseModules;
|
||||
modules = [ { nixpkgs.system = config.nixpkgs.system; } ] ++ baseModules;
|
||||
args = (config._module.args) // { modules = [ ]; };
|
||||
specialArgs = { pkgs = scrubDerivations "pkgs" pkgs; };
|
||||
};
|
||||
|
@ -55,7 +55,7 @@ in
|
||||
''; };
|
||||
localAddress = mkOption {
|
||||
default = "127.0.0.1";
|
||||
type = types.string;
|
||||
type = types.str;
|
||||
description = ''
|
||||
Listen for DNS queries to relay on this address. The only reason to
|
||||
change this from its default value is to proxy queries on behalf
|
||||
@ -74,7 +74,7 @@ in
|
||||
};
|
||||
resolverName = mkOption {
|
||||
default = "dnscrypt.eu-nl";
|
||||
type = types.nullOr types.string;
|
||||
type = types.nullOr types.str;
|
||||
description = ''
|
||||
The name of the upstream DNSCrypt resolver to use, taken from the
|
||||
list named in the <literal>resolverList</literal> option.
|
||||
@ -90,7 +90,7 @@ in
|
||||
example = literalExample "${pkgs.dnscrypt-proxy}/share/dnscrypt-proxy/dnscrypt-resolvers.csv";
|
||||
default = pkgs.fetchurl {
|
||||
url = https://raw.githubusercontent.com/jedisct1/dnscrypt-proxy/master/dnscrypt-resolvers.csv;
|
||||
sha256 = "171zvdqcqqvcw3zr7wl9h1wmdmk6m3h55xr4gq2z1j7a0x0ba2in";
|
||||
sha256 = "1i9wzw4zl052h5nyp28bwl8d66cgj0awvjhw5wgwz0warkjl1g8g";
|
||||
};
|
||||
defaultText = "pkgs.fetchurl { url = ...; sha256 = ...; }";
|
||||
};
|
||||
|
@ -4,31 +4,222 @@ with lib;
|
||||
|
||||
let
|
||||
cfg = config.services.nginx;
|
||||
nginx = cfg.package;
|
||||
virtualHosts = mapAttrs (vhostName: vhostConfig:
|
||||
vhostConfig // (optionalAttrs vhostConfig.enableACME {
|
||||
sslCertificate = "/var/lib/acme/${vhostName}/fullchain.pem";
|
||||
sslCertificateKey = "/var/lib/acme/${vhostName}/key.pem";
|
||||
})
|
||||
) cfg.virtualHosts;
|
||||
|
||||
configFile = pkgs.writeText "nginx.conf" ''
|
||||
user ${cfg.user} ${cfg.group};
|
||||
error_log stderr;
|
||||
daemon off;
|
||||
|
||||
${cfg.config}
|
||||
|
||||
${optionalString (cfg.httpConfig == "") ''
|
||||
http {
|
||||
include ${cfg.package}/conf/mime.types;
|
||||
include ${cfg.package}/conf/fastcgi.conf;
|
||||
|
||||
${optionalString (cfg.recommendedOptimisation) ''
|
||||
# optimisation
|
||||
sendfile on;
|
||||
tcp_nopush on;
|
||||
tcp_nodelay on;
|
||||
keepalive_timeout 65;
|
||||
types_hash_max_size 2048;
|
||||
''}
|
||||
|
||||
ssl_protocols ${cfg.sslProtocols};
|
||||
ssl_ciphers ${cfg.sslCiphers};
|
||||
${optionalString (cfg.sslDhparam != null) "ssl_dhparam ${cfg.sslDhparam};"}
|
||||
|
||||
${optionalString (cfg.recommendedTlsSettings) ''
|
||||
ssl_session_cache shared:SSL:42m;
|
||||
ssl_session_timeout 23m;
|
||||
ssl_ecdh_curve secp384r1;
|
||||
ssl_prefer_server_ciphers on;
|
||||
ssl_stapling on;
|
||||
ssl_stapling_verify on;
|
||||
''}
|
||||
|
||||
${optionalString (cfg.recommendedGzipSettings) ''
|
||||
gzip on;
|
||||
gzip_disable "msie6";
|
||||
gzip_proxied any;
|
||||
gzip_comp_level 9;
|
||||
gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;
|
||||
''}
|
||||
|
||||
${optionalString (cfg.recommendedProxySettings) ''
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
proxy_set_header X-Forwarded-Host $host;
|
||||
proxy_set_header X-Forwarded-Server $host;
|
||||
proxy_set_header Accept-Encoding "";
|
||||
|
||||
proxy_redirect off;
|
||||
proxy_connect_timeout 90;
|
||||
proxy_send_timeout 90;
|
||||
proxy_read_timeout 90;
|
||||
proxy_http_version 1.0;
|
||||
''}
|
||||
|
||||
client_max_body_size ${cfg.clientMaxBodySize};
|
||||
|
||||
server_tokens ${if cfg.serverTokens then "on" else "off"};
|
||||
|
||||
${vhosts}
|
||||
|
||||
${optionalString cfg.statusPage ''
|
||||
server {
|
||||
listen 80;
|
||||
listen [::]:80;
|
||||
|
||||
server_name localhost;
|
||||
|
||||
location /nginx_status {
|
||||
stub_status on;
|
||||
access_log off;
|
||||
allow 127.0.0.1;
|
||||
allow ::1;
|
||||
deny all;
|
||||
}
|
||||
}
|
||||
''}
|
||||
|
||||
${cfg.appendHttpConfig}
|
||||
}''}
|
||||
|
||||
${optionalString (cfg.httpConfig != "") ''
|
||||
http {
|
||||
include ${cfg.package}/conf/mime.types;
|
||||
include ${cfg.package}/conf/fastcgi.conf;
|
||||
${cfg.httpConfig}
|
||||
}
|
||||
''}
|
||||
}''}
|
||||
|
||||
${cfg.appendConfig}
|
||||
'';
|
||||
|
||||
vhosts = concatStringsSep "\n" (mapAttrsToList (serverName: vhost:
|
||||
let
|
||||
ssl = vhost.enableSSL || vhost.forceSSL;
|
||||
port = if vhost.port != null then vhost.port else (if ssl then 443 else 80);
|
||||
listenString = toString port + optionalString ssl " ssl http2"
|
||||
+ optionalString vhost.default " default";
|
||||
acmeLocation = optionalString vhost.enableACME ''
|
||||
location /.well-known/acme-challenge {
|
||||
try_files $uri @acme-fallback;
|
||||
root ${vhost.acmeRoot};
|
||||
auth_basic off;
|
||||
}
|
||||
location @acme-fallback {
|
||||
auth_basic off;
|
||||
proxy_pass http://${vhost.acmeFallbackHost};
|
||||
}
|
||||
'';
|
||||
in ''
|
||||
${optionalString vhost.forceSSL ''
|
||||
server {
|
||||
listen 80 ${optionalString vhost.default "default"};
|
||||
listen [::]:80 ${optionalString vhost.default "default"};
|
||||
|
||||
server_name ${serverName} ${concatStringsSep " " vhost.serverAliases};
|
||||
${acmeLocation}
|
||||
location / {
|
||||
return 301 https://$host${optionalString (port != 443) ":${port}"}$request_uri;
|
||||
}
|
||||
}
|
||||
''}
|
||||
|
||||
server {
|
||||
listen ${listenString};
|
||||
listen [::]:${listenString};
|
||||
|
||||
server_name ${serverName} ${concatStringsSep " " vhost.serverAliases};
|
||||
${acmeLocation}
|
||||
${optionalString (vhost.root != null) "root ${vhost.root};"}
|
||||
${optionalString (vhost.globalRedirect != null) ''
|
||||
return 301 http${optionalString ssl "s"}://${vhost.globalRedirect}$request_uri;
|
||||
''}
|
||||
${optionalString ssl ''
|
||||
ssl_certificate ${vhost.sslCertificate};
|
||||
ssl_certificate_key ${vhost.sslCertificateKey};
|
||||
''}
|
||||
|
||||
${optionalString (vhost.basicAuth != {}) (mkBasicAuth serverName vhost.basicAuth)}
|
||||
|
||||
${mkLocations vhost.locations}
|
||||
|
||||
${vhost.extraConfig}
|
||||
}
|
||||
''
|
||||
) virtualHosts);
|
||||
mkLocations = locations: concatStringsSep "\n" (mapAttrsToList (location: config: ''
|
||||
location ${location} {
|
||||
${optionalString (config.proxyPass != null) "proxy_pass ${config.proxyPass};"}
|
||||
${optionalString (config.root != null) "root ${config.root};"}
|
||||
${config.extraConfig}
|
||||
}
|
||||
'') locations);
|
||||
mkBasicAuth = serverName: authDef: let
|
||||
htpasswdFile = pkgs.writeText "${serverName}.htpasswd" (
|
||||
concatStringsSep "\n" (mapAttrsToList (user: password: ''
|
||||
${user}:{PLAIN}${password}
|
||||
'') authDef)
|
||||
);
|
||||
in ''
|
||||
auth_basic secured;
|
||||
auth_basic_user_file ${htpasswdFile};
|
||||
'';
|
||||
in
|
||||
|
||||
{
|
||||
options = {
|
||||
services.nginx = {
|
||||
enable = mkOption {
|
||||
enable = mkEnableOption "Nginx Web Server";
|
||||
|
||||
statusPage = mkOption {
|
||||
default = false;
|
||||
type = types.bool;
|
||||
description = "
|
||||
Enable the nginx Web Server.
|
||||
Enable status page reachable from localhost on http://127.0.0.1/nginx_status.
|
||||
";
|
||||
};
|
||||
|
||||
recommendedTlsSettings = mkOption {
|
||||
default = false;
|
||||
type = types.bool;
|
||||
description = "
|
||||
Enable recommended TLS settings.
|
||||
";
|
||||
};
|
||||
|
||||
recommendedOptimisation = mkOption {
|
||||
default = false;
|
||||
type = types.bool;
|
||||
description = "
|
||||
Enable recommended optimisation settings.
|
||||
";
|
||||
};
|
||||
|
||||
recommendedGzipSettings = mkOption {
|
||||
default = false;
|
||||
type = types.bool;
|
||||
description = "
|
||||
Enable recommended gzip settings.
|
||||
";
|
||||
};
|
||||
|
||||
recommendedProxySettings = mkOption {
|
||||
default = false;
|
||||
type = types.bool;
|
||||
description = "
|
||||
Enable recommended proxy settings.
|
||||
";
|
||||
};
|
||||
|
||||
@ -64,7 +255,22 @@ in
|
||||
httpConfig = mkOption {
|
||||
type = types.lines;
|
||||
default = "";
|
||||
description = "Configuration lines to be appended inside of the http {} block.";
|
||||
description = "
|
||||
Configuration lines to be set inside the http block.
|
||||
This is mutually exclusive with the structured configuration
|
||||
via virtualHosts and the recommendedXyzSettings configuration
|
||||
options. See appendHttpConfig for appending to the generated http block.
|
||||
";
|
||||
};
|
||||
|
||||
appendHttpConfig = mkOption {
|
||||
type = types.lines;
|
||||
default = "";
|
||||
description = "
|
||||
Configuration lines to be appended to the generated http block.
|
||||
This is mutually exclusive with using httpConfig for specifying the whole
|
||||
http block verbatim.
|
||||
";
|
||||
};
|
||||
|
||||
stateDir = mkOption {
|
||||
@ -86,8 +292,59 @@ in
|
||||
description = "Group account under which nginx runs.";
|
||||
};
|
||||
|
||||
};
|
||||
serverTokens = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = "Show nginx version in headers and error pages.";
|
||||
};
|
||||
|
||||
clientMaxBodySize = mkOption {
|
||||
type = types.string;
|
||||
default = "10m";
|
||||
description = "Set nginx global client_max_body_size.";
|
||||
};
|
||||
|
||||
sslCiphers = mkOption {
|
||||
type = types.str;
|
||||
default = "EECDH+aRSA+AESGCM:EDH+aRSA:EECDH+aRSA:+AES256:+AES128:+SHA1:!CAMELLIA:!SEED:!3DES:!DES:!RC4:!eNULL";
|
||||
description = "Ciphers to choose from when negotiating tls handshakes.";
|
||||
};
|
||||
|
||||
sslProtocols = mkOption {
|
||||
type = types.str;
|
||||
default = "TLSv1.2";
|
||||
example = "TLSv1 TLSv1.1 TLSv1.2";
|
||||
description = "Allowed TLS protocol versions.";
|
||||
};
|
||||
|
||||
sslDhparam = mkOption {
|
||||
type = types.nullOr types.path;
|
||||
default = null;
|
||||
example = "/path/to/dhparams.pem";
|
||||
description = "Path to DH parameters file.";
|
||||
};
|
||||
|
||||
virtualHosts = mkOption {
|
||||
type = types.attrsOf (types.submodule (import ./vhost-options.nix {
|
||||
inherit lib;
|
||||
}));
|
||||
default = {
|
||||
localhost = {};
|
||||
};
|
||||
example = literalExample ''
|
||||
{
|
||||
"hydra.example.com" = {
|
||||
forceSSL = true;
|
||||
enableACME = true;
|
||||
locations."/" = {
|
||||
proxyPass = "http://localhost:3000";
|
||||
};
|
||||
};
|
||||
};
|
||||
'';
|
||||
description = "Declarative vhost config";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
@ -97,7 +354,6 @@ in
|
||||
description = "Nginx Web Server";
|
||||
after = [ "network.target" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
path = [ nginx ];
|
||||
preStart =
|
||||
''
|
||||
mkdir -p ${cfg.stateDir}/logs
|
||||
@ -105,14 +361,23 @@ in
|
||||
chown -R ${cfg.user}:${cfg.group} ${cfg.stateDir}
|
||||
'';
|
||||
serviceConfig = {
|
||||
ExecStart = "${nginx}/bin/nginx -c ${configFile} -p ${cfg.stateDir}";
|
||||
ExecStart = "${cfg.package}/bin/nginx -c ${configFile} -p ${cfg.stateDir}";
|
||||
ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
|
||||
Restart = "on-failure";
|
||||
Restart = "always";
|
||||
RestartSec = "10s";
|
||||
StartLimitInterval = "1min";
|
||||
};
|
||||
};
|
||||
|
||||
security.acme.certs = filterAttrs (n: v: v != {}) (
|
||||
mapAttrs (vhostName: vhostConfig:
|
||||
optionalAttrs vhostConfig.enableACME {
|
||||
webroot = vhostConfig.acmeRoot;
|
||||
extraDomains = genAttrs vhostConfig.serverAliases (alias: null);
|
||||
}
|
||||
) virtualHosts
|
||||
);
|
||||
|
||||
users.extraUsers = optionalAttrs (cfg.user == "nginx") (singleton
|
||||
{ name = "nginx";
|
||||
group = cfg.group;
|
||||
|
@ -0,0 +1,40 @@
|
||||
# This file defines the options that can be used both for the Apache
|
||||
# main server configuration, and for the virtual hosts. (The latter
|
||||
# has additional options that affect the web server as a whole, like
|
||||
# the user/group to run under.)
|
||||
|
||||
{ lib }:
|
||||
|
||||
with lib;
|
||||
|
||||
{
|
||||
options = {
|
||||
proxyPass = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
default = null;
|
||||
example = "http://www.example.org/";
|
||||
description = ''
|
||||
Adds proxy_pass directive and sets default proxy headers Host, X-Real-Ip
|
||||
and X-Forwarded-For.
|
||||
'';
|
||||
};
|
||||
|
||||
root = mkOption {
|
||||
type = types.nullOr types.path;
|
||||
default = null;
|
||||
example = "/your/root/directory";
|
||||
description = ''
|
||||
Root directory for requests.
|
||||
'';
|
||||
};
|
||||
|
||||
extraConfig = mkOption {
|
||||
type = types.lines;
|
||||
default = "";
|
||||
description = ''
|
||||
These lines go to the end of the location verbatim.
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
||||
|
140
nixos/modules/services/web-servers/nginx/vhost-options.nix
Normal file
140
nixos/modules/services/web-servers/nginx/vhost-options.nix
Normal file
@ -0,0 +1,140 @@
|
||||
# This file defines the options that can be used both for the Apache
|
||||
# main server configuration, and for the virtual hosts. (The latter
|
||||
# has additional options that affect the web server as a whole, like
|
||||
# the user/group to run under.)
|
||||
|
||||
{ lib }:
|
||||
|
||||
with lib;
|
||||
{
|
||||
options = {
|
||||
serverAliases = mkOption {
|
||||
type = types.listOf types.str;
|
||||
default = [];
|
||||
example = ["www.example.org" "example.org"];
|
||||
description = ''
|
||||
Additional names of virtual hosts served by this virtual host configuration.
|
||||
'';
|
||||
};
|
||||
|
||||
port = mkOption {
|
||||
type = types.nullOr types.int;
|
||||
default = null;
|
||||
description = ''
|
||||
Port for the server. Defaults to 80 for http
|
||||
and 443 for https (i.e. when enableSSL is set).
|
||||
'';
|
||||
};
|
||||
|
||||
enableACME = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = "Whether to ask Let's Encrypt to sign a certificate for this vhost.";
|
||||
};
|
||||
|
||||
acmeRoot = mkOption {
|
||||
type = types.str;
|
||||
default = "/var/lib/acme/acme-challenge";
|
||||
description = "Directory to store certificates and keys managed by the ACME service.";
|
||||
};
|
||||
|
||||
acmeFallbackHost = mkOption {
|
||||
type = types.str;
|
||||
default = "0.0.0.0";
|
||||
description = ''
|
||||
Host which to proxy requests to if acme challenge is not found. Useful
|
||||
if you want multiple hosts to be able to verify the same domain name.
|
||||
'';
|
||||
};
|
||||
|
||||
enableSSL = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = "Whether to enable SSL (https) support.";
|
||||
};
|
||||
|
||||
forceSSL = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = "Whether to always redirect to https.";
|
||||
};
|
||||
|
||||
sslCertificate = mkOption {
|
||||
type = types.path;
|
||||
example = "/var/host.cert";
|
||||
description = "Path to server SSL certificate.";
|
||||
};
|
||||
|
||||
sslCertificateKey = mkOption {
|
||||
type = types.path;
|
||||
example = "/var/host.key";
|
||||
description = "Path to server SSL certificate key.";
|
||||
};
|
||||
|
||||
root = mkOption {
|
||||
type = types.nullOr types.path;
|
||||
default = null;
|
||||
example = "/data/webserver/docs";
|
||||
description = ''
|
||||
The path of the web root directory.
|
||||
'';
|
||||
};
|
||||
|
||||
default = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Makes this vhost the default.
|
||||
'';
|
||||
};
|
||||
|
||||
extraConfig = mkOption {
|
||||
type = types.lines;
|
||||
default = "";
|
||||
description = ''
|
||||
These lines go to the end of the vhost verbatim.
|
||||
'';
|
||||
};
|
||||
|
||||
globalRedirect = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
default = null;
|
||||
example = http://newserver.example.org/;
|
||||
description = ''
|
||||
If set, all requests for this host are redirected permanently to
|
||||
the given URL.
|
||||
'';
|
||||
};
|
||||
|
||||
basicAuth = mkOption {
|
||||
type = types.attrsOf types.str;
|
||||
default = {};
|
||||
example = literalExample ''
|
||||
{
|
||||
user = "password";
|
||||
};
|
||||
'';
|
||||
description = ''
|
||||
Basic Auth protection for a vhost.
|
||||
|
||||
WARNING: This is implemented to store the password in plain text in the
|
||||
nix store.
|
||||
'';
|
||||
};
|
||||
|
||||
locations = mkOption {
|
||||
type = types.attrsOf (types.submodule (import ./location-options.nix {
|
||||
inherit lib;
|
||||
}));
|
||||
default = {};
|
||||
example = literalExample ''
|
||||
{
|
||||
"/" = {
|
||||
proxyPass = "http://localhost:3000";
|
||||
};
|
||||
};
|
||||
'';
|
||||
description = "Declarative location config";
|
||||
};
|
||||
};
|
||||
}
|
@ -6,35 +6,212 @@ let
|
||||
|
||||
# The container's init script, a small wrapper around the regular
|
||||
# NixOS stage-2 init script.
|
||||
containerInit = pkgs.writeScript "container-init"
|
||||
containerInit = (cfg:
|
||||
let
|
||||
renderExtraVeth = (name: cfg:
|
||||
''
|
||||
echo "Bringing ${name} up"
|
||||
ip link set dev ${name} up
|
||||
${optionalString (cfg . "localAddress" or null != null) ''
|
||||
echo "Setting ip for ${name}"
|
||||
ip addr add ${cfg . "localAddress"} dev ${name}
|
||||
''}
|
||||
${optionalString (cfg . "localAddress6" or null != null) ''
|
||||
echo "Setting ip6 for ${name}"
|
||||
ip -6 addr add ${cfg . "localAddress6"} dev ${name}
|
||||
''}
|
||||
${optionalString (cfg . "hostAddress" or null != null) ''
|
||||
echo "Setting route to host for ${name}"
|
||||
ip route add ${cfg . "hostAddress"} dev ${name}
|
||||
''}
|
||||
${optionalString (cfg . "hostAddress6" or null != null) ''
|
||||
echo "Setting route6 to host for ${name}"
|
||||
ip -6 route add ${cfg . "hostAddress6"} dev ${name}
|
||||
''}
|
||||
''
|
||||
);
|
||||
in
|
||||
pkgs.writeScript "container-init"
|
||||
''
|
||||
#! ${pkgs.stdenv.shell} -e
|
||||
|
||||
# Initialise the container side of the veth pair.
|
||||
if [ "$PRIVATE_NETWORK" = 1 ]; then
|
||||
|
||||
ip link set host0 name eth0
|
||||
ip link set dev eth0 up
|
||||
|
||||
if [ -n "$LOCAL_ADDRESS" ]; then
|
||||
ip addr add $LOCAL_ADDRESS dev eth0
|
||||
fi
|
||||
if [ -n "$LOCAL_ADDRESS6" ]; then
|
||||
ip -6 addr add $LOCAL_ADDRESS6 dev eth0
|
||||
fi
|
||||
if [ -n "$HOST_ADDRESS" ]; then
|
||||
ip route add $HOST_ADDRESS dev eth0
|
||||
ip route add default via $HOST_ADDRESS
|
||||
fi
|
||||
if [ -n "$HOST_ADDRESS6" ]; then
|
||||
ip -6 route add $HOST_ADDRESS6 dev eth0
|
||||
ip -6 route add default via $HOST_ADDRESS6
|
||||
fi
|
||||
|
||||
${concatStringsSep "\n" (mapAttrsToList renderExtraVeth cfg . "extraVeths" or {})}
|
||||
ip a
|
||||
ip r
|
||||
fi
|
||||
|
||||
# Start the regular stage 1 script.
|
||||
exec "$1"
|
||||
''
|
||||
);
|
||||
|
||||
nspawnExtraVethArgs = (name: cfg: "--network-veth-extra=${name}");
|
||||
startScript = (cfg:
|
||||
''
|
||||
#! ${pkgs.stdenv.shell} -e
|
||||
mkdir -p -m 0755 "$root/etc" "$root/var/lib"
|
||||
mkdir -p -m 0700 "$root/var/lib/private" "$root/root" /run/containers
|
||||
if ! [ -e "$root/etc/os-release" ]; then
|
||||
touch "$root/etc/os-release"
|
||||
fi
|
||||
|
||||
if ! [ -e "$root/etc/machine-id" ]; then
|
||||
touch "$root/etc/machine-id"
|
||||
fi
|
||||
|
||||
mkdir -p -m 0755 \
|
||||
"/nix/var/nix/profiles/per-container/$INSTANCE" \
|
||||
"/nix/var/nix/gcroots/per-container/$INSTANCE"
|
||||
|
||||
cp --remove-destination /etc/resolv.conf "$root/etc/resolv.conf"
|
||||
|
||||
# Initialise the container side of the veth pair.
|
||||
if [ "$PRIVATE_NETWORK" = 1 ]; then
|
||||
|
||||
ip link set host0 name eth0
|
||||
ip link set dev eth0 up
|
||||
|
||||
if [ -n "$LOCAL_ADDRESS" ]; then
|
||||
ip addr add $LOCAL_ADDRESS dev eth0
|
||||
fi
|
||||
if [ -n "$LOCAL_ADDRESS6" ]; then
|
||||
ip -6 addr add $LOCAL_ADDRESS6 dev eth0
|
||||
fi
|
||||
if [ -n "$HOST_ADDRESS" ]; then
|
||||
ip route add $HOST_ADDRESS dev eth0
|
||||
ip route add default via $HOST_ADDRESS
|
||||
fi
|
||||
if [ -n "$HOST_ADDRESS6" ]; then
|
||||
ip -6 route add $HOST_ADDRESS6 dev eth0
|
||||
ip -6 route add default via $HOST_ADDRESS6
|
||||
extraFlags+=" --network-veth"
|
||||
if [ -n "$HOST_BRIDGE" ]; then
|
||||
extraFlags+=" --network-bridge=$HOST_BRIDGE"
|
||||
fi
|
||||
fi
|
||||
|
||||
# Start the regular stage 1 script.
|
||||
exec "$1"
|
||||
'';
|
||||
${if cfg . "extraVeths" or null != null then
|
||||
''extraFlags+=" ${concatStringsSep " " (mapAttrsToList nspawnExtraVethArgs cfg . "extraVeths" or {})}"''
|
||||
else
|
||||
''# No extra veth pairs to create''
|
||||
}
|
||||
|
||||
for iface in $INTERFACES; do
|
||||
extraFlags+=" --network-interface=$iface"
|
||||
done
|
||||
|
||||
for iface in $MACVLANS; do
|
||||
extraFlags+=" --network-macvlan=$iface"
|
||||
done
|
||||
|
||||
# If the host is 64-bit and the container is 32-bit, add a
|
||||
# --personality flag.
|
||||
${optionalString (config.nixpkgs.system == "x86_64-linux") ''
|
||||
if [ "$(< ''${SYSTEM_PATH:-/nix/var/nix/profiles/per-container/$INSTANCE/system}/system)" = i686-linux ]; then
|
||||
extraFlags+=" --personality=x86"
|
||||
fi
|
||||
''}
|
||||
|
||||
# Run systemd-nspawn without startup notification (we'll
|
||||
# wait for the container systemd to signal readiness).
|
||||
EXIT_ON_REBOOT=1 \
|
||||
exec ${config.systemd.package}/bin/systemd-nspawn \
|
||||
--keep-unit \
|
||||
-M "$INSTANCE" -D "$root" $extraFlags \
|
||||
$EXTRA_NSPAWN_FLAGS \
|
||||
--notify-ready=yes \
|
||||
--bind-ro=/nix/store \
|
||||
--bind-ro=/nix/var/nix/db \
|
||||
--bind-ro=/nix/var/nix/daemon-socket \
|
||||
--bind="/nix/var/nix/profiles/per-container/$INSTANCE:/nix/var/nix/profiles" \
|
||||
--bind="/nix/var/nix/gcroots/per-container/$INSTANCE:/nix/var/nix/gcroots" \
|
||||
--setenv PRIVATE_NETWORK="$PRIVATE_NETWORK" \
|
||||
--setenv HOST_BRIDGE="$HOST_BRIDGE" \
|
||||
--setenv HOST_ADDRESS="$HOST_ADDRESS" \
|
||||
--setenv LOCAL_ADDRESS="$LOCAL_ADDRESS" \
|
||||
--setenv HOST_ADDRESS6="$HOST_ADDRESS6" \
|
||||
--setenv LOCAL_ADDRESS6="$LOCAL_ADDRESS6" \
|
||||
--setenv PATH="$PATH" \
|
||||
${containerInit cfg} "''${SYSTEM_PATH:-/nix/var/nix/profiles/system}/init"
|
||||
''
|
||||
);
|
||||
|
||||
preStartScript = (cfg:
|
||||
''
|
||||
# Clean up existing machined registration and interfaces.
|
||||
machinectl terminate "$INSTANCE" 2> /dev/null || true
|
||||
|
||||
if [ "$PRIVATE_NETWORK" = 1 ]; then
|
||||
ip link del dev "ve-$INSTANCE" 2> /dev/null || true
|
||||
ip link del dev "vb-$INSTANCE" 2> /dev/null || true
|
||||
fi
|
||||
|
||||
${concatStringsSep "\n" (
|
||||
mapAttrsToList (name: cfg:
|
||||
''ip link del dev ${name} 2> /dev/null || true ''
|
||||
) cfg . "extraVeths" or {}
|
||||
)}
|
||||
''
|
||||
);
|
||||
postStartScript = (cfg:
|
||||
let
|
||||
ipcall = (cfg: ipcmd: variable: attribute:
|
||||
if cfg . attribute or null == null then
|
||||
''
|
||||
if [ -n "${variable}" ]; then
|
||||
${ipcmd} add ${variable} dev $ifaceHost
|
||||
fi
|
||||
''
|
||||
else
|
||||
''${ipcmd} add ${cfg . attribute} dev $ifaceHost''
|
||||
);
|
||||
renderExtraVeth = (name: cfg:
|
||||
if cfg . "hostBridge" or null != null then
|
||||
''
|
||||
# Add ${name} to bridge ${cfg.hostBridge}
|
||||
ip link set dev ${name} master ${cfg.hostBridge} up
|
||||
''
|
||||
else
|
||||
''
|
||||
# Set IPs and routes for ${name}
|
||||
${optionalString (cfg . "hostAddress" or null != null) ''
|
||||
ip addr add ${cfg . "hostAddress"} dev ${name}
|
||||
''}
|
||||
${optionalString (cfg . "hostAddress6" or null != null) ''
|
||||
ip -6 addr add ${cfg . "hostAddress6"} dev ${name}
|
||||
''}
|
||||
${optionalString (cfg . "localAddress" or null != null) ''
|
||||
ip route add ${cfg . "localAddress"} dev ${name}
|
||||
''}
|
||||
${optionalString (cfg . "localAddress6" or null != null) ''
|
||||
ip -6 route add ${cfg . "localAddress6"} dev ${name}
|
||||
''}
|
||||
''
|
||||
);
|
||||
in
|
||||
''
|
||||
if [ "$PRIVATE_NETWORK" = 1 ]; then
|
||||
if [ -z "$HOST_BRIDGE" ]; then
|
||||
ifaceHost=ve-$INSTANCE
|
||||
ip link set dev $ifaceHost up
|
||||
|
||||
${ipcall cfg "ip addr" "$HOST_ADDRESS" "hostAddress"}
|
||||
${ipcall cfg "ip -6 addr" "$HOST_ADDRESS6" "hostAddress6"}
|
||||
${ipcall cfg "ip route" "$LOCAL_ADDRESS" "localAddress"}
|
||||
${ipcall cfg "ip -6 route" "$LOCAL_ADDRESS6" "localAddress6"}
|
||||
fi
|
||||
${concatStringsSep "\n" (mapAttrsToList renderExtraVeth cfg . "extraVeths" or {})}
|
||||
fi
|
||||
|
||||
# Get the leader PID so that we can signal it in
|
||||
# preStop. We can't use machinectl there because D-Bus
|
||||
# might be shutting down. FIXME: in systemd 219 we can
|
||||
# just signal systemd-nspawn to do a clean shutdown.
|
||||
machinectl show "$INSTANCE" | sed 's/Leader=\(.*\)/\1/;t;d' > "/run/containers/$INSTANCE.pid"
|
||||
''
|
||||
);
|
||||
|
||||
system = config.nixpkgs.system;
|
||||
|
||||
@ -73,6 +250,63 @@ let
|
||||
|
||||
mkBindFlags = bs: concatMapStrings mkBindFlag (lib.attrValues bs);
|
||||
|
||||
networkOptions = {
|
||||
hostBridge = mkOption {
|
||||
type = types.nullOr types.string;
|
||||
default = null;
|
||||
example = "br0";
|
||||
description = ''
|
||||
Put the host-side of the veth-pair into the named bridge.
|
||||
Only one of hostAddress* or hostBridge can be given.
|
||||
'';
|
||||
};
|
||||
|
||||
hostAddress = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
default = null;
|
||||
example = "10.231.136.1";
|
||||
description = ''
|
||||
The IPv4 address assigned to the host interface.
|
||||
(Not used when hostBridge is set.)
|
||||
'';
|
||||
};
|
||||
|
||||
hostAddress6 = mkOption {
|
||||
type = types.nullOr types.string;
|
||||
default = null;
|
||||
example = "fc00::1";
|
||||
description = ''
|
||||
The IPv6 address assigned to the host interface.
|
||||
(Not used when hostBridge is set.)
|
||||
'';
|
||||
};
|
||||
|
||||
localAddress = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
default = null;
|
||||
example = "10.231.136.2";
|
||||
description = ''
|
||||
The IPv4 address assigned to the interface in the container.
|
||||
If a hostBridge is used, this should be given with netmask to access
|
||||
the whole network. Otherwise the default netmask is /32 and routing is
|
||||
set up from localAddress to hostAddress and back.
|
||||
'';
|
||||
};
|
||||
|
||||
localAddress6 = mkOption {
|
||||
type = types.nullOr types.string;
|
||||
default = null;
|
||||
example = "fc00::2";
|
||||
description = ''
|
||||
The IPv6 address assigned to the interface in the container.
|
||||
If a hostBridge is used, this should be given with netmask to access
|
||||
the whole network. Otherwise the default netmask is /128 and routing is
|
||||
set up from localAddress6 to hostAddress6 and back.
|
||||
'';
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
in
|
||||
|
||||
{
|
||||
@ -133,56 +367,6 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
hostBridge = mkOption {
|
||||
type = types.nullOr types.string;
|
||||
default = null;
|
||||
example = "br0";
|
||||
description = ''
|
||||
Put the host-side of the veth-pair into the named bridge.
|
||||
Only one of hostAddress* or hostBridge can be given.
|
||||
'';
|
||||
};
|
||||
|
||||
hostAddress = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
default = null;
|
||||
example = "10.231.136.1";
|
||||
description = ''
|
||||
The IPv4 address assigned to the host interface.
|
||||
(Not used when hostBridge is set.)
|
||||
'';
|
||||
};
|
||||
|
||||
hostAddress6 = mkOption {
|
||||
type = types.nullOr types.string;
|
||||
default = null;
|
||||
example = "fc00::1";
|
||||
description = ''
|
||||
The IPv6 address assigned to the host interface.
|
||||
(Not used when hostBridge is set.)
|
||||
'';
|
||||
};
|
||||
|
||||
localAddress = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
default = null;
|
||||
example = "10.231.136.2";
|
||||
description = ''
|
||||
The IPv4 address assigned to <literal>eth0</literal>
|
||||
in the container.
|
||||
'';
|
||||
};
|
||||
|
||||
localAddress6 = mkOption {
|
||||
type = types.nullOr types.string;
|
||||
default = null;
|
||||
example = "fc00::2";
|
||||
description = ''
|
||||
The IPv6 address assigned to <literal>eth0</literal>
|
||||
in the container.
|
||||
'';
|
||||
};
|
||||
|
||||
interfaces = mkOption {
|
||||
type = types.listOf types.string;
|
||||
default = [];
|
||||
@ -192,6 +376,15 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
extraVeths = mkOption {
|
||||
type = types.attrsOf types.optionSet;
|
||||
default = {};
|
||||
options = networkOptions;
|
||||
description = ''
|
||||
Extra veth-pairs to be created for the container
|
||||
'';
|
||||
};
|
||||
|
||||
autoStart = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
@ -214,7 +407,7 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
};
|
||||
} // networkOptions;
|
||||
|
||||
config = mkMerge
|
||||
[ (mkIf options.config.isDefined {
|
||||
@ -272,108 +465,11 @@ in
|
||||
environment.INSTANCE = "%i";
|
||||
environment.root = "/var/lib/containers/%i";
|
||||
|
||||
preStart =
|
||||
''
|
||||
# Clean up existing machined registration and interfaces.
|
||||
machinectl terminate "$INSTANCE" 2> /dev/null || true
|
||||
preStart = preStartScript {};
|
||||
|
||||
if [ "$PRIVATE_NETWORK" = 1 ]; then
|
||||
ip link del dev "ve-$INSTANCE" 2> /dev/null || true
|
||||
ip link del dev "vb-$INSTANCE" 2> /dev/null || true
|
||||
fi
|
||||
'';
|
||||
script = startScript {};
|
||||
|
||||
script =
|
||||
''
|
||||
mkdir -p -m 0755 "$root/etc" "$root/var/lib"
|
||||
mkdir -p -m 0700 "$root/var/lib/private" "$root/root" /run/containers
|
||||
if ! [ -e "$root/etc/os-release" ]; then
|
||||
touch "$root/etc/os-release"
|
||||
fi
|
||||
|
||||
if ! [ -e "$root/etc/machine-id" ]; then
|
||||
touch "$root/etc/machine-id"
|
||||
fi
|
||||
|
||||
mkdir -p -m 0755 \
|
||||
"/nix/var/nix/profiles/per-container/$INSTANCE" \
|
||||
"/nix/var/nix/gcroots/per-container/$INSTANCE"
|
||||
|
||||
cp --remove-destination /etc/resolv.conf "$root/etc/resolv.conf"
|
||||
|
||||
if [ "$PRIVATE_NETWORK" = 1 ]; then
|
||||
extraFlags+=" --network-veth"
|
||||
if [ -n "$HOST_BRIDGE" ]; then
|
||||
extraFlags+=" --network-bridge=$HOST_BRIDGE"
|
||||
fi
|
||||
fi
|
||||
|
||||
for iface in $INTERFACES; do
|
||||
extraFlags+=" --network-interface=$iface"
|
||||
done
|
||||
|
||||
for iface in $MACVLANS; do
|
||||
extraFlags+=" --network-macvlan=$iface"
|
||||
done
|
||||
|
||||
# If the host is 64-bit and the container is 32-bit, add a
|
||||
# --personality flag.
|
||||
${optionalString (config.nixpkgs.system == "x86_64-linux") ''
|
||||
if [ "$(< ''${SYSTEM_PATH:-/nix/var/nix/profiles/per-container/$INSTANCE/system}/system)" = i686-linux ]; then
|
||||
extraFlags+=" --personality=x86"
|
||||
fi
|
||||
''}
|
||||
|
||||
# Run systemd-nspawn without startup notification (we'll
|
||||
# wait for the container systemd to signal readiness).
|
||||
EXIT_ON_REBOOT=1 \
|
||||
exec ${config.systemd.package}/bin/systemd-nspawn \
|
||||
--keep-unit \
|
||||
-M "$INSTANCE" -D "$root" $extraFlags \
|
||||
$EXTRA_NSPAWN_FLAGS \
|
||||
--notify-ready=yes \
|
||||
--bind-ro=/nix/store \
|
||||
--bind-ro=/nix/var/nix/db \
|
||||
--bind-ro=/nix/var/nix/daemon-socket \
|
||||
--bind="/nix/var/nix/profiles/per-container/$INSTANCE:/nix/var/nix/profiles" \
|
||||
--bind="/nix/var/nix/gcroots/per-container/$INSTANCE:/nix/var/nix/gcroots" \
|
||||
--setenv PRIVATE_NETWORK="$PRIVATE_NETWORK" \
|
||||
--setenv HOST_BRIDGE="$HOST_BRIDGE" \
|
||||
--setenv HOST_ADDRESS="$HOST_ADDRESS" \
|
||||
--setenv LOCAL_ADDRESS="$LOCAL_ADDRESS" \
|
||||
--setenv HOST_ADDRESS6="$HOST_ADDRESS6" \
|
||||
--setenv LOCAL_ADDRESS6="$LOCAL_ADDRESS6" \
|
||||
--setenv PATH="$PATH" \
|
||||
${containerInit} "''${SYSTEM_PATH:-/nix/var/nix/profiles/system}/init"
|
||||
'';
|
||||
|
||||
postStart =
|
||||
''
|
||||
if [ "$PRIVATE_NETWORK" = 1 ]; then
|
||||
if [ -z "$HOST_BRIDGE" ]; then
|
||||
ifaceHost=ve-$INSTANCE
|
||||
ip link set dev $ifaceHost up
|
||||
if [ -n "$HOST_ADDRESS" ]; then
|
||||
ip addr add $HOST_ADDRESS dev $ifaceHost
|
||||
fi
|
||||
if [ -n "$HOST_ADDRESS6" ]; then
|
||||
ip -6 addr add $HOST_ADDRESS6 dev $ifaceHost
|
||||
fi
|
||||
if [ -n "$LOCAL_ADDRESS" ]; then
|
||||
ip route add $LOCAL_ADDRESS dev $ifaceHost
|
||||
fi
|
||||
if [ -n "$LOCAL_ADDRESS6" ]; then
|
||||
ip -6 route add $LOCAL_ADDRESS6 dev $ifaceHost
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# Get the leader PID so that we can signal it in
|
||||
# preStop. We can't use machinectl there because D-Bus
|
||||
# might be shutting down. FIXME: in systemd 219 we can
|
||||
# just signal systemd-nspawn to do a clean shutdown.
|
||||
machinectl show "$INSTANCE" | sed 's/Leader=\(.*\)/\1/;t;d' > "/run/containers/$INSTANCE.pid"
|
||||
'';
|
||||
postStart = postStartScript {};
|
||||
|
||||
preStop =
|
||||
''
|
||||
@ -425,15 +521,20 @@ in
|
||||
[{ name = "container@"; value = unit; }]
|
||||
# declarative containers
|
||||
++ (mapAttrsToList (name: cfg: nameValuePair "container@${name}" (
|
||||
unit // {
|
||||
preStart = preStartScript cfg;
|
||||
script = startScript cfg;
|
||||
postStart = postStartScript cfg;
|
||||
} // (
|
||||
if cfg.autoStart then
|
||||
unit // {
|
||||
{
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
wants = [ "network.target" ];
|
||||
after = [ "network.target" ];
|
||||
restartTriggers = [ cfg.path ];
|
||||
reloadIfChanged = true;
|
||||
}
|
||||
else null
|
||||
else {})
|
||||
)) config.containers)
|
||||
));
|
||||
|
||||
@ -462,11 +563,11 @@ in
|
||||
LOCAL_ADDRESS6=${cfg.localAddress6}
|
||||
''}
|
||||
''}
|
||||
INTERFACES="${toString cfg.interfaces}"
|
||||
${optionalString cfg.autoStart ''
|
||||
AUTO_START=1
|
||||
''}
|
||||
EXTRA_NSPAWN_FLAGS="${mkBindFlags cfg.bindMounts}"
|
||||
INTERFACES="${toString cfg.interfaces}"
|
||||
${optionalString cfg.autoStart ''
|
||||
AUTO_START=1
|
||||
''}
|
||||
EXTRA_NSPAWN_FLAGS="${mkBindFlags cfg.bindMounts}"
|
||||
'';
|
||||
}) config.containers;
|
||||
|
||||
|
@ -7,7 +7,7 @@ with import ../lib;
|
||||
|
||||
let
|
||||
|
||||
version = builtins.readFile ../.version;
|
||||
version = fileContents ../.version;
|
||||
versionSuffix =
|
||||
(if stableBranch then "." else "pre") + "${toString nixpkgs.revCount}.${nixpkgs.shortRev}";
|
||||
|
||||
@ -96,7 +96,6 @@ in rec {
|
||||
|
||||
manual = buildFromConfig ({ pkgs, ... }: { }) (config: config.system.build.manual.manual);
|
||||
manualEpub = (buildFromConfig ({ pkgs, ... }: { }) (config: config.system.build.manual.manualEpub));
|
||||
manualPDF = (buildFromConfig ({ pkgs, ... }: { }) (config: config.system.build.manual.manualPDF)).x86_64-linux;
|
||||
manpages = buildFromConfig ({ pkgs, ... }: { }) (config: config.system.build.manual.manpages);
|
||||
options = (buildFromConfig ({ pkgs, ... }: { }) (config: config.system.build.manual.optionsJSON)).x86_64-linux;
|
||||
|
||||
@ -218,6 +217,7 @@ in rec {
|
||||
tests.containers-ipv6 = callTest tests/containers-ipv6.nix {};
|
||||
tests.containers-bridge = callTest tests/containers-bridge.nix {};
|
||||
tests.containers-imperative = callTest tests/containers-imperative.nix {};
|
||||
tests.containers-extra_veth = callTest tests/containers-extra_veth.nix {};
|
||||
tests.docker = hydraJob (import tests/docker.nix { system = "x86_64-linux"; });
|
||||
tests.dockerRegistry = hydraJob (import tests/docker-registry.nix { system = "x86_64-linux"; });
|
||||
tests.dnscrypt-proxy = callTest tests/dnscrypt-proxy.nix { system = "x86_64-linux"; };
|
||||
|
@ -10,7 +10,7 @@ in
|
||||
import ./make-test.nix ({ pkgs, ...} : {
|
||||
name = "containers-bridge";
|
||||
meta = with pkgs.stdenv.lib.maintainers; {
|
||||
maintainers = [ aristid aszlig eelco chaoflow ];
|
||||
maintainers = [ aristid aszlig eelco chaoflow kampfschlaefer ];
|
||||
};
|
||||
|
||||
machine =
|
||||
|
103
nixos/tests/containers-extra_veth.nix
Normal file
103
nixos/tests/containers-extra_veth.nix
Normal file
@ -0,0 +1,103 @@
|
||||
# Test for NixOS' container support.
|
||||
|
||||
import ./make-test.nix ({ pkgs, ...} : {
|
||||
name = "containers-bridge";
|
||||
meta = with pkgs.stdenv.lib.maintainers; {
|
||||
maintainers = [ kampfschlaefer ];
|
||||
};
|
||||
|
||||
machine =
|
||||
{ config, pkgs, ... }:
|
||||
{ imports = [ ../modules/installer/cd-dvd/channel.nix ];
|
||||
virtualisation.writableStore = true;
|
||||
virtualisation.memorySize = 768;
|
||||
virtualisation.vlans = [];
|
||||
|
||||
networking.bridges = {
|
||||
br0 = {
|
||||
interfaces = [];
|
||||
};
|
||||
br1 = { interfaces = []; };
|
||||
};
|
||||
networking.interfaces = {
|
||||
br0 = {
|
||||
ip4 = [{ address = "192.168.0.1"; prefixLength = 24; }];
|
||||
ip6 = [{ address = "fc00::1"; prefixLength = 7; }];
|
||||
};
|
||||
br1 = {
|
||||
ip4 = [{ address = "192.168.1.1"; prefixLength = 24; }];
|
||||
};
|
||||
};
|
||||
|
||||
containers.webserver =
|
||||
{
|
||||
autoStart = true;
|
||||
privateNetwork = true;
|
||||
hostBridge = "br0";
|
||||
localAddress = "192.168.0.100/24";
|
||||
localAddress6 = "fc00::2/7";
|
||||
extraVeths = {
|
||||
veth1 = { hostBridge = "br1"; localAddress = "192.168.1.100/24"; };
|
||||
veth2 = { hostAddress = "192.168.2.1"; localAddress = "192.168.2.100"; };
|
||||
};
|
||||
config =
|
||||
{
|
||||
networking.firewall.allowedTCPPorts = [ 80 ];
|
||||
networking.firewall.allowPing = true;
|
||||
};
|
||||
};
|
||||
|
||||
virtualisation.pathsInNixDB = [ pkgs.stdenv ];
|
||||
};
|
||||
|
||||
testScript =
|
||||
''
|
||||
$machine->waitForUnit("default.target");
|
||||
$machine->succeed("nixos-container list") =~ /webserver/ or die;
|
||||
|
||||
# Status of the webserver container.
|
||||
$machine->succeed("nixos-container status webserver") =~ /up/ or die;
|
||||
|
||||
# Debug
|
||||
#$machine->succeed("nixos-container run webserver -- ip link >&2");
|
||||
|
||||
# Ensure that the veths are inside the container
|
||||
$machine->succeed("nixos-container run webserver -- ip link show veth1") =~ /state UP/ or die;
|
||||
$machine->succeed("nixos-container run webserver -- ip link show veth2") =~ /state UP/ or die;
|
||||
|
||||
# Debug
|
||||
#$machine->succeed("ip link >&2");
|
||||
|
||||
# Ensure the presence of the extra veths
|
||||
$machine->succeed("ip link show veth1") =~ /state UP/ or die;
|
||||
$machine->succeed("ip link show veth2") =~ /state UP/ or die;
|
||||
|
||||
# Ensure the veth1 is part of br1 on the host
|
||||
$machine->succeed("ip link show veth1") =~ /master br1/ or die;
|
||||
|
||||
# Debug
|
||||
#$machine->succeed("ip -4 a >&2");
|
||||
#$machine->succeed("ip -4 r >&2");
|
||||
#$machine->succeed("nixos-container run webserver -- ip link >&2");
|
||||
#$machine->succeed("nixos-container run webserver -- ip -4 a >&2");
|
||||
#$machine->succeed("nixos-container run webserver -- ip -4 r >&2");
|
||||
|
||||
# Ping on main veth
|
||||
$machine->succeed("ping -n -c 1 192.168.0.100");
|
||||
$machine->succeed("ping6 -n -c 1 fc00::2");
|
||||
|
||||
# Ping on the first extra veth
|
||||
$machine->succeed("ping -n -c 1 192.168.1.100 >&2");
|
||||
|
||||
# Ping on the second extra veth
|
||||
$machine->succeed("ping -n -c 1 192.168.2.100 >&2");
|
||||
|
||||
# Stop the container.
|
||||
$machine->succeed("nixos-container stop webserver");
|
||||
$machine->fail("ping -n -c 1 192.168.1.100 >&2");
|
||||
$machine->fail("ping -n -c 1 192.168.2.100 >&2");
|
||||
|
||||
# Destroying a declarative container should fail.
|
||||
$machine->fail("nixos-container destroy webserver");
|
||||
'';
|
||||
})
|
@ -3,7 +3,7 @@
|
||||
import ./make-test.nix ({ pkgs, ...} : {
|
||||
name = "containers-imperative";
|
||||
meta = with pkgs.stdenv.lib.maintainers; {
|
||||
maintainers = [ aristid aszlig eelco chaoflow ];
|
||||
maintainers = [ aristid aszlig eelco chaoflow kampfschlaefer ];
|
||||
};
|
||||
|
||||
machine =
|
||||
|
@ -3,7 +3,7 @@
|
||||
import ./make-test.nix ({ pkgs, ...} : {
|
||||
name = "containers-ipv4";
|
||||
meta = with pkgs.stdenv.lib.maintainers; {
|
||||
maintainers = [ aristid aszlig eelco chaoflow ];
|
||||
maintainers = [ aristid aszlig eelco chaoflow kampfschlaefer ];
|
||||
};
|
||||
|
||||
machine =
|
||||
|
@ -8,7 +8,7 @@ in
|
||||
import ./make-test.nix ({ pkgs, ...} : {
|
||||
name = "containers-ipv6";
|
||||
meta = with pkgs.stdenv.lib.maintainers; {
|
||||
maintainers = [ aristid aszlig eelco chaoflow ];
|
||||
maintainers = [ aristid aszlig eelco chaoflow kampfschlaefer ];
|
||||
};
|
||||
|
||||
machine =
|
||||
|
@ -22,7 +22,7 @@ pythonPackages.buildPythonApplication rec {
|
||||
];
|
||||
|
||||
propagatedBuildInputs = with pythonPackages; [
|
||||
gst-python pygobject3 pykka tornado requests2
|
||||
gst-python pygobject3 pykka tornado requests2 dbus
|
||||
];
|
||||
|
||||
# There are no tests
|
||||
|
@ -2,20 +2,19 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "zam-plugins-${version}";
|
||||
version = "3.6";
|
||||
version = "3.7";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://github.com/zamaudio/zam-plugins.git";
|
||||
deepClone = true;
|
||||
rev = "91fe56931a3e57b80f18c740d2dde6b44f962aee";
|
||||
sha256 = "1ldrqh6nk0m1axb553wjp1gfznw8b6b3k0v0z1jdwy425sl6g07d";
|
||||
rev = "932046905a57f698406318765a60807a1f81257d";
|
||||
sha256 = "0zgkmq3jgysrsb6cm6sfbgqpgfpwv8nxlgkqm29zzvb97j56bm7z";
|
||||
};
|
||||
|
||||
buildInputs = [ boost libX11 mesa liblo libjack2 ladspaH lv2 pkgconfig rubberband libsndfile ];
|
||||
|
||||
patchPhase = ''
|
||||
patchShebangs ./dpf/utils/generate-ttl.sh
|
||||
substituteInPlace Makefile --replace "ZaMaximX2" "ZaMaximX2 ZamPiano ZamChild670"
|
||||
'';
|
||||
|
||||
makeFlags = [
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "atom-${version}";
|
||||
version = "1.8.0";
|
||||
version = "1.9.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/atom/atom/releases/download/v${version}/atom-amd64.deb";
|
||||
sha256 = "0x73n64y3jfwbwg6s9pmsajryrjrrx1a0dzf3ff6dbi5gvv950xi";
|
||||
sha256 = "0hhv1yfs2h5x86pjbkbdg1mn15afdd3baddwpf3p0fl8x2gv9z7m";
|
||||
name = "${name}.deb";
|
||||
};
|
||||
|
||||
|
@ -1,9 +1,9 @@
|
||||
{ stdenv
|
||||
{ kdeDerivation
|
||||
, lib
|
||||
, fetchgit
|
||||
, extra-cmake-modules
|
||||
, ecm
|
||||
, kdoctools
|
||||
, makeQtWrapper
|
||||
, kdeWrapper
|
||||
, qtscript
|
||||
, kconfig
|
||||
, kcrash
|
||||
@ -13,54 +13,55 @@
|
||||
, kiconthemes
|
||||
, kinit
|
||||
, khtml
|
||||
, konsole
|
||||
, kparts
|
||||
, ktexteditor
|
||||
, kwindowsystem
|
||||
, poppler
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "kile-${version}";
|
||||
version = "2016-07-02";
|
||||
let
|
||||
unwrapped =
|
||||
kdeDerivation rec {
|
||||
name = "kile-${version}";
|
||||
version = "2016-07-02";
|
||||
|
||||
src = fetchgit {
|
||||
url = git://anongit.kde.org/kile.git;
|
||||
rev = "d38bc7069667119cc891b351188484ca6fb88973";
|
||||
sha256 = "1nha71i16fs7nq2812b5565nbmbsbs3ak5czas6xg1dg5bsvdqh8";
|
||||
src = fetchgit {
|
||||
url = git://anongit.kde.org/kile.git;
|
||||
rev = "d38bc7069667119cc891b351188484ca6fb88973";
|
||||
sha256 = "1nha71i16fs7nq2812b5565nbmbsbs3ak5czas6xg1dg5bsvdqh8";
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
extra-cmake-modules
|
||||
kdoctools
|
||||
makeQtWrapper
|
||||
];
|
||||
nativeBuildInputs = [ ecm kdoctools ];
|
||||
|
||||
buildInputs = [
|
||||
qtscript
|
||||
kconfig
|
||||
kcrash
|
||||
kdbusaddons
|
||||
kdelibs4support
|
||||
kdoctools
|
||||
kguiaddons
|
||||
kiconthemes
|
||||
kinit
|
||||
khtml
|
||||
kparts
|
||||
ktexteditor
|
||||
kwindowsystem
|
||||
poppler
|
||||
];
|
||||
buildInputs = [
|
||||
kconfig
|
||||
kcrash
|
||||
kdbusaddons
|
||||
kdelibs4support
|
||||
kdoctools
|
||||
kguiaddons
|
||||
kiconthemes
|
||||
kinit
|
||||
khtml
|
||||
kparts
|
||||
ktexteditor
|
||||
kwindowsystem
|
||||
poppler
|
||||
qtscript
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
wrapQtProgram "$out/bin/kile"
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Kile is a user friendly TeX/LaTeX authoring tool for the KDE desktop environment";
|
||||
homepage = https://www.kde.org/applications/office/kile/;
|
||||
maintainers = with lib.maintainers; [ fridh ];
|
||||
license = lib.licenses.gpl2Plus;
|
||||
};
|
||||
meta = {
|
||||
description = "Kile is a user friendly TeX/LaTeX authoring tool for the KDE desktop environment";
|
||||
homepage = https://www.kde.org/applications/office/kile/;
|
||||
maintainers = with lib.maintainers; [ fridh ];
|
||||
license = lib.licenses.gpl2Plus;
|
||||
};
|
||||
};
|
||||
in
|
||||
kdeWrapper unwrapped
|
||||
{
|
||||
targets = [ "bin/kile" ];
|
||||
paths = [ konsole.unwrapped ];
|
||||
}
|
||||
|
@ -1,15 +1,16 @@
|
||||
{ stdenv, fetchurl, gdal, cmake, qt4, flex, bison, proj, geos, xlibsWrapper, sqlite, gsl
|
||||
, qwt, fcgi, pythonPackages, libspatialindex, libspatialite, qscintilla, postgresql, makeWrapper
|
||||
, qjson, qca2, txt2tags
|
||||
, withGrass ? false, grass
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "qgis-2.10.1";
|
||||
name = "qgis-2.16.1";
|
||||
|
||||
buildInputs = [ gdal qt4 flex bison proj geos xlibsWrapper sqlite gsl qwt qscintilla
|
||||
fcgi libspatialindex libspatialite postgresql ] ++
|
||||
fcgi libspatialindex libspatialite postgresql qjson qca2 txt2tags ] ++
|
||||
(stdenv.lib.optional withGrass grass) ++
|
||||
(with pythonPackages; [ numpy psycopg2 ]) ++ [ pythonPackages.qscintilla ];
|
||||
(with pythonPackages; [ numpy psycopg2 requests2 ]) ++ [ pythonPackages.qscintilla ];
|
||||
|
||||
nativeBuildInputs = [ cmake makeWrapper ];
|
||||
|
||||
@ -24,7 +25,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://qgis.org/downloads/${name}.tar.bz2";
|
||||
sha256 = "79119b54642edaffe3cda513531eb7b81913e013954a49c6d3b21c8b00143307";
|
||||
sha256 = "4a526cd8ae76fc06bb2b6a158e86db5dc0c94545137a8233cd465ef867acdc8b";
|
||||
};
|
||||
|
||||
cmakeFlags = stdenv.lib.optional withGrass "-DGRASS_PREFIX7=${grass}/${grass.name}";
|
||||
|
34
pkgs/applications/misc/moonlight-embedded/default.nix
Normal file
34
pkgs/applications/misc/moonlight-embedded/default.nix
Normal file
@ -0,0 +1,34 @@
|
||||
{ stdenv, fetchgit, cmake, perl
|
||||
, alsaLib, libevdev, libopus, libudev, SDL2
|
||||
, ffmpeg, pkgconfig, xorg, libvdpau, libpulseaudio, libcec
|
||||
, curl, expat, avahi, enet, libuuid
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "moonlight-embedded-${version}";
|
||||
version = "2.2.1";
|
||||
|
||||
# fetchgit used to ensure submodules are available
|
||||
src = fetchgit {
|
||||
url = "git://github.com/irtimmer/moonlight-embedded";
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "0m1114dsz44rvq402b4v5ib2cwj2vbasir0l8vi0q5iymwmsvxj4";
|
||||
};
|
||||
|
||||
outputs = [ "out" "doc" ];
|
||||
|
||||
nativeBuildInputs = [ cmake perl ];
|
||||
buildInputs = [
|
||||
alsaLib libevdev libopus libudev SDL2
|
||||
ffmpeg pkgconfig xorg.libxcb libvdpau libpulseaudio libcec
|
||||
xorg.libpthreadstubs curl expat avahi enet libuuid
|
||||
];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Open source implementation of NVIDIA's GameStream";
|
||||
homepage = https://github.com/irtimmer/moonlight-embedded;
|
||||
license = licenses.gpl3;
|
||||
maintainers = [ maintainers.globin ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
@ -1,8 +1,9 @@
|
||||
{ stdenv
|
||||
{ kdeDerivation
|
||||
, lib
|
||||
, fetchurl
|
||||
, cmake
|
||||
, extra-cmake-modules
|
||||
, kdoctools
|
||||
, kdeWrapper
|
||||
, ecm
|
||||
, karchive
|
||||
, kcrash
|
||||
, kdbusaddons
|
||||
@ -14,53 +15,49 @@
|
||||
, konsole
|
||||
, kparts
|
||||
, kwindowsystem
|
||||
, makeQtWrapper
|
||||
|
||||
}:
|
||||
|
||||
let
|
||||
pname = "yakuake";
|
||||
version = "3.0.2";
|
||||
unwrapped = let
|
||||
pname = "yakuake";
|
||||
version = "3.0.2";
|
||||
in kdeDerivation rec {
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.kde.org/stable/${pname}/${version}/src/${name}.tar.xz";
|
||||
sha256 = "0vcdji1k8d3pz7k6lkw8ighkj94zff2l2cf9v1avf83f4hjyfhg5";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
karchive
|
||||
kcrash
|
||||
kdbusaddons
|
||||
ki18n
|
||||
kiconthemes
|
||||
knewstuff
|
||||
knotifications
|
||||
knotifyconfig
|
||||
kparts
|
||||
kwindowsystem
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
ecm kdoctools
|
||||
];
|
||||
|
||||
meta = {
|
||||
homepage = https://yakuake.kde.org;
|
||||
description = "Quad-style terminal emulator for KDE";
|
||||
maintainers = with lib.maintainers; [ fridh ];
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.kde.org/stable/${pname}/${version}/src/${name}.tar.xz";
|
||||
sha256 = "0vcdji1k8d3pz7k6lkw8ighkj94zff2l2cf9v1avf83f4hjyfhg5";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
cmake
|
||||
extra-cmake-modules
|
||||
karchive
|
||||
kcrash
|
||||
kdbusaddons
|
||||
ki18n
|
||||
kiconthemes
|
||||
knewstuff
|
||||
knotifications
|
||||
knotifyconfig
|
||||
kparts
|
||||
kwindowsystem
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
extra-cmake-modules
|
||||
makeQtWrapper
|
||||
];
|
||||
|
||||
propagatedUserEnvPkgs = [
|
||||
konsole
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
wrapQtProgram "$out/bin/yakuake"
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = https://yakuake.kde.org;
|
||||
description = "Quad-style terminal emulator for KDE";
|
||||
maintainers = with lib.maintainers; [ fridh ];
|
||||
};
|
||||
kdeWrapper unwrapped
|
||||
{
|
||||
targets = [ "bin/yakuake" ];
|
||||
paths = [ konsole.unwrapped ];
|
||||
}
|
||||
|
||||
|
@ -4,189 +4,189 @@
|
||||
# ruby generate_sources.rb 46.0.1 > sources.nix
|
||||
|
||||
{
|
||||
version = "47.0.1";
|
||||
version = "48.0";
|
||||
sources = [
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/ach/firefox-47.0.1.tar.bz2"; locale = "ach"; arch = "linux-i686"; sha512 = "a5391e45d1e59a7c14d8d421286033e3e760bf2b4afddfec3d1767b2ebc957b053c39f17f8185a6c9ca2542c76f6c9612d95d474c01bd5ecc62e5d4f4e43e8df"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/ach/firefox-47.0.1.tar.bz2"; locale = "ach"; arch = "linux-x86_64"; sha512 = "48681328033b694adfc6149bd965a3dff90ef014db6f65641ddd3d79ba7901604623735555bad024dc2425f226c65e332a0875d6b18fe1c06b18a1e407b70294"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/af/firefox-47.0.1.tar.bz2"; locale = "af"; arch = "linux-i686"; sha512 = "7757ba99ce9991f67a45d9a19615a93c0a1bf0e35d35c5fe653f04d47c068054c8d91327641a48cd20fb9531cd1e842066c0e6f2dd8b23bff216a9fc727ec84d"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/af/firefox-47.0.1.tar.bz2"; locale = "af"; arch = "linux-x86_64"; sha512 = "7e3d70da29aeb5fc81f5e6dc52a4b8f831813f8c025b1a105df631cc5b675905c82dae842459ad30c5257b74bd5654e9aec5dcfcdee93eb42443c45cda81138e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/an/firefox-47.0.1.tar.bz2"; locale = "an"; arch = "linux-i686"; sha512 = "1051e1e3a6c25ba6b3aa4ce5adfdc60bcb3c612f3facd5edb702385ea8c0837cc53e95b064a424e0c055a56a11f3a54a7ba37e2ef35045c8cbb834aaec0f6327"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/an/firefox-47.0.1.tar.bz2"; locale = "an"; arch = "linux-x86_64"; sha512 = "27fb75ce402c0d47f8542d3d6d6992587e6ea0caaba2249e763f0f9c4f1d233b37a4b87ebb7e730d16704c7d2abab690660e409e721850875fc09deb0c433252"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/ar/firefox-47.0.1.tar.bz2"; locale = "ar"; arch = "linux-i686"; sha512 = "296e23fff265bcc08ec0f81608d50428181163d216fd896c80a1a8c31e95f243112aeedf3bbd96b1efbaa1d6d576a9bfc75e5fe8df434cbb74bb9576f7d90a83"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/ar/firefox-47.0.1.tar.bz2"; locale = "ar"; arch = "linux-x86_64"; sha512 = "15f0e7cbf5a98ffa9d2d7befcb11938b76194dff29b1d93ddcbb8f5c655ef33659534874a72aea18f98af06e5fa4392aee5412582ef43292d70603dff2c42c60"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/as/firefox-47.0.1.tar.bz2"; locale = "as"; arch = "linux-i686"; sha512 = "67883c8cb7ffb6c05288b316b2aa5bc3274372dd82ab4c771fcf1e5a968e550d12c89027440704d8479a906beeef24a18ca72ad243628a5ece45918ed990c793"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/as/firefox-47.0.1.tar.bz2"; locale = "as"; arch = "linux-x86_64"; sha512 = "f7718b0dc9bcbfd109591f87263d7791dcd7612b0312d0bf93e68b1f2014d3732dc6740c57a8e64dfc1af7946da14dde617945e38842eb19cfe39376cb12ad44"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/ast/firefox-47.0.1.tar.bz2"; locale = "ast"; arch = "linux-i686"; sha512 = "f29b883932752bfa947c48f7c1ff6084b1cf215ea84cf63beaea808702b0b90f50e85aa4cefa4d2c1234b0d366c8f6e3d8fdf7a0f92d432cba790adab6d24174"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/ast/firefox-47.0.1.tar.bz2"; locale = "ast"; arch = "linux-x86_64"; sha512 = "8b656c6b08640c125b94f90e1dc8259c90af2e764cee73b02b9dc3c0246b3195906d9208bc2a6b3ca31091d8cdfca8338fa6c489b7caa5685a23133e98847a39"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/az/firefox-47.0.1.tar.bz2"; locale = "az"; arch = "linux-i686"; sha512 = "5ee1247e37964274bbea8021c8e4e5116fedca95712fbd91d709c5c580bd1618c6319cae73278b2f0ba82031e94bd3fb382d2b4dcfc9a5d7ad47ecd80f4fca43"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/az/firefox-47.0.1.tar.bz2"; locale = "az"; arch = "linux-x86_64"; sha512 = "c369046c29dd0dfcf40e69e1f5b5a63423833a376d2b143d3fbf2ee1e23dedb3baf24843ba1178bda94b86f357724898a147d4adfac1e469cbf44166d7ffd16c"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/be/firefox-47.0.1.tar.bz2"; locale = "be"; arch = "linux-i686"; sha512 = "f8a1ab05b8d25a7a30e755a551f0851a308ba0720180685f6946a510363988717f8274ac2c8ef826c60232a62c394b86829d289e7d74e24b7656b55238129b15"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/be/firefox-47.0.1.tar.bz2"; locale = "be"; arch = "linux-x86_64"; sha512 = "df05271371de5fa25ec11164eaac0b253bc892749d421a6ca730dfeceb4ef89492c42ce83a87eccbe91cb03ab001bf0a1d9a20a7296b69841cab8c6b5d2acc36"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/bg/firefox-47.0.1.tar.bz2"; locale = "bg"; arch = "linux-i686"; sha512 = "80644b86f9296b708e74843a51f81d368e3508f0f2f74de1a998d30a15f6e3af08ffd70dcc5c79adb76c03be9ff4713fc8403b8433cbc33ca3493941c4fb2fe0"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/bg/firefox-47.0.1.tar.bz2"; locale = "bg"; arch = "linux-x86_64"; sha512 = "0e6cdc5b3cc706031c95a550b0c800c9e8e2d7bf241010c22f0872eca4bab018a5f0d4a94abb4f8291c279476700f2101a69ac0c57ae79994fba38b88b00fddb"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/bn-BD/firefox-47.0.1.tar.bz2"; locale = "bn-BD"; arch = "linux-i686"; sha512 = "4c697f1dcd68634e2ab712d4f2415e57cf8be0017fff3602223d8af19a1f3a5c973489d13951baaab95924fad42212a485fdff622d2b559be36e246c8a847b67"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/bn-BD/firefox-47.0.1.tar.bz2"; locale = "bn-BD"; arch = "linux-x86_64"; sha512 = "1931035a9d92dd9246a00b32443e282dc405096407a4feff7856125b7ee156840114c9be0dd58a020c250fa54c4ccb22052d2be291eeec9b5f76303fdf6c4cc5"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/bn-IN/firefox-47.0.1.tar.bz2"; locale = "bn-IN"; arch = "linux-i686"; sha512 = "fbab6f7e4205c803a50990624d58aa80cfd3aa76fed02cbf9ea390f4ecdcc1a97bda9b51791cec49f2a7e1010109d5f81a1c9b6ac224f1f70df49407df5f7386"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/bn-IN/firefox-47.0.1.tar.bz2"; locale = "bn-IN"; arch = "linux-x86_64"; sha512 = "c705ec8356796060c6782261086011bc0bf3ac9f08bc821ce2305c9aac11c522abb802a9d9ab7dcb53b0d38468bb6e667d45b187355d769acb43a8b252c4f400"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/br/firefox-47.0.1.tar.bz2"; locale = "br"; arch = "linux-i686"; sha512 = "c58cd77139a0ae7f3bb8f6f25c40856aca18a831c8f5d6f5d59a45ec615420bd55205093fb66a77591835b0d9493f774b1801a168b9c071086d510a1446cc914"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/br/firefox-47.0.1.tar.bz2"; locale = "br"; arch = "linux-x86_64"; sha512 = "b6bde26d478eac081007ef43a6d588f70dc4d54afc423b019468dc91bfcb117d3b4989c4cbb4cf77a1a11847a58ec74fbf822b6e6f0ef86fdb0065c301294850"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/bs/firefox-47.0.1.tar.bz2"; locale = "bs"; arch = "linux-i686"; sha512 = "16ee40d079996f42be77167b73645d389045648c9d36b76e34d0398c7b5b6dee54712d109f93d054236ac7076fc3edb06ee82acae40ad22825a23d92d0e2c636"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/bs/firefox-47.0.1.tar.bz2"; locale = "bs"; arch = "linux-x86_64"; sha512 = "ef674f409df5c32fe4584f9de65cc6558d6b3ec78d8a83f5cec829bc1ae09f30399567915e32584334704d12264c2592fecc9e4952beabc8b0d4eb49a7186854"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/ca/firefox-47.0.1.tar.bz2"; locale = "ca"; arch = "linux-i686"; sha512 = "fe522bd836c82cb68bb21ad1c7f36bd9a7af1642abf7c035e2d0999b4cc07c58124e4d8de81344598036159102ee12f22c12e44a8a087e54d6c661c3f453b63e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/ca/firefox-47.0.1.tar.bz2"; locale = "ca"; arch = "linux-x86_64"; sha512 = "b618da984d35fbde3819d101c103d8d9a5a4de98f0e254c67e894656019ebb6adc56e14a57410a61430d9aa9c1e0a01339b39a5272164af372544f27329a1644"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/cak/firefox-47.0.1.tar.bz2"; locale = "cak"; arch = "linux-i686"; sha512 = "82659aa2fbd091224aef6800b3df1d2e5141b6a295918e4fc4ea09b671184f62c670e3dedd7040b2f167581b0c8a0e8799d861256b273b01b2455d0937722273"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/cak/firefox-47.0.1.tar.bz2"; locale = "cak"; arch = "linux-x86_64"; sha512 = "a507cff511c6337f805a27c0f73548342d2fb2cffa683874d66b054b844b17c354cc6da5c3d15618006c2279099b0cd9172b17d9d4b21a3863b5e395db686b22"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/cs/firefox-47.0.1.tar.bz2"; locale = "cs"; arch = "linux-i686"; sha512 = "9af91acffc2beeb53280a6cbd21656a91a686c03342fad90dd91314c49535acef1a8abac8fe54bcfc250ca8b8f07e3550c890094f3bcee6baece983cec68bd8a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/cs/firefox-47.0.1.tar.bz2"; locale = "cs"; arch = "linux-x86_64"; sha512 = "c8bea48dc11c021fff9df5ee1a67a6b6e9193ffb2a07e17014d7448254d8a8f4d1512f862ea73bf84dc15b40edbba3fd94cd3d2d18872255bbfc7fa9a7b8ec29"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/cy/firefox-47.0.1.tar.bz2"; locale = "cy"; arch = "linux-i686"; sha512 = "7cc062c3b9b4bbfd0b1f7247f06505ae99458514b607d4d9062836085798bab7ade6c4d1c8903b1b961243c6fb6adb4c4f94780f1194f745cf62d786e2c4f5c6"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/cy/firefox-47.0.1.tar.bz2"; locale = "cy"; arch = "linux-x86_64"; sha512 = "abafa600b941e17f8aea0e778a937f5fb34cbc8803c93e59febc5d9fde6ad3347ba0bc7aa07ab57a61f6b9d6b11d582b987100364aa8401bca539dc6e14584e3"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/da/firefox-47.0.1.tar.bz2"; locale = "da"; arch = "linux-i686"; sha512 = "d4a9141779f52b78a51b9682b6b44e5ccffdecf5582358ab8a02efe133d9a52023e03c238e106a79e41a8aeaabcc58e0757c1af66837768e7bf4732f26182915"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/da/firefox-47.0.1.tar.bz2"; locale = "da"; arch = "linux-x86_64"; sha512 = "48f0c48aa273cec9830bf806330c7a630185262838007628acad904a45b3186450a8973938c36db636bdef9042c78ce94a4a456e1682ef561abaabab6ac20863"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/de/firefox-47.0.1.tar.bz2"; locale = "de"; arch = "linux-i686"; sha512 = "01675b3a8ecfa10da1d101cba36295b226b130e1cdb2c760541cd76c9b21436ae84ca7228e063402b1ca2eb59acadcac7720c9dd47db8b406675fb273af206c6"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/de/firefox-47.0.1.tar.bz2"; locale = "de"; arch = "linux-x86_64"; sha512 = "6a7ef802a8109f58504b2accb9ef0ee38986f6c8980e0831c30b470f2ee768169557cdbde1a58d7c72996b27596e553185ded476cecdd7114b75d82428b7846e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/dsb/firefox-47.0.1.tar.bz2"; locale = "dsb"; arch = "linux-i686"; sha512 = "55528fca4d276b2b0430949686845e3d7d88975129c9a9846408f758b4f9c8f154425db891e5c1930197e36137d6c15ba29de90dad624bad23090015849d0ab5"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/dsb/firefox-47.0.1.tar.bz2"; locale = "dsb"; arch = "linux-x86_64"; sha512 = "f21c14a57f6f973be824340fcd417ce03765d5826114462f62adbd933661bccbfbe90b66935083619c62d48401c511830574ccc373ca2110093b06fad59734ff"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/el/firefox-47.0.1.tar.bz2"; locale = "el"; arch = "linux-i686"; sha512 = "ac5a808db1ba68286a7199eef33794f7aeeafa26e97a20738fb21be479462bcaeb1e8a7995720d5c7dcaadd0cebe91bb2a3e019873d0cf74f42838f7d5c1a427"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/el/firefox-47.0.1.tar.bz2"; locale = "el"; arch = "linux-x86_64"; sha512 = "c02e6587d99fc3ca66debe854c778a8b3dbf9b514e6ed74fa15e3035a54643b2bc324ff59f1705c6bd392c37ad1996f80dbabbb57df10aff954ed0ff3f5b01d5"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/en-GB/firefox-47.0.1.tar.bz2"; locale = "en-GB"; arch = "linux-i686"; sha512 = "c458c70db0408d627a904781adc9af18011f243689f4c5a606c8f1508b4e9417a8df499673c4ba56d32ea77d0f79ab85ff88852f7c518e7fd124e5970615b2f9"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/en-GB/firefox-47.0.1.tar.bz2"; locale = "en-GB"; arch = "linux-x86_64"; sha512 = "28ccaebc4f7613d7ea8c3b47504923f2d59bdf4afd6e386a67dcb6b6923a9374c1c783e4f904da0b6e0f716ec87a046fc12f3781b732389d1d680745d6955c58"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/en-US/firefox-47.0.1.tar.bz2"; locale = "en-US"; arch = "linux-i686"; sha512 = "e1ea34bd0829656c04c471b66d2013fc07cbd5cf40b47bf3a932326cca71f9a502c52d1d5e6dd902d274d307079475b0e75d7ff552fcb2fadf31b2883efba79e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/en-US/firefox-47.0.1.tar.bz2"; locale = "en-US"; arch = "linux-x86_64"; sha512 = "a56b2ad26df424f008d96968a4e6a10406694b33f42d962f19dff1a0bcdf261bca5dd0e5c6f3af32d892c3268da5ebee8ce182090f04f8480d37d232ccd23b9f"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/en-ZA/firefox-47.0.1.tar.bz2"; locale = "en-ZA"; arch = "linux-i686"; sha512 = "d5efc3d4e624f34c81df068f4d6c184cb8a63ad0667695e9ce7099e069b23715eb77cf2004adee41bf355452179959e5ef7450f167f87be70339abb4cf70844a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/en-ZA/firefox-47.0.1.tar.bz2"; locale = "en-ZA"; arch = "linux-x86_64"; sha512 = "859730132549691b61e936813f0f5fd3e62f3ef6fa9899e3f68bd3178b7438b4c6b49f54f00d4898b568d6abccdd55a0f9fc6c51858e95735fefcc13de460d73"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/eo/firefox-47.0.1.tar.bz2"; locale = "eo"; arch = "linux-i686"; sha512 = "8ef290bf1eb3504ace393b32c2da64d14435edc327c4f13a40cd925efaf7e042a03b6877689b3f2290f85625410a4e48dfb2cf676f138fdba87ffc597b25f4b6"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/eo/firefox-47.0.1.tar.bz2"; locale = "eo"; arch = "linux-x86_64"; sha512 = "7d6167749d2a57a9c12180302a825fee14555e9050b6be3c83dd35183678bc36e10391cedcc864ca0dd96d297997a68627dc4fc1a9cd8922e789dcfa814f18eb"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/es-AR/firefox-47.0.1.tar.bz2"; locale = "es-AR"; arch = "linux-i686"; sha512 = "07768e3b3ed903f4327881a132f192a65842a376eeca6d10ec0de69fefb4ddf3d7fee2a704bbc8d229c78556478814d9e53940cca9edee58270d9790d6b76998"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/es-AR/firefox-47.0.1.tar.bz2"; locale = "es-AR"; arch = "linux-x86_64"; sha512 = "cac021af09abd742273dc77291fb1528dd5d6d38cef3a5e36e615fbb9f3908655fdc96ceb93fd131c4879acf24e702a044471136e7575f3b550ebcecd982047e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/es-CL/firefox-47.0.1.tar.bz2"; locale = "es-CL"; arch = "linux-i686"; sha512 = "e92ce6bec5b1ee8cf3db0a604eb4cae6245fb6d04a48eec64b6dd55139f3606cbbcb65511e29a3164d6572929b7216afbaa7f034a2191eba100ecb7403740504"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/es-CL/firefox-47.0.1.tar.bz2"; locale = "es-CL"; arch = "linux-x86_64"; sha512 = "98e57146481a53061c0b30872290ecabc2d14c73805a9461d82aaaf4cf9f301521fd55b01c8159c09a56f52a1580d83c9527986b1390f496d0fbd11227216e7f"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/es-ES/firefox-47.0.1.tar.bz2"; locale = "es-ES"; arch = "linux-i686"; sha512 = "c44df66e140ea9190112f89aedff9519b6bee18f5e2b54aea19acd233e623c299aecf134cdba70d366fcaf6b7795d220052ff75409c7a04394a7aa02d9ea708e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/es-ES/firefox-47.0.1.tar.bz2"; locale = "es-ES"; arch = "linux-x86_64"; sha512 = "c2d70bc5a304df7b2484c8fb2b374f8e31a69049eb223a53dbd0e4b51e4ccce907efb1674eb637370ce7c3947ba5c09e65f433d10e0f328b80d482f3de9cae12"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/es-MX/firefox-47.0.1.tar.bz2"; locale = "es-MX"; arch = "linux-i686"; sha512 = "96dcb75cffeb85b85f092e295e38ee55c272714c40609ca90cfaac5fa0cfdb3efe8e993319ee690b4a7938c42346bf39f063ab1f3db606e743c1e4720de5a93f"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/es-MX/firefox-47.0.1.tar.bz2"; locale = "es-MX"; arch = "linux-x86_64"; sha512 = "60b50d6726b2e1985564bc02263eb88c9b4c1bb39e6d19812ecc6751d6ad223ba04f65a7755a946fb15dceab90628b057bda89c55fdd4972604586f52c5a4b1c"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/et/firefox-47.0.1.tar.bz2"; locale = "et"; arch = "linux-i686"; sha512 = "0a4bef2277f729c93db413b68f8263eb356f7b3278880574b8ebe010e2db9067b803967e1f0d6912f128a9ad5ef204466f52ae277f3addfb8fe9ac377c3b8a3a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/et/firefox-47.0.1.tar.bz2"; locale = "et"; arch = "linux-x86_64"; sha512 = "ed1bd4fd67262958601f1107edc589bb28e9b7f9faf0edebdcaf0c07ec6007f527a9eab434582a65271a8f68edac8178601da54eab9398f48b31126657a21b0b"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/eu/firefox-47.0.1.tar.bz2"; locale = "eu"; arch = "linux-i686"; sha512 = "8c5c9406345e2a1fca3544aeb742dc0d254c804d887e3614613280c050a63b69320d4488b017ee16b0a2a07bea862e8b245baf7edc9df65689d509986f3c5958"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/eu/firefox-47.0.1.tar.bz2"; locale = "eu"; arch = "linux-x86_64"; sha512 = "d8f7004e24033f377391b577c549b66f73cf0e899ce5f580eaccd07713ec03b4362db7b222ce6345d113641d3e6a951302939bbb155c47ec0fa46a201a631427"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/fa/firefox-47.0.1.tar.bz2"; locale = "fa"; arch = "linux-i686"; sha512 = "f4e02737e20b6ffd3bc2b3a5e5fa59fc80a8e37dc8459ad4a6b99e7621a4d3f360884915f7136dc201830efe371de37977ef3e27f34f84e2cb734c1fff8f6e36"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/fa/firefox-47.0.1.tar.bz2"; locale = "fa"; arch = "linux-x86_64"; sha512 = "8f624b066faa39341b750dbb702dd60ee6ad75b3850c659dac2e21969ebed1f792423e9fb0a9cae7fc456943020f9a0155af5d7c596433eedaaa9990ce07b7d4"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/ff/firefox-47.0.1.tar.bz2"; locale = "ff"; arch = "linux-i686"; sha512 = "22a2c5376b1e8d770659475085d98ac1f1020cd816ff3ec6ccfcd68f2484b1b0dc25bb84ca52f4ad27144f4da356ce5e7fd54411d12ae7c852064509470d5828"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/ff/firefox-47.0.1.tar.bz2"; locale = "ff"; arch = "linux-x86_64"; sha512 = "bcb3dabc250045b8ad444219055fd9d14902296ef3f9c320bec1bef940f84eeb0d4a50249805188ae96ed0288a70f0216350ee79191beba49aeba890ae515b41"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/fi/firefox-47.0.1.tar.bz2"; locale = "fi"; arch = "linux-i686"; sha512 = "0c505a0e1d3030038b61ea159eece3892bcc7d947b6d7010c0be8791525c9d91ad1170d4cb45260584c93a78a4bc831b7acd9f28e95ae62e5b96b31745dcbe50"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/fi/firefox-47.0.1.tar.bz2"; locale = "fi"; arch = "linux-x86_64"; sha512 = "f347cde005c6b61366c633db5a8cbc5260dfa0d68230a938d847e3f80bff2f1bed09dddded7b1728f4ef9525610ecd046743f9e71eefb467943fe6b72ed198ca"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/fr/firefox-47.0.1.tar.bz2"; locale = "fr"; arch = "linux-i686"; sha512 = "8fb8ea2eab82740657a6b822b330fa0c289c31ad900683b4ad07b1e9b0c6c4e14f50af39d6d0f787642010628800b0a99b5ab0c4cad62e4a579390509b1ddd13"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/fr/firefox-47.0.1.tar.bz2"; locale = "fr"; arch = "linux-x86_64"; sha512 = "ae79c5b7f9f8305c3631f4f913baa341a9beaa7a2ee5df1c6c1826030c21bf22b92095ee579affb8911110bf3bcc359793c0beca18d4c32b1fcc1f3d1dbcc4b9"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/fy-NL/firefox-47.0.1.tar.bz2"; locale = "fy-NL"; arch = "linux-i686"; sha512 = "1c57d02fdc33ff53de48ed9aa9e89ecd5a56d35b432d5651e71bbfbd5f9dfd18aeaf14d10b881f72df871afd00a12b31ff05cf9d5c5a55cd44a92c7a0156523d"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/fy-NL/firefox-47.0.1.tar.bz2"; locale = "fy-NL"; arch = "linux-x86_64"; sha512 = "f30f59d630c5d289b61dc7440f7bbb976eb16732370f827365a477090cdf9f2859f39afb7ff9d9be7e8a022f181f2aeb7a3005c00f4c14e6505a28db7ae48a9a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/ga-IE/firefox-47.0.1.tar.bz2"; locale = "ga-IE"; arch = "linux-i686"; sha512 = "739d5feec4bffee67876227f6783d35675f4c0d168b7abbe5f97b6e8edce7fe4b8f04f8240087f7f208db4180f3417997b661c93ebe046decff3f4f4fecac839"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/ga-IE/firefox-47.0.1.tar.bz2"; locale = "ga-IE"; arch = "linux-x86_64"; sha512 = "cb4344df6e07db839ce8c9fffd1b7b310c8108b5218cea3602972806c1a40f56bf1355ede4cb3595f54179b16e3470e25bfbddc8e39d726c7d6c1e99d128ca8b"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/gd/firefox-47.0.1.tar.bz2"; locale = "gd"; arch = "linux-i686"; sha512 = "91004d62bb5f1f6a1d65b35fee9e594d21d9877669e042cb4c9a834b01b35797363e1433a9ce5a8d0a9f64c8b256da6a6d09fa3342b74b7c2af8ce8afb3e4e56"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/gd/firefox-47.0.1.tar.bz2"; locale = "gd"; arch = "linux-x86_64"; sha512 = "f04034cafed25c34713ffe4109e53b107b8fe81321c0c0c035f54ff0ce67ac393b42db7598edc658d3f026e447f9ff1c4d1cfdedd31066eefb6019117248e4c0"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/gl/firefox-47.0.1.tar.bz2"; locale = "gl"; arch = "linux-i686"; sha512 = "107bdebb92ce86f39cdc45d6bb24a9c4d104820eca6bb77950693ccbd55e7f8a2f143fc3a5bbb1bfda161e7a33c8f6d8d2686b09da1497215defbca2b4e4e109"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/gl/firefox-47.0.1.tar.bz2"; locale = "gl"; arch = "linux-x86_64"; sha512 = "c841af5c73343475150b5404b4b54396bda845aa5b231a742aa17ecb7fdbbc5cd4123efc3ac2ede1c24f485d04bd87e8bf7cb00b7135bef236ce56afa0c27a19"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/gn/firefox-47.0.1.tar.bz2"; locale = "gn"; arch = "linux-i686"; sha512 = "20954e218967772488bd895ebf069522c3f4c56ebfa09a7c8efb740158cb95b6be76cee8f4d7f2c1c6c505ca9071a0ddc1914784a54f669d337d5196f18b6f4a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/gn/firefox-47.0.1.tar.bz2"; locale = "gn"; arch = "linux-x86_64"; sha512 = "aaed68f13e326792671669883b452b65556998ed757ed5b745c6453d6bae8865a06f137709de37ace2688e2e09f1b96ecf2e5b6374b4170d29100c6f83ce22ce"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/gu-IN/firefox-47.0.1.tar.bz2"; locale = "gu-IN"; arch = "linux-i686"; sha512 = "205093ecc0dfcddb2b90e05b1a17f75805a4597bbfad214d67442fd0d952f765b031ba63a3c399ba9c1c46e4d05b3cf786f01c46eb8990240a16431964c93a94"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/gu-IN/firefox-47.0.1.tar.bz2"; locale = "gu-IN"; arch = "linux-x86_64"; sha512 = "a84ec5015f6922a22a284eaca985010586067370d818e77d401b58782f86dcf2f534f1ef021719c170f1f502525ce25c94760d3b75481c15fade3c25b969b563"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/he/firefox-47.0.1.tar.bz2"; locale = "he"; arch = "linux-i686"; sha512 = "5727fc4699316c4b34be1c2596c5cc20d5fc9d2062b1e106087cdb34b788fe3ebbc098acc8c690bc83c9d9be59ac3b3977fd9116d766ce908aa088660fe34771"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/he/firefox-47.0.1.tar.bz2"; locale = "he"; arch = "linux-x86_64"; sha512 = "c399969bc24b10ca1c1eff17d3414f214cfe3e5b73282942ead5b2ba4d2c58b74d665b13031ccf42956cd45f0fc7b206dd2f9674103c1e3a8861a33577b5caa7"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/hi-IN/firefox-47.0.1.tar.bz2"; locale = "hi-IN"; arch = "linux-i686"; sha512 = "f014c47a143d425aa3452be2bbed199a8b5e75d278c35fa86bb6bcac40bfb32bdee22d030386c881c818b465451b35c81f97bf29f9ccfbea606d52c822057899"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/hi-IN/firefox-47.0.1.tar.bz2"; locale = "hi-IN"; arch = "linux-x86_64"; sha512 = "0e5dc0970680886dc02448d7118b6864092699fe44f3276ca17cba160aee59418f8e39338247897b118de0e1fb7634cf725ddc6a34a8b6f002b7a78d92deffb0"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/hr/firefox-47.0.1.tar.bz2"; locale = "hr"; arch = "linux-i686"; sha512 = "a9af43f6cf6f493f728b8942d3a600f3cb3a23eb0818d284ddabb8766f7d274aa0a232f9925b65625bb56d00864946dc6b0567491cbecdd6a7cf626b6964d9b1"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/hr/firefox-47.0.1.tar.bz2"; locale = "hr"; arch = "linux-x86_64"; sha512 = "d97951148ca0ba80a67020f323859ea3f508e40906ecfd18f7a8fbe7a2bc85ea4635945b5c6063e1d5d18456471604075e6767da9a4fda6a09dd3e992a7d3a88"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/hsb/firefox-47.0.1.tar.bz2"; locale = "hsb"; arch = "linux-i686"; sha512 = "2f7adccdc894f345e861b29a6d65909b1cde2649c69ec9223f784e659e8e3f4668f815b3683fe691de0749483167d26885a0199bee88e8524377c7eee3afbe99"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/hsb/firefox-47.0.1.tar.bz2"; locale = "hsb"; arch = "linux-x86_64"; sha512 = "70e39341ede01e18c653a0eb56b48e31c73ee3df54ebc11bcd220e2d8e19c67c3e248095c4d070b12a0eac5c24acf5a8ad83069673dcaa684229f4706103685e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/hu/firefox-47.0.1.tar.bz2"; locale = "hu"; arch = "linux-i686"; sha512 = "1fc01c6dd873e2194e6196b1bdb0246e95d0b0520f558b21a2052251d2a5202141c09410c4631b3f025479169d8f68411c2a24f32825261fa8d65696fc7cbe0f"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/hu/firefox-47.0.1.tar.bz2"; locale = "hu"; arch = "linux-x86_64"; sha512 = "b4509d671d7eac055812add85ae571f52c90b4eeb172d21c22ce844c70192ba235f37a732e94a0edd6794ecd5a8caa5e8bb6ce05a26d3705902d3628420af871"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/hy-AM/firefox-47.0.1.tar.bz2"; locale = "hy-AM"; arch = "linux-i686"; sha512 = "a2b7cd1ec95a0b5eb064e816cfcfc6a74a92806772592947267c4b266bf7ce77d1beb17a7c25b905251cf497ca8dfabf16bca367cf6d9e9e635182f306bd71ca"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/hy-AM/firefox-47.0.1.tar.bz2"; locale = "hy-AM"; arch = "linux-x86_64"; sha512 = "9997ca45051e609e289d7730caf1254adacefbf8e618a165750d5bb7ff7933d014781af76501296c89a4236fd3ac477df6e6be5a5dd45f214983c851a856ce5a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/id/firefox-47.0.1.tar.bz2"; locale = "id"; arch = "linux-i686"; sha512 = "bda5a7c599885bef966daa35a3f34297e38534e32967142ff9cc720a34c7aa9730e3f24623c240637838eca03f78f9b2ee30af3ac3dc8ba48f9664c56b64c789"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/id/firefox-47.0.1.tar.bz2"; locale = "id"; arch = "linux-x86_64"; sha512 = "97d16c5b4382c7fc6ccee416d671e47d345834a44ab111aa486a41c756b25eb894628d0128e8454fc15f38937bc40436b12e60752ce7b7c1fe35a230abaca337"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/is/firefox-47.0.1.tar.bz2"; locale = "is"; arch = "linux-i686"; sha512 = "576b904fb836ea735f652c6b9c91891dee164edd3523c5f99d68cccb4bd6689c29e4c579b6cc44e699a8900101fb8d223f9e0b0860f71a2814ae0ee2c70609e5"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/is/firefox-47.0.1.tar.bz2"; locale = "is"; arch = "linux-x86_64"; sha512 = "592d65977c34c6133f5745a85722f822efa5956bafc6e880954a0b318fa59712c754e882768755fc08f5e08a1c99493c0b30b4219c46169ba663258e3fd3f3fc"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/it/firefox-47.0.1.tar.bz2"; locale = "it"; arch = "linux-i686"; sha512 = "4d749e1b5d8432df789f29a247ab48a688d4aa16fb25dcf7209783c6036bfccb9ff8ac32dcd09dab1708f71896fa034576d6048eef077d1a6c0a3dc58d3cdb26"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/it/firefox-47.0.1.tar.bz2"; locale = "it"; arch = "linux-x86_64"; sha512 = "087c456d691225d9aef54b2013af69cc7bf2501f83060179112e9c40c1d6762202f68e6329a936df091a1ae6aa5f20bcc96a4c8b0451b71270426bddfb45d15c"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/ja/firefox-47.0.1.tar.bz2"; locale = "ja"; arch = "linux-i686"; sha512 = "cb4b0bbff7d322f2f04fdaa50b365d4e0a1ff1786206539cd124870ebd69a9305b88d39b9fbed41c64ddbe68098e02c51a0dc665262424f8eff882b1497ea1fd"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/ja/firefox-47.0.1.tar.bz2"; locale = "ja"; arch = "linux-x86_64"; sha512 = "b6c9b419a3e746957f93a4bdba9043adc3911b6f76e1eea2e4e31e77e9aa9057ce720205db4af5586a90df4d6b774b90829f1d7689e77c560c50ccae755400b9"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/kk/firefox-47.0.1.tar.bz2"; locale = "kk"; arch = "linux-i686"; sha512 = "ae7711d86ce8180997f44f9309a63a436bd8b70ed0dccda773c34ba816daae99b3b1ae913ee87f4d1f9a4e8f016aea670e89652823df16b5e8414bb58ac28225"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/kk/firefox-47.0.1.tar.bz2"; locale = "kk"; arch = "linux-x86_64"; sha512 = "49fb6b5ab6aa12535373927519bf36099da6fab7c2e1bcd6f5ce73d91679f58e81eddd3556df65b305fc2d1cd439cf6de081980fa98ff79df16b620ed41290fd"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/km/firefox-47.0.1.tar.bz2"; locale = "km"; arch = "linux-i686"; sha512 = "29dd1808c1430c01dbb395d5e5a833bfbde85453278d4efd32f1afa1eac19a651c0c3a42eb4ba3402f56a8492e80746d753986c0ec0f1a6dc0e5eb6778b5c6ae"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/km/firefox-47.0.1.tar.bz2"; locale = "km"; arch = "linux-x86_64"; sha512 = "f53966aed30b57a601152f09a26414e11bff4ff31683989eb1e47546eaa32fce8cbb6511043f9753cae076d23d6f2172c2b224313cf5f3262f109b49119175e5"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/kn/firefox-47.0.1.tar.bz2"; locale = "kn"; arch = "linux-i686"; sha512 = "17dc37df2b3d5a87bbadc4d5c80d4ddff03752b7a80f5c76171ce9f0bc4b8926964b6315cd4f0c6c9dd3142cec56b464503bde34ec3c69e2b8a66ddcae72b0ec"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/kn/firefox-47.0.1.tar.bz2"; locale = "kn"; arch = "linux-x86_64"; sha512 = "2af5ac5c254bd0ed2d08656a6fee7966d73aa89973cfad67fd18d7d88fd1f18a2b882de7854af46a3ebc6acba4cceacc06942db7ae495faa2c6ef21c65e94158"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/ko/firefox-47.0.1.tar.bz2"; locale = "ko"; arch = "linux-i686"; sha512 = "415fc260f3dcc2ede6c43194501d9522fdfb106f7c86e5d8f5929df6615c73023fffc3efd190deb68bf08bb2a0d4ab34f7605e222301c8350b980f2dbc289c8a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/ko/firefox-47.0.1.tar.bz2"; locale = "ko"; arch = "linux-x86_64"; sha512 = "c991c0b9a89b618ac046882b929fd7e3689e19dd96edf4535b25f9172b6baaa801a4490ae4fd35e82ca3c776afab74a0a09b993f8ae8c2a603d210f2cf248f73"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/lij/firefox-47.0.1.tar.bz2"; locale = "lij"; arch = "linux-i686"; sha512 = "3cd367654397d14b782cea4ef8c96f1f6938f011576a8dba92dd4ca832ca3c8682f3e0e161a4288b112fca550d556080d0ece5a79e4c4f6ec99a9298feb6fa12"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/lij/firefox-47.0.1.tar.bz2"; locale = "lij"; arch = "linux-x86_64"; sha512 = "2d7475c544df807a956feb9361f889ba0f5e43dc52a9e1dc9c469d86e97f344b4f2995e3fa149a77662969f3acbcc998f430973b2b9d28b23c82c5058b4a9dfc"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/lt/firefox-47.0.1.tar.bz2"; locale = "lt"; arch = "linux-i686"; sha512 = "35c8a452ca845576739d5faa9dab6f3c34dcecf9ce95870f68699836f3534b4807c91fbe80007950abbbca662e6d01b406205b3e4cdf4d33e0717ea5d6f57006"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/lt/firefox-47.0.1.tar.bz2"; locale = "lt"; arch = "linux-x86_64"; sha512 = "8791df09d841d5ddabd552d0fb0dc7e9446d23092bae1010d92bc3b056a9ad4a6dad01c5d8db531a273945eaaf4c30c922cd03d7b17e1b6be263e0bcb91b8384"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/lv/firefox-47.0.1.tar.bz2"; locale = "lv"; arch = "linux-i686"; sha512 = "22b865a344a46096c53a72ff6b1402d00808bb3b49ecabe6f4115ea60e40e522d64afc701648772616fcb784a963bc6d5bb3f89517d7f8407f22fa82d81bad98"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/lv/firefox-47.0.1.tar.bz2"; locale = "lv"; arch = "linux-x86_64"; sha512 = "3c66af306b1a8d0a684c12511d95353c0bdda0bea981ce4e577c928be03e12b582b19dcaccdccec551b3cb0fb716323b1079180aa7a8f1204f5e4b5a84b72831"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/mai/firefox-47.0.1.tar.bz2"; locale = "mai"; arch = "linux-i686"; sha512 = "780fe423a3cd56a7452df32679ee07a0e328b21cadc78faa2721cec59185c4a4467aeeb75e9237cc86d38dfa2cd71530f02156c4fb9515582ca564dd53d47543"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/mai/firefox-47.0.1.tar.bz2"; locale = "mai"; arch = "linux-x86_64"; sha512 = "d27218b59edf004dc57cfa9ffd70dbeb59b7d3c0871b00388a56b505629fd82ddd6f6e0147f5b4c67a8ad72a674e384b66ba2f9455fa9ff218c9ada4b27d1d7d"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/mk/firefox-47.0.1.tar.bz2"; locale = "mk"; arch = "linux-i686"; sha512 = "da7ae3718f3c69ec9b62aaaea93951375d82d8d02818d6855fa9f085a64b69c155a1336585d786ae2d33d657110b787f62909dc9e4d54c62d2ea94d2fa8fee3e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/mk/firefox-47.0.1.tar.bz2"; locale = "mk"; arch = "linux-x86_64"; sha512 = "95136f8bf86014a63bcbf4a5cfbd778c4c7e6a84618aa0f6a6948bb597638569b3702e0569b50c5dc9b46339e723377faea8964b921ae9802043fb7983a2c4e4"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/ml/firefox-47.0.1.tar.bz2"; locale = "ml"; arch = "linux-i686"; sha512 = "56743acb54283715fb2a910caa85dda61f7e2c1c5e012aa222dc07e3b522572500056fddf990b7ef03a175ff8901fb11b113bcad5c2adf4a6e6e032644ccca2f"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/ml/firefox-47.0.1.tar.bz2"; locale = "ml"; arch = "linux-x86_64"; sha512 = "134f35f5f6616c2a7eec48f637277fc02e23b57bf38eccff9777bb08c70a41fe79967b69567f75f9c8bcbad4b22d2ddaf16bec98e399c4b8ca9db9b70e99ef58"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/mr/firefox-47.0.1.tar.bz2"; locale = "mr"; arch = "linux-i686"; sha512 = "f29de7ae7dba03465baf86f93d778c9faf3055d50295977c0207c7e4daae6f7ad733ed38e1323263cebe4f737d9a1616024333a97139156470de1a9fe3c16276"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/mr/firefox-47.0.1.tar.bz2"; locale = "mr"; arch = "linux-x86_64"; sha512 = "731b4f143fd1303ab54ea3f1b6aca6c4f78ce935caae32fed0b8cdcd46c0ade8c8977131a3be786ea929a7d284c3d45d34851a0d81242761f722f0bceb126957"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/ms/firefox-47.0.1.tar.bz2"; locale = "ms"; arch = "linux-i686"; sha512 = "d372bac105f2012b189efedc449c7c183d0daf64cd7a40822ef9d685ce4a1550ca9699620440dd198b13f95513a577766e9f1a8e88b212492831bf7ffcac7e0a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/ms/firefox-47.0.1.tar.bz2"; locale = "ms"; arch = "linux-x86_64"; sha512 = "1287f36a742fa834d5f31e6bc2f6d3651e54f2bc8845a1f0f647e9a9e38ba66c58138961185897c8832107cffff06167a35dc3ee1f0ff830f997f65fb0854a63"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/nb-NO/firefox-47.0.1.tar.bz2"; locale = "nb-NO"; arch = "linux-i686"; sha512 = "ac3e46080e188e56a6b67ff77aeffdba7982d7c3aa4156a6f2781ef6b8fe63cac50d678e5afc91aca4ad16c4384d2b2727f74ddc4083da91a1e3590ac98ec9d2"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/nb-NO/firefox-47.0.1.tar.bz2"; locale = "nb-NO"; arch = "linux-x86_64"; sha512 = "dca52381e45b5c2d89f590971d830010a9ec1a2a513fe655ee93c3fbd980adcea78787701595a95402bdb660c2f3e0a489e001deba13798337493655798c713a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/nl/firefox-47.0.1.tar.bz2"; locale = "nl"; arch = "linux-i686"; sha512 = "6ec01f8eb18384aadb5715a996c8410ffa94b801ee1f1b1ab43bdeb492e179e781e8b85acbeff4a25cb4fef847ce3e2335968458d9f6e47d046083264e91f6f7"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/nl/firefox-47.0.1.tar.bz2"; locale = "nl"; arch = "linux-x86_64"; sha512 = "7d5840518312dd167d914a8f7fa5670fe17f9a6fc39ccd128e30f689005b35bd352d0602993713c3d05288f2b036829be8e08398d536e4aebf2341ae2290e633"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/nn-NO/firefox-47.0.1.tar.bz2"; locale = "nn-NO"; arch = "linux-i686"; sha512 = "a185f7592649a91214363cf2a0474b5895f33342c98cd4bdc48fafb0cc76310b2ba4f46575970d723c76b2ecfeba8e2b39d9671e6059a15bcb2565258096156c"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/nn-NO/firefox-47.0.1.tar.bz2"; locale = "nn-NO"; arch = "linux-x86_64"; sha512 = "7f8e7277bcbfbe5f40c161f1ebbeed86159c2b6205a5ea55cd8b6253fa6742bcfede11d4de6c1aba36e2b1e98f9c9a7b8e26f9aa35e1eaadc1d011636d429be3"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/or/firefox-47.0.1.tar.bz2"; locale = "or"; arch = "linux-i686"; sha512 = "a543a7d3f4e24364be7e4df65a81da82d955d1268a4cbce741ad7ddd5f4e9916573e271f02af1e92b123a4da2c7f312c17f6ce714e3057a1b204484ef12133d8"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/or/firefox-47.0.1.tar.bz2"; locale = "or"; arch = "linux-x86_64"; sha512 = "7672596470cd8f49f9c4558b05bd637af1650da729bc518681a8cde3ec785358121fa7ef209e123fca4b59df1a63878832bc32d2ff404b5d2a818b60ba10c15e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/pa-IN/firefox-47.0.1.tar.bz2"; locale = "pa-IN"; arch = "linux-i686"; sha512 = "a99b60ae1eb479e31f838fd41d5de325c418762fdcfa5e0f3bc3d5da8df108d3b64ce5bfac0af09663007becf5327164db8dea0ea7a3876586cc43030a780199"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/pa-IN/firefox-47.0.1.tar.bz2"; locale = "pa-IN"; arch = "linux-x86_64"; sha512 = "f0110b74842f924808f74979061151fec711d10a6005d2da2fbb8d46fa2a25ecd5a2c804e58c10a918efe570d4d67d05578b0245f526e1aede4bbc786e9f304e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/pl/firefox-47.0.1.tar.bz2"; locale = "pl"; arch = "linux-i686"; sha512 = "7eaa2bad351429d76b476819a1529ed1609388968327382cc13df235a294f2e9fb14295341ff15fe3b2815ffd1c6c8978e2aa104a847fd2cb4adcf2ae3b0b974"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/pl/firefox-47.0.1.tar.bz2"; locale = "pl"; arch = "linux-x86_64"; sha512 = "a40e2c15cff0e7f7bff8a5c0bc4cf39df948a21bd37b34ffc93dd87e1f5256526a25526e457fcfd8d081bc872dc1bec13e67da3cf671b6a16dfa17850be4743c"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/pt-BR/firefox-47.0.1.tar.bz2"; locale = "pt-BR"; arch = "linux-i686"; sha512 = "c9cd96e68fa2e1f73a49e71c287a25be8d45a8ebb56262e02c40ba5869fc58c7fc43a1f6958592bb377e7dd4064d64f5ebcbcb5cd3a9fe0a007c2da665f50a66"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/pt-BR/firefox-47.0.1.tar.bz2"; locale = "pt-BR"; arch = "linux-x86_64"; sha512 = "1184751c1d1a0a9044f8df2d20aee7dfe332dc5f851802ebaf2c5c83fa2bcccfd913cb6e16d2baa449cff1b02aa18f828489914c0741a2ef2a46d54fefecc268"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/pt-PT/firefox-47.0.1.tar.bz2"; locale = "pt-PT"; arch = "linux-i686"; sha512 = "86538057ae91b1297acc11c9bf3f7d24ba1950edead89d4733f7c898cf53e3848054bf391a975f19766b69f4c56f576ca54e4b8da806db7416f3e3d91777c3c3"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/pt-PT/firefox-47.0.1.tar.bz2"; locale = "pt-PT"; arch = "linux-x86_64"; sha512 = "0a480c26e5dfe2bb9b536e122ae32e18a6dac999004493839cb506c1ad615e095c554d296f1a77bfccbbb86b58bcf549db83f7de51d02b68d1eb752b421f23cc"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/rm/firefox-47.0.1.tar.bz2"; locale = "rm"; arch = "linux-i686"; sha512 = "751ffe931cd60296490c7164f49f61f4a51bac5210328a18d02261a07eb607e181b2bab4fa0b59d2df15334152386bf816a984840d2331b7e801171be9c90594"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/rm/firefox-47.0.1.tar.bz2"; locale = "rm"; arch = "linux-x86_64"; sha512 = "3e526c9a1a876e5d2c548c9a68803dd11c04c8214e18eb09c0b1c3fb3833f64c8a3362db8083ac5de81c59268439b53effa3bf1c64807fafc874eb8ed9baf188"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/ro/firefox-47.0.1.tar.bz2"; locale = "ro"; arch = "linux-i686"; sha512 = "73cf6a18deafb7ba93fd60cba3ba0bb0191471f977c41bac11bf2fd6cc6f7fd7cf2ad125ac5cf168ef577d71dfb0e893e182f39be6ad186ddc642d87c40041a5"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/ro/firefox-47.0.1.tar.bz2"; locale = "ro"; arch = "linux-x86_64"; sha512 = "b62c54b8694b4a662c1d336056d404a8d432ba0a3d4f2964b5c5acc0e39b668fd228105e1c4e307bfab1acfa5c3ce223db4229df01866cdbbc7c1ac95e70fe2c"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/ru/firefox-47.0.1.tar.bz2"; locale = "ru"; arch = "linux-i686"; sha512 = "6ebd3b3a1f3613905313129cde7cf113bdd777fd0f600496231ba813a95b04309b25016dd69891d31189a93ccad3f87b9c69d54d6219ad39dd38d1181b1f3102"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/ru/firefox-47.0.1.tar.bz2"; locale = "ru"; arch = "linux-x86_64"; sha512 = "539a22d13587cdcc21b6f76ff24ccfd1df98cbaaacac802aed46ba8f2bfed27cb2f3e5c146cbd2c3559aaff22297e692030b9612041a05a6bfca08f49bf0d2fb"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/si/firefox-47.0.1.tar.bz2"; locale = "si"; arch = "linux-i686"; sha512 = "bb0d1621f5b9af886fca0ea7cf7fd851d7c22d2d8f279a7b88e9bce98be33ad7b75d6a51ab47ea859802ed39b467815db60409285afaa0bbf4bb1ce6d590eabc"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/si/firefox-47.0.1.tar.bz2"; locale = "si"; arch = "linux-x86_64"; sha512 = "90337d193df7db41a1384856938bb62212952a80144dcc319a725a9b567ffd4deb7bb7af89b57891d3c17499ff466990e656edf7d0b017b8f4e0370aab445477"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/sk/firefox-47.0.1.tar.bz2"; locale = "sk"; arch = "linux-i686"; sha512 = "23a15e6ad5ce9b03c218be4e26e603a412de4d870d5f64b599ae511bfc66bf2cf04613cc06fc1a054d06b80435e284456c0b08e33f34d8c9482f5ca23da6ae62"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/sk/firefox-47.0.1.tar.bz2"; locale = "sk"; arch = "linux-x86_64"; sha512 = "a86cbed60f65e4ebb36c614d846fbb2515945112fd4f2482c3a63b49a62c3acb310f050dcbd57cc76a808c049eefd8f779d6aeea53362dd81798bb8d7177c86a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/sl/firefox-47.0.1.tar.bz2"; locale = "sl"; arch = "linux-i686"; sha512 = "8ae008f0077081ef40de3bf08c2de294231f41439a83d8a41a485f53e95ba3f4fc6ef03d6ac98e8848c3f3dad290978f1607d8c847f1622bd86b7d38cd0be730"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/sl/firefox-47.0.1.tar.bz2"; locale = "sl"; arch = "linux-x86_64"; sha512 = "34efb560c65329c7f3f6b341cc49ac4952f24e6e9b34e7f5bd45d98618a4d03ac89c6f62580223efd2d37db24a03f76a54381d4162f5430b887122bb56eb49d9"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/son/firefox-47.0.1.tar.bz2"; locale = "son"; arch = "linux-i686"; sha512 = "d3e5a25fbc4a786239a7ae543fefb7b7e3ecc34192c8326af915f18b9b08436656bf68faa4953a34bdc464e32305baecce800f91ef0152bb4b4a8323ab448f33"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/son/firefox-47.0.1.tar.bz2"; locale = "son"; arch = "linux-x86_64"; sha512 = "ffee5d1a23e91911fd1dedb5ecf24bfc6b1733fb582e64a5e07d4df4b7afd9a6c502a70ab3af6624b4594f5ddcd81bc8962ede5b693cc035a96a561389f6bfca"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/sq/firefox-47.0.1.tar.bz2"; locale = "sq"; arch = "linux-i686"; sha512 = "1cbaf8c32d1d3205cd85127839eed11b416903960c9e411b9adc71c42ba4add47acddd32a9217bb68f27b90d6765892edf2d356e21235c5bfd5cf69d1ee719f9"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/sq/firefox-47.0.1.tar.bz2"; locale = "sq"; arch = "linux-x86_64"; sha512 = "16d93961a53ecc3e1ae3480be9e34f2a22dec2bdab55dbd35d1ea79ecf2ee48f195380bd52efc7d39529601610793b75daadeeb54dd76c9a3702c786af25acdd"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/sr/firefox-47.0.1.tar.bz2"; locale = "sr"; arch = "linux-i686"; sha512 = "0b2c5234f1787cd972fad398dc270766fbc3015dc1bba29755e5316f207af9f5787d4aa41e96cffd2c9d31c57a5d1896e63fcd04e6235a4a6798469e738fa10d"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/sr/firefox-47.0.1.tar.bz2"; locale = "sr"; arch = "linux-x86_64"; sha512 = "e7c7e7ff7fd81ca86f45997faed7244e4d807c3e5ad7ed66d6feb38c3e9173eaf136bd34af690ce28534f0c531c7f1d11595ec6502dfa42778cc19dee4334c49"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/sv-SE/firefox-47.0.1.tar.bz2"; locale = "sv-SE"; arch = "linux-i686"; sha512 = "dffb94b0ddb4b9d2effba3894b408c9f191f2079dc4b47e214347a235c9bf1adf77e520465691d14a274c3f3344c7f8b7d41965051d506728347e0af1117ad27"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/sv-SE/firefox-47.0.1.tar.bz2"; locale = "sv-SE"; arch = "linux-x86_64"; sha512 = "b601906d28f071c6beb3dbd6b37fa68f50809c9c47c9db69d631127ccc7b784e7d3b278aea6de060b34d83b6c78137da32b77f8e17ed199c3213b89dd9391264"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/ta/firefox-47.0.1.tar.bz2"; locale = "ta"; arch = "linux-i686"; sha512 = "1a496470ef8e0899bfce66b41490f54d4d32776eaf60aca8725c4732512f1d3befb2e1fc3b942ebea95fe2359509c43d41649e5f90498264b8e02a3352244260"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/ta/firefox-47.0.1.tar.bz2"; locale = "ta"; arch = "linux-x86_64"; sha512 = "00e6dbc43ad3c77693903fe534722094826637698df691b266eb801b27cd5e63502c21ca3e34ff939a7645a1f75d36fce6154626019eb96bc73cc39ab845c952"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/te/firefox-47.0.1.tar.bz2"; locale = "te"; arch = "linux-i686"; sha512 = "70ed539571cadf241f819b68ff24829db32f56287aadab31656fdf66c0ed94ccc6cc11b6cef6e2e963203cda47af2c6032db6e5689c37aaaf495b1e4fa970207"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/te/firefox-47.0.1.tar.bz2"; locale = "te"; arch = "linux-x86_64"; sha512 = "d491acd4635ab9b22f76531740c7ee7a85832678aef9ed646e75f56755c02538440adeea71e9ca5a7a5e11f3f2f6941c3c4c1e47380547179f63baaf6c20ad07"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/th/firefox-47.0.1.tar.bz2"; locale = "th"; arch = "linux-i686"; sha512 = "0414f74c6266fc204f2741b6860f7919c957364bd56ccc2cec5ef4b9c4be812c554ab584e6ce53387e6b7a18ad02991a44d9507a16da59a4aabfd44e7fb5b754"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/th/firefox-47.0.1.tar.bz2"; locale = "th"; arch = "linux-x86_64"; sha512 = "2952cceaecdd4013882150e8158607639e4ab2cffdef563d4fd1a015c41f1eff6c5ac22c0b9301a05ab6f9fef9659d54916275d5a50d97ad43bf69f10da7b3c8"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/tr/firefox-47.0.1.tar.bz2"; locale = "tr"; arch = "linux-i686"; sha512 = "c5c6273bae2b9a46108a433af3a85b5cbbba4cd3154ee124ccc49f46c4a76264836a76d1b2da4b1064e9a913cc9fe461911c53e44f40343c5f780be04da932e5"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/tr/firefox-47.0.1.tar.bz2"; locale = "tr"; arch = "linux-x86_64"; sha512 = "f0b5bef1ea4b948d699a79d902055d5b31afbe5c4f1814d98cadef1ca820ce39212ec009f68d875860a48942e9d797bda88eec4f6ed591dd8b3b260e04170974"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/uk/firefox-47.0.1.tar.bz2"; locale = "uk"; arch = "linux-i686"; sha512 = "3a069ba914716ce122c4a89612988708d811b9350d333aab203dde212527c0e0cc86ec4781e6aa23f40b77f2266f76eca366cf355651870f43e180b97aa25c43"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/uk/firefox-47.0.1.tar.bz2"; locale = "uk"; arch = "linux-x86_64"; sha512 = "db7931aa3f1d150e4b5b8c87b9d069df4a515fb2aa5e250b8f8a1bae0d8fd9a210ae949df056c47e3c88e8faf28f2571311ce2d6f179e3365720b42f1335b546"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/uz/firefox-47.0.1.tar.bz2"; locale = "uz"; arch = "linux-i686"; sha512 = "110a82749e187f39d77f63b16ad515218e5512e5974916e4145e625a40d797e23fdbb5d110a23f061448cfc3d3c597858636c9304e941a34c68368f749c3c900"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/uz/firefox-47.0.1.tar.bz2"; locale = "uz"; arch = "linux-x86_64"; sha512 = "1dbf94cef034449e8d1342822384bf1761dc61748e2d876aec1ac628dd161f92b62da832fe397b2fe4f8a1b82f9adf1c3690f26e07ee3e48c6299f95969533cf"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/vi/firefox-47.0.1.tar.bz2"; locale = "vi"; arch = "linux-i686"; sha512 = "af97e1dcfc9bfbdce95a5cd35025b2540ad928d3238863471116e071a51b354b7818577bc3e7427c513e7b335bc1510605ba3ad1a37221389de7c7fedf6e2103"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/vi/firefox-47.0.1.tar.bz2"; locale = "vi"; arch = "linux-x86_64"; sha512 = "cc938935395e66ef721fdbb8c8b781ef648b5419393ed1687a116a4d9ae12dd18f2edbc8287235504aa6782bbd6a41f9f5dd89c9c712ed4980fb9fa44f46ef38"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/xh/firefox-47.0.1.tar.bz2"; locale = "xh"; arch = "linux-i686"; sha512 = "a76dbac054cdb7f5c194766dc54f215de4cb4cca4aacd7c883e0e3632b9dfc18cc25d7a54788e213bc65c894dd26ca9b863199b55b649133f93da9fed9a58fe4"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/xh/firefox-47.0.1.tar.bz2"; locale = "xh"; arch = "linux-x86_64"; sha512 = "cfd8bbb81637c19464ec34788254740e999c13bc8a64b4289b0e1c64f76d711a5a5a8380995271f309444032739066f06334da2f81b6ca2b2be33ff55d3ff402"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/zh-CN/firefox-47.0.1.tar.bz2"; locale = "zh-CN"; arch = "linux-i686"; sha512 = "d11637b0c28aa1c45b315322ff12392e133aebe21f435564da278b9e301f0c8515ccb721df2bd55c175c48c3e24934837abbba4b84c9fa659b7a58db1da68f04"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/zh-CN/firefox-47.0.1.tar.bz2"; locale = "zh-CN"; arch = "linux-x86_64"; sha512 = "27a06d87f23eaeec170d1ea7f3df636198bfd4787001e178948fe9b8a3f1aafff3be59b9d01ed5b5851902b550601f061e923a4cda3a972f0ac68928cab28577"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-i686/zh-TW/firefox-47.0.1.tar.bz2"; locale = "zh-TW"; arch = "linux-i686"; sha512 = "7c6ef5592b273749ccbf7b37c09984b11722beb7f49d4ed25555b84f0521e0dbac5197c7642ac508a21a1a40c5578dcfb49310858819875cc9407c85426d599a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/47.0.1/linux-x86_64/zh-TW/firefox-47.0.1.tar.bz2"; locale = "zh-TW"; arch = "linux-x86_64"; sha512 = "9ccce84a292144f3758190ff2858c077d1e7ec6d49ff5e1efb404b8dfb3bcfebf96eab15d0ec32325e4d96d94f4c6bcc67f4e43dd22af418b822d82a2afaf6f1"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/ach/firefox-48.0.tar.bz2"; locale = "ach"; arch = "linux-i686"; sha512 = "57ecf646fdb81b48be76e79d9ca514d2d1bdf76cc5e577545be6bafce466938e14a508819e69e1a28905a278ccf48c2f958f8e404f312f90e63cbe9317b39314"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/ach/firefox-48.0.tar.bz2"; locale = "ach"; arch = "linux-x86_64"; sha512 = "ebb5273a458eeb62a48575ece8c1c20f760ff0c015073e13d4103d3f2d9db5ffa085df6e59b6a651c39a743852ec0fff4455e9d9cc8c0dcff1554a948726de47"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/af/firefox-48.0.tar.bz2"; locale = "af"; arch = "linux-i686"; sha512 = "efbd8aa1118a76d37e79970928c622f382eacb10441fce578ad0d782e7c900b22c197f1b70057c1142fe7c7eaf4bdffb7af9f9662e9cf7b32123a332278c5be8"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/af/firefox-48.0.tar.bz2"; locale = "af"; arch = "linux-x86_64"; sha512 = "ee623538bf68b42961fa921d03b69181ed901f55fb853bf435afc5de7942ffde3bc4bb70a4baaa613b7d679002be2e11f3405eeabf2a0d8cf9338c4a4354e841"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/an/firefox-48.0.tar.bz2"; locale = "an"; arch = "linux-i686"; sha512 = "73591c7ce176834de04c8d8ed45239502199b3b34b0884dc87a56580e8548de2e0c3b2a9cb7d03c463ee6022bd3c2c8e08cb40697ecbf1368e276658f3fe3d68"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/an/firefox-48.0.tar.bz2"; locale = "an"; arch = "linux-x86_64"; sha512 = "489d88b99ff4adc9edb919f5cefca944577391d19c9b10797d7447db5468a43e143234bdfc884c8d98c4ac715b8c29388aebc9efe3e79ec68694e33ff1f21987"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/ar/firefox-48.0.tar.bz2"; locale = "ar"; arch = "linux-i686"; sha512 = "606bb3823834020e6110ef2cae2732ba8e4b2a3f38450a38ed23355d0f16dba7c98ef29df8b6fb6e76fd12e99b4ee97dc066cf74b3156e99af7c0929d9b2af0f"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/ar/firefox-48.0.tar.bz2"; locale = "ar"; arch = "linux-x86_64"; sha512 = "af7970892dba0afb677c478ee296cd4ddb75064f229d13f74f6102d45ab7af819d911eafc84cd4351e3eb50bc47e69ac7a3c204b7e96cbb946fc13f46fc1a4af"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/as/firefox-48.0.tar.bz2"; locale = "as"; arch = "linux-i686"; sha512 = "cfd631ca2893eee802a9bc82dee3d8d348fe48010080fc82521dc61a6efe1271513f0f1b9a0cf2866050fb1ba3d41ee9a7ad7283b3e669bf8537d8cb38bfbbc2"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/as/firefox-48.0.tar.bz2"; locale = "as"; arch = "linux-x86_64"; sha512 = "ff94b9f687da69ca541f03e720dab47dc805e2ae86ab297615195302cfdef13bff294bd9f0a3bc802cca9f855e83c6f346833847d7dddcd4f1cc19404dabd752"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/ast/firefox-48.0.tar.bz2"; locale = "ast"; arch = "linux-i686"; sha512 = "3ec1c5a9c73cca3d637cd6045a1110c729cd1ee83d5b4e7452ba45cfb0e01cdc1f87bca870ca0af595769607154364bc03bf88ab99067f1c1be82fd8584a439c"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/ast/firefox-48.0.tar.bz2"; locale = "ast"; arch = "linux-x86_64"; sha512 = "84a6961c164cb6279ecfda6bf07f81ee40fe59636bcda0970bb20880d0337447fbc7fe12699627d3544b9f748426c3bf5b9ac2168ad9951c5a04a63a54acfc73"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/az/firefox-48.0.tar.bz2"; locale = "az"; arch = "linux-i686"; sha512 = "95b2228952c52d1daf5d34813fc9ab83261899e8f43208b06146c44cf969167c63f71cb1846386d2d657cfcd283c398ee3363a28e0b8febee1d7704c392b6064"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/az/firefox-48.0.tar.bz2"; locale = "az"; arch = "linux-x86_64"; sha512 = "d87b848645c779a1ce5c989a95dcf9a4ebdf305aaec5cd16ecded438a5f0a0e69ef1d6285a4c9fc9f2c9da0bbb26e2b79c24bd27b1d3a1b3df4ba18e2de4b465"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/be/firefox-48.0.tar.bz2"; locale = "be"; arch = "linux-i686"; sha512 = "9dbf3497d52dd7e4260aee089fa77d888db7f97f6512c53a410a7440683e58759686f543ca5052c8a1fbd6372c924e83800299fa0e9454c74ff4a03cf29e8fca"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/be/firefox-48.0.tar.bz2"; locale = "be"; arch = "linux-x86_64"; sha512 = "a9fdc05f4cc123dfe672cf8b31cd47f2b25f0f1685d09839a0e86709994e31851ad78bae36f6156f273cb8e94c01319be08bfd4e5ee931a88ddbe40b06336b63"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/bg/firefox-48.0.tar.bz2"; locale = "bg"; arch = "linux-i686"; sha512 = "46df725d41d0229af74205e3e0afa16b89841a0161902cbdf69faa065067db387fe6480ca80e10d3f805c98301d576e279b3405313bf10146a78085b2c05dd7c"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/bg/firefox-48.0.tar.bz2"; locale = "bg"; arch = "linux-x86_64"; sha512 = "fbe69e3b48f7c7baba07b23fce7cf266258851427b2bbf8c21b7a870177a499574ae937ce88270abebe3030a289bce236ab1d4f806a223a309e9ced9d5549de8"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/bn-BD/firefox-48.0.tar.bz2"; locale = "bn-BD"; arch = "linux-i686"; sha512 = "c82e3f2192be0e8aca9f0cdd8eb06e7c8b193c151c4ae52a5ffa1908c62382de9938ca97da44d10cdcb8dd98bb17362887811df41496a389c49e20dc42229f96"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/bn-BD/firefox-48.0.tar.bz2"; locale = "bn-BD"; arch = "linux-x86_64"; sha512 = "14dc923c5db1b49a1ca98eda1e45d5978f7a0e034bb26462da25ab7b160303f3f546e4aaeac3b712fa1a7dc8c70433ad09d11ab7493234bf5bd1ef73eede930f"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/bn-IN/firefox-48.0.tar.bz2"; locale = "bn-IN"; arch = "linux-i686"; sha512 = "9e86a9dcbfd1516a134670f17c2734c9624daeb28a0eebb9e81f40f7a1f49ef8d7b9ecbe501beac1e5cd895502cebeae0dde9dfcb91758b5dba5ee42cc061cc4"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/bn-IN/firefox-48.0.tar.bz2"; locale = "bn-IN"; arch = "linux-x86_64"; sha512 = "4cee2c673cd4dc14c33849e93c0bd2aead14c631940aee255fd75391b5588610cdd79c71e85264981d44e06892d1ec99bd484e72e7e56d207db9911cc5f3dcba"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/br/firefox-48.0.tar.bz2"; locale = "br"; arch = "linux-i686"; sha512 = "5f420addb318b9c5fa11ca83f837758b49e2358448347cbfc13b2cf644f4f5bafebadfbebe5522d790d5a03d4c35406bb49268e40d62161288f0592235c0aa6c"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/br/firefox-48.0.tar.bz2"; locale = "br"; arch = "linux-x86_64"; sha512 = "0dc0bec866a3d4471e3b1928a9bb32549bfe09b9c77d28406cc8f8c9e5d6064581c148701e4e650b28e1b95ba6db85c27de7625ddd39caf1b92e2d6d1a357889"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/bs/firefox-48.0.tar.bz2"; locale = "bs"; arch = "linux-i686"; sha512 = "0e2563650a9cf9ed48928e49c2cd9aa9c295106ae5147a2ec87e5fbf28acf303da071e9f586315159db72e93cb7611a3eb8607da1dcda9c2645b9af19faaec31"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/bs/firefox-48.0.tar.bz2"; locale = "bs"; arch = "linux-x86_64"; sha512 = "4324112ba0112db3dddd7cec05ae3965a7b656f7e0e05e28a00b127dc0885814064219c1c2f9bce9dce0a0237a4f0def79d6cdc15a8f46c23efde1c34b89cc91"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/ca/firefox-48.0.tar.bz2"; locale = "ca"; arch = "linux-i686"; sha512 = "3977d2c8b5a05659f5c160e2ea1a25729ce4565821a67d4da9649fd57c1451f1b136a147faaf9987c719518028dc2be14df1edbef083220c9de40a377612f9f8"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/ca/firefox-48.0.tar.bz2"; locale = "ca"; arch = "linux-x86_64"; sha512 = "e9a3ad240e7d6fbcf7b54e350c297b40cb224e75390919c737b2380c5af7ddc93834469ee5dc4c93115fda44ee97b21d01b002f35f69630dc667fba8333620bc"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/cak/firefox-48.0.tar.bz2"; locale = "cak"; arch = "linux-i686"; sha512 = "ab7b9d41f3686ae77c72c332e04775785741a2b81a3a8b8ca2059dae3a27aad26585a59d99e5c99486d75b7c8c5571a5c9524ec142e7f75f29ecc34c824d5d92"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/cak/firefox-48.0.tar.bz2"; locale = "cak"; arch = "linux-x86_64"; sha512 = "be80d95ebfa0d79869257a788aa59cc88849bfe14ccd148bb46caa6db32046a62ffd17d36c6451caa0b4f500153e7f607616f4313fb42c0576e669bacc6b117c"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/cs/firefox-48.0.tar.bz2"; locale = "cs"; arch = "linux-i686"; sha512 = "8c0873fcea5ff7aa6f0a78fb6cbe59f7514ad5b0e64ac0d10f03cf3747ef3b6b1cfce01d12f0e11d5f3ed7a7b248e0dd5250850edd4a3a8c8d5f692b6fdc9d75"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/cs/firefox-48.0.tar.bz2"; locale = "cs"; arch = "linux-x86_64"; sha512 = "fe5d78ce15f041ab006f5d3b445deb26acd2c5e5d079f6789a0e5f56c2d9077b43595f1dddea3b03d4d7a2fc5565b5da4cc8d138b541d88a31475eb5ce219d68"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/cy/firefox-48.0.tar.bz2"; locale = "cy"; arch = "linux-i686"; sha512 = "0c66565a03806c33ecb92c9c7106122283213b5b5cd171b93337a14d446cf0d4d36d298680d286d57c4f09f532f5794a67a426ff7e2d7044c65800d1a6e2ef81"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/cy/firefox-48.0.tar.bz2"; locale = "cy"; arch = "linux-x86_64"; sha512 = "2c52f2e204a86afe6f1016fde6aa13cd6b34fc22f7a1943e81b7e6ec0e2136c51156b57bbf12a1cee95aad66d415356cbbd47c2aa94d944672169526b8f1bd94"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/da/firefox-48.0.tar.bz2"; locale = "da"; arch = "linux-i686"; sha512 = "fc0e9ba7db425e4a209022487f796f646ba82e4ba9e06153f094037ccb4a959b6fe2ceeadee96b906eb0cb8eab72e34b29f6d024cf34d93cf4e54dc16fccef9c"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/da/firefox-48.0.tar.bz2"; locale = "da"; arch = "linux-x86_64"; sha512 = "a6a4c67f9bfe80ff83f99e459c49c58635739da0967f9e8bb1a37568084c4c2f83057e0daa969d6fb844d93994107ea29982f515217a18e79ac8b04c766a0fd0"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/de/firefox-48.0.tar.bz2"; locale = "de"; arch = "linux-i686"; sha512 = "40f912539b1bbaf1291270b109d455de1f080a68490950fc9acfb675179d37e75d3cd09cc25ed01bd9f0d970b6d988caaf7d3510a00bbe696139e68dda1aea25"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/de/firefox-48.0.tar.bz2"; locale = "de"; arch = "linux-x86_64"; sha512 = "b41cbe809060c2fbaf19688f450532ef71f8d7d995e382aedeaf394b00742d8256aca9560f069f60efe7dfb24d05f884fd7160e3cfa9a15437124b8c4de38786"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/dsb/firefox-48.0.tar.bz2"; locale = "dsb"; arch = "linux-i686"; sha512 = "cbbfedfe185cced2644ed6aa34ae754f7c79a18fae8e6b2846d7a1a9b3b141f95def6d7b9c2b2c8b58c0b1e777d36291164866dbf43e93e3ffc8c1e319aa3ca6"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/dsb/firefox-48.0.tar.bz2"; locale = "dsb"; arch = "linux-x86_64"; sha512 = "dbef6f6acd1e5cff574e9f456fe0d7ab3c2982d90c15ffcc1195e693357849ffe01091b2be997203d56a580774bba71334635c1f5a0aed57ebb7f7ca6c95b879"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/el/firefox-48.0.tar.bz2"; locale = "el"; arch = "linux-i686"; sha512 = "7cd345924f3113d22c338d1bde94c9ec3157531c38aebee0048e81258fe60e600b11449e1db78fca15073636c2fdd120e90f12c3eee461a43718c8de0e89e646"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/el/firefox-48.0.tar.bz2"; locale = "el"; arch = "linux-x86_64"; sha512 = "47a500294df276b752d6728b47dff65aa34cfd87ec861d55357ddcf2386e53c646c24ab7e29f70e547986ac6311b2961bcd245a51333c5c4d46912d0bf84547c"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/en-GB/firefox-48.0.tar.bz2"; locale = "en-GB"; arch = "linux-i686"; sha512 = "2ee0c7b3653c18a4c26cb78e6b579e0f22cba9dd0a6d54dc0028df6635a9ac912eb8c8958af5ffb4e572ae45b54891a19efd7f6efb407027130a3e444e435968"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/en-GB/firefox-48.0.tar.bz2"; locale = "en-GB"; arch = "linux-x86_64"; sha512 = "8ea361476983e9677ad6d9b5c833f114566c528b72158d18664ee66dfe5c00bbcec1ab8c5b1293755348282b4e86ba3f033a86aad3ce943a695ace06a43bd252"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/en-US/firefox-48.0.tar.bz2"; locale = "en-US"; arch = "linux-i686"; sha512 = "b7d35e0664012ed45e8256bde69ce6c64a984160185082e3caea8762bf81adde8eb9caa9b4b83ba79083217fb202642face8c660623a87002bd61bbf9092ff7a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/en-US/firefox-48.0.tar.bz2"; locale = "en-US"; arch = "linux-x86_64"; sha512 = "1c66c802af9ca1a665074ebbde5ee349b14cbe5a7e911f42c71334ebd15fadfacd33759b8bac92f56b117a66661c7602aa7c5bcd21e1e186f6d669d5d7957bc8"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/en-ZA/firefox-48.0.tar.bz2"; locale = "en-ZA"; arch = "linux-i686"; sha512 = "2db66b79129bff445e9a5fb6ae982453b5fc2b18f3c9b017afb739ec774465f098e11ef02b8d00049a5ca3289acd117bc076d578934a215626f246efdf41c6d3"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/en-ZA/firefox-48.0.tar.bz2"; locale = "en-ZA"; arch = "linux-x86_64"; sha512 = "1473001924b17825893f0e0d9a65bff0be03369e6b07e9ad51a2d0c6afb4c4faeece06aadd53ffaa941de364c54708c483a21088a4c6afaffa24291ac97c679c"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/eo/firefox-48.0.tar.bz2"; locale = "eo"; arch = "linux-i686"; sha512 = "64b8b4e1bd0afcde46fc431ebc7579813b16554ac5a55b06835eb58b317b93590d34a3925195d4cd93aee04c3c86c99242a9a4454572141100c4873f1ee9d2a7"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/eo/firefox-48.0.tar.bz2"; locale = "eo"; arch = "linux-x86_64"; sha512 = "414f7411db27fe462d030e937d0549a35f735747b736b713192887947f0492734ff2bdd1654706e9eda15410b2b240f3d747f3c8905a31ad5c72a73b621ef0c2"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/es-AR/firefox-48.0.tar.bz2"; locale = "es-AR"; arch = "linux-i686"; sha512 = "f25942436f05c0a1029a5f9921e9cc7a0d0a40c57a0742207c336e73ca382b881319c67961b240924266650731b806c7f07ff67937d503d8e94e43f2387cf7da"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/es-AR/firefox-48.0.tar.bz2"; locale = "es-AR"; arch = "linux-x86_64"; sha512 = "c4ccbaf8741e339bdf0faba2a95d6e481bc10408064248a2b27e447637d53e3f866ee671d61d8d0663b6dab48553b3ab1b0680fa37dfe13ffcb5119fd3996b72"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/es-CL/firefox-48.0.tar.bz2"; locale = "es-CL"; arch = "linux-i686"; sha512 = "b77df1944974a2bde0482c0fb2d36f9e3d38d09b5182faf6c008174525fa598f52910547fb1ea7e692968407279dfef9a576e1748e0d6de7382937e4258b7d41"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/es-CL/firefox-48.0.tar.bz2"; locale = "es-CL"; arch = "linux-x86_64"; sha512 = "6d62e95696d8ab3a227fd176dfc4555aa37482585d3f575cf6cc62e2573bf0085c2ba3ca64dd597e68ffb0abca9cb8e11bbd6040a7e5df2e2371328a029e298e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/es-ES/firefox-48.0.tar.bz2"; locale = "es-ES"; arch = "linux-i686"; sha512 = "7064370188a13d7918925ca727af1291d009651dd562af17e461cccc59f5f62df6a29f3919be847f968004421ebcdbc0ab67b32d994079b55528894733e1079b"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/es-ES/firefox-48.0.tar.bz2"; locale = "es-ES"; arch = "linux-x86_64"; sha512 = "7562fc8cf2e8a80c59ce3893b01fe56b62ed81ccc04703a6e1d8da372e15198626a16378697e71079ecb129bef9ea70eebcfca1da8a8b4567ee96e9fdc8ac83a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/es-MX/firefox-48.0.tar.bz2"; locale = "es-MX"; arch = "linux-i686"; sha512 = "cdc43dae9bb8cb5e7e5816fde84ec6a4ca072bf3e594dc3cc0f77bc4fd2cb3a28bd5950dbfe2d1864ffd313f304beb5c1173f53e560fd4ededdc249e276f0dd1"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/es-MX/firefox-48.0.tar.bz2"; locale = "es-MX"; arch = "linux-x86_64"; sha512 = "d0a118ea015d709191ac654a22806186a3e62ee540c6efceb6a05d9cfa8fee9a611d2f3f19430988ade7a77ea02fe62383574d41b18c4a8d2925a5c09b65a1c4"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/et/firefox-48.0.tar.bz2"; locale = "et"; arch = "linux-i686"; sha512 = "3218dc25082bb1e6047445542e902934346c104843ef10efaed5c283372734662737829a3edc7ba7025558566b7b0e4485f02ecd24802c781bb8037f92478deb"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/et/firefox-48.0.tar.bz2"; locale = "et"; arch = "linux-x86_64"; sha512 = "81c14a517b59dcba904950559ba6388c75fc39bc498dae4106dee555a3f1d737f9a258327f3130c85dc6c6b52e17b741056b4095dae7cc8cf8dd612965ad7f99"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/eu/firefox-48.0.tar.bz2"; locale = "eu"; arch = "linux-i686"; sha512 = "31c0c182f84468aa15b03410b1cdfbba35b7e74474d506e9bc32168941e210e93fe441de9df77e48fe9996c77d45255a513e6acfb733e179fbbda0a75318b7a7"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/eu/firefox-48.0.tar.bz2"; locale = "eu"; arch = "linux-x86_64"; sha512 = "5bf898af06d2b9fd6be194adf4453f8c271cd2c2d3b166e788427d4edc45f814787265956120619a5347df7c2fb5a7002954eb70d9745143e540055a7105a05e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/fa/firefox-48.0.tar.bz2"; locale = "fa"; arch = "linux-i686"; sha512 = "53a86ce6b5a0312b1380fc17bf7eaa879f266307934bfc46cfa18bd385021f875fa306836a796ed2777271758f2a0201b385ba8aaef076e6a54c94cf24fe03bf"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/fa/firefox-48.0.tar.bz2"; locale = "fa"; arch = "linux-x86_64"; sha512 = "a5a961f0a93be6fcbdd7fcfdf356b937b946974a96876ac9cc1e9ff60f54a4f61634d4c4b9cce5b979d4fa1b6084f4f68b2265f503c70fa1b3a5f4392ee0e3d5"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/ff/firefox-48.0.tar.bz2"; locale = "ff"; arch = "linux-i686"; sha512 = "4b2dd232f326efd720fce08a91222476cf10f33b90ecc9b43cba715ede44b3d00dbf05cb54616db4a32bcfa8c5b593e2981a69454a015e8e9baad927ad5162d9"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/ff/firefox-48.0.tar.bz2"; locale = "ff"; arch = "linux-x86_64"; sha512 = "23d4b17bddfb62f947a4b07eed55dfbe13232f98d0197e5ce06bd6e53758f3af172e878f47031a1b0a551b68bbc0cb684e614f8b217523a1b7d7485da8df4a57"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/fi/firefox-48.0.tar.bz2"; locale = "fi"; arch = "linux-i686"; sha512 = "d68b48a97fbc3bfa00cca45ec48bc08f0c736c1d4ca04cddb9519d5fbeeadf88da1602750e4d58c46e258eeb83e32e740f539f556776ab05f01f6ddd2fb2630d"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/fi/firefox-48.0.tar.bz2"; locale = "fi"; arch = "linux-x86_64"; sha512 = "1ad0df0c9f4c3c6e179c5df2fc982fdb8878038fe85f622042613f80a4556d8791d82569ed8ee03237936564987b3a21e2f8e9d2dc40c676ffbae2aecb93f032"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/fr/firefox-48.0.tar.bz2"; locale = "fr"; arch = "linux-i686"; sha512 = "725abc4ab51cdf3be84958de058350341a8d27a484ff3d2a021dfee018b1419f560c8920f18b6d6d592bac82b89556a662d244e492634248c970a3630e4fea8b"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/fr/firefox-48.0.tar.bz2"; locale = "fr"; arch = "linux-x86_64"; sha512 = "076a780821a4de51d38a51254c5f53c91545f48b72ab8b869500cd1afae7d113329889c75766de3061cd423f28917c3125991a36bf97c515b1bc473aa89dc7f2"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/fy-NL/firefox-48.0.tar.bz2"; locale = "fy-NL"; arch = "linux-i686"; sha512 = "bae1c596a488af768865942129e906adec9fab6c79be6f9b09a21a8dc5db7d36f38299fb19126b03d9158618d9cff62fa2143fe524aa068ca58f51af223a7104"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/fy-NL/firefox-48.0.tar.bz2"; locale = "fy-NL"; arch = "linux-x86_64"; sha512 = "077be175984e50d5ba64b62576c9632a6c9924af99e330eb029ad8a6bc9d2c54f5d505771b0d8fcd1aeccea35624b50318eaf921b34b8e86cde592ab3bc4a449"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/ga-IE/firefox-48.0.tar.bz2"; locale = "ga-IE"; arch = "linux-i686"; sha512 = "861f9e61f9c355628fd923d1167e4db71697526ea87c5280cc976056e27505401b407e3348294177cd77204fdd43ee6497c8fcf89ec7e9215a09acaeb3d6d328"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/ga-IE/firefox-48.0.tar.bz2"; locale = "ga-IE"; arch = "linux-x86_64"; sha512 = "2d945375532a35b53f8416129010d6cd7d2c3bbba0fd44dd647a61ada38637b044daaf51189de4c7e04c440254c4fba88aba97fb20d2ee4ad5bc55e1ce61da6d"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/gd/firefox-48.0.tar.bz2"; locale = "gd"; arch = "linux-i686"; sha512 = "5a08ccb0b2c3fb9886cac45e69c7641053ef18d652fdd4528f5ef06b9c51e412fae4e6301c078df314de8dccc4ffd87907571906f4df9c382492ef1d94c6d6ef"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/gd/firefox-48.0.tar.bz2"; locale = "gd"; arch = "linux-x86_64"; sha512 = "66e643754812be465d3884758d1e2db405486633e08aff79ef7dc142e70183eab1ba357794ffd3920392e0e80c3b9729590e8c4e803c5c030e0aee8a758eac84"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/gl/firefox-48.0.tar.bz2"; locale = "gl"; arch = "linux-i686"; sha512 = "3cceaab829a2f80d0b329a4a035b34fe67653ea6637272f2ffc2235d4bcc491096846e927773ec7a9bbd53f987b3c1cee982c7e8c9cf900883e8b15393b36023"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/gl/firefox-48.0.tar.bz2"; locale = "gl"; arch = "linux-x86_64"; sha512 = "65a35cf89bdc168cfe1e3f14c1aa799ee0a728c9d4b34e7f6a99bb20a88da872de3df3df6b77094035c6baa4487a3a1583591d60741f125cf14d85ea20b55545"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/gn/firefox-48.0.tar.bz2"; locale = "gn"; arch = "linux-i686"; sha512 = "b7164178349bdccbccad6e32fcac29f5c3acb512f3e8e1db57f7c7cbb8e6950ec5e8985779116eafe6b237d39d8ba36b3adeaa70813ff3a3a978618808765740"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/gn/firefox-48.0.tar.bz2"; locale = "gn"; arch = "linux-x86_64"; sha512 = "c0526f1aca929a77beec1b54393751d3b985753843239892818da4727e3ccf0d3a94e14114e842c7dcb99d2fa7421f3821e3a9f2aa33c6944d62e27963c4154a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/gu-IN/firefox-48.0.tar.bz2"; locale = "gu-IN"; arch = "linux-i686"; sha512 = "ec0675aee25136317c9e9f861947e3fc8fe3bafacda7169590398ed5abe125b0ee7104bfb56988ea7312039418e356a4255e98735167a3bbc4def7b2f326e9ef"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/gu-IN/firefox-48.0.tar.bz2"; locale = "gu-IN"; arch = "linux-x86_64"; sha512 = "4d7b83c829dc8fa4eeac364880b90dae4a9a7d33036c92e72d358b5e235c36ccd6b4cc578f786b6f28ea49b665b0ae611046b5c05ecde8bfa89b0396d43b4791"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/he/firefox-48.0.tar.bz2"; locale = "he"; arch = "linux-i686"; sha512 = "5f2bb563531130410e67735146a62dcdd8646e401ad8fd468b1bea56de36e1e1a248d3580c2408b6f30a3cabe58a69d13525413a2b7cdc926722f2434408797c"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/he/firefox-48.0.tar.bz2"; locale = "he"; arch = "linux-x86_64"; sha512 = "9958faec273e584efbb438791af10971e0e795c33850000f967b060eb73f898ae73a780b2c6707772a233d2f6aff8d664d4ecd327b959210ceefe5efbc4110a2"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/hi-IN/firefox-48.0.tar.bz2"; locale = "hi-IN"; arch = "linux-i686"; sha512 = "48ca543b4d3dec309bd443a9cda5a9f6fffe2d467a665eb08454cee0914387aaff863629cb156ed92d98aa878f804454cf4af6f5bcb04d4d4d1221c4854ec554"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/hi-IN/firefox-48.0.tar.bz2"; locale = "hi-IN"; arch = "linux-x86_64"; sha512 = "672ec5bb5154c1edddbf6f0586065482bd8a54c5b8b8bb9678eec1825fa10f5ab9142437b96beef0b865740d6426ae4da9122549df1e242cdfdb2a86abbe9d3e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/hr/firefox-48.0.tar.bz2"; locale = "hr"; arch = "linux-i686"; sha512 = "68dd6692de0d72c41dd058a505c508cf365ec688850be7e87aea7b99164e8e5eb3eea547fa54753c76ff6b8fbede44c73f047cac3f4cee700617da55329a5e84"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/hr/firefox-48.0.tar.bz2"; locale = "hr"; arch = "linux-x86_64"; sha512 = "146dd255b89fcb616032d04dbe0d4a4e8b3098cb79758b4adebd45ec83c153832fc332486b3cd11e771284d14e2c0eabd407373abc5466d7ae7a081368ce868d"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/hsb/firefox-48.0.tar.bz2"; locale = "hsb"; arch = "linux-i686"; sha512 = "768ea8eb848e26664af47c3b93e6906d2f81a1890b43801f4e00a90be321b9ab66827a082c2f42182532722c913149bb4d1d40af3c9fe0d2ba691447f41552b8"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/hsb/firefox-48.0.tar.bz2"; locale = "hsb"; arch = "linux-x86_64"; sha512 = "869997277e071e3eb654479c497792640d836cb96a20c9a1974f9915b616d5bcac8dd635c3a9509b365c62719941b7751a5d87e3874ca095926b7c80596c7cec"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/hu/firefox-48.0.tar.bz2"; locale = "hu"; arch = "linux-i686"; sha512 = "9cfe20df539646f445d9edc0bf30b00cff660875bfb334abb6a05658dd420869ca34114d5c5c16c183afdc58dda5075b08a4e93d789c3e3c0d661c4c5a3a58b8"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/hu/firefox-48.0.tar.bz2"; locale = "hu"; arch = "linux-x86_64"; sha512 = "f7d5e6802f2389aa62b4448e50468e2fd6eb24cc4044b91f33fe47d83eda14f6b27a2024c7d77be7282d568b177ecb3a563b4123ab9cab6ab6aa275ddab2567b"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/hy-AM/firefox-48.0.tar.bz2"; locale = "hy-AM"; arch = "linux-i686"; sha512 = "d449ffe339181ed8fbeeb91074d5a04ef4b81ad92b2203d48c6d7f3a7eda22922f0a946310b1e810b384b4c05fb434fd2067537d9d46561490905468e9fc327f"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/hy-AM/firefox-48.0.tar.bz2"; locale = "hy-AM"; arch = "linux-x86_64"; sha512 = "2ea54b459c15782a61fd1b56d66278d2ee76a91bfbaf5fede2ef6adb81255bab7401f587ed33b827d4a04272bbbd222f942e6bb34d8463940cb580ad34c08d10"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/id/firefox-48.0.tar.bz2"; locale = "id"; arch = "linux-i686"; sha512 = "5c9f65c9cee48477f778891abd6a943ead2f08e0f66e9270e73e74cb5f2a281b2a061e06c0eba3d134b868d7747d50a0d5a6cd4b4f3cc7690776405f1204140d"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/id/firefox-48.0.tar.bz2"; locale = "id"; arch = "linux-x86_64"; sha512 = "67824631456a2f92c073e7a11b4e6bdbd802611a8dec857db264ea85aac63e84d5e34e44a4470796fd7b02afc62912b1d8deac3cf28dad7e11ca5db2c98d7668"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/is/firefox-48.0.tar.bz2"; locale = "is"; arch = "linux-i686"; sha512 = "f49a88c16729605553806839645bd85a8ffb82b903fc2a64928319c849ab57edc300ade3d2831ae30a258e601f34b9cd356ccf8886d0ca5444781b9cfd6dbd83"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/is/firefox-48.0.tar.bz2"; locale = "is"; arch = "linux-x86_64"; sha512 = "69422bbce98fd6974d3ba6f3f1e88d552381cbe346ce726ab31891f612999bed2a4fa20723bf858736708410e43e4c68962fbaa17f675076cf2720135ddeaebd"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/it/firefox-48.0.tar.bz2"; locale = "it"; arch = "linux-i686"; sha512 = "6a421e08e72d29223a8440ebbe6965866a6bfb3b982ebf2012a314b8132bd21823a00e65e974f057df390b874d90a6f6428d01d00fe594c33b57e533b2db2bc5"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/it/firefox-48.0.tar.bz2"; locale = "it"; arch = "linux-x86_64"; sha512 = "f321b707772adcb15cadf4c13126cd3e5db40124acb012d2188a0e07ab5b184a9a2b43ee2474146c0d48415f3c160d69a3e82fe19688eb71b225ea70c5531f09"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/ja/firefox-48.0.tar.bz2"; locale = "ja"; arch = "linux-i686"; sha512 = "73a8bd6e32c728246ef8f14a916f7012f2b758ef5d154a898fa0975a723e767ea10d5ca0dc2deacb73741ac48ea3b6007bf7e0b5872143162ad46d452dc689fc"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/ja/firefox-48.0.tar.bz2"; locale = "ja"; arch = "linux-x86_64"; sha512 = "d61fd9a87e158f27aa82f659d84292a3aefe8df57938b677be94258505259a110d8e3dc051012031f91adb41f34764b759306e362fc1d6be0181588c2301cde6"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/kk/firefox-48.0.tar.bz2"; locale = "kk"; arch = "linux-i686"; sha512 = "51ac197ee684f770970a5973289255ef62ebcdbe59ba2197135e326fc0885b5891b7616b3755a6812bee4c23b1e2fbf31f336113cb3da9b6d1bf12bcbee7b2a0"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/kk/firefox-48.0.tar.bz2"; locale = "kk"; arch = "linux-x86_64"; sha512 = "e437542b5f4922c35fd0a3c3d8b0199115d12b1cac4db07da46d0e6de7106d6222cfec0d73af481ee7e754486af3a795174a28d8c545360a7602a2b9d2123bbe"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/km/firefox-48.0.tar.bz2"; locale = "km"; arch = "linux-i686"; sha512 = "d7dae5e1ca04aebe076c291ce54d7b626109f3e27e1018576cdf09607968b5e6ef4f05c32ea004a5b3cf5f0c297a436f4091ca88a1f7c0891f3da7d2e60d4aaf"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/km/firefox-48.0.tar.bz2"; locale = "km"; arch = "linux-x86_64"; sha512 = "49fb1bcf8e56692227afbfab13d7edd31ee5aaaad60f4400ac54d66d4be5acca5b77ab4e18f9476c87086f482c586f607671b065be0196da786e9fa0e4a6b5f2"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/kn/firefox-48.0.tar.bz2"; locale = "kn"; arch = "linux-i686"; sha512 = "724ffda3f3b69c6539f07ad55763fc34f61b3fa45b2b141c7d7d7ae1ac421ee8f27226f6d9cbab7bc36a1c2ae246020f9ee8ea894e9262d019cbf8a1c3a391b9"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/kn/firefox-48.0.tar.bz2"; locale = "kn"; arch = "linux-x86_64"; sha512 = "ab757a4a3d2c916ea588b6701cce2fc63e44d926138ce6c95dc4138169a0db49205d243361bca045ef01632e6989743330b351e8448b2e2b60d99a308598b0d8"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/ko/firefox-48.0.tar.bz2"; locale = "ko"; arch = "linux-i686"; sha512 = "9bcbf38241a52bbf374c0f8c78acfdff5ca2ae773234ae9b5d4e5019f9d499310e329e87c8d8430712f74256fc9f68a3687af4d148fb5998ca61c0b4772e8f8e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/ko/firefox-48.0.tar.bz2"; locale = "ko"; arch = "linux-x86_64"; sha512 = "01f32d8f63a40d3d57b298219d889746fb340f631d62ce14a6d85632c7e9c4c3a2da4c0cc1fb738289040addf2e0d2d2e823581d67928b3c4f82ed9b05aa95fa"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/lij/firefox-48.0.tar.bz2"; locale = "lij"; arch = "linux-i686"; sha512 = "3e168e0ed92f982f9215317a7fa8d088abefa5a3820cb7e61f16099f5111b654d199960f2dc23f59816d6b6992703aaa36bfc61316e82ba07b6fec5b6abd77f6"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/lij/firefox-48.0.tar.bz2"; locale = "lij"; arch = "linux-x86_64"; sha512 = "a79e2a75c7e94bddb9d44708f68f0462bd9a7d2926c2e9334d6e3d879f083dcc5faf716ac3b0f1acf522f29dc20e44ac28a3c6f7667f7a8402c215fb5da00f1f"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/lt/firefox-48.0.tar.bz2"; locale = "lt"; arch = "linux-i686"; sha512 = "22e060b0fdddfafde0ade9d985af9a2fc5097b226104bdd30c8d0c06da7c44a663384893eea67c95363124c91d5e2ff395162d0a504d54ed3ef36656e0de17fc"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/lt/firefox-48.0.tar.bz2"; locale = "lt"; arch = "linux-x86_64"; sha512 = "e8648f3e0b4b3b93b936f5b5343ab2fb397cce8f9829108011de0b7332246dcdb904374530a20d40a78e5d1ed264bba7809b79afeb9d71f61a17e963d5b4e03d"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/lv/firefox-48.0.tar.bz2"; locale = "lv"; arch = "linux-i686"; sha512 = "133f9da47452b1f444674d02300a20295c67d35d44f722d082c087d78cc2d91bfab1efeb2a9a30e2566b182dcbe64edcfe899aa6bb86d40f4be18ff27e5649d2"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/lv/firefox-48.0.tar.bz2"; locale = "lv"; arch = "linux-x86_64"; sha512 = "2a1ba8da43090bbd17eee75d3b08910e5a416c044ddecbe831fd63d8e9fc7a6393ce944ef4e698c008025ce4e489e90c7a26fc90f823d06b59c48a06ac5e9712"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/mai/firefox-48.0.tar.bz2"; locale = "mai"; arch = "linux-i686"; sha512 = "66d7f8da81ed7e430633727904b69ef2e9cda8efc51e1335a49c6ca633d16e2f8412ca5eb2c7b4e1c52006c0c2687ab9ff7e6b822ebc5da49db3288419d0804d"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/mai/firefox-48.0.tar.bz2"; locale = "mai"; arch = "linux-x86_64"; sha512 = "5f5109907b04a4e1ca195cce93dc1350d2a62a6308ab1f1dbc3c5427765376af02147ec08478af21fae9ee925900d820015727f47eb2654fc54b17ff4eada2a4"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/mk/firefox-48.0.tar.bz2"; locale = "mk"; arch = "linux-i686"; sha512 = "50989bd953deddd04da3da12b42c869db68785decc4336ac4f5ed889524ed5630f28b71cef8198e2c5a5194f8bbde825996bcbe636c03609ed835a9a2e21109a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/mk/firefox-48.0.tar.bz2"; locale = "mk"; arch = "linux-x86_64"; sha512 = "8d94075342c67c02974d101d7537b07237662590df31feebdd81b672f09593fcf5b4f306bb5eb083943866872a78a1d02f7669844a0b2746fa9d04487d8e09e9"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/ml/firefox-48.0.tar.bz2"; locale = "ml"; arch = "linux-i686"; sha512 = "7176048a887e7847487e82fe3c38d585d05b415be60b7f4ad102e97f6294034da57d4d6094d7c9f0f5edc977133055e2e02819d7ea2b56e80d5c85e8c5f7ac9a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/ml/firefox-48.0.tar.bz2"; locale = "ml"; arch = "linux-x86_64"; sha512 = "ef2db6b3e924fee6210ea1b52fbfdf9087d32a56c7238297f38e1e5ef9e6f6a0b5cb27a741224f8f07540e6c469d231b11c366c10c70d8e9aef9695ca5d50dd3"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/mr/firefox-48.0.tar.bz2"; locale = "mr"; arch = "linux-i686"; sha512 = "0500bcf8b6b2ab8abacc73eea7f1c268b4e65f7fc6b86c92eda6a941051c84d1fda4060590e3c8dd6e0e176670cad098efe07389ad42151e3901b121dfb460f5"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/mr/firefox-48.0.tar.bz2"; locale = "mr"; arch = "linux-x86_64"; sha512 = "4518cba5968661dffd5bf7b6d0084cf6eee3e4b654ab63af928a6c29ad8a7cf077328f3e52c2331e965939571fa0a8ddbd538c4aedd8edd4f0c213e1104fefa4"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/ms/firefox-48.0.tar.bz2"; locale = "ms"; arch = "linux-i686"; sha512 = "8fab40915ddde779e1c3589335c32f3d0054b73052a6659cfd45a733f0a05f05f3ab5d776588514e648848ab75f8d36ee911296b5ea701e8cda40e10a214f0c2"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/ms/firefox-48.0.tar.bz2"; locale = "ms"; arch = "linux-x86_64"; sha512 = "94b3fffb74c8113caf423a77ef9f24a93513e08c90e242acd581d4b4fa2e23a4acb1295e1abf67dcf70ae034455c32e19b0e4ddc3f32547eca736fcdace01170"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/nb-NO/firefox-48.0.tar.bz2"; locale = "nb-NO"; arch = "linux-i686"; sha512 = "c5d2cdfab387e5f3380be0132ea52768e4d08a5da6f1c8b101920817166d1cdb077a1138e1ea5c2e938975fc2c745e8b0707221cf9cf8c942f45a07d5496674e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/nb-NO/firefox-48.0.tar.bz2"; locale = "nb-NO"; arch = "linux-x86_64"; sha512 = "4ecc38821e83b8170a410dc994738806027806fdf69298b51c0387b234e58ddf74801014da50cf3f7531b793968512ed4d2bc659044b82b65574cef154f99dfe"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/nl/firefox-48.0.tar.bz2"; locale = "nl"; arch = "linux-i686"; sha512 = "e5baa58c1f0e92635220f9b07d1bc10b3439461fefe33a03fc85e3535e64ef20c06e2aa2ac7bb3cddcd15ff9c9aa40dec7ac9ee4e7cc11069503287210e745aa"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/nl/firefox-48.0.tar.bz2"; locale = "nl"; arch = "linux-x86_64"; sha512 = "ceae5e1b50de221e858d89053f38c5bbc8eac1875136401b0c5188017d3fa35ad73faf2c1f45b6175a30ab0a9b47ed8f3c19f21a3abe1a07e1e6f2a88160cd61"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/nn-NO/firefox-48.0.tar.bz2"; locale = "nn-NO"; arch = "linux-i686"; sha512 = "89bcd86969fe09cd86a2694a4d93abaa32a1b4fe0f74e6d3d1ef66346af86ab77b85fd9c94196835220c2caa1af4bd52d11a9f2394a1c9347d6ddd72d93f43a7"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/nn-NO/firefox-48.0.tar.bz2"; locale = "nn-NO"; arch = "linux-x86_64"; sha512 = "0e9d74c2c4d05740c19dbfe660c9bf116a3f328c5e35b85dcf317f1a77b52d224bfd84e4a82718bbf44323dfdad4ed6955c7b18f2b6000cd6af47abeb4b93cb2"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/or/firefox-48.0.tar.bz2"; locale = "or"; arch = "linux-i686"; sha512 = "3e797ba54bdb312d468dbc528eb23bc8b40489b061d8597262fd5a8b4689ee814ece54373dc823e378d73abc1caae9af2c8adc0a7d3df8673e486fd5f31084d9"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/or/firefox-48.0.tar.bz2"; locale = "or"; arch = "linux-x86_64"; sha512 = "c7abba3faefca9ea4ec6241444894d935611b5b855be58f52671e7ffecff1c29fb59854a89e546921ed70d3cb6d3f42808d8dbebf8c0555daad6325131de128e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/pa-IN/firefox-48.0.tar.bz2"; locale = "pa-IN"; arch = "linux-i686"; sha512 = "d8714bd35288aa565afcd493a21c76d1c8485a289008f28ecc7fc5c077f9b779c485648cbb556490db140d5d5791f4041e138b94b5fc9c66980180c9a7e63bc9"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/pa-IN/firefox-48.0.tar.bz2"; locale = "pa-IN"; arch = "linux-x86_64"; sha512 = "052e90ea858141bbdbf808c18b9e5b6bfb0f235daac84828c9cc35130c6d8e7324b44b3db7a982ac148dc5349a972796c3274e39f61a944f1d0f580152cccfa3"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/pl/firefox-48.0.tar.bz2"; locale = "pl"; arch = "linux-i686"; sha512 = "d45227a3936d522fd44c3526a0d78e8572b392630dc71d1c75de2f89af9f60c1a4b6b8096cd5db308f111a88b7d9da649e353a67f592ced07fbe601a8f2267db"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/pl/firefox-48.0.tar.bz2"; locale = "pl"; arch = "linux-x86_64"; sha512 = "90bd5b1fb555942fd5a20e923fb7effcee67e43e413f3581c6cff91e9437fe330bc39eef324a82a68d26fd7d5ffaddd2b7f32e7f8c97784002405c35e0a6a45f"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/pt-BR/firefox-48.0.tar.bz2"; locale = "pt-BR"; arch = "linux-i686"; sha512 = "740a6f543e2e93cc83c1bd5285c00bbc7324d443197c38b069ff912d0e9ed13451b77490fcfa85c4507938f538b3fc50729130754bb13e36806d5d03ad6b83ba"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/pt-BR/firefox-48.0.tar.bz2"; locale = "pt-BR"; arch = "linux-x86_64"; sha512 = "bd8db956583b18a629b39d02dc6f60e31da287e3e834cb7b2ad9c618e8647877e07637afb8993d5605acb746ee948e8fbed7fe5692fc25a1215c98c8e98b3ca0"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/pt-PT/firefox-48.0.tar.bz2"; locale = "pt-PT"; arch = "linux-i686"; sha512 = "452fc407467c3a6a2837543889d0978569e48ef45ab24141450635b5f7b10e7b6b0ceed805783b700a223bfa8f97c9e46cf59236bb89050ce65a33e183b539ac"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/pt-PT/firefox-48.0.tar.bz2"; locale = "pt-PT"; arch = "linux-x86_64"; sha512 = "29610bc8fd02d36c7acb018105290d06d625530d2e9e62e52732c553d26b4b38a22319dc1701416b3c0c533a34902e7237322f34c35beb49a6053eb9d7c40c4a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/rm/firefox-48.0.tar.bz2"; locale = "rm"; arch = "linux-i686"; sha512 = "6f267154c8a612ab6026a5b71a4b906ef6bc773e796dce63f7daeffba4196722218f6b2631180069a8820082e72b97796023bde163ac4b1103887b14c8fec57d"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/rm/firefox-48.0.tar.bz2"; locale = "rm"; arch = "linux-x86_64"; sha512 = "fbcfa337605725848d9786fd43be6ace0b68eb0e2750ec07707abc40ce4813a3fe77860f71eca714bf2dfd933eef735d16b7623f13affa9073c9c6535c9d1759"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/ro/firefox-48.0.tar.bz2"; locale = "ro"; arch = "linux-i686"; sha512 = "e053c7a6e968dd8dabc8e9ca1a92abe1f97ac754c9eb0acf12e80c9f507f63f8b32a322623eac0914d1f640b5ae30abf158f2889e2fc6a2acfc41cd5881b6630"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/ro/firefox-48.0.tar.bz2"; locale = "ro"; arch = "linux-x86_64"; sha512 = "4b75367765b4bb2a89b6b0316a824b58a0440749055e30ccf997d129e251fcfd43b3d5453e792fb34c4e675bd4155b61a6d9bb98b8c5e7a5cd574f22637b3c88"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/ru/firefox-48.0.tar.bz2"; locale = "ru"; arch = "linux-i686"; sha512 = "4d91d076a6d8241b9209cbb8b5d1ea8f0238197e0a7c151efd03849e56b9ffb825844d67e2810247d524a96c9cb8ba360d07d3dfc71cf548a8db3df428505255"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/ru/firefox-48.0.tar.bz2"; locale = "ru"; arch = "linux-x86_64"; sha512 = "dce443a48e515f40862631f5310a56a774c014e21d02ddfda17fb499b7d3bb5260b868e8465d320bc19e8638a79ec63ea9ea70a46bcfb4b08f8fbafb293b614d"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/si/firefox-48.0.tar.bz2"; locale = "si"; arch = "linux-i686"; sha512 = "81f99b788a395676f837b2ba1972d1e6eb05eeb6a0b4a40ebf7e79e9bcb82f9399188252f8782ab84fcc021e9e8ef3f8eb95d333166a4ceb205613f7bd105704"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/si/firefox-48.0.tar.bz2"; locale = "si"; arch = "linux-x86_64"; sha512 = "6abe3abb6771e8bcf1880e777df1f7517b6c784d320e3ca8ae709befe802adca51ddc5996910c6bf7d570e12bc6e3564872001bcb28a1f0143eddd33be3af9c8"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/sk/firefox-48.0.tar.bz2"; locale = "sk"; arch = "linux-i686"; sha512 = "dc6c4bce34a4eae6c9217e116dc558956fd500b3c4ddb8d88a6067c7d6ef746f19901014c1cc3fcb826695519a62aecfa8091eb58f360cfa4c1e65b34df9c2b2"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/sk/firefox-48.0.tar.bz2"; locale = "sk"; arch = "linux-x86_64"; sha512 = "56771e20b4148ef16445ebb8f59b87b00eb7aa1d3174beb77eefdc2868a3468e6cc4e811cafddeca8b7b9e5b88b8c75101cb3a78600c17fe0376580d8cc4ad54"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/sl/firefox-48.0.tar.bz2"; locale = "sl"; arch = "linux-i686"; sha512 = "737a878720bbf0038145aff1a460debb7065b68a07db5d6ff46234fbb39eb06d0a3d5b6b2b188997259e6e8e41af30b401646b2064e55e7b6ee25cf5c63b3a02"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/sl/firefox-48.0.tar.bz2"; locale = "sl"; arch = "linux-x86_64"; sha512 = "a5767047a75bdb5839e9ef55c50adac95c6f6d60bd0e4bbbee531657c4cb37db0e51b82a9db498c3cb151496cb0f2f72126efe45627d0c6c8057a081d2c2be35"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/son/firefox-48.0.tar.bz2"; locale = "son"; arch = "linux-i686"; sha512 = "3f9f457096b086e35757594305c446591f33d414b9a056c4869aea05d841d378abd9c36c4ede67d461afd7ad1433ffbc091da45d49df8c98829e6ba303778791"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/son/firefox-48.0.tar.bz2"; locale = "son"; arch = "linux-x86_64"; sha512 = "702df22f5564d3ae3db222d6ebf0ba96653233c8596a910a7a599f43021dbaaa2f2911a6c3414f78305ab428877d303bb7e8a42336633c359a1f96918b5ef048"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/sq/firefox-48.0.tar.bz2"; locale = "sq"; arch = "linux-i686"; sha512 = "3bfdd90de86a74c5f9dfece1878884ac652a04e3d6bfc9245d40703ff30ca000834cf71333596f5c84e7bbaecd02b0068b4e221aa8515924011afebe82c3018f"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/sq/firefox-48.0.tar.bz2"; locale = "sq"; arch = "linux-x86_64"; sha512 = "d1b26f23a8ce2023f4b191b33871ea03ef361d9defd81c9ede4508ac9f8d2902999258bf2975e0f92120aa9109808f5818ad546d059b052327911b854f5a09cd"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/sr/firefox-48.0.tar.bz2"; locale = "sr"; arch = "linux-i686"; sha512 = "4834ecae89b424d1152650a1a2f3c1f9f900afff09a713fc9158834bc904fd0063742f47cba7afe05c9c32048ae2a9929dad9485717f759946348c081ef09e4a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/sr/firefox-48.0.tar.bz2"; locale = "sr"; arch = "linux-x86_64"; sha512 = "a625bcf7277694a8ec2bea0a561b581b9fa5062d67c6f5a247f8b1cbf29860838a6d24902208cdee3116b6ef2bd97ff094a7088b45b70ad66f9d638febb12e01"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/sv-SE/firefox-48.0.tar.bz2"; locale = "sv-SE"; arch = "linux-i686"; sha512 = "7a4bde2aa79928adc3dcf75f4d1e267e26cae47fa03086aa4586760551b78219a78a22da41144eb402e6efd77830200858d01415d434020da433447119494e68"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/sv-SE/firefox-48.0.tar.bz2"; locale = "sv-SE"; arch = "linux-x86_64"; sha512 = "b2de3cee2384b183cff272b1856f3911655346704d768a874d44ae7a78bf2debe3fd006ee5fbcd1f44f3cc0687fd851832231c5c36c317952d5dd9e06d3a9f66"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/ta/firefox-48.0.tar.bz2"; locale = "ta"; arch = "linux-i686"; sha512 = "0e7483aadeb8a588075c688de52dc7c9278f3f72b003e10115cf5353d0100e63001691f8e09e5155f0f544e847c3965a3e938b2e4b640a4dbdb9eaa837d5fa1e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/ta/firefox-48.0.tar.bz2"; locale = "ta"; arch = "linux-x86_64"; sha512 = "73bdb7c53dcd17a14ffbdfe34d5053b00d8f1f096869be84a5a2dcd64effe14670081da3ff71fdab8cd636b76ab63fa09f4f03d6da8fee61007eaa2395b1eff0"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/te/firefox-48.0.tar.bz2"; locale = "te"; arch = "linux-i686"; sha512 = "35f4e0914262392b491c1379ffc81bc70206965511c54b14fcca3004a67938b0dfcacdb89bf1fb1485e5f43b4bca1b9f0ccb7bc1a7734d55ec9b6e6fea9f7050"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/te/firefox-48.0.tar.bz2"; locale = "te"; arch = "linux-x86_64"; sha512 = "2aa1f92a0d3d60e1e9a38fa08b76d951cbedba208f48298cc41dcb52bb60f904fd34bb124b7ad92da672a921df13abf32cf4defc05aed0a714de7b8503d240d9"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/th/firefox-48.0.tar.bz2"; locale = "th"; arch = "linux-i686"; sha512 = "b70ced17faae84781ab512e2d84d31204dea6fb074072bd60529f52209135a71d4270d4ad7c21173de9e545e65785d066d453fa16ee28ada39708e256451be2f"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/th/firefox-48.0.tar.bz2"; locale = "th"; arch = "linux-x86_64"; sha512 = "91767bda7438695142b9eb16d311ecdc8e884d572775627867a03e85564ca20499f1892cf948dc7daee17fcc39885c811bb37759db406393cbc263dcb8bf95e4"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/tr/firefox-48.0.tar.bz2"; locale = "tr"; arch = "linux-i686"; sha512 = "44ffbf4cf5993243ffe6308ff91aa4025020546cee5d446481ae1b9dade1c4f98a726ec9ebed15ecf63437a0039e42265a4d4444dc3560ea42201832c0db03f1"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/tr/firefox-48.0.tar.bz2"; locale = "tr"; arch = "linux-x86_64"; sha512 = "48869a5d1c60a43c7bdabe9d55060f6211dbd18e8f4e438cc0245c151f37eea748c3c05c9e9811e522df7bff7a6b531ce1bba062738e95244aa2e0e47fbe9ee2"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/uk/firefox-48.0.tar.bz2"; locale = "uk"; arch = "linux-i686"; sha512 = "93a0617b74fd8e19b7289cba78182b56d76e754e55b5e666fe8ad34e7f0b8529d3b5575a1d695f5a8eb19085a2e09d5c223a5663c11e5cb1011700b0ab80ca3e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/uk/firefox-48.0.tar.bz2"; locale = "uk"; arch = "linux-x86_64"; sha512 = "a0cfb64b8ceb111509778c2af0d6846eb2b212db04bef166c74b47c7c85dba51379ad1b4d97f0955c75ef04518742136fc9cf018359465c9faaea082cd379906"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/uz/firefox-48.0.tar.bz2"; locale = "uz"; arch = "linux-i686"; sha512 = "9ff52914522dffde0c4f2767daefc4cf8e3f15075cdee1bd63fb8cbdf052c081ccb82cf22091b066d5a4ad1243c7efdc384b972fcad6985b4c0d47de03ec9131"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/uz/firefox-48.0.tar.bz2"; locale = "uz"; arch = "linux-x86_64"; sha512 = "85f029d028611d25055ec115eef07b1433c61c0d1c8364c8fb8aaa9ad8d89ea8ac477fdae90a79653a45a47a936397c0f4f758aa2a708ce9b12d2872909f1a01"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/vi/firefox-48.0.tar.bz2"; locale = "vi"; arch = "linux-i686"; sha512 = "deb75ecd16deae76ed58caa155234c22e5829c087be9a7a1309a13fab822c524f879aa752b76945a7ff1bb0527006757583180cd7cdcee22dd6430cdf43b3fb5"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/vi/firefox-48.0.tar.bz2"; locale = "vi"; arch = "linux-x86_64"; sha512 = "b36d4a40c11c2cd4e0bc92afd4147c2114554f87d852090f94e13854da2b27ad4a1bfee349d8a92993fa40783adbd4203d2e13767734176b47548ea81c365619"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/xh/firefox-48.0.tar.bz2"; locale = "xh"; arch = "linux-i686"; sha512 = "8efda5736eaff631c1d8a752fcc58a57c6bb3b9ad10cd2f1803e31c25ccfeaac53b5118ceaac994131b40aefa2822bbffc584f54a9f46bcb31a87d76c9eb7024"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/xh/firefox-48.0.tar.bz2"; locale = "xh"; arch = "linux-x86_64"; sha512 = "108ddf05b9552eb25165e093fed70f99fb91f14ba7db17a32c55715da22da702c3cc0d52e1c54ec48b8111e570dff00c88efc2be665ab39f804f733f2778e62d"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/zh-CN/firefox-48.0.tar.bz2"; locale = "zh-CN"; arch = "linux-i686"; sha512 = "56bc566490056d46e9adb2a63fe37353eff79f41d7f657d67265045b57394e67578e8dc8485f8500603ec94f6326a2f643d3fd7dbb522912ecbc4571863d804b"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/zh-CN/firefox-48.0.tar.bz2"; locale = "zh-CN"; arch = "linux-x86_64"; sha512 = "0da88b26ca2fba192bce4462945f284addd1b660c81baec7e102daad61c18471b4a76a0c4c66dd85e061278dd69e418e999c58bd7c6606426d126ff8ecaf2e3e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-i686/zh-TW/firefox-48.0.tar.bz2"; locale = "zh-TW"; arch = "linux-i686"; sha512 = "1d410032e898d0437cf1ed669fdbafe9103944c35c135240c25a3e56116bdd2d926e3632556fbc916d465287e78ec67bc7204d8147596d0411d10f914fefccd8"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0/linux-x86_64/zh-TW/firefox-48.0.tar.bz2"; locale = "zh-TW"; arch = "linux-x86_64"; sha512 = "6c39f409eb4b48a5b38dc4d6a82f4d9d82b78ea82af10f338108f0237ecd1075cb9a00d5786b7aa9d83051a994e0a05f59f91f12d2b52953bacfdcfd05411ed0"; }
|
||||
];
|
||||
}
|
||||
|
@ -1,14 +1,14 @@
|
||||
{ stdenv
|
||||
{ kdeDerivation
|
||||
, lib
|
||||
, fetchurl
|
||||
, cmake
|
||||
, extra-cmake-modules
|
||||
, ecm
|
||||
, kbookmarks
|
||||
, karchive
|
||||
, kconfig
|
||||
, kconfigwidgets
|
||||
, kcoreaddons
|
||||
, kdbusaddons
|
||||
, kdeWrapper
|
||||
, kdoctools
|
||||
, kemoticons
|
||||
, kglobalaccel
|
||||
@ -24,61 +24,58 @@
|
||||
, makeQtWrapper
|
||||
, solid
|
||||
, sonnet
|
||||
, phonon}:
|
||||
, phonon
|
||||
}:
|
||||
|
||||
let
|
||||
pn = "konversation";
|
||||
v = "1.6";
|
||||
in
|
||||
unwrapped = let
|
||||
pname = "konversation";
|
||||
version = "1.6.1";
|
||||
in kdeDerivation rec {
|
||||
name = "${pname}-${version}";
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "${pn}-${v}";
|
||||
src = fetchurl {
|
||||
url = "mirror://kde/stable/${pname}/${version}/src/${name}.tar.xz";
|
||||
sha256 = "28346d6629261a5328c43ffa09c12e37743b3ef4f4bc4c411d39bc19f7bf06c6";
|
||||
};
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://kde/stable/${pn}/${v}/src/${name}.tar.xz";
|
||||
sha256 = "789fd75644bf54606778971310433dbe2bc01ac0917b34bc4e8cac88e204d5b6";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
cmake
|
||||
extra-cmake-modules
|
||||
kbookmarks
|
||||
karchive
|
||||
kconfig
|
||||
kconfigwidgets
|
||||
kcoreaddons
|
||||
kdbusaddons
|
||||
kdoctools
|
||||
kemoticons
|
||||
kglobalaccel
|
||||
ki18n
|
||||
kiconthemes
|
||||
kidletime
|
||||
kitemviews
|
||||
knotifications
|
||||
knotifyconfig
|
||||
kio
|
||||
kparts
|
||||
kwallet
|
||||
solid
|
||||
sonnet
|
||||
phonon
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
extra-cmake-modules
|
||||
kdoctools
|
||||
makeQtWrapper
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
wrapQtProgram "$out/bin/konversation"
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Integrated IRC client for KDE";
|
||||
license = with lib.licenses; [ gpl2 ];
|
||||
maintainers = with lib.maintainers; [ fridh ];
|
||||
homepage = https://konversation.kde.org;
|
||||
buildInputs = [
|
||||
kbookmarks
|
||||
karchive
|
||||
kconfig
|
||||
kconfigwidgets
|
||||
kcoreaddons
|
||||
kdbusaddons
|
||||
kdoctools
|
||||
kemoticons
|
||||
kglobalaccel
|
||||
ki18n
|
||||
kiconthemes
|
||||
kidletime
|
||||
kitemviews
|
||||
knotifications
|
||||
knotifyconfig
|
||||
kio
|
||||
kparts
|
||||
kwallet
|
||||
solid
|
||||
sonnet
|
||||
phonon
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
ecm
|
||||
kdoctools
|
||||
];
|
||||
|
||||
meta = {
|
||||
description = "Integrated IRC client for KDE";
|
||||
license = with lib.licenses; [ gpl2 ];
|
||||
maintainers = with lib.maintainers; [ fridh ];
|
||||
homepage = https://konversation.kde.org;
|
||||
};
|
||||
};
|
||||
in kdeWrapper unwrapped {
|
||||
targets = [ "bin/konversation" ];
|
||||
}
|
||||
|
||||
|
@ -5,10 +5,12 @@
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "notmuch-0.22";
|
||||
version = "0.22";
|
||||
name = "notmuch-${version}";
|
||||
|
||||
passthru = {
|
||||
pythonSourceRoot = "${name}/bindings/python";
|
||||
inherit version;
|
||||
};
|
||||
|
||||
src = fetchurl {
|
||||
|
46
pkgs/applications/networking/mailreaders/notmuch/mutt.nix
Normal file
46
pkgs/applications/networking/mailreaders/notmuch/mutt.nix
Normal file
@ -0,0 +1,46 @@
|
||||
{ stdenv, lib, perl, perlPackages, makeWrapper, coreutils, notmuch }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "notmuch-mutt-${version}";
|
||||
version = notmuch.version;
|
||||
|
||||
outputs = [ "out" ];
|
||||
|
||||
dontStrip = true;
|
||||
|
||||
buildInputs = [
|
||||
perl
|
||||
makeWrapper
|
||||
] ++ (with perlPackages; [
|
||||
FileRemove
|
||||
DigestSHA1
|
||||
Later
|
||||
MailBox
|
||||
MailMaildir
|
||||
MailTools
|
||||
StringShellQuote
|
||||
TermReadLineGnu
|
||||
]);
|
||||
|
||||
src = notmuch.src;
|
||||
|
||||
phases = [ "unpackPhase" "installPhase" "fixupPhase" ];
|
||||
|
||||
installPhase = ''
|
||||
${coreutils}/bin/install -Dm755 \
|
||||
./contrib/notmuch-mutt/notmuch-mutt \
|
||||
$out/bin/notmuch-mutt
|
||||
|
||||
wrapProgram $out/bin/notmuch-mutt \
|
||||
--prefix PERL5LIB : $PERL5LIB
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
inherit version;
|
||||
description = "Mutt support for notmuch";
|
||||
homepage = http://notmuchmua.org/;
|
||||
license = with licenses; mit;
|
||||
maintainers = with maintainers; [ peterhoeg ];
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
@ -76,7 +76,9 @@ in stdenv.mkDerivation rec {
|
||||
|
||||
# For some reason librdf_redland sometimes refers to rasqal.h instead
|
||||
# of rasqal/rasqal.h
|
||||
NIX_CFLAGS_COMPILE="-I${librdf_rasqal}/include/rasqal";
|
||||
# curl upgrade to 7.50.0 (#17152) changes the libcurl headers slightly and
|
||||
# therefore requires the -fpermissive flag until this package gets updated
|
||||
NIX_CFLAGS_COMPILE="-I${librdf_rasqal}/include/rasqal -fpermissive";
|
||||
|
||||
# If we call 'configure', 'make' will then call configure again without parameters.
|
||||
# It's their system.
|
||||
|
@ -76,7 +76,9 @@ in stdenv.mkDerivation rec {
|
||||
|
||||
# For some reason librdf_redland sometimes refers to rasqal.h instead
|
||||
# of rasqal/rasqal.h
|
||||
NIX_CFLAGS_COMPILE="-I${librdf_rasqal}/include/rasqal";
|
||||
# curl upgrade to 7.50.0 (#17152) changes the libcurl headers slightly and
|
||||
# therefore requires the -fpermissive flag until this package gets updated
|
||||
NIX_CFLAGS_COMPILE="-I${librdf_rasqal}/include/rasqal -fpermissive";
|
||||
|
||||
# If we call 'configure', 'make' will then call configure again without parameters.
|
||||
# It's their system.
|
||||
|
@ -2,7 +2,7 @@
|
||||
, kernel ? pkgs.linux
|
||||
, img ? "bzImage"
|
||||
, rootModules ?
|
||||
[ "virtio_pci" "virtio_blk" "virtio_balloon" "ext4" "unix" "9p" "9pnet_virtio" "rtc_cmos" ]
|
||||
[ "virtio_pci" "virtio_blk" "virtio_balloon" "virtio_rng" "ext4" "unix" "9p" "9pnet_virtio" "rtc_cmos" ]
|
||||
}:
|
||||
|
||||
with pkgs;
|
||||
@ -218,6 +218,7 @@ rec {
|
||||
${qemuProg} \
|
||||
${lib.optionalString (pkgs.stdenv.system == "x86_64-linux") "-cpu kvm64"} \
|
||||
-nographic -no-reboot \
|
||||
-device virtio-rng-pci \
|
||||
-virtfs local,path=/nix/store,security_model=none,mount_tag=store \
|
||||
-virtfs local,path=$TMPDIR/xchg,security_model=none,mount_tag=xchg \
|
||||
-drive file=$diskImage,if=virtio,cache=unsafe,werror=report \
|
||||
|
@ -1,7 +1,7 @@
|
||||
{
|
||||
kdeApp, lib,
|
||||
kdeApp, lib, kdeWrapper,
|
||||
|
||||
ecm, kdoctools, makeQtWrapper,
|
||||
ecm, kdoctools, makeWrapper,
|
||||
|
||||
karchive, kconfig, kcrash, kdbusaddons, ki18n, kiconthemes, khtml, kio,
|
||||
kservice, kpty, kwidgetsaddons, libarchive,
|
||||
@ -10,26 +10,33 @@
|
||||
p7zip, unrar, unzipNLS, zip
|
||||
}:
|
||||
|
||||
kdeApp {
|
||||
name = "ark";
|
||||
nativeBuildInputs = [
|
||||
ecm kdoctools makeQtWrapper
|
||||
];
|
||||
propagatedBuildInputs = [
|
||||
khtml ki18n kio karchive kconfig kcrash kdbusaddons kiconthemes kservice
|
||||
kpty kwidgetsaddons libarchive
|
||||
];
|
||||
postInstall =
|
||||
let
|
||||
PATH = lib.makeBinPath [
|
||||
p7zip unrar unzipNLS zip
|
||||
let
|
||||
unwrapped =
|
||||
kdeApp {
|
||||
name = "ark";
|
||||
nativeBuildInputs = [
|
||||
ecm kdoctools makeWrapper
|
||||
];
|
||||
in ''
|
||||
wrapQtProgram "$out/bin/ark" \
|
||||
--prefix PATH : "${PATH}"
|
||||
'';
|
||||
meta = {
|
||||
license = with lib.licenses; [ gpl2 lgpl3 ];
|
||||
maintainers = [ lib.maintainers.ttuegel ];
|
||||
};
|
||||
propagatedBuildInputs = [
|
||||
khtml ki18n kio karchive kconfig kcrash kdbusaddons kiconthemes kservice
|
||||
kpty kwidgetsaddons libarchive
|
||||
];
|
||||
postInstall =
|
||||
let
|
||||
PATH = lib.makeBinPath [
|
||||
p7zip unrar unzipNLS zip
|
||||
];
|
||||
in ''
|
||||
wrapProgram "$out/bin/ark" \
|
||||
--prefix PATH : "${PATH}"
|
||||
'';
|
||||
meta = {
|
||||
license = with lib.licenses; [ gpl2 lgpl3 ];
|
||||
maintainers = [ lib.maintainers.ttuegel ];
|
||||
};
|
||||
};
|
||||
in
|
||||
kdeWrapper unwrapped
|
||||
{
|
||||
targets = [ "bin/ark" ];
|
||||
}
|
||||
|
@ -11,5 +11,7 @@ kdeApp {
|
||||
maintainers = [ lib.maintainers.ttuegel ];
|
||||
};
|
||||
nativeBuildInputs = [ ecm kdoctools ];
|
||||
propagatedBuildInputs = [ dolphin kdelibs4support ki18n kio kxmlgui ];
|
||||
propagatedBuildInputs = [
|
||||
dolphin.unwrapped kdelibs4support ki18n kio kxmlgui
|
||||
];
|
||||
}
|
||||
|
@ -1,26 +1,31 @@
|
||||
{
|
||||
kdeApp, lib,
|
||||
kdeApp, lib, kdeWrapper,
|
||||
ecm, kdoctools, makeQtWrapper,
|
||||
baloo, baloo-widgets, kactivities, kbookmarks, kcmutils, kcompletion, kconfig,
|
||||
kcoreaddons, kdelibs4support, kdbusaddons, kfilemetadata, ki18n, kiconthemes,
|
||||
kinit, kio, knewstuff, knotifications, kparts, ktexteditor, kwindowsystem,
|
||||
phonon, solid
|
||||
baloo, baloo-widgets, dolphin-plugins, kactivities, kbookmarks, kcmutils,
|
||||
kcompletion, kconfig, kcoreaddons, kdelibs4support, kdbusaddons,
|
||||
kfilemetadata, ki18n, kiconthemes, kinit, kio, knewstuff, knotifications,
|
||||
konsole, kparts, ktexteditor, kwindowsystem, phonon, solid
|
||||
}:
|
||||
|
||||
kdeApp {
|
||||
name = "dolphin";
|
||||
meta = {
|
||||
license = with lib.licenses; [ gpl2 fdl12 ];
|
||||
maintainers = [ lib.maintainers.ttuegel ];
|
||||
};
|
||||
nativeBuildInputs = [ ecm kdoctools makeQtWrapper ];
|
||||
propagatedBuildInputs = [
|
||||
baloo baloo-widgets kactivities kbookmarks kcmutils kcompletion kconfig
|
||||
kcoreaddons kdelibs4support kdbusaddons kfilemetadata ki18n kiconthemes
|
||||
kinit kio knewstuff knotifications kparts ktexteditor kwindowsystem phonon
|
||||
solid
|
||||
];
|
||||
postInstall = ''
|
||||
wrapQtProgram "$out/bin/dolphin"
|
||||
'';
|
||||
let
|
||||
unwrapped =
|
||||
kdeApp {
|
||||
name = "dolphin";
|
||||
meta = {
|
||||
license = with lib.licenses; [ gpl2 fdl12 ];
|
||||
maintainers = [ lib.maintainers.ttuegel ];
|
||||
};
|
||||
nativeBuildInputs = [ ecm kdoctools makeQtWrapper ];
|
||||
propagatedBuildInputs = [
|
||||
baloo baloo-widgets kactivities kbookmarks kcmutils kcompletion kconfig
|
||||
kcoreaddons kdelibs4support kdbusaddons kfilemetadata ki18n kiconthemes
|
||||
kinit kio knewstuff knotifications kparts ktexteditor kwindowsystem
|
||||
phonon solid
|
||||
];
|
||||
};
|
||||
in
|
||||
kdeWrapper unwrapped
|
||||
{
|
||||
targets = [ "bin/dolphin" ];
|
||||
paths = [ dolphin-plugins konsole.unwrapped ];
|
||||
}
|
||||
|
@ -1,20 +1,21 @@
|
||||
{
|
||||
kdeApp, lib,
|
||||
ecm, kdoctools, makeQtWrapper,
|
||||
kdeApp, lib, kdeWrapper,
|
||||
ecm, kdoctools,
|
||||
kio, kparts, kxmlgui, qtscript, solid
|
||||
}:
|
||||
|
||||
kdeApp {
|
||||
name = "filelight";
|
||||
meta = {
|
||||
license = with lib.licenses; [ gpl2 ];
|
||||
maintainers = with lib.maintainers; [ fridh vcunat ];
|
||||
};
|
||||
nativeBuildInputs = [ ecm kdoctools makeQtWrapper ];
|
||||
propagatedBuildInputs = [
|
||||
kio kparts kxmlgui qtscript solid
|
||||
];
|
||||
postInstall = ''
|
||||
wrapQtProgram "$out/bin/filelight"
|
||||
'';
|
||||
}
|
||||
let
|
||||
unwrapped =
|
||||
kdeApp {
|
||||
name = "filelight";
|
||||
meta = {
|
||||
license = with lib.licenses; [ gpl2 ];
|
||||
maintainers = with lib.maintainers; [ fridh vcunat ];
|
||||
};
|
||||
nativeBuildInputs = [ ecm kdoctools ];
|
||||
propagatedBuildInputs = [
|
||||
kio kparts kxmlgui qtscript solid
|
||||
];
|
||||
};
|
||||
in
|
||||
kdeWrapper unwrapped { targets = [ "bin/filelight" ]; }
|
||||
|
@ -1,21 +1,23 @@
|
||||
{
|
||||
kdeApp, lib,
|
||||
ecm, kdoctools, makeQtWrapper,
|
||||
kdeApp, lib, kdeWrapper,
|
||||
ecm, kdoctools,
|
||||
baloo, exiv2, kactivities, kdelibs4support, kio, lcms2, phonon,
|
||||
qtsvg, qtx11extras
|
||||
}:
|
||||
|
||||
kdeApp {
|
||||
name = "gwenview";
|
||||
meta = {
|
||||
license = with lib.licenses; [ gpl2 fdl12 ];
|
||||
maintainers = [ lib.maintainers.ttuegel ];
|
||||
};
|
||||
nativeBuildInputs = [ ecm kdoctools makeQtWrapper ];
|
||||
propagatedBuildInputs = [
|
||||
baloo kactivities kdelibs4support kio qtx11extras exiv2 lcms2 phonon qtsvg
|
||||
];
|
||||
postInstall = ''
|
||||
wrapQtProgram "$out/bin/gwenview"
|
||||
'';
|
||||
}
|
||||
let
|
||||
unwrapped =
|
||||
kdeApp {
|
||||
name = "gwenview";
|
||||
meta = {
|
||||
license = with lib.licenses; [ gpl2 fdl12 ];
|
||||
maintainers = [ lib.maintainers.ttuegel ];
|
||||
};
|
||||
nativeBuildInputs = [ ecm kdoctools ];
|
||||
propagatedBuildInputs = [
|
||||
baloo kactivities kdelibs4support kio qtx11extras exiv2 lcms2 phonon
|
||||
qtsvg
|
||||
];
|
||||
};
|
||||
in
|
||||
kdeWrapper unwrapped { targets = [ "bin/gwenview" ]; }
|
||||
|
@ -1,26 +1,31 @@
|
||||
{
|
||||
kdeApp, lib, makeQtWrapper, ecm, kdoctools,
|
||||
kactivities, kconfig, kcrash, kguiaddons, kiconthemes, ki18n, kinit,
|
||||
kjobwidgets, kio, kparts, ktexteditor, kwindowsystem, kxmlgui, kdbusaddons,
|
||||
kwallet, plasma-framework, kitemmodels, knotifications, qtscript,
|
||||
threadweaver, knewstuff, libgit2
|
||||
kdeApp, lib, kdeWrapper,
|
||||
ecm, kdoctools,
|
||||
kactivities, kconfig, kcrash, kdbusaddons, kguiaddons, kiconthemes, ki18n,
|
||||
kinit, kio, kitemmodels, kjobwidgets, knewstuff, knotifications, konsole,
|
||||
kparts, ktexteditor, kwindowsystem, kwallet, kxmlgui, libgit2,
|
||||
plasma-framework, qtscript, threadweaver
|
||||
}:
|
||||
|
||||
kdeApp {
|
||||
name = "kate";
|
||||
meta = {
|
||||
license = with lib.licenses; [ gpl3 lgpl3 lgpl2 ];
|
||||
maintainers = [ lib.maintainers.ttuegel ];
|
||||
};
|
||||
nativeBuildInputs = [ ecm kdoctools makeQtWrapper ];
|
||||
propagatedBuildInputs = [
|
||||
kactivities ki18n kio ktexteditor kwindowsystem plasma-framework qtscript
|
||||
kconfig kcrash kguiaddons kiconthemes kinit kjobwidgets kparts kxmlgui
|
||||
kdbusaddons kwallet kitemmodels knotifications threadweaver knewstuff
|
||||
libgit2
|
||||
];
|
||||
postInstall = ''
|
||||
wrapQtProgram "$out/bin/kate"
|
||||
wrapQtProgram "$out/bin/kwrite"
|
||||
'';
|
||||
let
|
||||
unwrapped =
|
||||
kdeApp {
|
||||
name = "kate";
|
||||
meta = {
|
||||
license = with lib.licenses; [ gpl3 lgpl3 lgpl2 ];
|
||||
maintainers = [ lib.maintainers.ttuegel ];
|
||||
};
|
||||
nativeBuildInputs = [ ecm kdoctools ];
|
||||
propagatedBuildInputs = [
|
||||
kactivities ki18n kio ktexteditor kwindowsystem plasma-framework
|
||||
qtscript kconfig kcrash kguiaddons kiconthemes kinit kjobwidgets kparts
|
||||
kxmlgui kdbusaddons kwallet kitemmodels knotifications threadweaver
|
||||
knewstuff libgit2
|
||||
];
|
||||
};
|
||||
in
|
||||
kdeWrapper unwrapped
|
||||
{
|
||||
targets = [ "bin/kate" "bin/kwrite" ];
|
||||
paths = [ konsole.unwrapped ];
|
||||
}
|
||||
|
@ -1,20 +1,21 @@
|
||||
{
|
||||
kdeApp, lib, makeQtWrapper, kdoctools,
|
||||
ecm, kconfig, kconfigwidgets, kguiaddons, kinit,
|
||||
knotifications, gmp
|
||||
kdeApp, lib, kdeWrapper,
|
||||
ecm, kdoctools,
|
||||
kconfig, kconfigwidgets, kguiaddons, kinit, knotifications, gmp
|
||||
}:
|
||||
|
||||
kdeApp {
|
||||
name = "kcalc";
|
||||
meta = {
|
||||
license = with lib.licenses; [ gpl2 ];
|
||||
maintainers = [ lib.maintainers.fridh ];
|
||||
};
|
||||
nativeBuildInputs = [ ecm kdoctools makeQtWrapper ];
|
||||
propagatedBuildInputs = [
|
||||
gmp kconfig kconfigwidgets kguiaddons kinit knotifications
|
||||
];
|
||||
postInstall = ''
|
||||
wrapQtProgram "$out/bin/kcalc"
|
||||
'';
|
||||
}
|
||||
let
|
||||
unwrapped =
|
||||
kdeApp {
|
||||
name = "kcalc";
|
||||
meta = {
|
||||
license = with lib.licenses; [ gpl2 ];
|
||||
maintainers = [ lib.maintainers.fridh ];
|
||||
};
|
||||
nativeBuildInputs = [ ecm kdoctools ];
|
||||
propagatedBuildInputs = [
|
||||
gmp kconfig kconfigwidgets kguiaddons kinit knotifications
|
||||
];
|
||||
};
|
||||
in
|
||||
kdeWrapper unwrapped { targets = [ "bin/kcalc" ]; }
|
||||
|
@ -1,14 +1,18 @@
|
||||
{
|
||||
kdeApp, lib,
|
||||
kdeApp, lib, kdeWrapper,
|
||||
ecm, ki18n, kwidgetsaddons, kxmlgui
|
||||
}:
|
||||
|
||||
kdeApp {
|
||||
name = "kcolorchooser";
|
||||
meta = {
|
||||
license = with lib.licenses; [ mit ];
|
||||
maintainers = [ lib.maintainers.ttuegel ];
|
||||
};
|
||||
nativeBuildInputs = [ ecm ];
|
||||
propagatedBuildInputs = [ ki18n kwidgetsaddons kxmlgui ];
|
||||
}
|
||||
let
|
||||
unwrapped =
|
||||
kdeApp {
|
||||
name = "kcolorchooser";
|
||||
meta = {
|
||||
license = with lib.licenses; [ mit ];
|
||||
maintainers = [ lib.maintainers.ttuegel ];
|
||||
};
|
||||
nativeBuildInputs = [ ecm ];
|
||||
propagatedBuildInputs = [ ki18n kwidgetsaddons kxmlgui ];
|
||||
};
|
||||
in
|
||||
kdeWrapper unwrapped { targets = [ "bin/kcolorchooser" ]; }
|
||||
|
@ -1,17 +1,19 @@
|
||||
{
|
||||
kdeApp, ecm, kdoctools, makeQtWrapper,
|
||||
kdeApp, kdeWrapper,
|
||||
ecm, kdoctools,
|
||||
grantlee, kconfig, kcoreaddons, kdbusaddons, ki18n, kinit, kcmutils,
|
||||
kdelibs4support, khtml, kservice, xapian
|
||||
}:
|
||||
|
||||
kdeApp {
|
||||
name = "khelpcenter";
|
||||
nativeBuildInputs = [ ecm kdoctools makeQtWrapper ];
|
||||
buildInputs = [
|
||||
grantlee kdelibs4support khtml ki18n kconfig kcoreaddons kdbusaddons kinit
|
||||
kcmutils kservice xapian
|
||||
];
|
||||
postInstall = ''
|
||||
wrapQtProgram "$out/bin/khelpcenter"
|
||||
'';
|
||||
}
|
||||
let
|
||||
unwrapped =
|
||||
kdeApp {
|
||||
name = "khelpcenter";
|
||||
nativeBuildInputs = [ ecm kdoctools ];
|
||||
buildInputs = [
|
||||
grantlee kdelibs4support khtml ki18n kconfig kcoreaddons kdbusaddons
|
||||
kinit kcmutils kservice xapian
|
||||
];
|
||||
};
|
||||
in
|
||||
kdeWrapper unwrapped { targets = [ "bin/khelpcenter" ]; }
|
||||
|
@ -1,19 +1,18 @@
|
||||
{
|
||||
kdeApp, lib, ecm, kdoctools, makeQtWrapper,
|
||||
kdeApp, lib, kdeWrapper,
|
||||
ecm, kdoctools,
|
||||
kparts, ktexteditor, kwidgetsaddons, libkomparediff2
|
||||
}:
|
||||
|
||||
kdeApp {
|
||||
name = "kompare";
|
||||
meta = {
|
||||
license = with lib.licenses; [ gpl2 ];
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ ecm kdoctools makeQtWrapper ];
|
||||
|
||||
propagatedBuildInputs = [ kparts ktexteditor kwidgetsaddons libkomparediff2 ];
|
||||
|
||||
postInstall = ''
|
||||
wrapQtProgram "$out/bin/kompare"
|
||||
'';
|
||||
}
|
||||
let
|
||||
unwrapped =
|
||||
kdeApp {
|
||||
name = "kompare";
|
||||
meta = { license = with lib.licenses; [ gpl2 ]; };
|
||||
nativeBuildInputs = [ ecm kdoctools ];
|
||||
propagatedBuildInputs = [
|
||||
kparts ktexteditor kwidgetsaddons libkomparediff2
|
||||
];
|
||||
};
|
||||
in
|
||||
kdeWrapper unwrapped { targets = [ "bin/kompare" ]; }
|
||||
|
@ -1,25 +1,27 @@
|
||||
{
|
||||
kdeApp, lib,
|
||||
ecm, kdoctools, makeQtWrapper,
|
||||
kdeApp, lib, kdeWrapper,
|
||||
ecm, kdoctools,
|
||||
kbookmarks, kcompletion, kconfig, kconfigwidgets, kcoreaddons, kguiaddons,
|
||||
ki18n, kiconthemes, kinit, kdelibs4support, kio, knotifications,
|
||||
knotifyconfig, kparts, kpty, kservice, ktextwidgets, kwidgetsaddons,
|
||||
kwindowsystem, kxmlgui, qtscript
|
||||
}:
|
||||
|
||||
kdeApp {
|
||||
name = "konsole";
|
||||
meta = {
|
||||
license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
|
||||
maintainers = [ lib.maintainers.ttuegel ];
|
||||
};
|
||||
nativeBuildInputs = [ ecm kdoctools makeQtWrapper ];
|
||||
propagatedBuildInputs = [
|
||||
kdelibs4support ki18n kwindowsystem qtscript kbookmarks kcompletion kconfig
|
||||
kconfigwidgets kcoreaddons kguiaddons kiconthemes kinit kio knotifications
|
||||
knotifyconfig kparts kpty kservice ktextwidgets kwidgetsaddons kxmlgui
|
||||
];
|
||||
postInstall = ''
|
||||
wrapQtProgram "$out/bin/konsole"
|
||||
'';
|
||||
}
|
||||
let
|
||||
unwrapped =
|
||||
kdeApp {
|
||||
name = "konsole";
|
||||
meta = {
|
||||
license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
|
||||
maintainers = [ lib.maintainers.ttuegel ];
|
||||
};
|
||||
nativeBuildInputs = [ ecm kdoctools ];
|
||||
propagatedBuildInputs = [
|
||||
kdelibs4support ki18n kwindowsystem qtscript kbookmarks kcompletion
|
||||
kconfig kconfigwidgets kcoreaddons kguiaddons kiconthemes kinit kio
|
||||
knotifications knotifyconfig kparts kpty kservice ktextwidgets
|
||||
kwidgetsaddons kxmlgui
|
||||
];
|
||||
};
|
||||
in
|
||||
kdeWrapper unwrapped { targets = [ "bin/konsole" ]; }
|
||||
|
@ -1,20 +1,20 @@
|
||||
{
|
||||
kdeApp, lib, ecm, kdoctools, makeQtWrapper,
|
||||
kdeApp, lib, kdeWrapper,
|
||||
ecm, kdoctools,
|
||||
kconfig, kcoreaddons, kdbusaddons, kdeclarative, ki18n, kio, knotifications,
|
||||
kscreen, kwidgetsaddons, kwindowsystem, kxmlgui, libkipi, xcb-util-cursor
|
||||
}:
|
||||
|
||||
kdeApp {
|
||||
name = "spectacle";
|
||||
meta = with lib; {
|
||||
maintainers = with maintainers; [ ttuegel ];
|
||||
};
|
||||
nativeBuildInputs = [ ecm kdoctools makeQtWrapper ];
|
||||
propagatedBuildInputs = [
|
||||
kconfig kcoreaddons kdbusaddons kdeclarative ki18n kio knotifications
|
||||
kscreen kwidgetsaddons kwindowsystem kxmlgui libkipi xcb-util-cursor
|
||||
];
|
||||
postInstall = ''
|
||||
wrapQtProgram "$out/bin/spectacle"
|
||||
'';
|
||||
}
|
||||
let
|
||||
unwrapped =
|
||||
kdeApp {
|
||||
name = "spectacle";
|
||||
meta = with lib; { maintainers = with maintainers; [ ttuegel ]; };
|
||||
nativeBuildInputs = [ ecm kdoctools ];
|
||||
propagatedBuildInputs = [
|
||||
kconfig kcoreaddons kdbusaddons kdeclarative ki18n kio knotifications
|
||||
kscreen kwidgetsaddons kwindowsystem kxmlgui libkipi xcb-util-cursor
|
||||
];
|
||||
};
|
||||
in
|
||||
kdeWrapper unwrapped { targets = [ "bin/spectacle" ]; }
|
||||
|
@ -1,22 +1,18 @@
|
||||
{ plasmaPackage, ecm, bluez-qt, kcoreaddons
|
||||
, kdbusaddons, kded, ki18n, kiconthemes, kio, knotifications
|
||||
, kwidgetsaddons, kwindowsystem, makeQtWrapper, plasma-framework
|
||||
, qtdeclarative, shared_mime_info
|
||||
{
|
||||
plasmaPackage, ecm, shared_mime_info,
|
||||
bluez-qt, kcoreaddons, kdbusaddons, kded, ki18n, kiconthemes, kio,
|
||||
knotifications, kwidgetsaddons, kwindowsystem, plasma-framework, qtdeclarative
|
||||
}:
|
||||
|
||||
plasmaPackage {
|
||||
name = "bluedevil";
|
||||
nativeBuildInputs = [
|
||||
ecm makeQtWrapper shared_mime_info
|
||||
];
|
||||
nativeBuildInputs = [ ecm shared_mime_info ];
|
||||
propagatedBuildInputs = [
|
||||
bluez-qt ki18n kio kwindowsystem plasma-framework qtdeclarative kcoreaddons
|
||||
kdbusaddons kded kiconthemes knotifications kwidgetsaddons
|
||||
];
|
||||
propagatedUserEnvPkgs = [ bluez-qt ];
|
||||
propagatedUserEnvPkgs = [ bluez-qt.out ];
|
||||
postInstall = ''
|
||||
wrapQtProgram "$out/bin/bluedevil-wizard"
|
||||
wrapQtProgram "$out/bin/bluedevil-sendfile"
|
||||
# Fix the location of logic.js for the plasmoid
|
||||
ln -s $out/share/plasma/plasmoids/org.kde.plasma.bluetooth/contents/code/logic.js $out/share/plasma/plasmoids/org.kde.plasma.bluetooth/contents/ui/logic.js
|
||||
'';
|
||||
|
@ -1,25 +1,14 @@
|
||||
{ plasmaPackage, ecm, kcmutils, kconfig
|
||||
, kdelibs4support, kdesu, kdoctools, ki18n, kiconthemes
|
||||
, kwindowsystem, makeQtWrapper, qtsvg, qtx11extras
|
||||
{
|
||||
plasmaPackage, ecm,
|
||||
kcmutils, kconfig, kdelibs4support, kdesu, kdoctools, ki18n, kiconthemes,
|
||||
kwindowsystem, qtsvg, qtx11extras
|
||||
}:
|
||||
|
||||
plasmaPackage {
|
||||
name = "kde-cli-tools";
|
||||
nativeBuildInputs = [ ecm kdoctools makeQtWrapper ];
|
||||
nativeBuildInputs = [ ecm kdoctools ];
|
||||
propagatedBuildInputs = [
|
||||
kdelibs4support ki18n kwindowsystem qtsvg qtx11extras kcmutils kconfig kdesu
|
||||
kiconthemes
|
||||
kcmutils kconfig kdesu kdelibs4support ki18n kiconthemes kwindowsystem qtsvg
|
||||
qtx11extras
|
||||
];
|
||||
postInstall = ''
|
||||
wrapQtProgram "$out/bin/kmimetypefinder5"
|
||||
wrapQtProgram "$out/bin/ksvgtopng5"
|
||||
wrapQtProgram "$out/bin/ktraderclient5"
|
||||
wrapQtProgram "$out/bin/kioclient5"
|
||||
wrapQtProgram "$out/bin/kdecp5"
|
||||
wrapQtProgram "$out/bin/keditfiletype5"
|
||||
wrapQtProgram "$out/bin/kcmshell5"
|
||||
wrapQtProgram "$out/bin/kdemv5"
|
||||
wrapQtProgram "$out/bin/kstart5"
|
||||
wrapQtProgram "$out/bin/kde-open5"
|
||||
'';
|
||||
}
|
||||
|
@ -1,23 +1,16 @@
|
||||
{ plasmaPackage, ecm, kdoctools, kcmutils
|
||||
, kcompletion, kconfig, kconfigwidgets, kcoreaddons, kdbusaddons
|
||||
, kdeclarative, kdelibs4support, ki18n, kiconthemes, kio, kpackage
|
||||
, kservice, kwidgetsaddons, kxmlgui, libraw1394, makeQtWrapper
|
||||
, kservice, kwidgetsaddons, kxmlgui, libraw1394
|
||||
, pciutils, solid
|
||||
}:
|
||||
|
||||
plasmaPackage {
|
||||
name = "kinfocenter";
|
||||
nativeBuildInputs = [
|
||||
ecm
|
||||
kdoctools
|
||||
makeQtWrapper
|
||||
];
|
||||
nativeBuildInputs = [ ecm kdoctools ];
|
||||
propagatedBuildInputs = [
|
||||
kdeclarative kdelibs4support ki18n kio kcmutils kcompletion kconfig
|
||||
kconfigwidgets kcoreaddons kdbusaddons kiconthemes kpackage kservice
|
||||
kwidgetsaddons kxmlgui libraw1394 pciutils solid
|
||||
];
|
||||
postInstall = ''
|
||||
wrapQtProgram "$out/bin/kinfocenter"
|
||||
'';
|
||||
}
|
||||
|
@ -1,18 +1,11 @@
|
||||
{ plasmaPackage, ecm, kdoctools, ki18n, kxmlgui
|
||||
, kdbusaddons, kiconthemes, kio, sonnet, kdelibs4support, makeQtWrapper
|
||||
, kdbusaddons, kiconthemes, kio, sonnet, kdelibs4support
|
||||
}:
|
||||
|
||||
plasmaPackage {
|
||||
name = "kmenuedit";
|
||||
nativeBuildInputs = [
|
||||
ecm
|
||||
kdoctools
|
||||
makeQtWrapper
|
||||
];
|
||||
nativeBuildInputs = [ ecm kdoctools ];
|
||||
propagatedBuildInputs = [
|
||||
kdelibs4support ki18n kio sonnet kxmlgui kdbusaddons kiconthemes
|
||||
];
|
||||
postInstall = ''
|
||||
wrapQtProgram "$out/bin/kmenuedit"
|
||||
'';
|
||||
}
|
||||
|
@ -1,19 +1,13 @@
|
||||
{ plasmaPackage, ecm, kconfig, kconfigwidgets
|
||||
, kdbusaddons, kglobalaccel, ki18n, kwidgetsaddons, kxmlgui
|
||||
, libkscreen, makeQtWrapper, qtdeclarative, qtgraphicaleffects
|
||||
, libkscreen, qtdeclarative, qtgraphicaleffects
|
||||
}:
|
||||
|
||||
plasmaPackage {
|
||||
name = "kscreen";
|
||||
nativeBuildInputs = [
|
||||
ecm
|
||||
makeQtWrapper
|
||||
];
|
||||
nativeBuildInputs = [ ecm ];
|
||||
propagatedBuildInputs = [
|
||||
kglobalaccel ki18n libkscreen qtdeclarative qtgraphicaleffects kconfig
|
||||
kconfigwidgets kdbusaddons kwidgetsaddons kxmlgui
|
||||
];
|
||||
postInstall = ''
|
||||
wrapQtProgram "$out/bin/kscreen-console"
|
||||
'';
|
||||
}
|
||||
|
@ -5,10 +5,7 @@
|
||||
|
||||
plasmaPackage {
|
||||
name = "kscreenlocker";
|
||||
nativeBuildInputs = [
|
||||
ecm
|
||||
kdoctools
|
||||
];
|
||||
nativeBuildInputs = [ ecm kdoctools ];
|
||||
propagatedBuildInputs = [
|
||||
kdeclarative plasma-framework qtdeclarative kcmutils kcrash kdelibs4support
|
||||
kglobalaccel kidletime kwayland libXcursor pam wayland
|
||||
|
@ -1,12 +1,9 @@
|
||||
{ plasmaPackage, ecm, kdoctools, kcoreaddons
|
||||
, ki18n, kwallet, kwidgetsaddons, makeQtWrapper
|
||||
, ki18n, kwallet, kwidgetsaddons
|
||||
}:
|
||||
|
||||
plasmaPackage {
|
||||
name = "ksshaskpass";
|
||||
nativeBuildInputs = [ ecm kdoctools makeQtWrapper ];
|
||||
nativeBuildInputs = [ ecm kdoctools ];
|
||||
propagatedBuildInputs = [ kcoreaddons ki18n kwallet kwidgetsaddons ];
|
||||
postInstall = ''
|
||||
wrapQtProgram "$out/bin/ksshaskpass"
|
||||
'';
|
||||
}
|
||||
|
@ -1,20 +1,13 @@
|
||||
{ plasmaPackage, ecm, kdoctools, kconfig
|
||||
, kcoreaddons, kdelibs4support, ki18n, kitemviews, knewstuff
|
||||
, kiconthemes, libksysguard, makeQtWrapper
|
||||
, kiconthemes, libksysguard
|
||||
}:
|
||||
|
||||
plasmaPackage {
|
||||
name = "ksysguard";
|
||||
nativeBuildInputs = [
|
||||
ecm
|
||||
kdoctools
|
||||
makeQtWrapper
|
||||
];
|
||||
nativeBuildInputs = [ ecm kdoctools ];
|
||||
propagatedBuildInputs = [
|
||||
kconfig kcoreaddons kitemviews knewstuff kiconthemes libksysguard
|
||||
kdelibs4support ki18n
|
||||
];
|
||||
postInstall = ''
|
||||
wrapQtProgram "$out/bin/ksysguardd"
|
||||
'';
|
||||
}
|
||||
|
@ -13,7 +13,6 @@ plasmaPackage {
|
||||
nativeBuildInputs = [
|
||||
ecm
|
||||
kdoctools
|
||||
makeQtWrapper
|
||||
];
|
||||
propagatedBuildInputs = [
|
||||
kactivities kdeclarative kglobalaccel ki18n kio kscreenlocker kwindowsystem
|
||||
@ -25,8 +24,4 @@ plasmaPackage {
|
||||
];
|
||||
patches = [ ./0001-qdiriterator-follow-symlinks.patch ];
|
||||
cmakeFlags = [ "-DCMAKE_SKIP_BUILD_RPATH=OFF" ];
|
||||
postInstall = ''
|
||||
wrapQtProgram "$out/bin/kwin_x11"
|
||||
wrapQtProgram "$out/bin/kwin_wayland"
|
||||
'';
|
||||
}
|
||||
|
@ -6,17 +6,13 @@
|
||||
, plasma-framework, plasma-workspace, qtdeclarative, qtx11extras
|
||||
, qtsvg, libXcursor, libXft, libxkbfile, xf86inputevdev
|
||||
, xf86inputsynaptics, xinput, xkeyboard_config, xorgserver
|
||||
, libcanberra_kde, libpulseaudio, makeQtWrapper, utillinux
|
||||
, libcanberra_kde, libpulseaudio, utillinux
|
||||
, qtquickcontrols, ksysguard
|
||||
}:
|
||||
|
||||
plasmaPackage rec {
|
||||
name = "plasma-desktop";
|
||||
nativeBuildInputs = [
|
||||
ecm
|
||||
kdoctools
|
||||
makeQtWrapper
|
||||
];
|
||||
nativeBuildInputs = [ ecm kdoctools ];
|
||||
buildInputs = [
|
||||
attica boost fontconfig kcmutils kdbusaddons kded kitemmodels knewstuff
|
||||
knotifications knotifyconfig kwallet libcanberra_kde libXcursor
|
||||
@ -42,14 +38,4 @@ plasmaPackage rec {
|
||||
"-DEvdev_INCLUDE_DIRS=${xf86inputevdev.dev}/include/xorg"
|
||||
"-DSynaptics_INCLUDE_DIRS=${xf86inputsynaptics}/include/xorg"
|
||||
];
|
||||
postInstall = ''
|
||||
wrapQtProgram "$out/bin/kaccess"
|
||||
wrapQtProgram "$out/bin/solid-action-desktop-gen"
|
||||
wrapQtProgram "$out/bin/knetattach"
|
||||
wrapQtProgram "$out/bin/krdb"
|
||||
wrapQtProgram "$out/bin/kapplymousetheme"
|
||||
wrapQtProgram "$out/bin/kfontinst"
|
||||
wrapQtProgram "$out/bin/kcm-touchpad-list-devices"
|
||||
wrapQtProgram "$out/bin/kfontview"
|
||||
'';
|
||||
}
|
||||
|
@ -2,7 +2,7 @@
|
||||
, kcompletion, kconfigwidgets, kcoreaddons, kdbusaddons, kdeclarative
|
||||
, kdelibs4support, ki18n, kiconthemes, kinit, kio, kitemviews
|
||||
, knotifications, kservice, kwallet, kwidgetsaddons, kwindowsystem
|
||||
, kxmlgui, makeQtWrapper, mobile_broadband_provider_info
|
||||
, kxmlgui, mobile_broadband_provider_info
|
||||
, modemmanager-qt, networkmanager-qt, openconnect, plasma-framework
|
||||
, qca-qt5, qtdeclarative, solid
|
||||
}:
|
||||
@ -15,11 +15,7 @@ plasmaPackage {
|
||||
inherit mobile_broadband_provider_info;
|
||||
})
|
||||
];
|
||||
nativeBuildInputs = [
|
||||
ecm
|
||||
kdoctools
|
||||
makeQtWrapper
|
||||
];
|
||||
nativeBuildInputs = [ ecm kdoctools ];
|
||||
propagatedBuildInputs = [
|
||||
kdeclarative kdelibs4support ki18n kio kwindowsystem plasma-framework
|
||||
qtdeclarative kcompletion kconfigwidgets kcoreaddons kdbusaddons kiconthemes
|
||||
@ -27,7 +23,4 @@ plasmaPackage {
|
||||
mobile_broadband_provider_info modemmanager-qt networkmanager-qt openconnect
|
||||
qca-qt5 solid
|
||||
];
|
||||
postInstall = ''
|
||||
wrapQtProgram "$out/bin/kde5-nm-connection-editor"
|
||||
'';
|
||||
}
|
||||
|
@ -4,6 +4,7 @@
|
||||
|
||||
plasmaPackage {
|
||||
name = "plasma-workspace-wallpapers";
|
||||
outputs = [ "out" ];
|
||||
nativeBuildInputs = [
|
||||
ecm
|
||||
];
|
||||
|
@ -14,9 +14,7 @@
|
||||
plasmaPackage {
|
||||
name = "plasma-workspace";
|
||||
|
||||
nativeBuildInputs = [
|
||||
ecm kdoctools
|
||||
];
|
||||
nativeBuildInputs = [ ecm kdoctools ];
|
||||
buildInputs = [
|
||||
baloo kactivities kcmutils kconfig kcrash kdbusaddons kdeclarative
|
||||
kdelibs4support kdesu kglobalaccel kidletime kjsembed knewstuff
|
||||
|
@ -1,22 +1,12 @@
|
||||
{ plasmaPackage
|
||||
, ecm
|
||||
, ki18n
|
||||
, kwindowsystem
|
||||
, kdbusaddons
|
||||
, kwidgetsaddons
|
||||
, kcoreaddons
|
||||
, kcrash
|
||||
, kconfig
|
||||
, kiconthemes
|
||||
, knotifications
|
||||
, polkit-qt
|
||||
{
|
||||
plasmaPackage, ecm,
|
||||
kcoreaddons, kconfig, kcrash, kdbusaddons, ki18n, kiconthemes, knotifications,
|
||||
kwidgetsaddons, kwindowsystem, polkit-qt
|
||||
}:
|
||||
|
||||
plasmaPackage {
|
||||
name = "polkit-kde-agent";
|
||||
nativeBuildInputs = [
|
||||
ecm
|
||||
];
|
||||
nativeBuildInputs = [ ecm ];
|
||||
propagatedBuildInputs = [
|
||||
kdbusaddons kwidgetsaddons kcoreaddons kcrash kconfig ki18n kiconthemes
|
||||
knotifications kwindowsystem polkit-qt
|
||||
|
@ -6,10 +6,7 @@
|
||||
|
||||
plasmaPackage {
|
||||
name = "powerdevil";
|
||||
nativeBuildInputs = [
|
||||
ecm
|
||||
kdoctools
|
||||
];
|
||||
nativeBuildInputs = [ ecm kdoctools ];
|
||||
propagatedBuildInputs = [
|
||||
kconfig kdbusaddons knotifyconfig solid udev bluez-qt kactivities kauth
|
||||
kdelibs4support kglobalaccel ki18n kio kidletime kwayland libkscreen
|
||||
|
@ -11,7 +11,4 @@ plasmaPackage {
|
||||
kcmutils kconfig kdbusaddons khtml ki18n kiconthemes kio kitemviews kservice
|
||||
kwindowsystem kxmlgui qtquickcontrols
|
||||
];
|
||||
postInstall = ''
|
||||
wrapQtProgram "$out/bin/systemsettings5"
|
||||
'';
|
||||
}
|
||||
|
@ -1,29 +1,35 @@
|
||||
{stdenv, glibc, fetchFromGitHub, llvm, makeWrapper, openssl, pcre2 }:
|
||||
{stdenv, glibc, fetchFromGitHub, llvm, makeWrapper, openssl, pcre2, coreutils }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "ponyc-0.2.1";
|
||||
name = "ponyc-2016-07-26";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "CausalityLtd";
|
||||
owner = "ponylang";
|
||||
repo = "ponyc";
|
||||
rev = "0.2.1";
|
||||
sha256 = "1wmvqrj9v2kjqha9fcs10vfnhdxhc3rf67wpn36ldhs1hq0k25jy";
|
||||
rev = "4eec8a9b0d9936b2a0249bd17fd7a2caac6aaa9c";
|
||||
sha256 = "184x2jivp7826i60rf0dpx0a9dg5rsj56dv0cll28as4nyqfmna2";
|
||||
};
|
||||
|
||||
buildInputs = [ llvm makeWrapper ];
|
||||
|
||||
makeFlags = [ "config=release" ];
|
||||
doCheck = true;
|
||||
checkTarget = "test";
|
||||
|
||||
patchPhase = ''
|
||||
sed 's|/usr/lib/x86_64-linux-gnu/|${glibc.out}/lib/|g' -i src/libponyc/codegen/genexe.c
|
||||
sed 's|/lib/x86_64-linux-gnu/|${stdenv.cc.cc.lib}/lib/|g' -i src/libponyc/codegen/genexe.c
|
||||
'';
|
||||
# Disable problematic networking tests
|
||||
patches = [ ./disable-tests.patch ];
|
||||
|
||||
preBuild = ''
|
||||
export LLVM_CONFIG=${llvm}/bin/llvm-config
|
||||
'';
|
||||
# Fix tests
|
||||
substituteInPlace packages/process/_test.pony \
|
||||
--replace "/bin/cat" "${coreutils}/bin/cat"
|
||||
|
||||
export LLVM_CONFIG=${llvm}/bin/llvm-config
|
||||
'';
|
||||
|
||||
makeFlags = [ "config=release" ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
doCheck = true;
|
||||
|
||||
checkTarget = "test";
|
||||
|
||||
preCheck = ''
|
||||
export LIBRARY_PATH="$out/lib:${openssl.out}/lib:${pcre2}/lib"
|
||||
|
16
pkgs/development/compilers/ponyc/disable-tests.patch
Normal file
16
pkgs/development/compilers/ponyc/disable-tests.patch
Normal file
@ -0,0 +1,16 @@
|
||||
diff --git a/packages/net/_test.pony b/packages/net/_test.pony
|
||||
index d6c3e56..dc37dd9 100644
|
||||
--- a/packages/net/_test.pony
|
||||
+++ b/packages/net/_test.pony
|
||||
@@ -7,11 +7,6 @@ actor Main is TestList
|
||||
fun tag tests(test: PonyTest) =>
|
||||
test(_TestReadBuffer)
|
||||
test(_TestWriteBuffer)
|
||||
- test(_TestBroadcast)
|
||||
- ifdef not windows then
|
||||
- test(_TestTCPExpect)
|
||||
- test(_TestTCPWritev)
|
||||
- end
|
||||
|
||||
class iso _TestReadBuffer is UnitTest
|
||||
"""
|
@ -99,8 +99,8 @@ let
|
||||
inherit zlibSupport;
|
||||
isPy2 = true;
|
||||
isPy26 = true;
|
||||
buildEnv = callPackage ../wrapper.nix { python = self; };
|
||||
withPackages = import ../with-packages.nix { inherit buildEnv; pythonPackages = python26Packages; };
|
||||
buildEnv = callPackage ../../wrapper.nix { python = self; };
|
||||
withPackages = import ../../with-packages.nix { inherit buildEnv; pythonPackages = python26Packages; };
|
||||
libPrefix = "python${majorVersion}";
|
||||
executable = libPrefix;
|
||||
sitePackages = "lib/${libPrefix}/site-packages";
|
@ -160,8 +160,8 @@ let
|
||||
inherit zlibSupport;
|
||||
isPy2 = true;
|
||||
isPy27 = true;
|
||||
buildEnv = callPackage ../wrapper.nix { python = self; };
|
||||
withPackages = import ../with-packages.nix { inherit buildEnv; pythonPackages = python27Packages; };
|
||||
buildEnv = callPackage ../../wrapper.nix { python = self; };
|
||||
withPackages = import ../../with-packages.nix { inherit buildEnv; pythonPackages = python27Packages; };
|
||||
libPrefix = "python${majorVersion}";
|
||||
executable = libPrefix;
|
||||
sitePackages = "lib/${libPrefix}/site-packages";
|
@ -88,8 +88,8 @@ stdenv.mkDerivation {
|
||||
tkSupport = (tk != null) && (tcl != null) && (libX11 != null) && (xproto != null);
|
||||
libPrefix = "python${majorVersion}";
|
||||
executable = "python3.3m";
|
||||
buildEnv = callPackage ../wrapper.nix { python = self; };
|
||||
withPackages = import ../with-packages.nix { inherit buildEnv; pythonPackages = python33Packages; };
|
||||
buildEnv = callPackage ../../wrapper.nix { python = self; };
|
||||
withPackages = import ../../with-packages.nix { inherit buildEnv; pythonPackages = python33Packages; };
|
||||
isPy3 = true;
|
||||
isPy33 = true;
|
||||
is_py3k = true; # deprecated
|
@ -111,8 +111,8 @@ stdenv.mkDerivation {
|
||||
tkSupport = (tk != null) && (tcl != null) && (libX11 != null) && (xproto != null);
|
||||
libPrefix = "python${majorVersion}";
|
||||
executable = "python3.4m";
|
||||
buildEnv = callPackage ../wrapper.nix { python = self; };
|
||||
withPackages = import ../with-packages.nix { inherit buildEnv; pythonPackages = python34Packages; };
|
||||
buildEnv = callPackage ../../wrapper.nix { python = self; };
|
||||
withPackages = import ../../with-packages.nix { inherit buildEnv; pythonPackages = python34Packages; };
|
||||
isPy3 = true;
|
||||
isPy34 = true;
|
||||
is_py3k = true; # deprecated
|
@ -111,8 +111,8 @@ stdenv.mkDerivation {
|
||||
tkSupport = (tk != null) && (tcl != null) && (libX11 != null) && (xproto != null);
|
||||
libPrefix = "python${majorVersion}";
|
||||
executable = "python${majorVersion}m";
|
||||
buildEnv = callPackage ../wrapper.nix { python = self; };
|
||||
withPackages = import ../with-packages.nix { inherit buildEnv; pythonPackages = python35Packages; };
|
||||
buildEnv = callPackage ../../wrapper.nix { python = self; };
|
||||
withPackages = import ../../with-packages.nix { inherit buildEnv; pythonPackages = python35Packages; };
|
||||
isPy3 = true;
|
||||
isPy35 = true;
|
||||
is_py3k = true; # deprecated
|
@ -115,8 +115,8 @@ stdenv.mkDerivation {
|
||||
tkSupport = (tk != null) && (tcl != null) && (libX11 != null) && (xproto != null);
|
||||
libPrefix = "python${majorVersion}";
|
||||
executable = "python${majorVersion}m";
|
||||
buildEnv = callPackage ../wrapper.nix { python = self; };
|
||||
withPackages = import ../with-packages.nix { inherit buildEnv; pythonPackages = python36Packages; };
|
||||
buildEnv = callPackage ../../wrapper.nix { python = self; };
|
||||
withPackages = import ../../with-packages.nix { inherit buildEnv; pythonPackages = python36Packages; };
|
||||
isPy3 = true;
|
||||
isPy35 = true;
|
||||
is_py3k = true; # deprecated
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user