Merge branch 'master' into staging

This commit is contained in:
Vladimír Čunát 2016-12-09 19:11:05 +01:00
commit b05b120779
No known key found for this signature in database
GPG key ID: E747DF1F9575A3AA
221 changed files with 5268 additions and 2455 deletions

View file

@ -409,10 +409,10 @@ and in this case the `python35` interpreter is automatically used.
### Interpreters
Versions 2.6, 2.7, 3.3, 3.4 and 3.5 of the CPython interpreter are as respectively
Versions 2.6, 2.7, 3.3, 3.4 and 3.5 of the CPython interpreter are available as respectively
`python26`, `python27`, `python33`, `python34` and `python35`. The PyPy interpreter
is available as `pypy`. The aliases `python2` and `python3` correspond to respectively `python27` and
`python35`. The default interpreter, `python`, maps to `python3`.
`python35`. The default interpreter, `python`, maps to `python2`.
The Nix expressions for the interpreters can be found in
`pkgs/development/interpreters/python`.
@ -434,17 +434,20 @@ Each interpreter has the following attributes:
- `withPackages`. Simpler interface to `buildEnv`. See section *python.withPackages function* for usage and documentation.
- `sitePackages`. Alias for `lib/${libPrefix}/site-packages`.
- `executable`. Name of the interpreter executable, e.g. `python3.4`.
- `pkgs`. Set of Python packages for that specific interpreter. The package set can be modified by overriding the interpreter and passing `packageOverrides`.
### Building packages and applications
Python packages (libraries) and applications that use `setuptools` or
`distutils` are typically built with respectively the `buildPythonPackage` and
`buildPythonApplication` functions.
Python libraries and applications that use `setuptools` or
`distutils` are typically build with respectively the `buildPythonPackage` and
`buildPythonApplication` functions. These two functions also support installing a `wheel`.
All Python packages reside in `pkgs/top-level/python-packages.nix` and all
applications elsewhere. Some packages are also defined in
applications elsewhere. In case a package is used as both a library and an application,
then the package should be in `pkgs/top-level/python-packages.nix` since only those packages are made
available for all interpreter versions. The preferred location for library expressions is in
`pkgs/development/python-modules`. It is important that these packages are
called in `pkgs/top-level/python-packages.nix` and not elsewhere, to guarantee
called from `pkgs/top-level/python-packages.nix` and not elsewhere, to guarantee
the right version of the package is built.
Based on the packages defined in `pkgs/top-level/python-packages.nix` an
@ -462,14 +465,14 @@ and the aliases
* `pkgs.python2Packages` pointing to `pkgs.python27Packages`
* `pkgs.python3Packages` pointing to `pkgs.python35Packages`
* `pkgs.pythonPackages` pointing to `pkgs.python3Packages`
* `pkgs.pythonPackages` pointing to `pkgs.python2Packages`
#### `buildPythonPackage` function
The `buildPythonPackage` function is implemented in
`pkgs/development/interpreters/python/build-python-package.nix`
and can be used as:
The following is an example:
twisted = buildPythonPackage {
name = "twisted-8.1.0";
@ -520,7 +523,7 @@ All parameters from `mkDerivation` function are still supported.
* `postShellHook`: Hook to execute commands after `shellHook`.
* `makeWrapperArgs`: A list of strings. Arguments to be passed to `makeWrapper`, which wraps generated binaries. By default, the arguments to `makeWrapper` set `PATH` and `PYTHONPATH` environment variables before calling the binary. Additional arguments here can allow a developer to set environment variables which will be available when the binary is run. For example, `makeWrapperArgs = ["--set FOO BAR" "--set BAZ QUX"]`.
* `installFlags`: A list of strings. Arguments to be passed to `pip install`. To pass options to `python setup.py install`, use `--install-option`. E.g., `installFlags=["--install-option='--cpp_implementation'"].
* `format`: Format of the source. Options are `setup` for when the source has a `setup.py` and `setuptools` is used to build a wheel, and `wheel` in case the source is already a binary wheel. The default value is `setup`.
* `format`: Format of the source. Valid options are `setuptools` (default), `flit`, `wheel`, and `other`. `setuptools` is for when the source has a `setup.py` and `setuptools` is used to build a wheel, `flit`, in case `flit` should be used to build a wheel, and `wheel` in case a wheel is provided. In case you need to provide your own `buildPhase` and `installPhase` you can use `other`.
* `catchConflicts` If `true`, abort package build if a package name appears more than once in dependency tree. Default is `true`.
* `checkInputs` Dependencies needed for running the `checkPhase`. These are added to `buildInputs` when `doCheck = true`.
@ -697,59 +700,55 @@ should also be done when packaging `A`.
### How to override a Python package?
Recursively updating a package can be done with `pkgs.overridePackages` as explained in the Nixpkgs manual.
Python attribute sets are created for each interpreter version. We will therefore override the attribute set for the interpreter version we're interested.
In the following example we change the name of the package `pandas` to `foo`.
```
newpkgs = pkgs.overridePackages(self: super: rec {
python35Packages = (super.python35Packages.override { self = python35Packages;})
// { pandas = super.python35Packages.pandas.override {name = "foo";};
};
});
```
This can be tested with
```
We can override the interpreter and pass `packageOverrides`.
In the following example we rename the `pandas` package and build it.
```nix
with import <nixpkgs> {};
(let
let
python = let
packageOverrides = self: super: {
pandas = super.pandas.override {name="foo";};
};
in pkgs.python35.override {inherit packageOverrides;};
newpkgs = pkgs.overridePackages(self: super: rec {
python35Packages = (super.python35Packages.override { self = python35Packages;})
// { pandas = super.python35Packages.pandas.override {name = "foo";};
};
});
in newpkgs.python35.withPackages (ps: [ps.blaze])
).env
```
A typical use case is to switch to another version of a certain package. For example, in the Nixpkgs repository we have multiple versions of `django` and `scipy`.
In the following example we use a different version of `scipy`. All packages in `newpkgs` will now use the updated `scipy` version.
in python.pkgs.pandas
```
Using `nix-build` on this expression will build the package `pandas`
but with the new name `foo`.
All packages in the package set will use the renamed package.
A typical use case is to switch to another version of a certain package.
For example, in the Nixpkgs repository we have multiple versions of `django` and `scipy`.
In the following example we use a different version of `scipy` and create an environment that uses it.
All packages in the Python package set will now use the updated `scipy` version.
```nix
with import <nixpkgs> {};
(let
newpkgs = pkgs.overridePackages(self: super: rec {
python35Packages = super.python35Packages.override {
self = python35Packages // { scipy = python35Packages.scipy_0_17;};
(
let
packageOverrides = self: super: {
scipy = super.scipy_0_17;
};
});
in newpkgs.python35.withPackages (ps: [ps.blaze])
in (pkgs.python35.override {inherit packageOverrides;}).withPackages (ps: [ps.blaze])
).env
```
The requested package `blaze` depends upon `pandas` which itself depends on `scipy`.
The requested package `blaze` depends on `pandas` which itself depends on `scipy`.
A similar example but now using `django`
If you want the whole of Nixpkgs to use your modifications, then you can use `pkgs.overridePackages`
as explained in this manual. In the following example we build a `inkscape` using a different version of `numpy`.
```
with import <nixpkgs> {};
(let
newpkgs = pkgs.overridePackages(self: super: rec {
python27Packages = (super.python27Packages.override {self = python27Packages;})
// { django = super.python27Packages.django_1_9; };
});
in newpkgs.python27.withPackages (ps: [ps.django_guardian ])
).env
let
pkgs = import <nixpkgs> {};
newpkgs = pkgs.overridePackages ( pkgsself: pkgssuper: {
python27 = let
packageOverrides = self: super: {
numpy = super.numpy_1_10;
};
in pkgssuper.python27.override {inherit packageOverrides;};
} );
in newpkgs.inkscape
```
### `python setup.py bdist_wheel` cannot create .whl
@ -770,9 +769,9 @@ or the current time:
nix-shell --run "SOURCE_DATE_EPOCH=$(date +%s) python3 setup.py bdist_wheel"
```
or unset:
"""
```
nix-shell --run "unset SOURCE_DATE_EPOCH; python3 setup.py bdist_wheel"
"""
```
### `install_data` / `data_files` problems

View file

@ -391,7 +391,7 @@ rec {
);
in f [] [rhs lhs];
/* A recursive variant of the update operator //. The recusion
/* A recursive variant of the update operator //. The recursion
stops when one of the attribute values is not an attribute set,
in which case the right hand side value takes precedence over the
left hand side value.

View file

@ -17,7 +17,29 @@ in
rec {
/* Generates an INI-style config file from an
/* Generate a line of key k and value v, separated by
* character sep. If sep appears in k, it is escaped.
* Helper for synaxes with different separators.
*
* mkKeyValueDefault ":" "f:oo" "bar"
* > "f\:oo:bar"
*/
mkKeyValueDefault = sep: k: v:
"${libStr.escape [sep] k}${sep}${toString v}";
/* Generate a key-value-style config file from an attrset.
*
* mkKeyValue is the same as in toINI.
*/
toKeyValue = {
mkKeyValue ? mkKeyValueDefault "="
}: attrs:
let mkLine = k: v: mkKeyValue k v + "\n";
in libStr.concatStrings (libAttr.mapAttrsToList mkLine attrs);
/* Generate an INI-style config file from an
* attrset of sections to an attrset of key-value pairs.
*
* generators.toINI {} {
@ -41,17 +63,16 @@ rec {
# apply transformations (e.g. escapes) to section names
mkSectionName ? (name: libStr.escape [ "[" "]" ] name),
# format a setting line from key and value
mkKeyValue ? (k: v: "${libStr.escape ["="] k}=${toString v}")
mkKeyValue ? mkKeyValueDefault "="
}: attrsOfAttrs:
let
# map function to string for each key val
mapAttrsToStringsSep = sep: mapFn: attrs:
libStr.concatStringsSep sep
(libAttr.mapAttrsToList mapFn attrs);
mkLine = k: v: mkKeyValue k v + "\n";
mkSection = sectName: sectValues: ''
[${mkSectionName sectName}]
'' + libStr.concatStrings (libAttr.mapAttrsToList mkLine sectValues);
'' + toKeyValue { inherit mkKeyValue; } sectValues;
in
# map input to ini sections
mapAttrsToStringsSep "\n" mkSection attrsOfAttrs;

View file

@ -141,6 +141,7 @@
ehmry = "Emery Hemingway <emery@vfemail.net>";
eikek = "Eike Kettner <eike.kettner@posteo.de>";
elasticdog = "Aaron Bull Schaefer <aaron@elasticdog.com>";
eleanor = "Dejan Lukan <dejan@proteansec.com>";
elitak = "Eric Litak <elitak@gmail.com>";
ellis = "Ellis Whitehead <nixos@ellisw.net>";
epitrochoid = "Mabry Cervin <mpcervin@uncg.edu>";

View file

@ -135,6 +135,22 @@ runTests {
# these tests assume attributes are converted to lists
# in alphabetical order
testMkKeyValueDefault = {
expr = generators.mkKeyValueDefault ":" "f:oo" "bar";
expected = ''f\:oo:bar'';
};
testToKeyValue = {
expr = generators.toKeyValue {} {
key = "value";
"other=key" = "baz";
};
expected = ''
key=value
other\=key=baz
'';
};
testToINIEmpty = {
expr = generators.toINI {} {};
expected = "";

View file

@ -101,6 +101,11 @@ channel by running
which is equivalent to the more verbose <literal>nix-channel --update
nixos; nixos-rebuild switch</literal>.</para>
<note><para>Channels are set per user. This means that running <literal>
nix-channel --add</literal> as a non root user (or without sudo) will not
affect configuration in <literal>/etc/nixos/configuration.nix</literal>
</para></note>
<warning><para>It is generally safe to switch back and forth between
channels. The only exception is that a newer NixOS may also have a
newer Nix version, which may involve an upgrade of Nixs database

View file

@ -27,6 +27,10 @@
, name ? "nixos-disk-image"
# This prevents errors while checking nix-store validity, see
# https://github.com/NixOS/nix/issues/1134
, fixValidity ? true
, format ? "raw"
}:
@ -61,9 +65,6 @@ pkgs.vmTools.runInLinuxVM (
# Create an empty filesystem and mount it.
mkfs.${fsType} -L nixos $rootDisk
${optionalString (fsType == "ext4") ''
tune2fs -c 0 -i 0 $rootDisk
''}
mkdir /mnt
mount $rootDisk /mnt
@ -71,9 +72,11 @@ pkgs.vmTools.runInLinuxVM (
printRegistration=1 perl ${pkgs.pathsFromGraph} /tmp/xchg/closure | \
${config.nix.package.out}/bin/nix-store --load-db --option build-users-group ""
# Add missing size/hash fields to the database. FIXME:
# exportReferencesGraph should provide these directly.
${config.nix.package.out}/bin/nix-store --verify --check-contents --option build-users-group ""
${if fixValidity then ''
# Add missing size/hash fields to the database. FIXME:
# exportReferencesGraph should provide these directly.
${config.nix.package.out}/bin/nix-store --verify --check-contents --option build-users-group ""
'' else ""}
# In case the bootloader tries to write to /dev/sda…
ln -s vda /dev/xvda
@ -97,7 +100,9 @@ pkgs.vmTools.runInLinuxVM (
umount /mnt
# Do a fsck to make sure resize2fs works.
fsck.${fsType} -f -y $rootDisk
# Make sure resize2fs works
${optionalString (fsType == "ext4") ''
tune2fs -c 0 -i 0 $rootDisk
''}
''
)

View file

@ -58,7 +58,6 @@
#utmp = 29; # unused
ddclient = 30;
davfs2 = 31;
privoxy = 32;
#disnix = 33; # unused
osgi = 34;
tor = 35;
@ -322,7 +321,6 @@
utmp = 29;
#ddclient = 30; # unused
davfs2 = 31;
privoxy = 32;
disnix = 33;
osgi = 34;
tor = 35;

View file

@ -483,6 +483,7 @@
./services/security/torify.nix
./services/security/tor.nix
./services/security/torsocks.nix
./services/system/cgmanager.nix
./services/system/cloud-init.nix
./services/system/dbus.nix
./services/system/kerberos.nix
@ -617,6 +618,7 @@
./virtualisation/docker.nix
./virtualisation/libvirtd.nix
./virtualisation/lxc.nix
./virtualisation/lxcfs.nix
./virtualisation/lxd.nix
./virtualisation/amazon-options.nix
./virtualisation/openvswitch.nix

View file

@ -59,7 +59,8 @@ in
boot.kernelPackages = mkForce pkgs.linuxPackages_grsec_nixos;
boot.kernelParams = optional cfg.disableEfiRuntimeServices "noefi";
boot.kernelParams = [ "grsec_sysfs_restrict=0" ]
++ optional cfg.disableEfiRuntimeServices "noefi";
nixpkgs.config.grsecurity = true;
@ -109,19 +110,62 @@ in
boot.kernel.sysctl = {
# Read-only under grsecurity
"kernel.kptr_restrict" = mkForce null;
# All grsec tunables default to off, those not enabled below are
# *disabled*. We use mkDefault to allow expert users to override
# our choices, but use mkForce where tunables would outright
# conflict with other settings.
# Enable all chroot restrictions by default (overwritten as
# necessary below)
"kernel.grsecurity.chroot_caps" = mkDefault 1;
"kernel.grsecurity.chroot_deny_bad_rename" = mkDefault 1;
"kernel.grsecurity.chroot_deny_chmod" = mkDefault 1;
"kernel.grsecurity.chroot_deny_chroot" = mkDefault 1;
"kernel.grsecurity.chroot_deny_fchdir" = mkDefault 1;
"kernel.grsecurity.chroot_deny_mknod" = mkDefault 1;
"kernel.grsecurity.chroot_deny_mount" = mkDefault 1;
"kernel.grsecurity.chroot_deny_pivot" = mkDefault 1;
"kernel.grsecurity.chroot_deny_shmat" = mkDefault 1;
"kernel.grsecurity.chroot_deny_sysctl" = mkDefault 1;
"kernel.grsecurity.chroot_deny_unix" = mkDefault 1;
"kernel.grsecurity.chroot_enforce_chdir" = mkDefault 1;
"kernel.grsecurity.chroot_findtask" = mkDefault 1;
"kernel.grsecurity.chroot_restrict_nice" = mkDefault 1;
# Enable various grsec protections
"kernel.grsecurity.consistent_setxid" = mkDefault 1;
"kernel.grsecurity.deter_bruteforce" = mkDefault 1;
"kernel.grsecurity.fifo_restrictions" = mkDefault 1;
"kernel.grsecurity.harden_ipc" = mkDefault 1;
"kernel.grsecurity.harden_ptrace" = mkDefault 1;
"kernel.grsecurity.harden_tty" = mkDefault 1;
"kernel.grsecurity.ip_blackhole" = mkDefault 1;
"kernel.grsecurity.linking_restrictions" = mkDefault 1;
"kernel.grsecurity.ptrace_readexec" = mkDefault 1;
# Enable auditing
"kernel.grsecurity.audit_ptrace" = mkDefault 1;
"kernel.grsecurity.forkfail_logging" = mkDefault 1;
"kernel.grsecurity.rwxmap_logging" = mkDefault 1;
"kernel.grsecurity.signal_logging" = mkDefault 1;
"kernel.grsecurity.timechange_logging" = mkDefault 1;
} // optionalAttrs config.nix.useSandbox {
# chroot(2) restrictions that conflict with sandboxed Nix builds
"kernel.grsecurity.chroot_caps" = mkForce 0;
"kernel.grsecurity.chroot_deny_chmod" = mkForce 0;
"kernel.grsecurity.chroot_deny_chroot" = mkForce 0;
"kernel.grsecurity.chroot_deny_mount" = mkForce 0;
"kernel.grsecurity.chroot_deny_pivot" = mkForce 0;
"kernel.grsecurity.chroot_deny_chmod" = mkForce 0;
} // optionalAttrs containerSupportRequired {
# chroot(2) restrictions that conflict with NixOS lightweight containers
"kernel.grsecurity.chroot_caps" = mkForce 0;
"kernel.grsecurity.chroot_deny_chmod" = mkForce 0;
"kernel.grsecurity.chroot_deny_mount" = mkForce 0;
"kernel.grsecurity.chroot_restrict_nice" = mkForce 0;
"kernel.grsecurity.chroot_caps" = mkForce 0;
# Disable privileged IO by default, unless X is enabled
} // optionalAttrs (!config.services.xserver.enable) {
"kernel.grsecurity.disable_priv_io" = mkDefault 1;
};
};

View file

@ -151,15 +151,8 @@
a TCP simultaneous OPEN on that port before the connection is actually
established.</para></listitem>
<listitem><para><filename class="directory">/sys</filename> hardening:
breaks systemd.</para></listitem>
<listitem><para>Trusted path execution: a desirable feature, but
requires some more work to operate smoothly on NixOS.</para></listitem>
<listitem><para>Module hardening: would break user initiated module
loading. Might enable this at some point, depending on the potential
breakage.</para></listitem>
</itemizedlist>
</para></listitem>
@ -295,6 +288,10 @@
<option>security.grsecurity.disableEfiRuntimeServices</option> to override
this behavior.</para></listitem>
<listitem><para>User initiated autoloading of modules (e.g., when
using fuse or loop devices) is disallowed; either load requisite modules
as root or add them to<option>boot.kernelModules</option>.</para></listitem>
<listitem><para>Virtualization: KVM is the preferred virtualization
solution. Xen, Virtualbox, and VMWare are
<emphasis>unsupported</emphasis> and most likely require a custom kernel.
@ -328,6 +325,19 @@
</programlisting>
</para></listitem>
<listitem><para>
The gitlab service (<xref linkend="module-services-gitlab" />)
requires a variant of the <literal>ruby</literal> interpreter
built without `mprotect()` hardening, as in
<programlisting>
services.gitlab.packages.gitlab = pkgs.gitlab.override {
ruby = pkgs.ruby.overrideAttrs (attrs: {
postFixup = "paxmark m $out/bin/ruby";
});
};
</programlisting>
</para></listitem>
</itemizedlist>
</sect1>
@ -350,13 +360,19 @@
<listitem><para>
<literal>pax_sanitize_slab={off|fast|full}</literal>: control kernel
slab object sanitization
slab object sanitization. Defaults to <literal>fast</literal>
</para></listitem>
<listitem><para>
<literal>pax_size_overflow_report_only</literal>: log size overflow
violations but leave the violating task running
</para></listitem>
<listitem><para>
<literal>grsec_sysfs_restrict=[0|1]</literal>: toggle sysfs
restrictions. The NixOS module sets this to <literal>0</literal>
for systemd compatibility
</para></listitem>
</itemizedlist>
</para>

View file

@ -19,7 +19,9 @@ with lib;
config = mkIf config.security.hideProcessInformation {
users.groups.proc.gid = config.ids.gids.proc;
users.groups.proc.members = [ "polkituser" ];
boot.specialFileSystems."/proc".options = [ "hidepid=2" "gid=${toString config.ids.gids.proc}" ];
systemd.services.systemd-logind.serviceConfig.SupplementaryGroups = [ "proc" ];
};
}

View file

@ -47,6 +47,18 @@ in
'';
};
gatewayAddress = mkOption {
type = types.str;
default = "/ip4/127.0.0.1/tcp/8080";
description = "Where the IPFS Gateway can be reached";
};
apiAddress = mkOption {
type = types.str;
default = "/ip4/127.0.0.1/tcp/5001";
description = "Where IPFS exposes its API to";
};
enableGC = mkOption {
type = types.bool;
default = false;
@ -98,6 +110,8 @@ in
cd ${cfg.dataDir}
${pkgs.su}/bin/su -s ${pkgs.bash}/bin/sh ${cfg.user} -c "${ipfs}/bin/ipfs init"
fi
${pkgs.su}/bin/su -s ${pkgs.bash}/bin/sh ${cfg.user} -c "${ipfs}/bin/ipfs config Addresses.API ${cfg.apiAddress}"
${pkgs.su}/bin/su -s ${pkgs.bash}/bin/sh ${cfg.user} -c "${ipfs}/bin/ipfs config Addresses.Gateway ${cfg.gatewayAddress}"
'';
serviceConfig = {

View file

@ -6,8 +6,6 @@ let
inherit (pkgs) privoxy;
privoxyUser = "privoxy";
cfg = config.services.privoxy;
confFile = pkgs.writeText "privoxy.conf" ''
@ -88,18 +86,25 @@ in
###### implementation
config = mkIf cfg.enable {
users.extraUsers = singleton
{ name = privoxyUser;
uid = config.ids.uids.privoxy;
description = "Privoxy daemon user";
};
users.users.privoxy = {
isSystemUser = true;
home = "/var/empty";
group = "privoxy";
};
users.groups.privoxy = {};
systemd.services.privoxy = {
description = "Filtering web proxy";
after = [ "network.target" "nss-lookup.target" ];
wantedBy = [ "multi-user.target" ];
serviceConfig.ExecStart = "${privoxy}/sbin/privoxy --no-daemon --user ${privoxyUser} ${confFile}";
serviceConfig.ExecStart = "${privoxy}/bin/privoxy --no-daemon --user privoxy ${confFile}";
serviceConfig.PrivateDevices = true;
serviceConfig.PrivateTmp = true;
serviceConfig.ProtectHome = true;
serviceConfig.ProtectSystem = "full";
};
};

View file

@ -0,0 +1,27 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.services.cgmanager;
in {
meta.maintainers = [ maintainers.mic92 ];
###### interface
options.services.cgmanager.enable = mkEnableOption "cgmanager";
###### implementation
config = mkIf cfg.enable {
systemd.services.cgmanager = {
wantedBy = [ "multi-user.target" ];
after = [ "local-fs.target" ];
description = "Cgroup management daemon";
restartIfChanged = false;
serviceConfig = {
ExecStart = "${pkgs.cgmanager}/bin/cgmanager -m name=systemd";
KillMode = "process";
Restart = "on-failure";
};
};
};
}

View file

@ -29,7 +29,6 @@ let
pythonPackages = pkgs.pythonPackages.override {
inherit python;
self = pythonPackages;
};
penv = python.buildEnv.override {

View file

@ -187,7 +187,6 @@ in
default = [];
example = [ "-ac" "-logverbose" "-verbose" "-nolisten tcp" ];
description = "List of arguments for the X server.";
apply = toString;
};
sessionCommands = mkOption {

View file

@ -92,10 +92,15 @@ in
users.extraGroups.gdm.gid = config.ids.gids.gdm;
# GDM needs different xserverArgs, presumable because using wayland by default.
services.xserver.tty = null;
services.xserver.display = null;
services.xserver.displayManager.job =
{
environment = {
GDM_X_SERVER_EXTRA_ARGS = "${cfg.xserverArgs}";
GDM_X_SERVER_EXTRA_ARGS = toString
(filter (arg: arg != "-terminate") cfg.xserverArgs);
GDM_SESSIONS_DIR = "${cfg.session.desktops}";
# Find the mouse
XCURSOR_PATH = "~/.icons:${config.system.path}/share/icons";

View file

@ -25,7 +25,7 @@ let
FailsafeClient=${pkgs.xterm}/bin/xterm
[X-:*-Core]
ServerCmd=${dmcfg.xserverBin} ${dmcfg.xserverArgs}
ServerCmd=${dmcfg.xserverBin} ${toString dmcfg.xserverArgs}
# KDM calls `rm' somewhere to clean up some temporary directory.
SystemPath=${pkgs.coreutils}/bin
# The default timeout (15) is too short in a heavily loaded boot process.

View file

@ -23,7 +23,7 @@ let
else additionalArgs="-logfile /var/log/X.$display.log"
fi
exec ${dmcfg.xserverBin} ${dmcfg.xserverArgs} $additionalArgs "$@"
exec ${dmcfg.xserverBin} ${toString dmcfg.xserverArgs} $additionalArgs "$@"
'';
usersConf = writeText "users.conf"

View file

@ -14,7 +14,7 @@ let
xserverWrapper = pkgs.writeScript "xserver-wrapper" ''
#!/bin/sh
${concatMapStrings (n: "export ${n}=\"${getAttr n xEnv}\"\n") (attrNames xEnv)}
exec systemd-cat ${dmcfg.xserverBin} ${dmcfg.xserverArgs} "$@"
exec systemd-cat ${dmcfg.xserverBin} ${toString dmcfg.xserverArgs} "$@"
'';
Xsetup = pkgs.writeScript "Xsetup" ''

View file

@ -12,7 +12,7 @@ let
''
xauth_path ${dmcfg.xauthBin}
default_xserver ${dmcfg.xserverBin}
xserver_arguments ${dmcfg.xserverArgs}
xserver_arguments ${toString dmcfg.xserverArgs}
sessiondir ${dmcfg.session.desktops}
login_cmd exec ${pkgs.stdenv.shell} ${dmcfg.session.script} "%session"
halt_cmd ${config.systemd.package}/sbin/shutdown -h now

View file

@ -667,7 +667,7 @@ in
${cfg.localAddress} ${name}.containers
'') config.containers);
networking.dhcpcd.denyInterfaces = [ "ve-*" ];
networking.dhcpcd.denyInterfaces = [ "ve-*" "vb-*" ];
environment.systemPackages = [ pkgs.nixos-container ];
});

View file

@ -0,0 +1,49 @@
# LXC Configuration
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.virtualisation.lxc.lxcfs;
in {
meta.maintainers = [ maintainers.mic92 ];
###### interface
options.virtualisation.lxc.lxcfs = {
enable =
mkOption {
type = types.bool;
default = false;
description = ''
This enables LXCFS, a FUSE filesystem for LXC.
To use lxcfs in include the following configuration in your
container configuration:
<code>
virtualisation.lxc.defaultConfig = "lxc.include = ''${pkgs.lxcfs}/share/lxc/config/common.conf.d/00-lxcfs.conf";
</code>
'';
};
};
###### implementation
config = mkIf cfg.enable {
services.cgmanager.enable = true;
systemd.services.lxcfs = {
description = "FUSE filesystem for LXC";
wantedBy = [ "multi-user.target" ];
requires = [ "cgmanager.service" ];
after = [ "cgmanager.service" ];
before = [ "lxc.service" ];
restartIfChanged = false;
serviceConfig = {
ExecStartPre="${pkgs.coreutils}/bin/mkdir -p /var/lib/lxcfs";
ExecStart="${pkgs.lxcfs}/bin/lxcfs /var/lib/lxcfs";
ExecStopPost="-${pkgs.fuse}/bin/fusermount -u /var/lib/lxcfs";
KillMode="process";
Restart="on-failure";
};
};
};
}

37
nixos/tests/ipfs.nix Normal file
View file

@ -0,0 +1,37 @@
import ./make-test.nix ({ pkgs, ...} : {
name = "ipfs";
meta = with pkgs.stdenv.lib.maintainers; {
maintainers = [ mguentner ];
};
nodes = {
adder =
{ config, pkgs, ... }:
{
services.ipfs = {
enable = true;
gatewayAddress = "/ip4/127.0.0.1/tcp/2323";
apiAddress = "/ip4/127.0.0.1/tcp/2324";
};
};
getter =
{ config, pkgs, ... }:
{
services.ipfs.enable = true;
};
};
testScript = ''
startAll;
$adder->waitForUnit("ipfs");
# * => needs ipfs dht (internet)
# $getter->waitForUnit("ipfs");
$adder->waitUntilSucceeds("ipfs --api /ip4/127.0.0.1/tcp/2324 id");
$adder->mustSucceed("([[ -n '$(ipfs --api /ip4/127.0.0.1/tcp/2324 config Addresses.gatewayAddress | grep /ip4/127.0.0.1/tcp/2323)' ]])");
# * $getter->waitUntilSucceeds("ipfs --api /ip4/127.0.0.1/tcp/5001 id");
# * my $ipfsHash = $adder->mustSucceed("echo fnord | ipfs --api /ip4/127.0.0.1/tcp/2324 add | cut -d' ' -f2");
$adder->mustSucceed("([[ -n '$(echo fnord | ipfs --api /ip4/127.0.0.1/tcp/2324 add | grep added)' ]])");
# * $getter->mustSucceed("ipfs --api /ip4/127.0.0.1/tcp/5001 cat $ipfsHash");
'';
})

View file

@ -4,12 +4,12 @@
stdenv.mkDerivation rec {
name = "non-${version}";
version = "2016-04-05";
version = "2016-12-07";
src = fetchFromGitHub {
owner = "original-male";
repo = "non";
rev = "16885e69fe865495dc32d869d1454ab148b0dca6";
sha256 = "1nwzzgcdpbqh5kjvz40yy5nmzvpp8gcr9biyhhwi68s5bsg972ss";
rev = "754d113b0e3144a145d50bde8370ff2cae98169c";
sha256 = "04h67vy966vys6krgjsxd7dph4z46r8c6maw1hascxlasy3bhhk0";
};
buildInputs = [ pkgconfig python2 cairo libjpeg ntk libjack2 libsndfile

File diff suppressed because it is too large Load diff

View file

@ -115,6 +115,22 @@ let
propagatedUserEnvPkgs = [ python ];
};
buildDataGrip = { name, version, src, license, description, wmClass }:
(mkIdeaProduct {
inherit name version src wmClass jdk;
product = "DataGrip";
meta = with stdenv.lib; {
homepage = "https://www.jetbrains.com/datagrip/";
inherit description license;
longDescription = ''
DataGrip is a new IDE from JetBrains built for database admins.
It allows you to quickly migrate and refactor relational databases,
construct efficient, statically checked SQL queries and much more.
'';
maintainers = with maintainers; [ loskutov ];
platforms = platforms.linux;
};
});
in
{
@ -321,4 +337,16 @@ in
};
wmClass = "jetbrains-webstorm";
};
datagrip = buildDataGrip rec {
name = "datagrip-${version}";
version = "2016.3";
description = "Your Swiss Army Knife for Databases and SQL";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
url = "https://download.jetbrains.com/datagrip/${name}.tar.gz";
sha256 = "10nah7v330qrrczzz5jldnr0k7w2xzljiny32gm9pqmjbl0i70il";
};
wmClass = "jetbrains-datagrip";
};
}

View file

@ -4,13 +4,13 @@
, kjobwidgets, kcmutils, kio, knewstuff, knotifyconfig, kparts, ktexteditor
, threadweaver, kxmlgui, kwindowsystem, grantlee
, plasma-framework, krunner, kdevplatform, kdevelop-pg-qt, shared_mime_info
, libksysguard, llvmPackages, makeWrapper
, libksysguard, konsole, llvmPackages, makeWrapper
}:
let
pname = "kdevelop";
version = "5.0.2";
dirVersion = "5.0.2";
version = "5.0.3";
dirVersion = "5.0.3";
in
stdenv.mkDerivation rec {
@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "mirror://kde/stable/${pname}/${dirVersion}/src/${name}.tar.xz";
sha256 = "9b017901167723230dee8b565cdc7b0e61762415ffcc0a32708f04f7ab668666";
sha256 = "17a58dfc38b853c6c5987084e8973b4f7f5015a6c2c20f94c2a9f96b0c13f601";
};
nativeBuildInputs = [
@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
kconfig kdeclarative kdoctools kiconthemes ki18n kitemmodels kitemviews
kjobwidgets kcmutils kio knewstuff knotifyconfig kparts ktexteditor
threadweaver kxmlgui kwindowsystem grantlee plasma-framework krunner
kdevplatform kdevelop-pg-qt shared_mime_info libksysguard
kdevplatform kdevelop-pg-qt shared_mime_info libksysguard konsole.unwrapped
llvmPackages.llvm llvmPackages.clang-unwrapped
];

View file

@ -6,8 +6,8 @@
let
pname = "kdevplatform";
version = "5.0.2";
dirVersion = "5.0.2";
version = "5.0.3";
dirVersion = "5.0.3";
in
stdenv.mkDerivation rec {
@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "mirror://kde/stable/kdevelop/${dirVersion}/src/${name}.tar.xz";
sha256 = "a7f311198bb72f5fee064d99055e8df39ecf4e9066fe5c0ff901ee8c24d960ec";
sha256 = "643d1145e1948af221f9ae148d0a10809f3d89af4b97ff0d6c4d571004f46bd4";
};
nativeBuildInputs = [ cmake gettext pkgconfig extra-cmake-modules makeQtWrapper ];

View file

@ -11,8 +11,8 @@ let
else throw "ImageMagick is not supported on this platform.";
cfg = {
version = "6.9.6-2";
sha256 = "139h9lycxw3lszn052m34xm0rqyanin4nb529vxjcrkkzqilh91r";
version = "6.9.6-7";
sha256 = "1ls3g4gpdh094n03szr9arpr0rfwd1krv2s9gnck8j0ab10ccgs5";
patches = [];
}
# Freeze version on mingw so we don't need to port the patch too often.

View file

@ -1,120 +0,0 @@
{ stdenv, fetchurl, cmake, ecm, makeQtWrapper
# For `digitaglinktree`
, perl, sqlite
, qtbase
, qtxmlpatterns
, qtsvg
, qtwebkit
, kconfigwidgets
, kcoreaddons
, kdoctools
, kfilemetadata
, knotifications
, knotifyconfig
, ktextwidgets
, kwidgetsaddons
, kxmlgui
, bison
, boost
, eigen
, exiv2
, flex
, jasper
, lcms2
, lensfun
, libgphoto2
, libkipi
, liblqr1
, libusb1
, marble
, mysql
, opencv
, threadweaver
# For panorama and focus stacking
, enblend-enfuse
, hugin
, gnumake
, oxygen
}:
stdenv.mkDerivation rec {
name = "digikam-${version}";
version = "5.1.0";
src = fetchurl {
url = "http://download.kde.org/stable/digikam/${name}.tar.xz";
sha256 = "1w97a5cmg39dgmjgmjwa936gcrmxjms3h2ww61qi1lny84p5x4a7";
};
nativeBuildInputs = [ cmake ecm makeQtWrapper ];
buildInputs = [
qtbase
qtxmlpatterns
qtsvg
qtwebkit
kconfigwidgets
kcoreaddons
kdoctools
kfilemetadata
knotifications
knotifyconfig
ktextwidgets
kwidgetsaddons
kxmlgui
bison
boost
eigen
exiv2
flex
jasper
lcms2
lensfun
libgphoto2
libkipi
liblqr1
libusb1
marble.unwrapped
mysql
opencv
threadweaver
oxygen
];
enableParallelBuilding = true;
cmakeFlags = [
"-DLIBUSB_LIBRARIES=${libusb1.out}/lib"
"-DLIBUSB_INCLUDE_DIR=${libusb1.dev}/include/libusb-1.0"
"-DENABLE_MYSQLSUPPORT=1"
"-DENABLE_INTERNALMYSQL=1"
];
fixupPhase = ''
substituteInPlace $out/bin/digitaglinktree \
--replace "/usr/bin/perl" "${perl}/bin/perl" \
--replace "/usr/bin/sqlite3" "${sqlite}/bin/sqlite3"
wrapQtProgram $out/bin/digikam \
--prefix PATH : "${gnumake}/bin:${hugin}/bin:${enblend-enfuse}/bin"
wrapQtProgram $out/bin/showfoto
'';
meta = {
description = "Photo Management Program";
license = stdenv.lib.licenses.gpl2;
homepage = http://www.digikam.org;
maintainers = with stdenv.lib.maintainers; [ the-kenny ];
platforms = stdenv.lib.platforms.linux;
};
}

View file

@ -5,12 +5,12 @@
}:
stdenv.mkDerivation rec {
version = "2.70.0";
version = "2.73.0";
name = "calibre-${version}";
src = fetchurl {
url = "https://download.calibre-ebook.com/${version}/${name}.tar.xz";
sha256 = "18iv1c2nx93gkfqa3k2m42dk4p59b9zp08fggb6imc1xqh2icfch";
sha256 = "17qs7dakzd25wbshsny2x82ppdqa6kwwfbp2vp1i8qmfc1nq61gc";
};
patches = [
@ -46,15 +46,11 @@ stdenv.mkDerivation rec {
'';
dontUseQmakeConfigure = true;
# hack around a build problem
preBuild = ''
mkdir -p ../tmp.*/lib
'';
nativeBuildInputs = [ makeWrapper pkgconfig qmakeHook ];
buildInputs = [
poppler_utils libpng imagemagick libjpeg
poppler_utils libpng imagemagick libjpeg
fontconfig podofo qtbase chmlib icu sqlite libusb1 libmtp xdg_utils
] ++ (with python2Packages; [
apsw beautifulsoup cssselect cssutils dateutil lxml mechanize netifaces pillow

View file

@ -2,11 +2,11 @@
python2Packages.buildPythonApplication rec {
name = "electrum-${version}";
version = "2.7.11";
version = "2.7.12";
src = fetchurl {
url = "https://download.electrum.org/${version}/Electrum-${version}.tar.gz";
sha256 = "0qy2ynyw57jgi7fw3xzsyy608yk4bhsda7qfw0j26zqinv52mrsb";
sha256 = "0vxdfl208if7mdsnva1jg37bnay2dsz3ww157aqwcv1j6512fi1n";
};
propagatedBuildInputs = with python2Packages; [

View file

@ -1,29 +1,35 @@
{ fetchurl, stdenv, pkgconfig, python, file, bc
, qt4, hunspell, makeWrapper #, mythes, boost
, qtbase, qtsvg, hunspell, makeWrapper #, mythes, boost
}:
stdenv.mkDerivation rec {
version = "2.1.5";
version = "2.2.2";
name = "lyx-${version}";
src = fetchurl {
url = "ftp://ftp.lyx.org/pub/lyx/stable/2.1.x/${name}.tar.xz";
sha256 = "1wrcxsvr5kx8cfdabshzmcjrb3rmy5bh74njnzpq9m5xms8parrf";
url = "ftp://ftp.lyx.org/pub/lyx/stable/2.2.x/${name}.tar.xz";
sha256 = "0s2mma8fkj5mi8qzc0j67589mbj854bypx2s3y59y1n429s3sp58";
};
# LaTeX is used from $PATH, as people often want to have it with extra pkgs
buildInputs = [
pkgconfig qtbase qtsvg python file/*for libmagic*/ bc
hunspell makeWrapper # enchant
];
# bogus configure script tests
preConfigure = ''
NIX_CFLAGS_COMPILE+=" $(pkg-config --cflags Qt5Core)"
'';
configureFlags = [
"--enable-qt5"
#"--without-included-boost"
/* Boost is a huge dependency from which 1.4 MB of libs would be used.
Using internal boost stuff only increases executable by around 0.2 MB. */
#"--without-included-mythes" # such a small library isn't worth a separate package
];
# LaTeX is used from $PATH, as people often want to have it with extra pkgs
buildInputs = [
pkgconfig qt4 python file/*for libmagic*/ bc
hunspell makeWrapper # enchant
];
enableParallelBuilding = true;
doCheck = true;

View file

@ -4,13 +4,13 @@
stdenv.mkDerivation rec {
name = "${product}-${version}";
product = "pdfpc";
version = "4.0.3";
version = "4.0.4";
src = fetchFromGitHub {
repo = "pdfpc";
owner = "pdfpc";
rev = "v${version}";
sha256 = "1fcwxvik3nnn0g37xvb30vxaxwrd881fw07fyfb9c6ami9bnva3p";
sha256 = "07wpf3gkgiq7dpgsrv7whk0pzm18cni4s53hd7zz40319jmlaf4q";
};
nativeBuildInputs = [ cmake pkgconfig ];

View file

@ -1,21 +1,30 @@
{ stdenv, fetchFromGitHub, caddy, asciidoctor }:
{ stdenv, fetchFromGitHub, caddy, asciidoctor
, file, lessc, sass, multimarkdown }:
stdenv.mkDerivation rec {
name = "styx-${version}";
version = "0.3.1";
version = "0.4.0";
src = fetchFromGitHub {
owner = "styx-static";
repo = "styx";
rev = "v${version}";
sha256 = "0wyibdyi4ld0kfhng5ldb2rlgjrci014fahxn7nnchlg7dvcc5ni";
sha256 = "1s4465absxqwlwhn5rf51h0s1rw25ls581yjg0fy9kbyhy979qvs";
};
server = caddy.bin;
setSourceRoot = "cd styx-*/src; export sourceRoot=`pwd`";
server = "${caddy.bin}/bin/caddy";
nativeBuildInputs = [ asciidoctor ];
setSourceRoot = "cd styx-*/src; export sourceRoot=`pwd`";
propagatedBuildInputs = [
file
lessc
sass
asciidoctor
multimarkdown
];
installPhase = ''
mkdir $out
@ -24,6 +33,7 @@ stdenv.mkDerivation rec {
mkdir -p $out/share/styx
cp -r lib $out/share/styx
cp -r scaffold $out/share/styx
cp builder.nix $out/share/styx
mkdir -p $out/share/doc/styx
asciidoctor doc/manual.adoc -o $out/share/doc/styx/index.html

View file

@ -0,0 +1,92 @@
{ fetchFromGitHub, stdenv }:
let
mkThemeDrv = args: stdenv.mkDerivation {
name = "styx-theme-${args.themeName}-${args.version}";
src = fetchFromGitHub ({
owner = "styx-static";
repo = "styx-theme-${args.themeName}";
} // args.src);
installPhase = ''
mkdir $out
cp -r * $out/
'';
preferLocalBuild = true;
meta = with stdenv.lib; {
maintainer = with maintainers; [ ericsagnes ];
description = "${args.themeName} theme for styx";
platforms = platforms.all;
} // args.meta;
};
in
{
agency = mkThemeDrv {
themeName = "agency";
version = "2016-12-03";
src = {
rev = "3604239cc5d940eee9c14ad2540d68a53cfebd7e";
sha256 = "1kk8d5a3lb7fx1avivjd49gv0ffq7ppiswmwqlcsq87h2dbrqf61";
};
meta = {
license = stdenv.lib.licenses.asl20;
longDescription = ''
Agency Theme is a one page portfolio for companies and freelancers.
This theme features several content sections, a responsive portfolio
grid with hover effects, full page portfolio item modals, a timeline,
and a contact form.
'';
};
};
hyde = mkThemeDrv {
themeName = "hyde";
version = "2016-12-03";
src = {
rev = "b6b9b77839959fbf3c9ca3a4488617fa1831cd28";
sha256 = "0d1k03mjn08s3rpc5rdivb8ahr345kblhqyihxnfgd1501ih9pg6";
};
meta = {
license = stdenv.lib.licenses.mit;
longDescription = ''
Hyde is a brazen two-column Jekyll theme that pairs a prominent sidebar
with uncomplicated content.
'';
};
};
orbit = mkThemeDrv {
themeName = "orbit";
version = "2016-12-03";
src = {
rev = "1d41745c689c4336d4e2bfbb2483b80e67ec96e4";
sha256 = "19pp9dykqxmrixn3cvqpdpcqy547y9n5izqhz0c4a11mmm0v3v64";
};
meta = {
license = stdenv.lib.licenses.cc-by-30;
longDescription = ''
Orbit is a free resume/CV template designed for developers.
'';
};
};
showcase = mkThemeDrv {
themeName = "showcase";
version = "2016-12-04";
src = {
rev = "33feb0a09183e88d3580e9444ea36a255dffef60";
sha256 = "01ighlnrja442ip5fhllydl77bfdz8yig80spmizivdfxdrdiyyf";
};
meta = {
license = stdenv.lib.licenses.mit;
longDescription = ''
Theme that show most of styx functionalities with a basic design.
'';
};
};
}

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
name = "xdgmenumaker-${version}";
version = "0.9";
version = "1.1";
src = fetchFromGitHub {
rev = version;
owner = "gapan";
repo = "xdgmenumaker";
sha256 = "1n29syadsgj0vpnkc8nji4k1c8gminr1xdriz5ck2bcygsgxkdrd";
rev = version;
sha256 = "11mqafpgfnz0h0d6fxd1xsfsjxzg1abvwqgwy9jmm5xhcjx3c3l7";
};
nativeBuildInputs = [
@ -32,7 +32,8 @@ stdenv.mkDerivation rec {
description = "Command line tool that generates XDG menus for several window managers";
homepage = https://github.com/gapan/xdgmenumaker;
license = licenses.gpl2Plus;
platforms = platforms.unix;
# NOTE: exclude darwin from platforms because Travis reports hash mismatch
platforms = with platforms; filter (x: !(elem x darwin)) unix;
maintainers = [ maintainers.romildo ];
};
}

View file

@ -1,18 +1,18 @@
# This file is autogenerated from update.sh in the same directory.
{
beta = {
sha256 = "1dw5difl42jch8pppk9z7ivvw0ah7azjx81allfm85ys075h0ppm";
sha256bin64 = "1vd3ia7s7k8dkcc9sg1wmbi6x54wf7jmiavixnqb5swglczxfmxz";
version = "55.0.2883.44";
sha256 = "0mafk3cxwc16qbd7jzqj8rw1ys6s2bv7f9byixjcgssvjf073ksv";
sha256bin64 = "0sb2d7vyrckkbg823rnl7y3k6q3kvmxp13lpm0ncy821cx89m89a";
version = "55.0.2883.75";
};
dev = {
sha256 = "1pfgb5dnygyxiwfq6ini5s159c178zz7235npaag7k8gcc10ybnz";
sha256bin64 = "14s185361inkqh8ykl94xhgv01z68gxqh7j6gyb4jbr0rhcsd9pl";
version = "56.0.2906.0";
sha256 = "1g4jy8zpmgqh9br2jcvbrnnr8fc5i4s5hvv01bs433rlcgaqk066";
sha256bin64 = "08vzar0zshf39390xhr8l7gvzai9pxcqzwqzrmizaaqi9m5pijdr";
version = "56.0.2924.18";
};
stable = {
sha256 = "1pw91kqqvm9nkz9i6wmm83wnqzl34q8rxw1sjcpfr4qcg15gbrz2";
sha256bin64 = "05w9yadn7kwn0aiqd2mrg67lpk413zp6xkgwxnwni7z13j3zrw49";
version = "54.0.2840.100";
sha256 = "0mafk3cxwc16qbd7jzqj8rw1ys6s2bv7f9byixjcgssvjf073ksv";
sha256bin64 = "0qfqj8067vjqklg1zm203dh6c29sbhk6w7flvi8h3z28y1pws2qw";
version = "55.0.2883.75";
};
}

View file

@ -4,189 +4,191 @@
# ruby generate_sources.rb 46.0.1 > sources.nix
{
version = "49.0b1";
version = "51.0b6";
sources = [
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/ach/firefox-49.0b1.tar.bz2"; locale = "ach"; arch = "linux-i686"; sha512 = "98736e1a7503e6550491147b418815abc1cc59e58172ca45933f24f8a3df1d2e2d614d059d1159fefd727e771489c488a369e0b1f9bb7a25c8eb75cfb4c3e2b0"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/ach/firefox-49.0b1.tar.bz2"; locale = "ach"; arch = "linux-x86_64"; sha512 = "e8186d58d6c3847b475ac3c55f97476f393bb2ef210a4b7ec95d174d160011e0b4d0798de8bd33ebd30c342506f713a71509eba06fab03dc6b0fee7524f19dcc"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/af/firefox-49.0b1.tar.bz2"; locale = "af"; arch = "linux-i686"; sha512 = "0732de2c643ec1ac17bfb3b7629207cfde48f4a135b7dafd6a5efbac3231382fdc5f19048cb76f3da3bca255bf9816956e301e26cf28390ea9cccada67d920cc"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/af/firefox-49.0b1.tar.bz2"; locale = "af"; arch = "linux-x86_64"; sha512 = "ea5c72eb31b41714d57385040cd2d80f273b4177a576685ee752b2e92f90f8d9b5439e1f52dfc9941143bf91248be72aa670d134ba523cca856d175960bb3f40"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/an/firefox-49.0b1.tar.bz2"; locale = "an"; arch = "linux-i686"; sha512 = "36e3b5c374522efe6dfbb3b072ed2a75b3bcda8934c4763468643999fd14bcf043a2e4a0a5c62ada2f2d903a1f593e06976354a620733523ff806f6b8fecf1ce"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/an/firefox-49.0b1.tar.bz2"; locale = "an"; arch = "linux-x86_64"; sha512 = "398134c3133b75f027743ded416f3063d74ef777cc854992cd39aabb6397b00fff8dcf5116dabdfccee6ab1335bc296ccd991b3a4d72707735880d94b8f81af7"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/ar/firefox-49.0b1.tar.bz2"; locale = "ar"; arch = "linux-i686"; sha512 = "395b9abf6a6f01f448d7671908c2d7903604592490109793f3e36ba83375685aa43007bec07d3f28997416d8aa02df2597ce3392b7c1e83e1af4911203e2baaf"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/ar/firefox-49.0b1.tar.bz2"; locale = "ar"; arch = "linux-x86_64"; sha512 = "731d61dbc03548c77aade87c413f91d727cc8a87e15c202b73dece2a17c2bab887eb3912077aea670d9a928e930c4550ef2150442be8894e59b082c6f3d4b479"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/as/firefox-49.0b1.tar.bz2"; locale = "as"; arch = "linux-i686"; sha512 = "7f2d08dbeae79e7f903ed182c9eeb436f227ed9ff9db17d93f2c34efc3353788a0b499e23f2fb3eb892c9ee1592493cd8f960a6092f83b19de9419c7bd4ec3e1"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/as/firefox-49.0b1.tar.bz2"; locale = "as"; arch = "linux-x86_64"; sha512 = "311e413592438b610b8402eb00ed19b87caaa02522e8c40fff454d6d3fd8e0b7d5cf9223a6fc52d7c5f0be23baebb87639c2c64630e5a1a966d341b679bc1d03"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/ast/firefox-49.0b1.tar.bz2"; locale = "ast"; arch = "linux-i686"; sha512 = "a782df4a337fe18a7bb85c2a252444154100a597253d98d25c268c69a430045e4722a888f3d5fa51926de3571dd1941c117cd34537ff866c5d34279f3861e0e5"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/ast/firefox-49.0b1.tar.bz2"; locale = "ast"; arch = "linux-x86_64"; sha512 = "87a7759ecd002f994ebf7334b9c8c4c042ed6b84bc33485c791c5ba49bb7477ec801531a0723820aa181770c3d404eb7a0f7fb91818c38044ca9e3a130962899"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/az/firefox-49.0b1.tar.bz2"; locale = "az"; arch = "linux-i686"; sha512 = "d3822be0aebbbaf200e243c3e0ed0564cf6b5a9f14825f477767f98b796afedde9c6018f3b34c0263553fe190516ff0020e591ddc8ed688cab9454b7760cf131"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/az/firefox-49.0b1.tar.bz2"; locale = "az"; arch = "linux-x86_64"; sha512 = "2a70bffe3da3d3a9a61e649badc3a64f3110950cfc0b3cbb42c6f799465d928ec12c9efd1e7ee6ea978c865e2d3fe05d732a870654bf629f083f15357b360ccd"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/be/firefox-49.0b1.tar.bz2"; locale = "be"; arch = "linux-i686"; sha512 = "edc39ed32b7d990074ae3a5099cc4a0caf23190364eb87d1218a61a25b66777fa02b5df6f20c96c5ea67798a999f0cba6873d5d23b583bcd3d6ee90a7c978847"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/be/firefox-49.0b1.tar.bz2"; locale = "be"; arch = "linux-x86_64"; sha512 = "d0558a2e751d561e2f316a7bd57c3a8d92e8d5cb56e5eb28d44b5d40303550afef2bb9b69dfb0b80d1ef706a33717017eb077d3b2bca9277294cc76656a6131b"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/bg/firefox-49.0b1.tar.bz2"; locale = "bg"; arch = "linux-i686"; sha512 = "3524f48e8fb8b0c98c8df55d3e2934240eb414160d0e17d6f9beccb6b0540b9c9b554757e99dc99b16e685779c5d3395ff9bdb5c3a6c9faa2e88e099986aa4df"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/bg/firefox-49.0b1.tar.bz2"; locale = "bg"; arch = "linux-x86_64"; sha512 = "f44089b4c10a0791d98e75580c1316f400c7fadd48050d9f3a352064005b3b4205db7ef54bb1ab7bf6518f7bdb3be5f853f490cc0247f3f7a4ee7d6c50cbd20b"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/bn-BD/firefox-49.0b1.tar.bz2"; locale = "bn-BD"; arch = "linux-i686"; sha512 = "39b42d189a8ba7508e98045e1d94a1c79f8544cf4b2e2cc5187356d7f9ab6deef012c6e5d2220b2ce2b5a58f565289c5aeaee6ddcf0ab7b0cfcf18a902b95715"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/bn-BD/firefox-49.0b1.tar.bz2"; locale = "bn-BD"; arch = "linux-x86_64"; sha512 = "210c40e18347440077ddd0ffd25426fe583547a2a9bfbecf3e8ba3d0159d7f7317c06f893731512cc0666af488f32ed5808c8e2aabc921367f538695ba49fde9"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/bn-IN/firefox-49.0b1.tar.bz2"; locale = "bn-IN"; arch = "linux-i686"; sha512 = "dadbab0c70f22ec20a253d73081d3ccecbe148c6b0e854b85e7c079f4979f746c79fd5febd916c167cedd78ef04f5e0b2d2c925999424bb77118d251287311a6"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/bn-IN/firefox-49.0b1.tar.bz2"; locale = "bn-IN"; arch = "linux-x86_64"; sha512 = "8a2b9fe150579e487063f68373157ba087c571f53a98dbc9251deee92ebc58d587e38be2bc0412ed02cd8ccd485d91bc2fe5d70c223e7fe6edd996d9bfb89bfe"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/br/firefox-49.0b1.tar.bz2"; locale = "br"; arch = "linux-i686"; sha512 = "7a3a3c5015f407a1b7ecbf35763ea091cdcd3652c7916fe81d39336521fd6ab908a549bec8d39e089d0161fb6b37894b893058b523f78bb76e75dff21852fd13"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/br/firefox-49.0b1.tar.bz2"; locale = "br"; arch = "linux-x86_64"; sha512 = "9a7b5efd1f8d35f8cacaeefcb446028745bd999765fb04e60403b710cc9e5be14d172b6f0c2b08f1093083b6c4d94f22117f2b717473f5cd2bdc43ecaaec50a4"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/bs/firefox-49.0b1.tar.bz2"; locale = "bs"; arch = "linux-i686"; sha512 = "4671c1ed650df67ecdf152ae1503979f52b001660e167ea4ca1c47e1152e1450e2a5eac306b302c55b28e686c8535f6d612faa4c53b81cc5297e765c1bdd0afc"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/bs/firefox-49.0b1.tar.bz2"; locale = "bs"; arch = "linux-x86_64"; sha512 = "a2e4417c3987c8ab15ef8afd4fa130f6c45550c57a4605ffa301dc7d4ff49620c768d83e9de00f509dbb0cfd94530f4cb102cdb1f2a01eba091982fbfcd82d36"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/ca/firefox-49.0b1.tar.bz2"; locale = "ca"; arch = "linux-i686"; sha512 = "076f1deebdec83f76b44c41820253a7659b6702a1b1ef7139419a50411f2f752e764f96f84be24d84be388a3a3083656f967ee53ae1c640651dcac46b6dcd089"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/ca/firefox-49.0b1.tar.bz2"; locale = "ca"; arch = "linux-x86_64"; sha512 = "6a34ba7edb264cf974fa23650c73bcdca3e9344dfa82f3adf56c04a73439af5a093789e38406e2ec94c97635883eda2a232fe33a1746d08ff148022a1bb61fd1"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/cak/firefox-49.0b1.tar.bz2"; locale = "cak"; arch = "linux-i686"; sha512 = "0657e07ceb245e435dcb3c2e36e71054bf369c088e42ad0b7448c05c5d6a666ba5505da01d2e232388794ce5ae3be8dd1ce30ab0926dc9948d2a1291948f9b5f"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/cak/firefox-49.0b1.tar.bz2"; locale = "cak"; arch = "linux-x86_64"; sha512 = "4e95bff1e40614451baad90fb3ef76e27f2ee5d1d2ede400c091f46421b6b17a0c91bad04a45208219ef7513046749b9a42a147cdf7ba52a88dd515f5dc27cec"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/cs/firefox-49.0b1.tar.bz2"; locale = "cs"; arch = "linux-i686"; sha512 = "73264dd3b43e4ea4028bf622a2062797e4a28118ba597df19affa7fe38e630aac4a960fde8eb6be4a1e64d91b3b01e986d93684819c54e66c506153b19a06550"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/cs/firefox-49.0b1.tar.bz2"; locale = "cs"; arch = "linux-x86_64"; sha512 = "a94a811ede59154c98e87c47bedf4a5faae44cbf2c87bd7346476c92977abcdb96b79cfe379a04a459daa576170849a5c2c779a14948e51e046fc6fcf0ba4571"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/cy/firefox-49.0b1.tar.bz2"; locale = "cy"; arch = "linux-i686"; sha512 = "cc45c49758e3542ce704f941fda143ec531c9c0b9b0b28eade737e792afe7bad0db708a61510fadcede7af64622b7a97cb1f2c8eae7385ab447dc4a4198c07d4"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/cy/firefox-49.0b1.tar.bz2"; locale = "cy"; arch = "linux-x86_64"; sha512 = "07999f0049f305e75ec3fd1102673576e685e42b894db7ac8eef4d4dd1b4d2599a47b8f1ac034c728a5f3bb433ed96550907dd2f9e63a3fbd0aa43b65f2ca744"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/da/firefox-49.0b1.tar.bz2"; locale = "da"; arch = "linux-i686"; sha512 = "115840053470a057de9afeecc8a74113ff97c06293ce52995ef2bb473217d7b057329a4bb239bd21799d894e6a11081e7afe5191cc1ffb8887481fd08911f333"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/da/firefox-49.0b1.tar.bz2"; locale = "da"; arch = "linux-x86_64"; sha512 = "358f79e56cab4260557fdd999a70d025c6b2f8e7ea01a5767500e4b1906a57994592c633b7e10b9aa54a7a2dfd98f86bb3a8f8b09c364d8675bad5d74cedfd2c"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/de/firefox-49.0b1.tar.bz2"; locale = "de"; arch = "linux-i686"; sha512 = "5f80f4e32a71560188a21bb6b457b66a692f5eb32c5b45e04c40770b83689ead6bc07ec4a110f3855f5fe0e034f7b64ef8b5fe80526c708077664b179def71f6"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/de/firefox-49.0b1.tar.bz2"; locale = "de"; arch = "linux-x86_64"; sha512 = "01c71572560665dafa87ae8b327ee356b18b5ef08df093792c07b3858c42f2f9f3a89a2752fee35503785cf10130ca22fb21db83ce48fb902876eb9780b959cf"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/dsb/firefox-49.0b1.tar.bz2"; locale = "dsb"; arch = "linux-i686"; sha512 = "11385bdd26fd0eb9eb505141af2033a9e3b85f0d748959938eb51b9d7bb9e4c801ecf19e351957b9f8549d487086968b1f86e19534b09997b04642ced3f708d5"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/dsb/firefox-49.0b1.tar.bz2"; locale = "dsb"; arch = "linux-x86_64"; sha512 = "4daa34474c395c52c42c12f03125db8266e83ac1d8e5b098f0371cab7445b767abfb965668eafff466857ac99b6f4c00f4238d00b2f3915f228a25277b54fc2d"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/el/firefox-49.0b1.tar.bz2"; locale = "el"; arch = "linux-i686"; sha512 = "f77b62b8acabbd5afca19572be983c2f81200ff2bccabfe45b6c3d41c32de90cb4fac56db7be01fcf6a8dd69a72056e903f62d2af08b7ef0a06d18588c685b8e"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/el/firefox-49.0b1.tar.bz2"; locale = "el"; arch = "linux-x86_64"; sha512 = "9a3852f3dec48d5c40c09d6c961f87fb34f7fd6423ac86c4f4fe293560769c1e5a40f0d3e307fe65cdf614fe6b7fa7b1279c59b8a514e83e121b58ca90b46d31"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/en-GB/firefox-49.0b1.tar.bz2"; locale = "en-GB"; arch = "linux-i686"; sha512 = "3197dddc1f6aa65cc7bef6217175d308c29f1bc87014e651af76b490601cc202e9609d2728ba2c05203cfb93735094dc7efc2ee9f02b8544776ead8e788ac7b2"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/en-GB/firefox-49.0b1.tar.bz2"; locale = "en-GB"; arch = "linux-x86_64"; sha512 = "c1dcd26ed3b07c555793304c15644033105a72390c1307921fb215a06ddde547a34e1d027966e524878adf26a8fd3323d3d59c2914bfd20b6e7b7b4e59f54eb3"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/en-US/firefox-49.0b1.tar.bz2"; locale = "en-US"; arch = "linux-i686"; sha512 = "27d8f7ca57bd1fad729e73c0fce7f33da77249f1668c4d2b546db8b0edbddff4795537250c190d59cebd83dd91a06baad9b791c7c7ffec2f4d82cfdf15bb58f8"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/en-US/firefox-49.0b1.tar.bz2"; locale = "en-US"; arch = "linux-x86_64"; sha512 = "1e267127d21a6f7c64acd7e1a991a70b51742bdc2ae83f669a25203f710483a35b3bc7a9f226ad2efed77ef88161d345d312efba32e9b38d60d2144a1ff1810d"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/en-ZA/firefox-49.0b1.tar.bz2"; locale = "en-ZA"; arch = "linux-i686"; sha512 = "37fc1a82999c427496fb50ab6ce47d719add8f2e00d47269d266418dc1c1cb4191675a0cef398098fa17e9ec510a40250628eb5290b270c502316b3694361f6c"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/en-ZA/firefox-49.0b1.tar.bz2"; locale = "en-ZA"; arch = "linux-x86_64"; sha512 = "5ce15a1e1d9a5d3c26a2e1b2705c11fcd42acbd296231f2d25d7b130185b09ab25d0332c199d0f8e4994b30c97ea8d80e1f1ceaab8c8d8ffeaa2a2da91b32875"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/eo/firefox-49.0b1.tar.bz2"; locale = "eo"; arch = "linux-i686"; sha512 = "bb5e5f0b07054f2cfaa047e8df129c0fede79f6e5d736014cea52bc59b8b4c5276bf3c4217b818adf2ddf11c054c8a5ddc782a9c0b529b7164bd6f1e7edb6ca4"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/eo/firefox-49.0b1.tar.bz2"; locale = "eo"; arch = "linux-x86_64"; sha512 = "01d363154887ebf4c008646c4d749c89f8d748d9b0f76e19de37dc097517aa67485830679406b57348a670568f9406fe14fd22e01410f3a00e102b5436779193"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/es-AR/firefox-49.0b1.tar.bz2"; locale = "es-AR"; arch = "linux-i686"; sha512 = "8fa22a6ac6e2f9553bfc6fd7b0326ce327e4352b83e45d89ea0f79267073e03bba7dd1f2c2c2de40e3533cb0af97673aaa758eb0914c090078306f4b2902e361"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/es-AR/firefox-49.0b1.tar.bz2"; locale = "es-AR"; arch = "linux-x86_64"; sha512 = "da2b44fc3bd5c7536744b1355ee9640b2d430c32c3127ce1f8eea09cf88016c0e2bd9768925abf19b49ba62c55d90c029465b03c307fbc361ad95f4c28acb419"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/es-CL/firefox-49.0b1.tar.bz2"; locale = "es-CL"; arch = "linux-i686"; sha512 = "2cbc20485b5faf26a7f8978b63b8c135582569bc5d68c96b2dcd3d66864b2158479b7c5db0521ccb9c2de4eda6b4ffdea04ea480ac9b3e4609fade7f17806a6f"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/es-CL/firefox-49.0b1.tar.bz2"; locale = "es-CL"; arch = "linux-x86_64"; sha512 = "ea8bfed6bb886d23f8755b8187495ead5aa955c9fa45db1249a2f23477bf01dae4959cd4eeacffb6c3a6402d47da458c9d9fdb43243d64e19e3d66e3e1b85114"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/es-ES/firefox-49.0b1.tar.bz2"; locale = "es-ES"; arch = "linux-i686"; sha512 = "ffb37896e2f7de03c26b6e182416c399b9776bb14828fd54ebb34406f25ef77bc9eb975a13b7c9c9b02bf78b496928abc059283322fb1422d63d506f40b533a5"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/es-ES/firefox-49.0b1.tar.bz2"; locale = "es-ES"; arch = "linux-x86_64"; sha512 = "635e7f1e0fe96d6e074bb1f2a4e92d98e0fb4049f7bf34f5e5547fadd00691e27efbd5acf6b79ea9e3bbb8d7b72a50f7beb64bbabfc55601645292a83384a2a2"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/es-MX/firefox-49.0b1.tar.bz2"; locale = "es-MX"; arch = "linux-i686"; sha512 = "f67781fcf3ff9e4dfc1ed042bbc6c8aede1a06a6f9b4f9f4c969a9df769114febcdb4bae191ccc9ac10cebe727f495307e497af721c326ad7d2bb6894fd93944"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/es-MX/firefox-49.0b1.tar.bz2"; locale = "es-MX"; arch = "linux-x86_64"; sha512 = "42236f745af27e5ffbd1370b9d5136793d1c0ffcd1a1f8299f3a3d439e2671175524416bba6e1ecd162d9f986f89da0d3d1ffc760f2d48c5d28a99d74c467bbb"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/et/firefox-49.0b1.tar.bz2"; locale = "et"; arch = "linux-i686"; sha512 = "d2823810c39808332c46cc39d50c552efb61d74dbc7fb59dfd5b76d1efae544b52de89cac42be4944d831691971d4d8c880ed1cffd9448b05872acf7da39b698"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/et/firefox-49.0b1.tar.bz2"; locale = "et"; arch = "linux-x86_64"; sha512 = "61fb55d812c8b487ddad136f9c908396aa02e3ec4eee3f2f3fefd883c5aaf24a0c138366326bfbebe59b7065cc6f8f99550823e46bad876db8d930251f6a4492"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/eu/firefox-49.0b1.tar.bz2"; locale = "eu"; arch = "linux-i686"; sha512 = "5086ad7828197b129d8cd25fbbe7bf0e152b3476ea886ed8cc02290d4ab4912cd02ccdee0c02f08c73dffe6a0b34c11dceeba73cd948c03b26fea8c3bb2a84bc"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/eu/firefox-49.0b1.tar.bz2"; locale = "eu"; arch = "linux-x86_64"; sha512 = "b701decbbb6374ebb39522b068a36fb7c3bedff9f2b76cb655cd56addd592bf7d118c828283f52686545a6d9f603b674d8d80b35db217b5637fe2b29864e35b1"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/fa/firefox-49.0b1.tar.bz2"; locale = "fa"; arch = "linux-i686"; sha512 = "e14d7a15eb97c7b35bcdca156a86514ad8ca91d9af8978d9e9c1afeef6e71fd3f990daabd65efe424c6275944ea1922c3a313d562e710ee747b4e63d950c6578"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/fa/firefox-49.0b1.tar.bz2"; locale = "fa"; arch = "linux-x86_64"; sha512 = "4a0cd3b22daae4cba54473e4b144062e93dcc995a00e4f94fb66349e52274a5504b8e91e681305999fbd0acc3691fb011cc4db5485d59a9de79f542c3fd4dc64"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/ff/firefox-49.0b1.tar.bz2"; locale = "ff"; arch = "linux-i686"; sha512 = "d199ced706d4dd7f1b21999c335c500cacb8c1e4ece153f2f169711b4b381c316d5c2654608bb6f9a035f8c318c6ec96afe217ee6480451002e8f3269b4f0a82"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/ff/firefox-49.0b1.tar.bz2"; locale = "ff"; arch = "linux-x86_64"; sha512 = "58bb1595a4eb0dc651ad4778674103b42621375f8f7d138ac658915a974be52c35fd3944c099ee7ff791d7441cd818b09cddfb2a1498274aaecbaba8cbbd8ba7"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/fi/firefox-49.0b1.tar.bz2"; locale = "fi"; arch = "linux-i686"; sha512 = "4796471c2c42d9f5f278615b4a29edd80df8c113f42929a97c211bd63fe905bb7861a4c42474c6f19847308c2444e5549b7844824d99e6f236bcd0e2ab44e906"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/fi/firefox-49.0b1.tar.bz2"; locale = "fi"; arch = "linux-x86_64"; sha512 = "5d61a0ce98ffb8b9b3a8942b756ecaccaed33fe02513607aacf5338141beefcdcc547815d0f522da57ea1ba81dfcfb0c0e3ca6a0df237ce12501c41a157cfb51"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/fr/firefox-49.0b1.tar.bz2"; locale = "fr"; arch = "linux-i686"; sha512 = "6d69faed2f0c72d47311b2a756cd08c1f0b3c142129fd062bce661ec90a888e1ab246a04fd10dc2ba987ee2602f43b794a1507a7f23a5c65e909c0378e2bdea6"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/fr/firefox-49.0b1.tar.bz2"; locale = "fr"; arch = "linux-x86_64"; sha512 = "c92b0a2d591037bfda7831767d3c3f3d324190cfb26100bfb26cb12d9281a1b3a487141e4db5112cf122cb4e236ffded74d751aef2590fe703201128a1c453ff"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/fy-NL/firefox-49.0b1.tar.bz2"; locale = "fy-NL"; arch = "linux-i686"; sha512 = "25cddb8ea11d5422f966c1467d225743aa5807df9131563ed272953b4fa5004c331de87629e2eb6ba1903ad9abf8f0745be966f2e29c82fa74f620f08473f638"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/fy-NL/firefox-49.0b1.tar.bz2"; locale = "fy-NL"; arch = "linux-x86_64"; sha512 = "6ea3b911dcbf66fa365b2ce6a6722ce3e412e61e9779d647fdc42d6e9571d60b3908af034658cfa42bc22432ab0a360f9eca676ef3f22b36f05008a33760b1db"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/ga-IE/firefox-49.0b1.tar.bz2"; locale = "ga-IE"; arch = "linux-i686"; sha512 = "7d594f87fc45fd1ef00f2d62dc1c0a382eabd02745cee1901d133f853cc937a4c8915615c189ee6c5378d161fc75230a1c250c789a8c734aca7eb23bb44d45cd"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/ga-IE/firefox-49.0b1.tar.bz2"; locale = "ga-IE"; arch = "linux-x86_64"; sha512 = "af5a12a3cf90eeaea1f028d4c9a6985d9d8c994947b7976b1a3e8e0ec1af18bab4f8d7b5b86105eb119b1928c23abb4cb7fde737662eb06e0b8394b19573daef"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/gd/firefox-49.0b1.tar.bz2"; locale = "gd"; arch = "linux-i686"; sha512 = "8f0e9fa58b929fe1d5640a373ec0b9a93eac336989b1cf10e1577ef8b3b57786f51a40fb0b6a2401faf192e54f7793f04ac3ebccef5dec56a48ded34cbd5cbb7"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/gd/firefox-49.0b1.tar.bz2"; locale = "gd"; arch = "linux-x86_64"; sha512 = "8719d4655bf8ac157a6d144ff9acbcdcc138094a3d589a4078d9786acd036adfae6216846681a8feb33f9e020129acff3756074bfe18289cca126f140c4be1a5"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/gl/firefox-49.0b1.tar.bz2"; locale = "gl"; arch = "linux-i686"; sha512 = "e198a3becf663600184ee46f5d7043d5349abf10e2e951abfef7782449c142755fa0a37defaadecd674fb92589c24c3d49b45fadcd75ccfb81dea5ddd42b766e"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/gl/firefox-49.0b1.tar.bz2"; locale = "gl"; arch = "linux-x86_64"; sha512 = "e37ed350a7cdd5801631ddc934874016b38e4596b1d397d28a9735a977ceee80a70f0b382c186a88bef39c3c747f9825805a2c8143e0fb7b7be574c07301b77d"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/gn/firefox-49.0b1.tar.bz2"; locale = "gn"; arch = "linux-i686"; sha512 = "24b41e132f5aac62884d6b5703a8c3be679d6f8201a3abd3ed966cfe349055102bf099cec81f01cd86b40499c597adfbcbae2ca17bc6767c18aa9c0f1c317fb5"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/gn/firefox-49.0b1.tar.bz2"; locale = "gn"; arch = "linux-x86_64"; sha512 = "27c62ad953946a1c40b7b7393cc249a9fc2047c6a251c4d27c5a1a9ae8e8361a14c3fa934f6669f0e7a99b27573fac6c5e151ae9c590bb58327ab503f4482ba5"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/gu-IN/firefox-49.0b1.tar.bz2"; locale = "gu-IN"; arch = "linux-i686"; sha512 = "aea376e23c7522fdd3c0c82f39455b8bbe67ce7008e1e1d9de575f98776fdf3bfa06bab3ba0da81862c0a7242ab9cd2ab1f873a34df084a88ec82ec45c088611"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/gu-IN/firefox-49.0b1.tar.bz2"; locale = "gu-IN"; arch = "linux-x86_64"; sha512 = "4dbb401a0f92e02ee8822379a6313a9e7822d1155d064199272dd2be921d9dc7849439b04be3f25043fe37f43a3dee3e7b21831eabd1c555d5292694975987ae"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/he/firefox-49.0b1.tar.bz2"; locale = "he"; arch = "linux-i686"; sha512 = "97888c66cec9bfd111e76fc22440dda604c643396679abad421223b10688763a5d0e64fec46dd94084f30d819a5a12df4fd78434c4b03290fa745b60281b39eb"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/he/firefox-49.0b1.tar.bz2"; locale = "he"; arch = "linux-x86_64"; sha512 = "d46a2aec65b32e9b92a11230465ee6e2f83cef5a5b95057710f0ebdb3581810a1cbff09563f9ad3503a2c7217947369fdd80e0217318a40feed7bfd01fdbbcff"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/hi-IN/firefox-49.0b1.tar.bz2"; locale = "hi-IN"; arch = "linux-i686"; sha512 = "48c3142a39ed9d9173d1c25337d65367f1430804b13d0c9595ac2546c7c22a177a4d528f37d773ddff3379bc7bdba5e69002f2a37c837aa95a29d4e52774e65b"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/hi-IN/firefox-49.0b1.tar.bz2"; locale = "hi-IN"; arch = "linux-x86_64"; sha512 = "cc3c1520f6ec453bd7e347791f8ab3da06a3aeaccb44cfe5491a4fcfdf69ed7baef66c2d31a9ebad9d2538b6ff8f1dd27b20a8f42665a1c6ee57c5f60094ef71"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/hr/firefox-49.0b1.tar.bz2"; locale = "hr"; arch = "linux-i686"; sha512 = "86dce4d32a3f01493ce83379cb20bb2e267dbeb770b9631914d3b9e722cdb9ae5a0a974b323ee2ed17fb97bd232baaaea1e53ea6f29b11253046656f98219cde"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/hr/firefox-49.0b1.tar.bz2"; locale = "hr"; arch = "linux-x86_64"; sha512 = "446c11ab6645e17465e24fe1d4dbf27175b27e4808bc66084bcf8a1760883f6a36a5992be18ab26115f75bf0dce780c42fcabb1af3d2009f4ff7015bbe0612fd"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/hsb/firefox-49.0b1.tar.bz2"; locale = "hsb"; arch = "linux-i686"; sha512 = "8eae4fae6e4a7d5acb9ad2b83c4f7b4d2c7edd75a4d320b6665d803d44fc448214ac71b2c86c9b16e6450f7b5238db8633a917f201b5d45f2cc03a31df2ac9d7"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/hsb/firefox-49.0b1.tar.bz2"; locale = "hsb"; arch = "linux-x86_64"; sha512 = "c937552d45b948fde0854ab6ec27f77aebf7fa13eb6ff5fbcc74e86309581fe6ec799580fca7e131c940d218d09f70e4e49dc5348ec99e4d5ae6a0c63c9a6f06"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/hu/firefox-49.0b1.tar.bz2"; locale = "hu"; arch = "linux-i686"; sha512 = "4c38f40861411365e4a67bef548252328024438fc3a39260708a505a625ae9fc2912bd537a83bbe4125a027b50916daceae369a68d0ea7ba309b8595f8864fd8"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/hu/firefox-49.0b1.tar.bz2"; locale = "hu"; arch = "linux-x86_64"; sha512 = "fa298f7b4cd8fa50767f8b9a2bea0bd10e898a9e3042a0e09785ac74559b05877dbbc663ddb185146062fb1b3018a06f7e948fc33711726e43d5f33df1b3aef4"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/hy-AM/firefox-49.0b1.tar.bz2"; locale = "hy-AM"; arch = "linux-i686"; sha512 = "9e2838645094c6f8703857b674916517a47328aedead3e10dd3801abfe94971a648d792cbc1abfcfc7e39629aa7936d74cb711b53daf9f7198594e7b82c063ec"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/hy-AM/firefox-49.0b1.tar.bz2"; locale = "hy-AM"; arch = "linux-x86_64"; sha512 = "a84c9f9f20e19d3820b632f3ba4c9c479066459d293a57b5ff8fd4dae1d1451f812b0a6a71e72559d3ae0596a4ccb5fd09c0056a2726ac3a0c1cf083595adceb"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/id/firefox-49.0b1.tar.bz2"; locale = "id"; arch = "linux-i686"; sha512 = "dc84f03e90ca309805c85f45f8e3a54c92e80237980b488abcac0eee1083237a51f30847b84adc3b6051b6d9c9075799c295996d5a912b7ebfb290911006b8c7"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/id/firefox-49.0b1.tar.bz2"; locale = "id"; arch = "linux-x86_64"; sha512 = "e3d9e20347ffdce67d5bf5c720c93330b6a19e9733eab79f07820b50cc4ccd39a7f0736b0355f15e5bd59a8de24a0e9105bedb9d8da1cef125ea88cd1e6865c0"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/is/firefox-49.0b1.tar.bz2"; locale = "is"; arch = "linux-i686"; sha512 = "5b4966046dae0bb27a9fde5850fe291820b19c5e41fef4f010faa4d2d040ffcccb487d7f7647d0286e8e4e7fd27b50a12047d6fc95dc70dc34e7e1da4bce6b37"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/is/firefox-49.0b1.tar.bz2"; locale = "is"; arch = "linux-x86_64"; sha512 = "7b30d841c840af2c9b55173ac31ce5880a8b01daefd7871a4519107d276660af072c097479ae92b5b83379cd36a7c68ecf2d781d16b75d5eb38648aef6d89288"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/it/firefox-49.0b1.tar.bz2"; locale = "it"; arch = "linux-i686"; sha512 = "920e34f7db5452fad20303296b49f7d3dc7bc780735ef881c4c2cb42f2393d3be319adacbda74cfa965283681a01260dbe2298244fba5e541b807f7faffdf285"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/it/firefox-49.0b1.tar.bz2"; locale = "it"; arch = "linux-x86_64"; sha512 = "3af89ab3f92d771fa82c58fc5ebdaa9ad11d7f89b57357e98ecadcd57bcadfe66101d09b187daec1c64dff808172eac5a608239be6c991e2a725ea9421e4b8e5"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/ja/firefox-49.0b1.tar.bz2"; locale = "ja"; arch = "linux-i686"; sha512 = "e0239291135a98bce718d86831a0aaf3486c0e1ff54c98e65e970d1824786624e76ae73572b85f009b413bbe8c61aff41972629819812eb36918d4f2e864a274"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/ja/firefox-49.0b1.tar.bz2"; locale = "ja"; arch = "linux-x86_64"; sha512 = "998635a41eb45b8329f70837d0096cc69c6c7983ec48a208185fb0f3ee56c607c68178ac6f8c02de34c62e5c7ab38c1829b445dfed80f7794b7ef4fcd9ddc4aa"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/kk/firefox-49.0b1.tar.bz2"; locale = "kk"; arch = "linux-i686"; sha512 = "aee3c991acefbf1e257882bbd34eaee45415eecfb3fee2fa47a1d70cc5b6780b0894165a4c25609d595e4759d56ff0767b42f5b1d9174b4c1daa3e967871b66d"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/kk/firefox-49.0b1.tar.bz2"; locale = "kk"; arch = "linux-x86_64"; sha512 = "e2170378be3b442bd97066d740d458e82d282cbcdcac555d425d16082ca22c766832a8602071135cf9802eb97b0c6f7f414fe076ddb976d84a4ddb1f1ea23bcc"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/km/firefox-49.0b1.tar.bz2"; locale = "km"; arch = "linux-i686"; sha512 = "71e8ebcec8758c4fcd6056530b26c2fed1512f36746d431660eb603838c22e7c9c86a560ba36bd18e3df783531e608c67daceb50ea1758671c489ce91e214690"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/km/firefox-49.0b1.tar.bz2"; locale = "km"; arch = "linux-x86_64"; sha512 = "ed54aa4da9b6b2692c7d275d11ea53a85bd4ad131ecd644ec37acd3efbd51a25358c6b5720227e5cffb291d018c0890d46d09b61d3782e8000012893da10d144"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/kn/firefox-49.0b1.tar.bz2"; locale = "kn"; arch = "linux-i686"; sha512 = "678f4cfff160cfc6fd4f8e478f64ace3658c84672153c501f817a1456d7f7721d891d0186dfffa32e12bbbb46421e08e46753dc01021d3361b2e863176b32288"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/kn/firefox-49.0b1.tar.bz2"; locale = "kn"; arch = "linux-x86_64"; sha512 = "ec945284725364eff8e57d2f2e8bee7d35d8c217423b21d97328c8c5c2d43575c2af30fc93c8e128131c72ca7b2ea7420b88b21ded184a6b5e242fc76731e25a"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/ko/firefox-49.0b1.tar.bz2"; locale = "ko"; arch = "linux-i686"; sha512 = "07839edad66284da56ec54366fef1ef0d1a55b6e7f7d215d9f52827e080d070c07be4948df13d3b082bb5962e00d503b4916937bcf5045d9e3f9896e7c8698d1"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/ko/firefox-49.0b1.tar.bz2"; locale = "ko"; arch = "linux-x86_64"; sha512 = "6183cd77dfef7ed41e2049f3b423942eedcc2d5a49f820226c1fa366cbb75f63954b26c7797da42a11ec63f19bfc5bf19ebe605ac0d501391f64f5f168e157a5"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/lij/firefox-49.0b1.tar.bz2"; locale = "lij"; arch = "linux-i686"; sha512 = "3e78f5ada0a37d181e4a7b5ef90ad39fcc0216783e6ef26de826c642f1aaea59cb968636b0249af9ff92b0ef32fdde051c2d6a71d4aa2e6ac35aecc062f8e222"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/lij/firefox-49.0b1.tar.bz2"; locale = "lij"; arch = "linux-x86_64"; sha512 = "b8e8f635e927beaa0a12e92e025deaa2e98cf2d19dacca5ae91c21fe6c41177c8670b46b1a896f1b8b80fc60d806f1642bf787c44058077c4225a6de8902e664"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/lt/firefox-49.0b1.tar.bz2"; locale = "lt"; arch = "linux-i686"; sha512 = "e71759b4088ab845c193271e0c48c319401362c8d2f0def8342807a972f70db6963ea405c93fb8832cae1f930503a3a54458de230d17d53cc376946782cb6e3f"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/lt/firefox-49.0b1.tar.bz2"; locale = "lt"; arch = "linux-x86_64"; sha512 = "616a104d2ef421c162e6688d4128995faddac35f95327fccb313e20e56c410558f39869041900ac246d2cdbf510552bdc8a006623d8c6bbbf5350b6d7bd94899"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/lv/firefox-49.0b1.tar.bz2"; locale = "lv"; arch = "linux-i686"; sha512 = "2c413f2194c147fa4c3e21a9bdf67157fa7ea51dc7129dd8cb34e3b645600561ad9e9ebf3608cd75fc17e7d7b95cec49bb746d48c0b55fb4ea7b9ba7a359cfee"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/lv/firefox-49.0b1.tar.bz2"; locale = "lv"; arch = "linux-x86_64"; sha512 = "2743486ad0860c500a6a9146a49ec6190867706a74350310ed2987b71c5503886ba2931ba066f373fd05342198f6e8bf2a491cbb4a85c0763f1a68c1a124f796"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/mai/firefox-49.0b1.tar.bz2"; locale = "mai"; arch = "linux-i686"; sha512 = "7e5bbede973200faf58753d0de6041298f8d31937e19b9353bb83043229c8634cafc2e79129e9a8b34d1b4be451b6d3ad77e3ceb21ce8bf1a35f386ecdd64d09"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/mai/firefox-49.0b1.tar.bz2"; locale = "mai"; arch = "linux-x86_64"; sha512 = "8e51758b070bbde4d7bb4cd8aee148c1e8fef2d5bf236a4801b58e8acdfa567b6df5d32c3d46ddf965a599ba79c95b0884210bc3166fb8e9408e5255fcfaf5c7"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/mk/firefox-49.0b1.tar.bz2"; locale = "mk"; arch = "linux-i686"; sha512 = "3d945094b78f360045cfe6e1ffd53ac15a070b61adafec3063a88dd7f6ad4972fa5d4cc0398aa9bf30494be4326b63c8d8340ebd25d15c231c39d9a8b9c18da4"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/mk/firefox-49.0b1.tar.bz2"; locale = "mk"; arch = "linux-x86_64"; sha512 = "d2e8537a64747c06b2fe05b080c0eb0af82e1f4427a396c90006d012b663c1d34273307af4995b6ff8e75de4e3727cc3f736c7a9a78e0042f2f8d018ce525582"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/ml/firefox-49.0b1.tar.bz2"; locale = "ml"; arch = "linux-i686"; sha512 = "561b7a1d3f308552ba8b2084c86d6318b901fe8a7fff3254b65b790e4909dffb355eaaa898ee352310b8633fc695c6d7feb1d13ab60bf491a0668dbb05297b7a"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/ml/firefox-49.0b1.tar.bz2"; locale = "ml"; arch = "linux-x86_64"; sha512 = "6970448bfda2c54605d052570fa3ac81cfd554611c994125247ff4927807938a80fa65405ddc14a295a38bae9a1d9fcf460b32e5ba0cdff5cc690b57cb4a8d87"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/mr/firefox-49.0b1.tar.bz2"; locale = "mr"; arch = "linux-i686"; sha512 = "43b9022cd14ca829cc1f8546a9e13767e6f32daa3b008b6864a8cae3a8e6f99e70df0a05fdaa724e92fad38aabc5ffdbc9685795a0cbf1c914fbe3b515e80c99"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/mr/firefox-49.0b1.tar.bz2"; locale = "mr"; arch = "linux-x86_64"; sha512 = "16e029ba38ba9a88d57a72d7bb3ac843916f2e15b4a288815f59109cad9bb1c70beb0716360df4977231fe91f18ba3490168a857ce94c04d85a1aa5927372571"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/ms/firefox-49.0b1.tar.bz2"; locale = "ms"; arch = "linux-i686"; sha512 = "f418c661961f6c2e6fae0a1cd5329c35b331fa64bf9aa6d186f59d7b778d5b3fd7d6d548f69ba86f5b031bade68ec118aecc4aefc9a90ebc219945ce907f31be"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/ms/firefox-49.0b1.tar.bz2"; locale = "ms"; arch = "linux-x86_64"; sha512 = "05630d2f74ea7f70e9dd97284b41c4d4da2d325884696f58b1f88b3e29c4d5bcfa1ba7cc5f3aa412c852ac61f406fec29e0d3fea7820759d87f022811e6c5b0f"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/nb-NO/firefox-49.0b1.tar.bz2"; locale = "nb-NO"; arch = "linux-i686"; sha512 = "81127ce66c7f7da82e6059abaf002b79225bea3e69558636d5aaccba0c9df97adcc8c041b9239ec8763e28040807151b2ea01c795f4df088b896b774ea2e6162"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/nb-NO/firefox-49.0b1.tar.bz2"; locale = "nb-NO"; arch = "linux-x86_64"; sha512 = "e6c13dcdef6935921f74beaad25ceb8394a1256bc3ac6a1d76f3957f067d0bf1572d1a7b8ea2da6ffeb0eff8a4b2a1d80215f5169dce3c701fcc40dece34bd3e"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/nl/firefox-49.0b1.tar.bz2"; locale = "nl"; arch = "linux-i686"; sha512 = "b97db2d48eb98be9228358a0a068ea93d21ce4a5f6d138d079461c0a7f93d3a726d141adb43f41a56e658f629366eebb7ed4a0a1594a9d265ef121faabb14d52"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/nl/firefox-49.0b1.tar.bz2"; locale = "nl"; arch = "linux-x86_64"; sha512 = "acd10d50291fd833a574d049d99a567383dbb4483ecc45583dd977c3c67fabb9d450c802b8e2eb3d4eabc719f68f0db4e2a102bd716a4bf50aa02724da382f58"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/nn-NO/firefox-49.0b1.tar.bz2"; locale = "nn-NO"; arch = "linux-i686"; sha512 = "a07fb8c7ee065b0b7a4a3fa33e8dad026b65e42920398e6fdbf186985e46c6c55b72ecff087aace1559df286b7832a6de8215b713274234242531d7807d90180"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/nn-NO/firefox-49.0b1.tar.bz2"; locale = "nn-NO"; arch = "linux-x86_64"; sha512 = "37d17e905e92aa51d82f13e33415738cf8a5952617bec6a6e095147efca81b7196f997b47167abdd7a8d041c3308307c587a29ca3ec9f2e65e71d15b68b8bbda"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/or/firefox-49.0b1.tar.bz2"; locale = "or"; arch = "linux-i686"; sha512 = "85ec647821f82cc3ad99142e8e4425a00b6e0b273f137cdbff10c4e91afbdf4eb9feb7d4a2c9f80191cec918180aab0a84f96b7de1efda1fe0cdf9e1c44446eb"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/or/firefox-49.0b1.tar.bz2"; locale = "or"; arch = "linux-x86_64"; sha512 = "8819b00e2fdc06fb17873c769f7c8461fa131bcb12f0fd191a08a3a6526571fe40caa7cd8f7ef8e0d8722bae84699a479105cf518897c76aee674ea8a2dddc2f"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/pa-IN/firefox-49.0b1.tar.bz2"; locale = "pa-IN"; arch = "linux-i686"; sha512 = "70f7cdc912a6d1c5360b58ce522386ed9562aee8dffbf4a1f653871114359880df3f98629a2d4fe5556a1ba89fc5ec90a2c3da2d56ccf419f3956dfad157a3f9"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/pa-IN/firefox-49.0b1.tar.bz2"; locale = "pa-IN"; arch = "linux-x86_64"; sha512 = "9b60f41e9fd92c1d22dbfa1d287081d9514e081940dd9cbe1c9b4467926d83cec9ff43caf854710ec59d805293a83ea5defab887be5a93c8eedfa959b74ba783"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/pl/firefox-49.0b1.tar.bz2"; locale = "pl"; arch = "linux-i686"; sha512 = "80372feb8348b48627a93c5f2a5486933fe731a3fdfa2da6d71a7c75b35f585cd5b2cfa0760bb17de8fb98be1ef3dd90339a635ce25749bd27d147b316847084"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/pl/firefox-49.0b1.tar.bz2"; locale = "pl"; arch = "linux-x86_64"; sha512 = "445b104cd539f088a5cecbad4a1a861096542d1a4f2c95696ec51d43d08f10fc71513cceb5a68fa179fd988abaedb20829742f108f529face6e8e442576abb54"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/pt-BR/firefox-49.0b1.tar.bz2"; locale = "pt-BR"; arch = "linux-i686"; sha512 = "0788d7f599c3f46dfe485ed1ded013a7d87db6aec63193887f5e6b8c3636e0b117f4b854c5b0f60ee8b9683e6d46390f365a19e499fabc2a78ac29380dd26b35"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/pt-BR/firefox-49.0b1.tar.bz2"; locale = "pt-BR"; arch = "linux-x86_64"; sha512 = "ced012e0d447aae654edde3b26422f895440d8aa0822f3a14450142f6d97c20e74d1ec068bf2cde4a81270a77ef01a23646532e55ada6dc41603b013945986cf"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/pt-PT/firefox-49.0b1.tar.bz2"; locale = "pt-PT"; arch = "linux-i686"; sha512 = "d27ad4e240ee032cf16ecdc5588d3bdfcc81d338ef357c96194bc33d5d0d571c3826d298215b9cf058dec1cdb86d2bb41d5739ee4f49292bcc290ea4d50d2ca7"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/pt-PT/firefox-49.0b1.tar.bz2"; locale = "pt-PT"; arch = "linux-x86_64"; sha512 = "e80d1df4ea210d5a3731803026c3fca5143ade3e7f994a7a7bd673a6ba8b7df8eff9784e9bfe6d3360caf5c50609835ffaab631ecb5aafe71dde8adafa91db04"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/rm/firefox-49.0b1.tar.bz2"; locale = "rm"; arch = "linux-i686"; sha512 = "75f10944c6ab83ca1ca49d2bc05e8923830b1fa236620ceba9cbe2f874713cd49a6f0ea4968ce3ad08a5196746dbe3c48a3b51eb0f6d8d310715c6636d17d1f1"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/rm/firefox-49.0b1.tar.bz2"; locale = "rm"; arch = "linux-x86_64"; sha512 = "35df8ad315c60342119605cbad7fc1614002750ba6745d35d25653eaad6eedd7b039271b2900f712ec5a1c03425a902f5009e76b8c42bb074d5f64d6f6ea7477"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/ro/firefox-49.0b1.tar.bz2"; locale = "ro"; arch = "linux-i686"; sha512 = "8c31aa2df6cf1e1006691152e74aaf4b580a3b15d141444eab1cd4f3adc1066e7ac9c8196c8cd87902d590cf605bdf449d71fcb34b132a9221b101e0c16efe8d"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/ro/firefox-49.0b1.tar.bz2"; locale = "ro"; arch = "linux-x86_64"; sha512 = "ff6d5a5bc127841a1e92eb6bc22d157a57d7f48e4bc95b68907fee50683b20a0dcfd9e5a567f013a6c72311b9441231e986c7659fa60b894ea34d265786a857e"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/ru/firefox-49.0b1.tar.bz2"; locale = "ru"; arch = "linux-i686"; sha512 = "e8e7a794a3dde3b9fbe82c367d44134979cc45ad115fbc82bc8b9c8c438a857abe2e4962f50fa69ac7c22772ba3eb21c464bb800bef9eee9f2b33636f43261d2"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/ru/firefox-49.0b1.tar.bz2"; locale = "ru"; arch = "linux-x86_64"; sha512 = "c653182b26d643d32e0983cf546fe8f0e5a96b7f174c52e8a9025fc56f17ce6ae12b1362abe9b408cb9970b15fcacad1747b41be86bd2475a3e3c45665f88355"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/si/firefox-49.0b1.tar.bz2"; locale = "si"; arch = "linux-i686"; sha512 = "4e4ab25fc8048b4bd9129a554b465ced3ff773d9a7eed9715c71ab92852573712c58667971a1dec556917603c493872577b003168821350ceaa3dc3dd9e2211c"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/si/firefox-49.0b1.tar.bz2"; locale = "si"; arch = "linux-x86_64"; sha512 = "a8a9dad2f7563b686012a002b8fedac3b0a68f73986db717b901e832c57d1e4b2304b47aabcc17f5e453de3467caf8aabf9635e6db7772ef340fa38fed29eb0d"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/sk/firefox-49.0b1.tar.bz2"; locale = "sk"; arch = "linux-i686"; sha512 = "2e2f936448e58f8b3b46119e06b2ab5f1c181536939127de0a76931ac992f28ea307227d5c61aa8b440907aefaeb95cdf81f9d0184c78234f82f6d965c045c98"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/sk/firefox-49.0b1.tar.bz2"; locale = "sk"; arch = "linux-x86_64"; sha512 = "14d5960a06fb7135bbe78ea7123a7c151c4494898ad6ea1a5386f0532f0a5ec35ef58e3fcb82381afdf47ca1c0e6954d0903232d1ee06d9c2a606e706d22e82e"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/sl/firefox-49.0b1.tar.bz2"; locale = "sl"; arch = "linux-i686"; sha512 = "04f2f408835a9bdddd4a4c256d9a0040171760f5bce1b7d5e9c3a4ce2c74682c4016ee93f8da193280c7fd3d47ef839d67e0c480d5abd8c2235e61b9c039453d"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/sl/firefox-49.0b1.tar.bz2"; locale = "sl"; arch = "linux-x86_64"; sha512 = "631c9305f259aab364c71550ad14a0cfc6edc24a43eac08345e4331cfd4192faf710f077f5b2a5fad169b15098725c996587b96261dc18b96bc18f2a63c62e34"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/son/firefox-49.0b1.tar.bz2"; locale = "son"; arch = "linux-i686"; sha512 = "b8605cc6851440a615cb8a29d6baadb90fc783270253c25992299b1ced630094c891d41a49a9802e47aa2f9e1656875825dabb31450d7765658e5fd4f3815b10"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/son/firefox-49.0b1.tar.bz2"; locale = "son"; arch = "linux-x86_64"; sha512 = "c17946e4d664eefbeed3a3e3430b4c5b9ffcb69628344568b354092fb72142e7da107b1a88d1af89caa7ae63a0cb76814662fdffc9e179213df4e10a3290596b"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/sq/firefox-49.0b1.tar.bz2"; locale = "sq"; arch = "linux-i686"; sha512 = "ecab80a09b8c2eb75f38c14c169ee88f78266973d21da9295d5cdbeb329a43e3978feca7bada4ee049b24cb914dcd2a4ebaa95f42ed6966cf614c55a229862a2"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/sq/firefox-49.0b1.tar.bz2"; locale = "sq"; arch = "linux-x86_64"; sha512 = "5931bc9ddb86a39fd0edda4cbedfa6838549201efb882eb9a3c25ea88031fe4aed971ef327d6c356c99a0610a19e99a6ec49e755888b00882c6039f2c0e4cfc5"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/sr/firefox-49.0b1.tar.bz2"; locale = "sr"; arch = "linux-i686"; sha512 = "57895b4d8a0319d25288661b145d0aa59afbbd36edd8fbdf777d95f48fffa53d3dea546f465ce2070b801bcf751b03182711e5f74ca01f72258427fd37b2f038"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/sr/firefox-49.0b1.tar.bz2"; locale = "sr"; arch = "linux-x86_64"; sha512 = "67d96d069f43312a4c5870c2a9715e9aa5e7592b12302a773c8d6fd9f9979e63a5053d54f326d66374f216d1e69203fafef436be6b015269513f8f4a289aa796"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/sv-SE/firefox-49.0b1.tar.bz2"; locale = "sv-SE"; arch = "linux-i686"; sha512 = "f7b1ddace365492563a3eb985067e0c19270725a8db571b626000593b7e89130345b61199d50d41daadd499ecc6858fcb46115dac455cc62ed21460b916eaf41"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/sv-SE/firefox-49.0b1.tar.bz2"; locale = "sv-SE"; arch = "linux-x86_64"; sha512 = "7ac9fbd7b3175d82e73fe176481c3611eaf313fd006cf1191b79860f215af8847af88299fcf673d9e9a52db4a68a4ea4e95b632729c7b221f38e35926d60bc93"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/ta/firefox-49.0b1.tar.bz2"; locale = "ta"; arch = "linux-i686"; sha512 = "05a83591aaf1d5fc15b9a0445e2d5a20798329b3842992ccd82d22e4c788bbd34cdb46b09b48cf044369742f2b6244857e7d00b68160d094fe01465b746e0493"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/ta/firefox-49.0b1.tar.bz2"; locale = "ta"; arch = "linux-x86_64"; sha512 = "ec3cc0ae6d3765e9942436fadcb6208672a745df670a9e5881d243812b86023e8181f5b1b6d3ad3a2dbf8b93e80e3c8b2eee4622b511566b3ca7902b454d698c"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/te/firefox-49.0b1.tar.bz2"; locale = "te"; arch = "linux-i686"; sha512 = "ab9a5d17a70bd8685370898ad86ca867bb9a919169ef4c8ee6dae07836f4dfa58d3dead4565462b6f12d3c39c16b50ef99919f850928de0527c55563edac66ed"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/te/firefox-49.0b1.tar.bz2"; locale = "te"; arch = "linux-x86_64"; sha512 = "e3d216ee3ab627f7f86ef192f63a63f1e20bbc22df4947f53e3d9f8902e3871b7fb797eb409f0cf966be4da5b1ae05461c0b0dab7788a6c87069f940e1cc5498"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/th/firefox-49.0b1.tar.bz2"; locale = "th"; arch = "linux-i686"; sha512 = "4df9b93ba7bb70fa0c7c3c4e9a88cbfd8197c6bf628d2107a2a57105307a50cb08d8fc114e456b125164668c6f48aef1f0e4b71b52eb045e6b8be792e8b8e38b"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/th/firefox-49.0b1.tar.bz2"; locale = "th"; arch = "linux-x86_64"; sha512 = "51ed80166e1224db790dbdffc60d0eda618eaf67f473fb60ff0bb6a6f15d45fa8d44a31c6d4bc747752dac8fc3075371b4798040afaa594b713c331a91633724"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/tr/firefox-49.0b1.tar.bz2"; locale = "tr"; arch = "linux-i686"; sha512 = "7db1ec390a2d4f120eff21fbaee7700d106c4fd5c1ee1216bba0c7f896e6708bbc1da4c0f1f3ef1dd6f830ed58256fce36616950df9eae3307d2bffba6c3147f"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/tr/firefox-49.0b1.tar.bz2"; locale = "tr"; arch = "linux-x86_64"; sha512 = "7f1295dbb8c66e22dd818e9fcc910957328dee42ffed8ad3f987b1959bf6f1c01f8f94657dcf0c2593ff747308c6fccf14fa3716fb4b189fb03b77332300823a"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/uk/firefox-49.0b1.tar.bz2"; locale = "uk"; arch = "linux-i686"; sha512 = "81b1d6cd6e5666307ea592992084f7289a5eed5a732070fd65532722f6a345cb78de868e15f3e74dc15d97cfb57f346b7e36559c5f40769391f6616c897b218c"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/uk/firefox-49.0b1.tar.bz2"; locale = "uk"; arch = "linux-x86_64"; sha512 = "752a9aaafe23559f2cb15e6652012803eeca5e3b584dd5515fc496d62671090272b7154f1e5f701a2cc6f848b5d2a1050966c1b9cccfab7cd16fe88d66a101c9"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/uz/firefox-49.0b1.tar.bz2"; locale = "uz"; arch = "linux-i686"; sha512 = "44b6ea23bd56ad74892f00f1abd3aaf1d0e8d748814b509f791dc0ac4d303c61cb3f5d9988c07028e9dfe88ef8130fb300c131b96fa1f1b5fb4693c8a2dc0c4f"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/uz/firefox-49.0b1.tar.bz2"; locale = "uz"; arch = "linux-x86_64"; sha512 = "94a7da589c758fc5766ade665f15af4704aae4e0729fe0a92235804c42a280bdedc3b0d2d23f153243765fb803d05023c1f4900367fcbf1b60ec5a9449f99226"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/vi/firefox-49.0b1.tar.bz2"; locale = "vi"; arch = "linux-i686"; sha512 = "e1674665330ce86c9ce6379e81f71ce7e1dd58f1dcf7ce4141a681e1135262565021c0885e884065b5f3637884ef25f7611c7ababa614e0f3e561051925fb168"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/vi/firefox-49.0b1.tar.bz2"; locale = "vi"; arch = "linux-x86_64"; sha512 = "74da3a781ceb5937e42f3aa8b6f2aa3481d439e67ab16e1745a9248efe96129c6962583276e06e417b7930ac65d4681f6362eef4cb916a5943f50b7ef98aa4a3"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/xh/firefox-49.0b1.tar.bz2"; locale = "xh"; arch = "linux-i686"; sha512 = "052c729f9a90bb02e60dc5d0639fb9639669aba511fbfb5cb727500892e58519f3b6231144741a163622a5bcbe855d38b530780350c5caf33d43d297769b0aa0"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/xh/firefox-49.0b1.tar.bz2"; locale = "xh"; arch = "linux-x86_64"; sha512 = "b0c436603ed7ab7004e84f2e0654f04c5e5f3fb7866faa7548e675e8246adb2a60528d476292be99206a3e1b6342ced48d80031c8caba11f01a1534ae17901fa"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/zh-CN/firefox-49.0b1.tar.bz2"; locale = "zh-CN"; arch = "linux-i686"; sha512 = "c591789133b5c73026d1f5131581f91c21d8c6ea402dfcfb80ff1dd5e07f7985274ef8682fc7a576421b05721df9533a14bb34ba95193178e62b6e195fae0ae6"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/zh-CN/firefox-49.0b1.tar.bz2"; locale = "zh-CN"; arch = "linux-x86_64"; sha512 = "762eec0143e00d41d909f865dfef006a460a5b046b75f1132b63d76dff6380d40284a04b07415785f0bbadc457cf66f3aed1bf47e34cf5d5909fb6f8fddf58ec"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-i686/zh-TW/firefox-49.0b1.tar.bz2"; locale = "zh-TW"; arch = "linux-i686"; sha512 = "b7eacd7854170626e9135d2bd5360b9d2073afc64ecc9f963de8b03ea550a0f6d2c4bae48268d2f9d0c09e7747dcbf8d06eaff4951cbf5953c237a8461b163df"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0b1/linux-x86_64/zh-TW/firefox-49.0b1.tar.bz2"; locale = "zh-TW"; arch = "linux-x86_64"; sha512 = "78968866d80798b3360d3860db039b4f5ab4d62618be681188799efa675ed83b84b4b266dee84ff26d27afdbb8a08f3a3bf73f3bc85289473e7e7836e4a92cab"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/ach/firefox-51.0b6.tar.bz2"; locale = "ach"; arch = "linux-i686"; sha512 = "9922d61aca30e0b95209010be736dd144c3c65986c08852798997cf3cf8e4969f815565bcdf1f0d82a81bbaecf3f4cf478cda66a2cd757f36043717ddce3385d"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/ach/firefox-51.0b6.tar.bz2"; locale = "ach"; arch = "linux-x86_64"; sha512 = "de99e6e07ea084406927551ccbb549bfe583e21e16873707124d897c38dc04b183476eb620f5d457e19375df51a19d3b57bc3afe344efa07d7832ac973ea30eb"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/af/firefox-51.0b6.tar.bz2"; locale = "af"; arch = "linux-i686"; sha512 = "cbd0e1e659c0568ee66004664cb5277b1df291747fa22d5dd2b0c68edc59ee9efd3bdb14c6ad60509dc613e80e955314c50b589a5aa9ab52dcfb7efeb8a0772b"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/af/firefox-51.0b6.tar.bz2"; locale = "af"; arch = "linux-x86_64"; sha512 = "e4a653eec075b975f3a3d6f73874909f61a82bfded01935ea152d56b7249e726099ae873a347adff4d6fa82f73a267415711483a56845980d199fbebe57a9c23"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/an/firefox-51.0b6.tar.bz2"; locale = "an"; arch = "linux-i686"; sha512 = "c6705fbd66a251d3427da98d1efa67d7a3f8683f166b7daab8902480c009b4ab183ff1d4f2242628ce3c11a828b74c605d5c17322234cb7972930174a070bd41"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/an/firefox-51.0b6.tar.bz2"; locale = "an"; arch = "linux-x86_64"; sha512 = "cf5df1e60d2ee8387c173e5ea73699b29ba80251d2497b4e3cb25cfb37fe2bf8967f8d39be091ae5adea2d30cb8c911124bd4272c92e9d0ee811f36d13c62efe"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/ar/firefox-51.0b6.tar.bz2"; locale = "ar"; arch = "linux-i686"; sha512 = "d6c91653320898857096b209f2572454351edd4aa4778e8bc91a6628870ca476f80ed48bd17b651e4dcbdd75013dac2b325cfe4e9aab6e62fbeec16f7013e8c8"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/ar/firefox-51.0b6.tar.bz2"; locale = "ar"; arch = "linux-x86_64"; sha512 = "0e128e4c2edde6b9090e1278b5da9bfcf6fc6cd57c739fdad86084bc0e64637b6d9ce1fd31b1da53b85f460f26d9a02b7c95bd427de08dc46415e35dfa381b1c"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/as/firefox-51.0b6.tar.bz2"; locale = "as"; arch = "linux-i686"; sha512 = "1fcd00eaf90603969e1e57ab486c088d7ca769c67382398caf1d0217134d6a814200f4c64a6ef8a5a58647e3cb0d45cacb6cf2cf64d7139443077905e4ceca72"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/as/firefox-51.0b6.tar.bz2"; locale = "as"; arch = "linux-x86_64"; sha512 = "fa223a00223abe964d6515e195dc4bef25a420ffbdc3131d13210ff70c584707757dfd44e53d2a3ca062cbe860ff3df590cf423fad5dff5dfdb1721f321a5b98"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/ast/firefox-51.0b6.tar.bz2"; locale = "ast"; arch = "linux-i686"; sha512 = "0314d493a15bd8069a6fcd4c86036e300ca7391f9b881d355065ebc248f9a4242787cfed6f5d13c7de828340c9013a325f011995b9544610aa93ade607334e99"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/ast/firefox-51.0b6.tar.bz2"; locale = "ast"; arch = "linux-x86_64"; sha512 = "835c02a80228fc317d8bc81429fa6331a5381e5ce26b7cf315c30d05e7bf8a29197d4105335bf8b32b0a9e2b65acd8c9c617afee5af3339777a0e23558dd92c9"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/az/firefox-51.0b6.tar.bz2"; locale = "az"; arch = "linux-i686"; sha512 = "a63c05959fc74bca79f6760a31ce0be0ab19ebf372a83fcfb5b2e1807e025462f4fd6236f8848bc2f6066048862cdf6b68fa66de0aa3a0b0d7c65ccca097d9d6"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/az/firefox-51.0b6.tar.bz2"; locale = "az"; arch = "linux-x86_64"; sha512 = "dbf48a762de944e8ffd39d65d4b94f67e4b2d3bf91ed0763e44f32343af0dc1183087421d0c6f737c6826e94fb205772cd6d484bfb45b19755948d602d02ae91"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/bg/firefox-51.0b6.tar.bz2"; locale = "bg"; arch = "linux-i686"; sha512 = "a514ee7d9acdb0dcb95a5c02c8d786481b1d66b8d7de2c8c05793a330d711dc5b0136a822dacc6cf81e338a9e3eca93ff9a25fef457739c5767bd01ec10458f2"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/bg/firefox-51.0b6.tar.bz2"; locale = "bg"; arch = "linux-x86_64"; sha512 = "6bac773ce99d25062f188a01c3006689ff7441af29a80da323e7ebe09c678a426cc3938f0a1a83051bb0efe791e4779a92b6cd09a23c676ee3629ca2d8a43da7"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/bn-BD/firefox-51.0b6.tar.bz2"; locale = "bn-BD"; arch = "linux-i686"; sha512 = "2738e2e97d52003b4f9b55e8912bceecc86a23c4e1db432db9e9d552e91c33bf0e523a924fc1011e45887b9432af801fab93574d808cfa1dbe77a0ae6056a2cc"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/bn-BD/firefox-51.0b6.tar.bz2"; locale = "bn-BD"; arch = "linux-x86_64"; sha512 = "2648c10bddde134ee699c0b26be5520a8a47d2cd0ebe99fa114b2ed7f19ba7fddd0696585732d154db67099795e6aec922d49f9871a24eda571bd6e0c24dea35"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/bn-IN/firefox-51.0b6.tar.bz2"; locale = "bn-IN"; arch = "linux-i686"; sha512 = "c88648df222958a1c3c9ac71e54f2b248625a6637e46c2f39419ca3c57215f5af8ce16f4662326d24712f4cdf0b5f533e48a4bfd903e5cba66b579384d3bc7c0"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/bn-IN/firefox-51.0b6.tar.bz2"; locale = "bn-IN"; arch = "linux-x86_64"; sha512 = "b97ba8c5bf7f282a323ad3a4e423e85cb9122b470a94eeca91df3c00c6ab3331e02bf36ad7e87684ae3f73770c213ba19ae7179117228ac7808ad2fbe5d99145"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/br/firefox-51.0b6.tar.bz2"; locale = "br"; arch = "linux-i686"; sha512 = "a5b160f8776b396dd837cc574cb4ae625e58afa0443ae12ccf857d52b5d5e16d21bea6dcfe7a77e52db6c038541f01efc78d4da0de74625992e3d833f84f0b94"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/br/firefox-51.0b6.tar.bz2"; locale = "br"; arch = "linux-x86_64"; sha512 = "a03eb659b54067721861a89d578b3fca086b02c8013e7e05b724caaa020f301a4015d81e4d9f2dcd69223930c94b4e0e7f12d4e0de4b2fe271bf903b75ba9ca2"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/bs/firefox-51.0b6.tar.bz2"; locale = "bs"; arch = "linux-i686"; sha512 = "18cb9436347d690aa1c7900f8eeaaccfcdc585c3ffe921cd77860596cb8cde01174d709d03489483b5867fb9d647baa9885673b983037656f020d245f4159da2"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/bs/firefox-51.0b6.tar.bz2"; locale = "bs"; arch = "linux-x86_64"; sha512 = "c64e5146ea1bdcd65b46dca33c8ac772d4c82ad49dc01fb4f1e51a56595e68167f7e4c8ecbe0fa3df258eb6f1ad6c2d9d0eb281e5c7b92831a03f7fbf8e2ddd0"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/ca/firefox-51.0b6.tar.bz2"; locale = "ca"; arch = "linux-i686"; sha512 = "db8c8aaebf6679bd28d615e1e2304285ed0848906f93425a255171f48d6c75aa40fb2d88f71cf85eff3410d199032ff152585e277efe78c69440778705ef3b26"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/ca/firefox-51.0b6.tar.bz2"; locale = "ca"; arch = "linux-x86_64"; sha512 = "8c27b06059b07d2c915fa11ec7d57c7519093a9480dac97cd6c4a024777a79d64687cd3d0c48d0c723aa10ee533164c4f67be9ad6d1379bffac98755a4a3a980"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/cak/firefox-51.0b6.tar.bz2"; locale = "cak"; arch = "linux-i686"; sha512 = "47cbf1f054fa5820ce1f8f769ce90ac26758f99ad300069e3a6c029e01115c3b12b08c812ebe1309667c17c1640d6cb2e7174fc6e050db8f013003436b7845aa"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/cak/firefox-51.0b6.tar.bz2"; locale = "cak"; arch = "linux-x86_64"; sha512 = "94ffb85f667d4a39c0de3d4b0853e72e9ad2d60822e7224110aefb187aea5ece6c0be0e82ec4d4f686c6ad710b73c54c70cae10282ec0b48ca6623d3d7558444"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/cs/firefox-51.0b6.tar.bz2"; locale = "cs"; arch = "linux-i686"; sha512 = "8c5f82a831e31c42629f5e6c6406d5a1ecee37506b89cad845abb110b0f2b5a809ce3e81e8a70915f993fa96891fca4a5e36ff778bd45d23d2671ab55da9f874"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/cs/firefox-51.0b6.tar.bz2"; locale = "cs"; arch = "linux-x86_64"; sha512 = "2523492cbcd990a0204dca79f393b7e034d1337e9ff81398de78575d2a98c806680cc363f7339514d9f57308bfe4cd863c8710f6bb6373487b584aa1e8de4077"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/cy/firefox-51.0b6.tar.bz2"; locale = "cy"; arch = "linux-i686"; sha512 = "77080af629015197663e1e3de1feb76da0ccba3ce1341cf7592ef8d6d0b477f1349d944762d1e810d1cc3c8a0eb23bf44f73e7c00d07d1e9c2a0bc2e2c1692eb"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/cy/firefox-51.0b6.tar.bz2"; locale = "cy"; arch = "linux-x86_64"; sha512 = "3c4f972e53540ba28be94bdc1e0b67b6c744a20f0ce2c6bfa7a1a92ab20ba806a73f39c5c0afb0e83ed5c822dfb42ea7c0c2806b91cd889070e148de8e5d47a0"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/da/firefox-51.0b6.tar.bz2"; locale = "da"; arch = "linux-i686"; sha512 = "d082549257e17392f75485548b1ed8062e155687c3d2f0a3287ec5139e6ad1db9cb4a8a449ed2ce18650e07719b03a3dbe1ac25589102c322727767a6d663dd9"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/da/firefox-51.0b6.tar.bz2"; locale = "da"; arch = "linux-x86_64"; sha512 = "8b268c1d9e35a91e2a71623404fead75966d39d893944c311ceb572e02673a06c61ef0e08b9c0ba246e6fcd23772e94e7531be535b69c27840478ee1ce3cbe6f"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/de/firefox-51.0b6.tar.bz2"; locale = "de"; arch = "linux-i686"; sha512 = "0b58e025fc3490c6b94df2f60c722edf909bccec3264bb9f618e54391cfbee8800a6ae1a2c625f68b975daae73596464bb53ffebbedd545bd4a79e77c1d9ca33"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/de/firefox-51.0b6.tar.bz2"; locale = "de"; arch = "linux-x86_64"; sha512 = "c2fb608c2c71412f192b1b910ffc7b270fb8d02b52c76af26fafe362c0cdb282086e902fe1e9eb3bc9d2d022e474816c45092480d199fe3b039083f0de94a3e0"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/dsb/firefox-51.0b6.tar.bz2"; locale = "dsb"; arch = "linux-i686"; sha512 = "4f0633677c15ce3b9a4d3bade50c5d4e18c76b898cf82a6169213674220d4b82132912947aefdc2ff90e6e639224d76f3508242d664d051475366efeb4adf84d"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/dsb/firefox-51.0b6.tar.bz2"; locale = "dsb"; arch = "linux-x86_64"; sha512 = "d7d7ec0004bf4712082c57f30e069cbcde9c70cd10d412979228f18fe2056cbab9c741cfda76c8cf5ffaa3086320dd4fede0e140fcc88fe200944e2f407f7606"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/el/firefox-51.0b6.tar.bz2"; locale = "el"; arch = "linux-i686"; sha512 = "089054405ee749b30895a8c6cd83a630399ef9cc493dd4f50d0654241ab35ee63c989ce03996f0921820ae701e90bd7af7b6a0058ecba25aa5272ba151da9f02"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/el/firefox-51.0b6.tar.bz2"; locale = "el"; arch = "linux-x86_64"; sha512 = "2fc754b1d951b4d008d9d7a0cfd2555e394e09f8a28adf00334fa780532d8694a78c19831500fda3aa1e85bbc649b7156400d659de45ac4d4ecc3dac3c642124"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/en-GB/firefox-51.0b6.tar.bz2"; locale = "en-GB"; arch = "linux-i686"; sha512 = "4c4ec11a0642efe15b82991e8e3d614a239dab86866773b2ad966c45d928a0b6cba73c65bddbd0233cce0bcec7489ee2899115a8e38f02db1490a5a9814a5c30"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/en-GB/firefox-51.0b6.tar.bz2"; locale = "en-GB"; arch = "linux-x86_64"; sha512 = "6dcc54ba099ea5c6845b109eb98cee58dff6bf2dbf442723a3369bd673d43ffa01c7656011d6280f5588e4ee49e8214de327ac3d7fd92ea0cf10fc9a00a3ccd6"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/en-US/firefox-51.0b6.tar.bz2"; locale = "en-US"; arch = "linux-i686"; sha512 = "7c53368377d6b4258ba5a64fe16af394b514abcf516d04551c7fb22ff09ccd4fa37b0e16a21af179329f78c8970179b4d66b2882ede54960e9a7524403f7e7ab"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/en-US/firefox-51.0b6.tar.bz2"; locale = "en-US"; arch = "linux-x86_64"; sha512 = "d3c8f949401e6b9ade7e620e0c0f9324d1440a313521d385d7ed038d16628c70762a90a46c45eb74c6880ff35c3ac856e3a083317c016ece2d4bc8e740fd6aec"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/en-ZA/firefox-51.0b6.tar.bz2"; locale = "en-ZA"; arch = "linux-i686"; sha512 = "f774c2c8803789dfd335dd6bdcab442eaffb2b7bdc1a3a59509060af8e1baf57e56bbca17224038fbadef1168ae20063cae8e6f98912ee35f031870ab65155b8"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/en-ZA/firefox-51.0b6.tar.bz2"; locale = "en-ZA"; arch = "linux-x86_64"; sha512 = "802e89998c068af3712daebe727d7e865446189b436823175dceb325ea4c3aad8a0b4786961cd28013fa892d9b94d3bafd967bc8d3ebb40bd7d97a76a7c5bcef"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/eo/firefox-51.0b6.tar.bz2"; locale = "eo"; arch = "linux-i686"; sha512 = "103dc2a263d1eeb0bea61e3ddff6d16e399501c59a61045b5821654af7804bac571ce6fceb1e6616da44384d910005cacf44e515028e5da8ad58f1804298c0be"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/eo/firefox-51.0b6.tar.bz2"; locale = "eo"; arch = "linux-x86_64"; sha512 = "0204acc897416b13938127b4fcf57eae2abd50f4cead0124f3422efd4e9122c8d3861be6fc5da0d996260205b938e36cbd064d4f2fde48b1e6afcb2dc3f92f1e"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/es-AR/firefox-51.0b6.tar.bz2"; locale = "es-AR"; arch = "linux-i686"; sha512 = "dc3f7f830ede78340d323f5062edc564fec3bca2eee32bd88d729227e8b7cda4739e56dca54fd7d8a7856778843012b3c52acf4d773ab53249ea8c186896b7ab"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/es-AR/firefox-51.0b6.tar.bz2"; locale = "es-AR"; arch = "linux-x86_64"; sha512 = "1a35ab3546f2358d8c3dcfe85528bb42142fa44a565b0d6dedbbff95d230e25ee5627753de50d7868617de5086e8ff0d668626b17cf8f47c320865e1c5a4a3f2"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/es-CL/firefox-51.0b6.tar.bz2"; locale = "es-CL"; arch = "linux-i686"; sha512 = "ae16ef4d94c2b75bf57f425aa670ab71525655a1a092d7151a513c783c7b4967f5b7e0726e4aad676615165d84551f8ec59b7cc8ad18570834e9abb1089fca6a"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/es-CL/firefox-51.0b6.tar.bz2"; locale = "es-CL"; arch = "linux-x86_64"; sha512 = "9f389f9e5bbc30be888942f62dc35360d01d195cba416066321c5f2153f9aa8c7d02f52452ecf1f5d0d290c246066b9fb19f93141ffa0dbced4624495ac3c515"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/es-ES/firefox-51.0b6.tar.bz2"; locale = "es-ES"; arch = "linux-i686"; sha512 = "cebede3a4d5750f5b7160dfb8609faf7c73892689da08c7b93b87b6cf159184e04016b3ae92a49bfb8d40c50ac45a8806ac45c30b436a466875cedf4a0270994"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/es-ES/firefox-51.0b6.tar.bz2"; locale = "es-ES"; arch = "linux-x86_64"; sha512 = "b58dc439dc2186bb23e5e401db162717fa0adb90517660516cda553f00100120da2db07e5de8aefea2159537408217825efe1e8d843b75175848f1cfc88f6151"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/es-MX/firefox-51.0b6.tar.bz2"; locale = "es-MX"; arch = "linux-i686"; sha512 = "3a263de75799e50ec08961b0f25c3e5366129aff7e466f9dcd8820f1f455cf1ec959ac9a4388ae8edd92f3f5a1647068cd699b809f1e4de9ea9f3dd25b4a4e4c"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/es-MX/firefox-51.0b6.tar.bz2"; locale = "es-MX"; arch = "linux-x86_64"; sha512 = "1d466f5c2c2f557fee8b9997fb9f17bedcdc3287a3cf972cb963e47cbf6cd3a440296ffe60d93a45394f83603445a31338f055835f965a09fe4f32839b628ada"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/et/firefox-51.0b6.tar.bz2"; locale = "et"; arch = "linux-i686"; sha512 = "70f2d3009b715e27b350bcedd6503a311db8a2c6c75fa29eacdf13a8ea7fcc674680f59dfd18bc2b0440dd528d8e63bd885ee5ff3dfc88361efd3fb137ff3903"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/et/firefox-51.0b6.tar.bz2"; locale = "et"; arch = "linux-x86_64"; sha512 = "c9c51ca82cfc0062576a230a0f78900a62a188724f7eecd3786e78e37c4ba410dcef2953cbb5ffb4eb4c9f750bfc70ea0aeafdd75378b51bdaa825521db0f862"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/eu/firefox-51.0b6.tar.bz2"; locale = "eu"; arch = "linux-i686"; sha512 = "8cfcd9b768bb83978697db322ead6afe39b6dfee7c05b1b4291f2acc9f84e450c79f419b3a158e3e9757c36d739ecb4325ac51d129015309999b5b0cf8f53df0"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/eu/firefox-51.0b6.tar.bz2"; locale = "eu"; arch = "linux-x86_64"; sha512 = "cda51c8a34b72ee822542da864f9de3d43a7448d5db77ca775eb7cdbbbc99c432918bd397f53a284cc30257793f1cf50d80de4621e53af99f61b2e6542a27751"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/fa/firefox-51.0b6.tar.bz2"; locale = "fa"; arch = "linux-i686"; sha512 = "470b4d9545479ed1f97059d4af318c7f38aca6bd80754c0e56c78912164244b4ebcb9aa697a653d608bd26919f76fe0a12dcd02423315570d91aa4b822ef2e76"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/fa/firefox-51.0b6.tar.bz2"; locale = "fa"; arch = "linux-x86_64"; sha512 = "dbe302146776542e63f0b98149ad72f514195f7c3f7589a14d9bd96b36d60710bfb2df8a8a931122e58ff75909832a6d26366b171bcb2c78c08c17073726d8fe"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/ff/firefox-51.0b6.tar.bz2"; locale = "ff"; arch = "linux-i686"; sha512 = "725c8f4e6ee92877635993bdc83b5d6098531274239e74399cf94c156dd0193b900564a6a1c99b2b57c896f43b9769ccac1d6f280f5338e407a07a740ee4ed2e"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/ff/firefox-51.0b6.tar.bz2"; locale = "ff"; arch = "linux-x86_64"; sha512 = "7e5c390195258b50f5e9a43def66550b11c1f410b21e69e141bc5903ff0cd6b9329a5927249078d64de31edfc8f711f6616f8d9e2432e5e1a03d4472ead43bc6"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/fi/firefox-51.0b6.tar.bz2"; locale = "fi"; arch = "linux-i686"; sha512 = "8ce26856aafb9b496b703c5446a9aced0edafd21c321496021da83efb57514c38ec4065e0f3bbc79342eaab524a4592fe7d5757867bc7af778717857d1701b45"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/fi/firefox-51.0b6.tar.bz2"; locale = "fi"; arch = "linux-x86_64"; sha512 = "152c5c7721c373a1d618adb8b89e47365a5e45d621c1dde7070c57ba34091a31c712920d465dbfe3b4fa4c92547249ea4cd296b1524e774d151d512b8931ccbb"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/fr/firefox-51.0b6.tar.bz2"; locale = "fr"; arch = "linux-i686"; sha512 = "3b5a92eb7c1871551b16a4374713df0db4d9af2d288e4a1b4851ad805076c7f4359d164ea1079ea6a48dd42f6496bab748037c7fa2f3be338823279552726f87"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/fr/firefox-51.0b6.tar.bz2"; locale = "fr"; arch = "linux-x86_64"; sha512 = "cad55002d699a0791496f4b839899d1c3ed312765e62f4c02fd9886b349f7b2bc9a531003c97be3ff75838d011cef2b82b7ff3a2d41f84a2189d098a8557577e"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/fy-NL/firefox-51.0b6.tar.bz2"; locale = "fy-NL"; arch = "linux-i686"; sha512 = "807180c0e71c13ed5e9081c135b9de19b0f9ce60998b43d6c22364a6f07d9b8e835993e5a12d8c81f3090d48e53bdf84d43f0a1c5829e0e88b273e4e1eb92f1c"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/fy-NL/firefox-51.0b6.tar.bz2"; locale = "fy-NL"; arch = "linux-x86_64"; sha512 = "6e6e2efa9b4a5b9ddb745a2a037ac83838a6038f4f97a4784cdc9421cf8b673b51d1c814ab0b5e6114b27bb19ac3b32a42f15e9b0db052025246de53268b40b1"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/ga-IE/firefox-51.0b6.tar.bz2"; locale = "ga-IE"; arch = "linux-i686"; sha512 = "a7e2fa69e0a9eddb019874c450a9874c9b302084872c536f04012990898e7a9fabe0eeaa1052a1888dc21bff54bb0872c3bce9c4df6c0026caaf93e1ee8fa533"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/ga-IE/firefox-51.0b6.tar.bz2"; locale = "ga-IE"; arch = "linux-x86_64"; sha512 = "da861b0bbfabc6dfaf46f9b45038794da940023d0428b97957f220f8287d081972e2e97383c7e3d31e4af53ad769ef23490f451929c9ab2bb58f3eddd1f02c5f"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/gd/firefox-51.0b6.tar.bz2"; locale = "gd"; arch = "linux-i686"; sha512 = "9d61356a39ca08c751668969268fd219ee35428d9353f2cb8862d9552403dbe8c05ef961e0694eadaa82de9207e90fe5b349dc27a4d50981c6eb83f59617af85"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/gd/firefox-51.0b6.tar.bz2"; locale = "gd"; arch = "linux-x86_64"; sha512 = "54c1e3c396859376c7d95808f39b564380a875abda74ca7eed9ee96947f4afff3088b30d6b7c70de830bca81a8abca9c0379733130be4617e6e44218a96ea3e7"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/gl/firefox-51.0b6.tar.bz2"; locale = "gl"; arch = "linux-i686"; sha512 = "d72a791e014c7c5a6f6304f35c74f572de4ab68f514598fe076d6218b152bd12f2a764262888faeac397f802849920adfe5e97a3b7d4331e43e4ce2de75aa31f"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/gl/firefox-51.0b6.tar.bz2"; locale = "gl"; arch = "linux-x86_64"; sha512 = "38981f59e6499e1f0d7cfb88a0a62ea0b3874a5b956442da0c9a2852a8c35e6885ba467084c74b482b1bec80513c37835a9dbc5372898ec4500f4de9afb5a71b"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/gn/firefox-51.0b6.tar.bz2"; locale = "gn"; arch = "linux-i686"; sha512 = "c44d87a70e45d31412f38d0ba0a25a1b58d661d91c7a9b6deae19ec40c88da4a480933ba257cb83fea4120d31c3f959ce9c5ad0da4c10247b5fa2c68fdee6aca"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/gn/firefox-51.0b6.tar.bz2"; locale = "gn"; arch = "linux-x86_64"; sha512 = "fcc6c0432e61b90c7cf8983846d89fcd89c7b9a87eae2c6421194a8c26a4210e2dd7ec87be25e3ee291163fc70ea7703f26adc73137d4adc7ec09b09c152b071"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/gu-IN/firefox-51.0b6.tar.bz2"; locale = "gu-IN"; arch = "linux-i686"; sha512 = "a782a9bc8a2008a37feb74b4acbbb679eb406fa04745d38196f16304275727cf2215e301f3f25df443430684dffe800534e6f7bd7d35effb2f051895b8426825"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/gu-IN/firefox-51.0b6.tar.bz2"; locale = "gu-IN"; arch = "linux-x86_64"; sha512 = "eb59334967705f215d5ab445e829ed1d1c53859589b08610d349cf2bdf28a36bc1ebb1bb18afcb8279790ebcbc6dab032bbc0389020959709d46e3e23eae08c2"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/he/firefox-51.0b6.tar.bz2"; locale = "he"; arch = "linux-i686"; sha512 = "e0cbf0607d45cf2f079ca2d138d26866bc2d0a65be9e64514417f77ecb89a0228ae228b876af56fce712d9e47aaa41f93c3c908ded27e2a8a1224b2100919f92"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/he/firefox-51.0b6.tar.bz2"; locale = "he"; arch = "linux-x86_64"; sha512 = "1202568d873164c3bd104ccccdde7e201a7e15b88aed1ea6f1fc76099df98fb074a99f3f3fddcbd46992c603a7009ce6dc769641737cac82755c0d2e5c410a38"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/hi-IN/firefox-51.0b6.tar.bz2"; locale = "hi-IN"; arch = "linux-i686"; sha512 = "9d05eff13dfecee6f488d7748c3d109ae6d441760a5fe385011fe1a9d7cea2e4c1a8e3fad8fa8216a45af2d8f99ec8467d588f8fae410eb52f71d408dbbd03b6"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/hi-IN/firefox-51.0b6.tar.bz2"; locale = "hi-IN"; arch = "linux-x86_64"; sha512 = "a35c3679d390ee6bc1ace19a07dd3e96b4bac7147d698ebec42f1fb800c9f9f259c194140ff821a8fd84c0ba8171c5aea01257987b051a07a705c82b60ac1f34"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/hr/firefox-51.0b6.tar.bz2"; locale = "hr"; arch = "linux-i686"; sha512 = "fe1a5472ce390b5f6825a40176e3e3e13d79931cf44447da06bf08fa8c483368f95877b848302e7e9cb0c4a8b7e13db03fb7bf895c78b8b5ac6e707dc2ac5979"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/hr/firefox-51.0b6.tar.bz2"; locale = "hr"; arch = "linux-x86_64"; sha512 = "f3ee08747a0b209681d53fcb82b139bc75797f0c7b60bf35e55c2b702213fc99e99133d9be0df74a4b925d706583f545bd33d99b96ad5eba2e7d7308c4bec318"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/hsb/firefox-51.0b6.tar.bz2"; locale = "hsb"; arch = "linux-i686"; sha512 = "a2d170a74de204d24a883cb0be93f9c55eaec4d8872a85e59be3005df7b6f78f02d95bcc0cf24e9b9ee6f6b9e301acec7e692d259b98718b4088b84c56ae0347"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/hsb/firefox-51.0b6.tar.bz2"; locale = "hsb"; arch = "linux-x86_64"; sha512 = "22ae95d23ac80add17200e042e03830cd1e9e709d34e5906217abacdd626533e1e1c359e1312b2dcf44d0dc184e0d9c523dc870c04a759c7c8d7f42abc05391b"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/hu/firefox-51.0b6.tar.bz2"; locale = "hu"; arch = "linux-i686"; sha512 = "dede1498aae89a5cf2e78ce927efd801d058fa0a7cfcda6d2aca816b913206e39b78581f48100b2ecde4d9408be30f221e66cdb7d1d1b4e9a86d5a8beed372b5"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/hu/firefox-51.0b6.tar.bz2"; locale = "hu"; arch = "linux-x86_64"; sha512 = "552c6398313ac5e8d49373ac8959b3e39281a067ecceceef8d3d26c53ec276a8fcde181dc96072cd82aac8e952f81a821f87349a58a9f43c4ee41410bfc955c8"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/hy-AM/firefox-51.0b6.tar.bz2"; locale = "hy-AM"; arch = "linux-i686"; sha512 = "2d3b69d793ae4483dd73bd205f6692f86254735a885609033994e697b6df0b843612a10df0c227af280b94d1435555b3caebaa7ce0d229e3960f1d219d1ba180"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/hy-AM/firefox-51.0b6.tar.bz2"; locale = "hy-AM"; arch = "linux-x86_64"; sha512 = "760b31298a9f7ee58035089581742e3a855aeffa4ba7a2b34d927e52834a684329f8849201f348395f3224e60aed6540cdb76ca3c5a8fcb0d34c343317423917"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/id/firefox-51.0b6.tar.bz2"; locale = "id"; arch = "linux-i686"; sha512 = "be01e48d71ffcfd99973e1d34d3c8779cd79c13a16f325f9e760ca282d7ccf1582e3ee33eecec2f4146ad4001ecf9d8c91a6dd433918c4993e5920fd743ad50f"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/id/firefox-51.0b6.tar.bz2"; locale = "id"; arch = "linux-x86_64"; sha512 = "98bda73d7c1cbcccd64b186747e5cbd9a798704c731bf76f05710be945be08a0f6538d1cbf9a839d939371e57428a3be66feabf06cc6166aba27541599748dcc"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/is/firefox-51.0b6.tar.bz2"; locale = "is"; arch = "linux-i686"; sha512 = "45c337a8c734778f20ed5199911c24b92dcd24d27d4213b9932be675b215fcca39953e914c0ad4ffd35b4401f8debc89cd0d28e5c3b980c94e9f6d1d59f8b105"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/is/firefox-51.0b6.tar.bz2"; locale = "is"; arch = "linux-x86_64"; sha512 = "f28cc5822333bd4497a7d5f5e494e551baba9b7c73f7eb303bc7fc3b907333ebf759ad7e05c0e1b85eec178795ecad4803d0dd872470ac6a55ec4f3856e6596e"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/it/firefox-51.0b6.tar.bz2"; locale = "it"; arch = "linux-i686"; sha512 = "62e5bc1312904866c09a82ac1a237e0c6b58ddb43f5ba154162ba5d4f51b0df5c54b92f4d6cb0be76f6d5aa5308ad2cca079bdfdcf1893d03f470898d4524015"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/it/firefox-51.0b6.tar.bz2"; locale = "it"; arch = "linux-x86_64"; sha512 = "fa7c0cee7be57b9dbc48785a9320597d03a68508578be7dc0e0d465d30c0d6fc54f330b2f65bf21be0c99c9355daf93f53a7a3b0dc25eda2dd109ef7fd04368e"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/ja/firefox-51.0b6.tar.bz2"; locale = "ja"; arch = "linux-i686"; sha512 = "14d190cd8b483af4d9d7c97441e9fb198c1f675e4cc8878e692d940366ad83a48a279957270a4022ca056e0bc28b0c8de625bc81025bef4db1d5e39942376747"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/ja/firefox-51.0b6.tar.bz2"; locale = "ja"; arch = "linux-x86_64"; sha512 = "d62906737f20a0e886800f883fb671ac798b3cfa04303d364ce513040be3decac3da828578c8fb971908e14cfe07b82021d33f9c24216dc2869524fa2923955b"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/ka/firefox-51.0b6.tar.bz2"; locale = "ka"; arch = "linux-i686"; sha512 = "417ae8fca27325c1a1f20b3ee88845db8f03350287869986c6665bd64970bb3f828ebbb516d36c5b9048d848c65f767c539198ee5aa29047cf145851b3a1148c"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/ka/firefox-51.0b6.tar.bz2"; locale = "ka"; arch = "linux-x86_64"; sha512 = "c4d445c52a0579bb6e38e1919a47e7cb26667a1e9b7c54a3d581d56cb55e810fc44cfaba17a89e65aff214d1ad22bb43141a2a776f86a9e068ccc0743c9dc202"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/kab/firefox-51.0b6.tar.bz2"; locale = "kab"; arch = "linux-i686"; sha512 = "64b677faaf6550dedc968116a86342facc92d7b2aaff8e2f47256a9151bb834e79fc08597808f37541b303eda283d9b8138972547db614a07ab87ea339f44df7"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/kab/firefox-51.0b6.tar.bz2"; locale = "kab"; arch = "linux-x86_64"; sha512 = "51971dab1d818c0360e351738f96083ebfc493397eb48e39ea2ff129c155bbabe50b591180f32ff6464c66fecaa8fd8b872e206846450ae8e6c76da21c538f8e"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/kk/firefox-51.0b6.tar.bz2"; locale = "kk"; arch = "linux-i686"; sha512 = "3674f209fd4b80daf47319a5ae6014490a9cfc3a64c548d84439dfdb14a3f2053c94cc5e47285924e21409fbaae03cd1f2fbcec02bf5fadf1567379d172cae2c"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/kk/firefox-51.0b6.tar.bz2"; locale = "kk"; arch = "linux-x86_64"; sha512 = "a7621c7f77f3315bbfac9c3587f05f726a65ba8711071f4f48bdb0e7cfa866f08f7c8bdc71b02a35ef47ed6572d899ad8c5a81977361c9e3845c4ccb84fe4f89"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/km/firefox-51.0b6.tar.bz2"; locale = "km"; arch = "linux-i686"; sha512 = "e9358288bd40d66ed2f27676cf92974e1c54f098f8a7978bc8d914a5e045bf94c68efa25674e42f4d976dfbdc1ad23b44d1174f0310e798f1cb1c7c8c1b93349"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/km/firefox-51.0b6.tar.bz2"; locale = "km"; arch = "linux-x86_64"; sha512 = "f5748497701c5c66fcf9fd508664c6846eda0c353782a259c58ddb0852f49dee6bf1b067ea87be53047d31debcc3cd242692bfc831a8b30b6aa01303d9b0a243"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/kn/firefox-51.0b6.tar.bz2"; locale = "kn"; arch = "linux-i686"; sha512 = "e8f8331ff3d638955d087d2b75ffe7fa04426b6f72a35e1b0e194c92948793fc25e25ae927f03f119dac01a6cbd30f944f5022c32ff933b15a8dbe67245f310c"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/kn/firefox-51.0b6.tar.bz2"; locale = "kn"; arch = "linux-x86_64"; sha512 = "bc82153cc0a490be1c0e8197c3bb5d69bfb3799cabf4ef55650ea9164ce68c94e846b129fe8988c5cfc9699141b6313add4caff4bba2dff48dc17af2e173cedc"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/ko/firefox-51.0b6.tar.bz2"; locale = "ko"; arch = "linux-i686"; sha512 = "58437f794e59333093bbd5a4d673d1a3149ca3468ef9a31bb0fdb4c40773faa6ed688b7636191223021e9bc7bfc09726dc45ad627e4f731f19ee78cd782ecc08"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/ko/firefox-51.0b6.tar.bz2"; locale = "ko"; arch = "linux-x86_64"; sha512 = "e3528d611eaab0313edd3def0753ddad32a624136c32ea181807b0efd63f5205002a689d5b9ebadc4dfca8059dc4ecb236709b9c64d4743989c9a590a326698b"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/lij/firefox-51.0b6.tar.bz2"; locale = "lij"; arch = "linux-i686"; sha512 = "80c30dc8064a0a075613c6720b976379b3a9fc4ca05db2c727a4bf1e4abbd4f6f44b45eba42bc3633c164cc3c15ef756b85d638d3ab857bd0e6d21d9e6f640fd"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/lij/firefox-51.0b6.tar.bz2"; locale = "lij"; arch = "linux-x86_64"; sha512 = "22daba4493e91d7ee15e7f9a0849f73dcde985ad909d3a8502b30a6e350cf04dc98fe2728068d2f3d8b7b5106d57caaaadb2fae70d49d50d893854b99a926485"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/lt/firefox-51.0b6.tar.bz2"; locale = "lt"; arch = "linux-i686"; sha512 = "fd4ce4207ea3eebda966881ab9f113688122322d16a2c9a205b17d7c73ae0de4fd5a48789e01c96392ac5c84a59a790269329ddd9686b9cfa64c787a817101bd"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/lt/firefox-51.0b6.tar.bz2"; locale = "lt"; arch = "linux-x86_64"; sha512 = "8dc6e28946a238db81695080f73b3502e0f88bdb2d835c88574f79ab25896162c84b9184a37142c8ca1fe3b28f42d87be9e88b59233dde36287d5b05371824eb"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/lv/firefox-51.0b6.tar.bz2"; locale = "lv"; arch = "linux-i686"; sha512 = "57877344c135ad47073e992a06e5568a4564209f2a79c2b1851d69b2fff6c9c32d96cf3278e1bba4d91fc001765f4d65d6d4b730603ac0a5cc28d2520fac2d60"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/lv/firefox-51.0b6.tar.bz2"; locale = "lv"; arch = "linux-x86_64"; sha512 = "f289cda83f46ae3d2343f66bcd007d99862768ee48220a92e79f2b7941a2b2a56ea000cfa1986283e2fc9ceac749f264f122503f1bf71676888473bac9841d47"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/mai/firefox-51.0b6.tar.bz2"; locale = "mai"; arch = "linux-i686"; sha512 = "07a87e16e68b9089c7aa58048ae4b41e15bc267d9810a218c9473f0d1082ac935fa5adb759a9ac43c0bf2a6e79e830c6344943cb7b61b73746911dbd66a7fdaf"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/mai/firefox-51.0b6.tar.bz2"; locale = "mai"; arch = "linux-x86_64"; sha512 = "34aec0414161df6ab435b7518f1d522c4bce6eff415f3ff103d31e9ae6099ff6b3be03099a0f5a21754daebdfff852193e2bb93ee52d622d26644aea94d72aee"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/mk/firefox-51.0b6.tar.bz2"; locale = "mk"; arch = "linux-i686"; sha512 = "8e4a61d4f20c17f1dc2748568d731f8e9f9050741896f98ec761d551a0c9bf0836731ba9049684819d71f6eabae7f2d1e93e0add593661d882d619783fb996ce"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/mk/firefox-51.0b6.tar.bz2"; locale = "mk"; arch = "linux-x86_64"; sha512 = "10696ef0643af2ed0a7681f6679c6eaef375ef1e193b0b0e315d0ff4aeedb373235ec4e8d26fc562887361ce659a85163c276ed1fd4d4563dc945c7281786298"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/ml/firefox-51.0b6.tar.bz2"; locale = "ml"; arch = "linux-i686"; sha512 = "f2300cfbce84cf49b434f56b262c34e734eb2ed47abd5b318b9ac9197252869c80b77a7e0617a61f8a1d06a7e6c083479833865b5f1a0e3172102c07d8b9d878"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/ml/firefox-51.0b6.tar.bz2"; locale = "ml"; arch = "linux-x86_64"; sha512 = "ac0a334c3beb163351b4fc7eb42ea8363ba9667a52cb14c59f32c404bc362da957f22a44d49f09299c73971a737685d8a93c1fe4eb456489fcab2eab1be1b6b8"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/mr/firefox-51.0b6.tar.bz2"; locale = "mr"; arch = "linux-i686"; sha512 = "e8536f0786bf5a49536f7703ac50fbaf31db932c1c855988c192d495365e677f674f1d84bdd5b5d07ae0b04c6498262a29d11949f4ee172d1ed97c3708e2e0e9"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/mr/firefox-51.0b6.tar.bz2"; locale = "mr"; arch = "linux-x86_64"; sha512 = "b7d89ca6b79661098ee64cbf945a7080b76a8557f9a2b33fb18b8166bd9cab9cf4c775e3460bb4637121c6ae2159786e185c33cd8eb819410edf71d8d962ae6b"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/ms/firefox-51.0b6.tar.bz2"; locale = "ms"; arch = "linux-i686"; sha512 = "c3d6c1772f2d53e6e3928d9c680e737a03cba9fb22fcfe051c49afe147502c6b458832c735ecefd29a06a22fd91ec13f98f0590f386c5331d6faefb83afc64a7"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/ms/firefox-51.0b6.tar.bz2"; locale = "ms"; arch = "linux-x86_64"; sha512 = "8f44e7510675d691a4735d13169c529414942b8a18c8106dc220b53f4d85f9c1284314279ef5cd1d59543baa60803f117796f2fd2d55ecc01a6b67314b1e23a9"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/nb-NO/firefox-51.0b6.tar.bz2"; locale = "nb-NO"; arch = "linux-i686"; sha512 = "2d42ede2a1232c48068bbde4c9401e495b82ebc356cee2490e8282e7a50e7ebdaf235e5d109a6ad1e30bb4773b81a75dd8d8f338738db499a8bc910a435fcde9"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/nb-NO/firefox-51.0b6.tar.bz2"; locale = "nb-NO"; arch = "linux-x86_64"; sha512 = "05ff88244ec7c715e642c62a2f71980e94346624db05b35fe35a605f8c9bf0fb661cd0aad8ffc7a290a3507711053f7d31573d4e7e82482de63db3492197a7b1"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/nl/firefox-51.0b6.tar.bz2"; locale = "nl"; arch = "linux-i686"; sha512 = "3f7d57fd1a64f4c99a573c6c2272999bb9bed78648a1476ae3d1d843ae7407612a750b07b6730c0c326b57e16c87df374049c49f8e9e2fe9ca7d14860af983a3"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/nl/firefox-51.0b6.tar.bz2"; locale = "nl"; arch = "linux-x86_64"; sha512 = "26ba18dee36247d64447b7aaed71795e582e86e333e0feb95f1085b26508299044a970fd535bf57f38e0caedd116e10a3eceba05c5f1cf92649553d6ad95d1d5"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/nn-NO/firefox-51.0b6.tar.bz2"; locale = "nn-NO"; arch = "linux-i686"; sha512 = "649a79569ca51e418101d013061bb7ae977d80e0ca4854c03e256e214e4a0c2373caf994fb1d41db6beb4816524e4ba76d434b7a2942b20cd628b42f409792b2"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/nn-NO/firefox-51.0b6.tar.bz2"; locale = "nn-NO"; arch = "linux-x86_64"; sha512 = "61a99b54b807e518e62813e76606111737904c20afb73c12e5ae866476f829a177365a4c8c9d36bd5fa2a355f512f556fbc9bbc7d1fdb962535dbd6340907b04"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/or/firefox-51.0b6.tar.bz2"; locale = "or"; arch = "linux-i686"; sha512 = "68a761c18b24f5ab5ee511f635653d1c3e798239f82a120c2bce73d5f0e706b5b8dad2540ece11361c0652f34b00f767c6be2c700c69a0d0eb08c35bfec29fcc"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/or/firefox-51.0b6.tar.bz2"; locale = "or"; arch = "linux-x86_64"; sha512 = "4640280e8645f2ac9ec96a5b02a2705bcc96f2bd3d25c6456a5d4b0a45100f264afbf618dcd8e5b211b2c8186a2ed8bd0e306d95b118e52bd6548caf5f32d58d"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/pa-IN/firefox-51.0b6.tar.bz2"; locale = "pa-IN"; arch = "linux-i686"; sha512 = "2d57687e8fbf53cf2bd8b0bc6780dffdfe1284b47fbef20ab9fa591e2eefec00e097bdd24159a28700d47f02273395f32fcabb401d0f5f3e13cce75481b9cd7c"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/pa-IN/firefox-51.0b6.tar.bz2"; locale = "pa-IN"; arch = "linux-x86_64"; sha512 = "0898c9577c92d92e51026948fdd1b201e989ca1b0ef0515f3a22a9ab2fc0932b99d859c90ca0137a8bbd913c2d5f873a77b75fdbf01c330064ed2f854fc58dcb"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/pl/firefox-51.0b6.tar.bz2"; locale = "pl"; arch = "linux-i686"; sha512 = "afaef3a9d125774454adf37f83447600536db9abd7bf388a2a9e9024ee46f67269f122c39041b5537be23b19af39e8efc27cf142064fdfcb5cd3f404792b1383"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/pl/firefox-51.0b6.tar.bz2"; locale = "pl"; arch = "linux-x86_64"; sha512 = "350c67a48d318bb19cf4885718d336f3242a648b40e0f79096214f4fd6254882ff1af2a50111424a00d2396fd1c481a9ba1125f098794296899cf306269993cd"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/pt-BR/firefox-51.0b6.tar.bz2"; locale = "pt-BR"; arch = "linux-i686"; sha512 = "c3a34e85cde018ef1323786e373e8842cb6c590cc8db64441e99d5a092d87ca7cd935dd238b30a2752393515fd5455100e97a98e08b395b4082d09e800e25846"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/pt-BR/firefox-51.0b6.tar.bz2"; locale = "pt-BR"; arch = "linux-x86_64"; sha512 = "3d986e9e932156db8db994484f19519dd5dad00e4edd04d5d2510e1aa1c9360e0cb01f9369705861e806796cbe246c1c79882320caf91a59fd400b439bb4db8a"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/pt-PT/firefox-51.0b6.tar.bz2"; locale = "pt-PT"; arch = "linux-i686"; sha512 = "2aa6b07f64b83287aeee048edf436632737da32188ce650ea2e323fa5587457cbceb05356b3917b75bcd1927bb9cf1da89e23fdebc3db2096bd4598ce8cc714d"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/pt-PT/firefox-51.0b6.tar.bz2"; locale = "pt-PT"; arch = "linux-x86_64"; sha512 = "87614bfa16f6bc89180775331a52054a597ab54232a92af0062ea47b8a1c348d9f20b5802e2cb74f1619120eed56ed02bdc705e81f5944798ea2261384764d1c"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/rm/firefox-51.0b6.tar.bz2"; locale = "rm"; arch = "linux-i686"; sha512 = "1e774ec46f28bc561bc5dbc9af3c0c5a198485f5da7a7fc7d5d1ef920b54227ddc9b0168b7cce30cc30cd606513aaec317369335deb945bcf94fb49bf29367dd"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/rm/firefox-51.0b6.tar.bz2"; locale = "rm"; arch = "linux-x86_64"; sha512 = "24239e55efc9ec3979a0ae64cc977ebf853817b358c39266099bf892fc6cff7bc4e3adbc927684a95b4abb9ffd08877c5f25b2e579884ca93e0dad8a717a79d8"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/ro/firefox-51.0b6.tar.bz2"; locale = "ro"; arch = "linux-i686"; sha512 = "3d449880c97442f60aee98be29abd097330b95acd9f121a57744d5694f5471afffc337239b2d3e527b2dc709daf0607b73ba664ddd466eab6236f3d842ee93f2"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/ro/firefox-51.0b6.tar.bz2"; locale = "ro"; arch = "linux-x86_64"; sha512 = "90c0cdc6d9fae3620770455b80db01920685abe7514b2b112af32ee7554d0896e4877f2f9ad38f827ad8cea9fc8f9f0c6b97c049d7e98cdf20612a50018bbcc8"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/ru/firefox-51.0b6.tar.bz2"; locale = "ru"; arch = "linux-i686"; sha512 = "42d9d4e4f2fe48e1c7db8395eb22737bd42b7a771bf8bb0f69b210fc4a2fafed421e22f498d68d1ab3e1661a3e828c1e21e096d655f47d6c6216c6c8bf4a38e8"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/ru/firefox-51.0b6.tar.bz2"; locale = "ru"; arch = "linux-x86_64"; sha512 = "8456ce7fe9ec9ae2c8e4ee74ceaa75417d33559e84277350ae058a109f3b8cb7bcc52e35684bb343f8cd3f020df31c26ff15d4e6bfbe4d89733bbd4cefb307ab"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/si/firefox-51.0b6.tar.bz2"; locale = "si"; arch = "linux-i686"; sha512 = "4d0132f95f13076df9cc4fc6e6fe6912d16aa3c71fd18a6dc81f4ba9dc53842b7cb4a3fb4da62436fe6d9e4061e90b8c02ec686644020437b7da78ea5ab09479"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/si/firefox-51.0b6.tar.bz2"; locale = "si"; arch = "linux-x86_64"; sha512 = "5947c45892fcb7f1d0beb429ef12448242631c14e568495d6c3a1e21d01cc44e316ada5c9d9099e8835e2abfd286589622b25eb8730ef2fce9ac18c6b854dd01"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/sk/firefox-51.0b6.tar.bz2"; locale = "sk"; arch = "linux-i686"; sha512 = "93eabc3dfdff6089ba9ca7ec7210ebf174fd548d4c5e3076551470a27b0b7f19ab8d4b6813aeaf7206ea8bde863cccc2e34f447e4f09a3b0b0f632dfe5c1bf05"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/sk/firefox-51.0b6.tar.bz2"; locale = "sk"; arch = "linux-x86_64"; sha512 = "8b4a24c9eecfc02ef1dd297e98590471ec3a9ee37abc248f06ee69e0b822537765fa1d6dc255c9424e996af27f1cf6f45f50728d2c2be52b8e58ed3e8c1cef7d"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/sl/firefox-51.0b6.tar.bz2"; locale = "sl"; arch = "linux-i686"; sha512 = "ee064cabe643fce46242fed3292e3067159ce0dc57f08d8af67658f37b7cefe80082609be57e024b939054cda80f7573ca6715bdd4f084bb847e32776267394f"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/sl/firefox-51.0b6.tar.bz2"; locale = "sl"; arch = "linux-x86_64"; sha512 = "a8207ba7d7606e93f6f39ca9e05320181353d8bd05f519196a20cbe335aba825edaa1403488c539ae9c622949d6b9c81bf5a711cc1118963e8a66a12e2bc5133"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/son/firefox-51.0b6.tar.bz2"; locale = "son"; arch = "linux-i686"; sha512 = "3a5c3ac7b1482fac457a5e537d743f14eb99b6d139ed840cc5c1fa4020e7c4950957b9cafc19dda8ec21741b48698a91dbe3dd455c9b002af407eb68a29cc8e6"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/son/firefox-51.0b6.tar.bz2"; locale = "son"; arch = "linux-x86_64"; sha512 = "c3b34c6e958344acb66101712d4ddddf4041e060e45037aed5e35b8006d37bc92d88c9478538a2e3ba0dd14f78ef0027a3a4f569038ba3fd06ce3c2438c48a34"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/sq/firefox-51.0b6.tar.bz2"; locale = "sq"; arch = "linux-i686"; sha512 = "00782a5b28cc04a1fe58309503bb984b29c6842e4ebd9c8e43d8965d9041b3a676208134307d3b8f04637458e052dce8c3d5fcb593d48ef93a71fe3bccffb684"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/sq/firefox-51.0b6.tar.bz2"; locale = "sq"; arch = "linux-x86_64"; sha512 = "27ea36701359e9baf447434d34cd4e4615f4e4d1d1a82cf93e79390320b0f76ced36784d66fda6354fe5bd5eed8bb6c74306c922880b8d42097abbb34bb0b6f2"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/sr/firefox-51.0b6.tar.bz2"; locale = "sr"; arch = "linux-i686"; sha512 = "b32b88641024c0f263bf8e190ab0bd8e3d2d6091aa38733971cb8f00ad1c776859d5b037ef6f2b6d220f93629b39c8730f99bba654bc3791e767b3f7182ca758"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/sr/firefox-51.0b6.tar.bz2"; locale = "sr"; arch = "linux-x86_64"; sha512 = "06b188b1dd9113a51d2cd369721919ff6132cceb108304b485c9d42898cc7b20d821ac201102af4652f157ea56cd7e17b5bd09ec645243df7ef8e2030b003d2a"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/sv-SE/firefox-51.0b6.tar.bz2"; locale = "sv-SE"; arch = "linux-i686"; sha512 = "08a713dda121e0df1131dfb50c5196c2b2e4ca58823a56453c23955d94f53b877f737c5f5d805f1203a4c9361f25d0f8e8327cfbefe9fdc32d2ddd5dda359e14"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/sv-SE/firefox-51.0b6.tar.bz2"; locale = "sv-SE"; arch = "linux-x86_64"; sha512 = "b1d35953186b4fe3a1a823cec5a399f81ffcbbb2379e488805de10751614300994e4ae6f5e68396d2d45b72ba2cde0874690a8c7d47ab224d1e653a3ff380294"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/ta/firefox-51.0b6.tar.bz2"; locale = "ta"; arch = "linux-i686"; sha512 = "b8986fe3919db0386ed411c1269aba0f38fa6c01a36b24544e91e382e3f22a72b5cccebcbd59e21a1573910b9f4b838cd482e588a92153b3932835bbb87b8061"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/ta/firefox-51.0b6.tar.bz2"; locale = "ta"; arch = "linux-x86_64"; sha512 = "a98aa3c2ef28ece7ef2866af5f0044f195ddf56152131d608320dc211f5eb4d5f5be0a95e138598e32d4160baf29281219e6bbc38349ca374289144dbfbf94a5"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/te/firefox-51.0b6.tar.bz2"; locale = "te"; arch = "linux-i686"; sha512 = "4f040903bf00eb129adb0aa431921bd39754815b8a789b9e8118ecd87bd6923ae02faff7791f17e326dfb844745b1b12ecdf8978c814be0964825dbdacad146f"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/te/firefox-51.0b6.tar.bz2"; locale = "te"; arch = "linux-x86_64"; sha512 = "b2e54cb4ff6421923e20be26db7ef302715a29f49c4c0723191096aad9a910e3f68291d932bee6f5a26fb3f85252a2cb89434dbf8acc2ff19860123bb00ee18b"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/th/firefox-51.0b6.tar.bz2"; locale = "th"; arch = "linux-i686"; sha512 = "b2868ea454d231e87e1389005d5ed7863865e708ac2b99075f08644875323427e4dc92a245be4de90f4d5e3791b352a27e26e3ab2c08e6f3dd8377225af70a00"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/th/firefox-51.0b6.tar.bz2"; locale = "th"; arch = "linux-x86_64"; sha512 = "e3682094081d4131e68a9fb4bab81a5430fe4bd8cc1903f24c48e110313d3489e338d58dcd6719a28d5363bb35c734144a695c3e81d1a805a0f20679a52ff645"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/tr/firefox-51.0b6.tar.bz2"; locale = "tr"; arch = "linux-i686"; sha512 = "dfa63ee5ba94400175f1252c06bbc1070579a3fc9395f55528cfe6a0a99bc6a654708ffb930efa4153322c76532d201863206b14f07973bf6713c90b297898b8"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/tr/firefox-51.0b6.tar.bz2"; locale = "tr"; arch = "linux-x86_64"; sha512 = "29c9efc3253770b953634e6f2d09cf82245c9b580a43103a28a14adc795ae307644edf3dee65ad4d7248efde6562485750f1d976eebd413f339044774b9660fc"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/uk/firefox-51.0b6.tar.bz2"; locale = "uk"; arch = "linux-i686"; sha512 = "43157bfb4bca885e830035e525ef2642795e9f22e582c486f28a99acf462dcb09142b9e1fc35f014f800e5f30365d6bc76b0c4b7caeebbd9e2e3fb4bfeb780c7"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/uk/firefox-51.0b6.tar.bz2"; locale = "uk"; arch = "linux-x86_64"; sha512 = "33790606f02644a0b99b43a3e7d9df77dfbea8404d8ea2ad34ab81090fba6fe4553fdce83425e27a5816f8af0725f598efa0cefba755af537f1d0a953eafe8af"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/uz/firefox-51.0b6.tar.bz2"; locale = "uz"; arch = "linux-i686"; sha512 = "0ce3bcd1bd6c7aa9d363ca869d9f1638f930b5df7a7e22b88b12300dba8cc0ebb9e7e1b61318b49e9452f21f1855dd3e0b38448f4067d2a0683b6aaae39e90ae"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/uz/firefox-51.0b6.tar.bz2"; locale = "uz"; arch = "linux-x86_64"; sha512 = "24ad9eb31144e51e69653c50501ad2c8e8a5c40d13464da3ab8af464cbeda9fc37a47401987f48157603f679ff281728ebb10e686659f1cce8db764a4c0b3216"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/vi/firefox-51.0b6.tar.bz2"; locale = "vi"; arch = "linux-i686"; sha512 = "c68aae839b6438ef934953c419d99921378bd81aa08da9653299a3410d2e102ad9890870e99ff9541477a0dcf779d8e80905b6741b8f40faf4fa9b7fa8fcf86c"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/vi/firefox-51.0b6.tar.bz2"; locale = "vi"; arch = "linux-x86_64"; sha512 = "1b5263078040636fa3dda434ab9433c96e7ba4d10460174de5d5abc1f05de8faa930ee1fe24dd9f8dc05bc20d6087d7657bef390725d446a4ad292e2cd06ab7a"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/xh/firefox-51.0b6.tar.bz2"; locale = "xh"; arch = "linux-i686"; sha512 = "c4422a3f38d47cf9caea2ea93f5eb4c402461a76fbd8285f8894bbf3d4ae0bb484be20f0761425ac9139facb1fca12ca4122efef47391b988d4dc4118482d660"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/xh/firefox-51.0b6.tar.bz2"; locale = "xh"; arch = "linux-x86_64"; sha512 = "97ecde3e48e7f3cabe8b80db7c74b34946407831aebecc87fe5913a8622b866914d2a6bcba8166c4d8e85b35eec43eec337a2389a9856d9ca48f4694d61838e3"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/zh-CN/firefox-51.0b6.tar.bz2"; locale = "zh-CN"; arch = "linux-i686"; sha512 = "5cefa5a67a1d468c017294884b04d3ae412f1f3bce56fb96e72919266ba697b46430460334d3593608d08238921517b9972435bd76fdf012ff3fec51bc64de82"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/zh-CN/firefox-51.0b6.tar.bz2"; locale = "zh-CN"; arch = "linux-x86_64"; sha512 = "e37d07897665c195648c7b96ad47487bbe1671f9aedb06e9e5ca415dfc0484b7a13171b217866af1ab29b2e3376c45bf382e9d9bd804d57030ab401eb083560d"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-i686/zh-TW/firefox-51.0b6.tar.bz2"; locale = "zh-TW"; arch = "linux-i686"; sha512 = "485a9f5184722c59a4a60a8f02c0c10d4f8fed359083a70701462a311caf652170625f06eabd5baa9f8b5312ca978c48c4da01a4de49c35f52a8c8c6a2d738bd"; }
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/51.0b6/linux-x86_64/zh-TW/firefox-51.0b6.tar.bz2"; locale = "zh-TW"; arch = "linux-x86_64"; sha512 = "5c1a87b1a96149f67c3213315c13524cda3d29b47ae078e22c04685de4f961c3a9bfd77a79c48e3ae619cf2bee7f035c725e480337d7e3491d48abab1bff1aaf"; }
];
}

View file

@ -38,6 +38,11 @@
, libpulseaudio
, systemd
, generated ? import ./sources.nix
, writeScript
, xidel
, coreutils
, gnused
, gnugrep
}:
assert stdenv.isLinux;
@ -62,10 +67,12 @@ let
source = stdenv.lib.findFirst (sourceMatches systemLocale) defaultSource sources;
name = "firefox-bin-unwrapped-${version}";
in
stdenv.mkDerivation {
name = "firefox-bin-unwrapped-${version}";
inherit name;
src = fetchurl { inherit (source) url sha512; };
@ -165,6 +172,74 @@ stdenv.mkDerivation {
'';
passthru.ffmpegSupport = true;
passthru.updateScript =
let
version = (builtins.parseDrvName name).version;
isBeta = builtins.stringLength version + 1 == builtins.stringLength (builtins.replaceStrings ["b"] ["bb"] version);
in
writeScript "update-firefox-bin" ''
PATH=${coreutils}/bin:${gnused}/bin:${gnugrep}/bin:${xidel}/bin:${curl}/bin
pushd pkgs/applications/networking/browsers/firefox-bin
tmpfile=`mktemp`
url=http://archive.mozilla.org/pub/firefox/releases/
# retriving latest released version
# - extracts all links from the $url
# - removes . and ..
# - this line remove everything not starting with a number
# - this line sorts everything with semver in mind
# - we remove lines that are mentioning funnelcake
# - this line removes beta version if we are looking for final release
# versions or removes release versions if we are looking for beta
# versions
# - this line pick up latest release
version=`xidel -q $url --extract "//a" | \
sed s"/.$//" | \
grep "^[0-9]" | \
sort --version-sort | \
grep -v "funnelcake" | \
grep -e "${if isBeta then "b" else ""}\([[:digit:]]\|[[:digit:]][[:digit:]]\)$" | ${if isBeta then "" else "grep -v \"b\" |"} \
tail -1`
# this is a list of sha512 and tarballs for both arches
shasums=`curl --silent $url$version/SHA512SUMS`
cat > $tmpfile <<EOF
{
version = "$version";
sources = [
EOF
for arch in linux-x86_64 linux-i686; do
# retriving a list of all tarballs for each arch
# - only select tarballs for current arch
# - only select tarballs for current version
# - rename space with colon so that for loop doesnt
# - inteprets sha and path as 2 lines
for line in `echo "$shasums" | \
grep $arch | \
grep "firefox-$version.tar.bz2$" | \
tr " " ":"`; do
# create an entry for every locale
cat >> $tmpfile <<EOF
{ url = "$url$version/$arch/`echo $line | cut -d":" -f3`";"
locale = "`echo $line | cut -d":" -f3 | sed "s/$arch\///" | sed "s/\/.*//"`";
arch = "$arch";
sha512 = "`echo $line | cut -d":" -f1`";
}
EOF
done
done
cat >> $tmpfile <<EOF
];
}
EOF
cat $tmpfile > ${if isBeta then "beta_" else ""}sources.nix
popd
'';
meta = with stdenv.lib; {
description = "Mozilla Firefox, free web browser (binary package)";

View file

@ -1,48 +0,0 @@
# TODO share code with thunderbird-bin/generate_sources.rb
require "open-uri"
version =
if ARGV.empty?
$stderr.puts("Usage: ruby generate_sources.rb <version> > sources.nix")
exit(-1)
else
ARGV[0]
end
base_path = "http://download-installer.cdn.mozilla.net/pub/firefox/releases"
Source = Struct.new(:hash, :arch, :locale, :filename)
sources = open("#{base_path}/#{version}/SHA512SUMS") do |input|
input.readlines
end.select do |line|
/\/firefox-.*\.tar\.bz2$/ === line && !(/source/ === line)
end.map do |line|
hash, name = line.chomp.split(/ +/)
Source.new(hash, *(name.split("/")))
end.sort_by do |source|
[source.locale, source.arch]
end
arches = ["linux-i686", "linux-x86_64"]
puts(<<"EOH")
# This file is generated from generate_sources.rb. DO NOT EDIT.
# Execute the following command to update the file.
#
# ruby generate_sources.rb 46.0.1 > sources.nix
{
version = "#{version}";
sources = [
EOH
sources.each do |source|
puts(%Q| { url = "#{base_path}/#{version}/#{source.arch}/#{source.locale}/firefox-#{version}.tar.bz2"; locale = "#{source.locale}"; arch = "#{source.arch}"; sha512 = "#{source.hash}"; }|)
end
puts(<<'EOF')
];
}
EOF

View file

@ -0,0 +1,21 @@
# This file was generated by go2nix.
[
{
goPackagePath = "github.com/alexzorin/libvirt-go";
fetch = {
type = "git";
url = "https://github.com/alexzorin/libvirt-go";
rev = "9359c4feb97212380aa05213fa30c4b7348365f0";
sha256 = "02ipw28pjl5ng2xk63r279apc2py1yr5brcpnsc0cnd2imd51fqa";
};
}
{
goPackagePath = "github.com/docker/machine";
fetch = {
type = "git";
url = "https://github.com/docker/machine";
rev = "bb37dc7806687013c0c3097342ef7db4257655d2";
sha256 = "0wgyxpwis4hyknqalal1cnvb0v3j8f6lscchhk9ch6i69ngiaf03";
};
}
]

View file

@ -0,0 +1,31 @@
# This file was generated by go2nix.
{ stdenv, buildGoPackage, fetchFromGitHub, libvirt }:
buildGoPackage rec {
name = "docker-machine-kvm-${version}";
version = "0.7.0";
goPackagePath = "github.com/dhiltgen/docker-machine-kvm";
goDeps = ./kvm-deps.nix;
src = fetchFromGitHub {
rev = "v${version}";
owner = "dhiltgen";
repo = "docker-machine-kvm";
sha256 = "0zkwwkx74vsfd7v38y9sidi759mhdcpm4409l9y4cx0wmkpavlv6";
};
buildInputs = [ libvirt ];
postInstall = ''
mv $bin/bin/bin $bin/bin/docker-machine-driver-kvm
'';
meta = with stdenv.lib; {
homepage = https://github.com/dhiltgen/docker-machine-kvm;
description = "KVM driver for docker-machine.";
license = licenses.asl20;
maintainers = with maintainers; [ offline ];
platforms = platforms.unix;
};
}

View file

@ -17,13 +17,13 @@ with lib;
stdenv.mkDerivation rec {
name = "kubernetes-${version}";
version = "1.4.5";
version = "1.4.6";
src = fetchFromGitHub {
owner = "kubernetes";
repo = "kubernetes";
rev = "v${version}";
sha256 = "13lzprvifppnz2r189di7ff2jhvd071b6hxyny12p2hw1b3knnvb";
sha256 = "1n5ppzr9hnn7ljfdgx40rnkn6n6a9ya0qyrhjhpnbfwz5mdp8ws3";
};
buildInputs = [ makeWrapper which go rsync go-bindata ];

View file

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
name = "marathon-${version}";
version = "1.1.2";
version = "1.3.6";
src = fetchurl {
url = "https://downloads.mesosphere.com/marathon/v${version}/marathon-${version}.tgz";
sha256 = "1c1ml3blhhc10mky5pqxhpndbz6nk7qgcfbzwdqj9kqfzmwlsfbb";
sha256 = "12a6ah6qsx1ap6y7sps4vwkq8lyc08k1qnak2mnsa04ifrx9z0dy";
};
buildInputs = [ makeWrapper jdk mesos ];

View file

@ -0,0 +1,42 @@
{ stdenv, fetchurl, kubernetes }:
let
arch = if stdenv.isLinux
then "linux-amd64"
else "darwin-amd64";
checksum = if stdenv.isLinux
then "17r8w4lvj7fhh7qppi9z5i2fpqqry4s61zjr9zmsbybc5flnsw2j"
else "0jf0kd1mm35qcf0ydr5yyzfq6qi8ifxchvpjsydb1gm1kikp5g3p";
in
stdenv.mkDerivation rec {
pname = "minikube";
version = "0.13.1";
name = "${pname}-${version}";
src = fetchurl {
url = "https://storage.googleapis.com/minikube/releases/v${version}/minikube-${arch}";
sha256 = "${checksum}";
};
buildInputs = [ ];
propagatedBuildInputs = [ kubernetes ];
phases = [ "buildPhase" "installPhase" ];
buildPhase = ''
mkdir -p $out/bin
'';
installPhase = ''
cp $src $out/bin/${pname}
chmod +x $out/bin/${pname}
'';
meta = with stdenv.lib; {
homepage = https://github.com/kubernetes/minikube;
description = "A tool that makes it easy to run Kubernetes locally";
license = licenses.asl20;
maintainers = [ maintainers.ebzzry ];
platforms = platforms.linux ++ platforms.darwin;
};
}

View file

@ -23,11 +23,11 @@
let
# NOTE: When updating, please also update in current stable,
# as older versions stop working
version = "14.4.19";
version = "15.4.22";
sha256 =
{
"x86_64-linux" = "06ln88dx6k1d2b2wwj66gj1gyy0s3xvs7m50v8i2ycdw3d9kimkw";
"i686-linux" = "0mil1h86r8fmzxb6d7ycwz9yqkmj66k37zxxb2x8mw15l9qndrwf";
"x86_64-linux" = "105a64w6rxhrg2dcpb4h4a2956x2r7flf41rszhw5nnczal0s8gx";
"i686-linux" = "001c6dfdxip67w19h3zlx8w72kvnkl1hbkj7gqvw9lixmnq82fhr";
}."${stdenv.system}" or (throw "system ${stdenv.system} not supported");
arch =

View file

@ -4,7 +4,7 @@
let
version = "4.28.0.1659";
version = "4.29.4.1662";
rpath = stdenv.lib.makeLibraryPath [
xdg_utils
@ -44,7 +44,7 @@ let
if stdenv.system == "x86_64-linux" then
fetchurl {
url = "https://atlassian.artifactoryonline.com/atlassian/hipchat-apt-client/pool/HipChat4-${version}-Linux.deb";
sha256 = "091njvbihn0l7j5ymnl8ynz51pcy9varbvvny880r8szldash90y";
sha256 = "1cz9zv9aj8xdrjs6dgi7fpm4q9l9find4m8l0nmvac2s4r60vw6y";
}
else
throw "HipChat is not supported on ${stdenv.system}";

View file

@ -4,13 +4,13 @@
, glib
, gst_plugins_base
, gstreamer
, icu_54_1
, icu
, libpulseaudio
, libuuid
, libxml2
, libxslt
, makeQtWrapper
, qt55
, qt56
, sqlite
, stdenv
, xlibs
@ -27,29 +27,31 @@ stdenv.mkDerivation rec {
platforms = stdenv.lib.platforms.linux;
};
version = "2.0.52458.0531";
version = "2.0.70790.1031";
src = fetchurl {
url = "https://zoom.us/client/${version}/zoom_${version}_x86_64.tar.xz";
sha256 = "16d64pn9j27v3fnh4c9i32vpkr10q1yr26w14964n0af1mv5jf7a";
url = "https://zoom.us/client/${version}/zoom_x86_64.tar.xz";
sha256 = "0kkg3bqv8zwhpxgrssa7ds00dxhdimnq2vfklgrdqn5qzbij31hd";
};
phases = [ "unpackPhase" "installPhase" ];
nativeBuildInputs = [ makeQtWrapper ];
libPath = stdenv.lib.makeLibraryPath [
buildInputs = [
alsaLib
gcc.cc
glib
gst_plugins_base
gstreamer
icu_54_1
icu
libpulseaudio
libuuid
libxml2
libxslt
qt55.qtbase
qt55.qtdeclarative
qt55.qtscript
qt55.qtwebkit
qt56.qtbase
qt56.qtdeclarative
qt56.qtlocation
qt56.qtscript
qt56.qtwebchannel
qt56.qtwebengine
sqlite
xlibs.xcbutilkeysyms
xorg.libX11
@ -61,13 +63,15 @@ stdenv.mkDerivation rec {
xorg.xcbutilimage
zlib
];
libPath = stdenv.lib.makeLibraryPath buildInputs;
installPhase = ''
mkdir -p $out/share
cp -r \
application-x-zoom.png \
audio \
imageformats \
chrome.bmp \
config-dump.sh \
dingdong1.pcm \
dingdong.pcm \
@ -77,13 +81,7 @@ stdenv.mkDerivation rec {
platforminputcontexts \
platforms \
platformthemes \
Qt \
QtMultimedia \
QtQml \
QtQuick \
QtQuick.2 \
QtWebKit \
QtWebProcess \
leave.pcm \
ring.pcm \
ring.wav \
version.txt \
@ -98,6 +96,7 @@ stdenv.mkDerivation rec {
--set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \
--set-rpath ${libPath} \
$out/share/zoom
paxmark m $out/share/zoom
wrapQtProgram "$out/share/zoom"
mkdir -p $out/bin
ln -s $out/share/zoom $out/bin/zoom-us

View file

@ -20,11 +20,11 @@ with stdenv.lib;
stdenv.mkDerivation rec {
name = "mutt-${version}";
version = "1.7.1";
version = "1.7.2";
src = fetchurl {
url = "http://ftp.mutt.org/pub/mutt/${name}.tar.gz";
sha256 = "1pyns0xw52s4yma1a93pdcl4dirs55q2m1hd7w1r11nlhf7giip9";
sha256 = "1yazrl82s9fxmamnlvwmsxhwrxnwv6kwakgfmawda8ndhwb50lqm";
};
patchPhase = optionalString (openssl != null) ''

View file

@ -595,11 +595,11 @@
md5name = "c63f411b3ad147db2bcce1bf262a0e02-pixman-0.24.4.tar.bz2";
}
{
name = "libpng-1.6.19.tar.gz";
url = "http://dev-www.libreoffice.org/src/libpng-1.6.19.tar.gz";
sha256 = "9f977ac8e4e3d4d5b001b32243f111eeec21bb6b59e583f2fb41fd2e48840352";
md5 = "3121bdc77c365a87e054b9f859f421fe";
md5name = "3121bdc77c365a87e054b9f859f421fe-libpng-1.6.19.tar.gz";
name = "libpng-1.6.24.tar.gz";
url = "http://dev-www.libreoffice.org/src/libpng-1.6.24.tar.gz";
sha256 = "be46e0d14ccac3800f816ae860d191a1187a40164b7552c44afeee97a9caa0a3";
md5 = "65213080dd30a9b16193d9b83adc1ee9";
md5name = "65213080dd30a9b16193d9b83adc1ee9-libpng-1.6.24.tar.gz";
}
{
name = "poppler-0.26.4.tar.gz";

View file

@ -3,7 +3,7 @@
rec {
major = "5";
minor = "1";
patch = "5";
patch = "6";
tweak = "2";
subdir = "${major}.${minor}.${patch}";
@ -12,6 +12,6 @@ rec {
src = fetchurl {
url = "http://download.documentfoundation.org/libreoffice/src/${subdir}/libreoffice-${version}.tar.xz";
sha256 = "1qg0dj0zwh5ifhmvv4k771nmyqddz4ifn75s9mr1p0nyix8zks8x";
sha256 = "150xb76pc3889gfy4jrnq8sidymm1aihkm5pzy8b1fdy51zip804";
};
}

View file

@ -42,14 +42,14 @@ let
translations = fetchSrc {
name = "translations";
sha256 = "1mzsz9pd2k1lpvwf7r5q90qmdp57160362cmlxaj6bxz52gr9f2i";
sha256 = "0g88dscdmixhv17lzz4k00jrrvmafxzv0bakzf0v9zny2b3hb6r2";
};
# TODO: dictionaries
help = fetchSrc {
name = "help";
sha256 = "1qqpggcanchz0qqasc5xvginrpa5rx7ahj3dw2vk7n34xaarnni6";
sha256 = "1aqdzw4sqwfli9aah7zjir93nc1v5zdrbbgvmbn5wh1kawa8dr5g";
};
};

View file

@ -1,29 +1,23 @@
{ stdenv, fetchFromGitHub, cmake, gmp, mpfr, boost, python
, gperftools, ninja, makeWrapper }:
{ stdenv, fetchFromGitHub, cmake, gmp, mpfr, gperftools }:
stdenv.mkDerivation rec {
name = "lean-${version}";
version = "2016-07-05";
version = "2016-12-08";
src = fetchFromGitHub {
owner = "leanprover";
repo = "lean";
rev = "cc70845332e63a1f1be21dc1f96d17269fc85909";
sha256 = "09qz2vjw7whiggvw0cdaa4i2f49wnch2sd4r43glq181ssln27d6";
rev = "7b63d6566faaf1dc0f2c8e873c61f51dce9ab618";
sha256 = "0xxr7dnh7pmdbpxhl3cq9clwamxjk54zcxplsrz6xirk0qy7ga4l";
};
buildInputs = [ gmp mpfr boost cmake python gperftools ninja makeWrapper ];
buildInputs = [ gmp mpfr cmake gperftools ];
enableParallelBuilding = true;
preConfigure = ''
patchShebangs bin/leantags
cd src
'';
postInstall = ''
wrapProgram $out/bin/linja --prefix PATH : $out/bin:${ninja}/bin
'';
meta = with stdenv.lib; {
description = "Automatic and interactive theorem prover";
homepage = "http://leanprover.github.io";

View file

@ -0,0 +1,34 @@
{ stdenv, fetchFromGitHub, cmake, gmp, mpfr, boost, python
, gperftools, ninja, makeWrapper }:
stdenv.mkDerivation rec {
name = "lean2-${version}";
version = "2016-11-29";
src = fetchFromGitHub {
owner = "leanprover";
repo = "lean2";
rev = "a086fb334838c427bbc8f984eb44a4cbbe013a6b";
sha256 = "0qlvhnb37amclgcyizl8bfab33b0a3jk54br9gsrik8cq76lkwwx";
};
buildInputs = [ gmp mpfr cmake python gperftools ninja makeWrapper ];
enableParallelBuilding = true;
preConfigure = ''
patchShebangs bin/leantags
cd src
'';
postInstall = ''
wrapProgram $out/bin/linja --prefix PATH : $out/bin:${ninja}/bin
'';
meta = with stdenv.lib; {
description = "Automatic and interactive theorem prover (version with HoTT support)";
homepage = "http://leanprover.github.io";
license = licenses.asl20;
platforms = platforms.unix;
maintainers = with maintainers; [ thoughtpolice gebner ];
};
}

View file

@ -4,11 +4,11 @@
stdenv.mkDerivation rec {
name = "pari-${version}";
version = "2.9.0";
version = "2.9.1";
src = fetchurl {
url = "http://pari.math.u-bordeaux.fr/pub/pari/unix/${name}.tar.gz";
sha256 = "0rljznrvjgy71n4hlpgx1l1yy1qx52mly68k3c05ds21mlvzg92a";
sha256 = "0rq7wz9df1xs4acdzzb5dapx8vs6m5py39n2wynw2qv4d2b0ylfw";
};
buildInputs = [ gmp readline libX11 libpthreadstubs tex perl ];

View file

@ -27,6 +27,7 @@ stdenv.mkDerivation rec {
postInstall = ''
wrapProgram $out/bin/git-bz \
--prefix PYTHONPATH : "$(toPythonPath "${pythonPackages.pycrypto}")" \
--prefix PYTHONPATH : "$(toPythonPath "${pythonPackages.pysqlite}")"
'';

View file

@ -1,4 +1,4 @@
{ callPackage, fetchurl, fetchgit, ... } @ args:
{ callPackage, fetchurl, fetchpatch, fetchgit, ... } @ args:
let
# Xen 4.5.5
@ -54,7 +54,23 @@ let
xenPatches = [ ./0001-libxl-Spice-image-compression-setting-support-for-up.patch
./0002-libxl-Spice-streaming-video-setting-support-for-upst.patch
./0003-Add-qxl-vga-interface-support-for-upstream-qem.patch ];
./0003-Add-qxl-vga-interface-support-for-upstream-qem.patch
(fetchpatch {
url = "https://bugzilla.redhat.com/attachment.cgi?id=1218547";
name = "CVE-2016-9385.patch";
sha256 = "0k9mykhrpm4rbjkhv067f6s05lqmgnldcyb3vi8cl0ndlyh66lvr";
})
(fetchpatch {
url = "https://bugzilla.redhat.com/attachment.cgi?id=1218536";
name = "CVE-2016-9377-CVE-2016-9378-part1.patch";
sha256 = "0z53nzrjvc745y26z1qc8jlg3blxp7brawvji1hx3s74n346ssl6";
})
(fetchpatch {
url = "https://bugzilla.redhat.com/attachment.cgi?id=1218537";
name = "CVE-2016-9377-CVE-2016-9378-part2.patch";
sha256 = "11cqvr5jn2s92wsshpilx9qnfczrd9hnyb5aim6qwmz3fq3hrrkz";
})
];
};
in callPackage ./generic.nix (args // { xenConfig=xenConfig; })

View file

@ -5,6 +5,8 @@ stdenv.mkDerivation {
meta = {
description = "Tiling tabbed window manager designed with keyboard users in mind";
homepage = http://modeemi.fi/~tuomov/ion;
platforms = with stdenv.lib.platforms; linux;
license = stdenv.lib.licenses.lgpl21;
};
src = fetchurl {
url = http://tuomov.iki.fi/software/dl/ion-3-20090110.tar.gz;

View file

@ -6,6 +6,7 @@
, logLevel ? ""
, buildInputs ? []
, cargoUpdateHook ? ""
, cargoDepsHook ? ""
, ... } @ args:
let
@ -28,6 +29,8 @@ in stdenv.mkDerivation (args // {
configurePhase = args.configurePhase or "true";
postUnpack = ''
eval "$cargoDepsHook"
echo "Using cargo deps from $cargoDeps"
cp -r "$cargoDeps" deps

View file

@ -33,7 +33,7 @@ _linkDLLs() {
# That DLL might have its own (transitive) dependencies,
# so add also all DLLs from its directory to be sure.
local dllPath2
for dllPath2 in "$dllPath" "$(dirname "$dllPath")"/*.dll; do
for dllPath2 in "$dllPath" "$(dirname $(readlink "$dllPath" || echo "$dllPath"))"/*.dll; do
if [ -e ./"$(basename "$dllPath2")" ]; then continue; fi
ln -sr "$dllPath2" .
linkCount=$(($linkCount+1))

View file

@ -108,8 +108,9 @@ rec {
# Quickly create a set of symlinks to derivations.
# entries is a list of attribute sets like { name = "name" ; path = "/nix/store/..."; }
linkFarm = name: entries: runCommand name {} ("mkdir -p $out; cd $out; \n" +
(lib.concatMapStrings (x: "ln -s '${x.path}' '${x.name}';\n") entries));
linkFarm = name: entries: runCommand name { preferLocalBuild = true; }
("mkdir -p $out; cd $out; \n" +
(lib.concatMapStrings (x: "ln -s '${x.path}' '${x.name}';\n") entries));
# Print an error message if the file with the specified name and

View file

@ -2,18 +2,18 @@
stdenv.mkDerivation rec {
name = "roboto-${version}";
version = "2.134";
version = "2.135";
src = fetchurl {
url = "https://github.com/google/roboto/releases/download/v${version}/roboto-unhinted.zip";
sha256 = "1l033xc2n4754gwakxshh5235cnrnzy7q6zsp5zghn8ib0gdp5rb";
sha256 = "1ndlh36bcx4mhi58sxfx6ywbib586brh6s5sk3jyji78h1i7j8zr";
};
nativeBuildInputs = [ unzip ];
installPhase = ''
mkdir -p $out/share/fonts/truetype
cp -a * $out/share/fonts/truetype/
cp -a *.ttf $out/share/fonts/truetype/
'';
meta = {
@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
Material Design.
'';
license = stdenv.lib.licenses.asl20;
maintainers = [ stdenv.lib.maintainers.romildo ];
platforms = stdenv.lib.platforms.all;
maintainers = [ stdenv.lib.maintainers.romildo ];
};
}

View file

@ -3,13 +3,13 @@
stdenv.mkDerivation rec {
name = "${package-name}-${version}";
package-name = "arc-icon-theme";
version = "2016-07-07";
version = "2016-11-22";
src = fetchFromGitHub {
owner = "horst3180";
repo = package-name;
rev = "664c05e723ac2971feb123d7baca3d298248e7f9";
sha256 = "10vicnrv2v7y4capvllaz9x3nzjkjj9fs1dspjjjg6if3gcif7m4";
rev = "55a575386a412544c3ed2b5617a61f842ee4ec15";
sha256 = "1ch3hp08qri93510hypzz6m2x4xgg2h15wvnhjwh1x1s1b7jvxjd";
};
nativeBuildInputs = [ autoreconfHook ];

View file

@ -1,7 +1,7 @@
{ stdenv, fetchurl }:
stdenv.mkDerivation rec {
version = "4.0.1";
version = "4.0.1.1";
package-name = "elementary-icon-theme";
@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "https://launchpad.net/elementaryicons/4.x/${version}/+download/${name}.tar.xz";
sha256 = "0cbgbd9fqxk6rbsrj0gbh1rcapkkdlaig79kilq798v94jfdskrl";
sha256 = "1p20569lxgkif4gzvgpisd8vg93zxd6447y634lv7ay85nq4lx76";
};
dontBuild = true;

View file

@ -0,0 +1,33 @@
{ stdenv, fetchFromGitHub, numix-icon-theme }:
stdenv.mkDerivation rec {
version = "2016-11-23";
package-name = "numix-icon-theme-square";
name = "${package-name}-${version}";
src = fetchFromGitHub {
owner = "numixproject";
repo = package-name;
rev = "1c30eb02aea3d95c49f95c212702b56e93ac9043";
sha256 = "1d2car4dsh1dnim9jlakm035ydqd1f115cagm6zm8gwa5w9annag";
};
buildInputs = [ numix-icon-theme ];
dontBuild = true;
installPhase = ''
mkdir -p $out/share/icons
cp -a Numix-Square{,-Light} $out/share/icons/
'';
meta = with stdenv.lib; {
description = "Numix icon theme (square version)";
homepage = https://numixproject.org;
license = licenses.gpl3;
platforms = with platforms; allBut darwin;
maintainers = with maintainers; [ romildo ];
};
}

View file

@ -1,7 +1,7 @@
{ stdenv, fetchFromGitHub }:
stdenv.mkDerivation rec {
version = "2016-10-05";
version = "2016-11-13";
package-name = "numix-icon-theme";
@ -10,8 +10,8 @@ stdenv.mkDerivation rec {
src = fetchFromGitHub {
owner = "numixproject";
repo = package-name;
rev = "e03eb71454c176a98733eafa268ff79995f8159d";
sha256 = "1f8prwq9zvzfk0ncwzbrwkpjggc8nadny81dqv1cr0014jc85bxi";
rev = "45878a1195abd997341c91d51381625644f9a356";
sha256 = "0in7vx8mdwbfkgylh9p95kcsnn7dnv2vpmv788n0bbgldxmrldga";
};
dontBuild = true;

View file

@ -3,13 +3,13 @@
stdenv.mkDerivation rec {
name = "${package-name}-${version}";
package-name = "paper-icon-theme";
version = "2016-06-08";
version = "2016-11-05";
src = fetchFromGitHub {
owner = "snwh";
repo = package-name;
rev = "6aa0a2c8d802199d0a9f71579f136bd6476d5d8e";
sha256 = "07ak1lnvd0gwaclkcvccjbxikh701vfi07gmjp4zcqi6b5crl7f5";
rev = "2a1f25a47fe8fb92e9d4db5537bbddb539586602";
sha256 = "0v956wrfraaj5qznz86q7s3zi55xd3gxmg7pzcfsw2ghgfv13swd";
};
nativeBuildInputs = [ autoreconfHook ];

View file

@ -0,0 +1,23 @@
{ stdenv, fetchFromGitHub, autoreconfHook }:
stdenv.mkDerivation rec {
name = "adapta-backgrounds-${version}";
version = "0.4.0.6";
src = fetchFromGitHub {
owner = "adapta-project";
repo = "adapta-backgrounds";
rev = version;
sha256 = "1yqxrwhjl6g92wm52kalbns41i2l5g45qbd4185b22crhbrn5x79";
};
nativeBuildInputs = [ autoreconfHook ];
meta = with stdenv.lib; {
description = "A wallpaper collection for adapta-project";
homepage = https://github.com/adapta-project/adapta-backgrounds;
license = with licenses; [ gpl2 cc-by-sa-30 ];
platforms = platforms.all;
maintainers = [ maintainers.romildo ];
};
}

View file

@ -1,10 +1,10 @@
# Autogenerated by maintainers/scripts/gnome.sh update
fetchurl: {
name = "nautilus-3.20.2";
name = "nautilus-3.20.3";
src = fetchurl {
url = mirror://gnome/sources/nautilus/3.20/nautilus-3.20.2.tar.xz;
sha256 = "8d6e679b880dc78c0c2e2dabf6025e6da34ff279dee501f7c75f3649c1a6caae";
url = mirror://gnome/sources/nautilus/3.20/nautilus-3.20.3.tar.xz;
sha256 = "46600a2361a022a0170304aef7167caa29c0d52232063a3556bec6a77881310e";
};
}

View file

@ -0,0 +1,77 @@
{ stdenv, fetchurl, pkgconfig, libxml2, gtk, libSM, shared_mime_info, hicolor_icon_theme }:
let
version = "2.11";
name = "rox-filer-${version}";
in stdenv.mkDerivation {
inherit name;
src = fetchurl {
url = "mirror://sourceforge/rox/rox-filer-${version}.tar.bz2";
sha256 = "a929bd32ee18ef7a2ed48b971574574592c42e34ae09f36604bf663d7c101ba8";
};
buildInputs = [ pkgconfig libxml2 gtk shared_mime_info hicolor_icon_theme libSM ];
patches = [
./rox-filer-2.11-in-source-build.patch
];
# go to the source directory after unpacking the sources
setSourceRoot = "export sourceRoot=rox-filer-${version}/ROX-Filer/";
# patch source with defined patches
patchFlags = "-p0";
# patch the main.c to disable the lookup of the APP_DIR environment variable,
# which is used to lookup the location for certain images when rox-filer
# starts; rather override the location with an absolute path to the directory
# where images are stored to prevent having to use a wrapper, which sets the
# APP_DIR environment variable prior to starting rox-filer
preConfigure = ''
sed -i -e "s:g_strdup(getenv(\"APP_DIR\")):\"$out\":" src/main.c
mkdir build
cd build
'';
configureScript = "../src/configure";
installPhase = ''
mkdir -p "$out"
cd ..
cp -av Help Messages Options.xml ROX images style.css .DirIcon "$out"
# create the man/ directory, which will be moved from $out to share/ in the fixup phase
mkdir "$out/man/"
cp -av ../rox.1 "$out/man/"
# the main executable
mkdir "$out/bin/"
cp -v ROX-Filer "$out/bin/rox"
# mime types
mkdir -p "$out/ROX/MIME"
cd "$out/ROX/MIME"
ln -sv text-x-{diff,patch}.png
ln -sv application-x-font-{afm,type1}.png
ln -sv application-xml{,-dtd}.png
ln -sv application-xml{,-external-parsed-entity}.png
ln -sv application-{,rdf+}xml.png
ln -sv application-x{ml,-xbel}.png
ln -sv application-{x-shell,java}script.png
ln -sv application-x-{bzip,xz}-compressed-tar.png
ln -sv application-x-{bzip,lzma}-compressed-tar.png
ln -sv application-x-{bzip-compressed-tar,lzo}.png
ln -sv application-x-{bzip,xz}.png
ln -sv application-x-{gzip,lzma}.png
ln -sv application-{msword,rtf}.png
'';
meta = with stdenv.lib; {
description = "Fast, lightweight, gtk2 file manager";
homepage = "http://rox.sourceforge.net/desktop";
license = with licenses; [ gpl2 lgpl2 ];
platforms = platforms.linux;
maintainers = [ maintainers.eleanor ];
};
}

View file

@ -0,0 +1,16 @@
--- src/configure 2011-10-09 16:32:14.000000000 +0200
+++ src/configure2 2016-03-20 09:26:31.640891863 +0100
@@ -2132,13 +2132,6 @@
ac_config_headers="$ac_config_headers config.h"
-
-
- if [ -f configure ]; then
- as_fn_error $? "Please run configure from the build directory (try ../AppRun --compile)" "$LINENO" 5
- exit 1
-fi
-
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'

View file

@ -23,15 +23,20 @@ let
sha256 = "0sp5445rbvms6qvzhld0kwwvydw51vq5iaf4kdqsf2d9jvaz3yx5";
};
armv6l-linux = armv7l-linux;
x86_64-solaris = x86_64-linux;
x86_64-freebsd = rec {
version = "1.2.7";
system = "x86-64-freebsd";
sha256 = "14k42xiqd2rrim4pd5k5pjcrpkac09qnpynha8j1v4jngrvmw7y6";
};
x86_64-solaris = rec {
version = "1.2.7";
system = "x86-64-solaris";
sha256 = "05c12fmac4ha72k1ckl6i780rckd7jh4g5s5hiic7fjxnf1kx8d0";
};
};
cfg = options.${stdenv.system};
in
assert builtins.hasAttr stdenv.system options;
stdenv.mkDerivation rec {
name = "sbcl-bootstrap-${version}";
version = cfg.version;

View file

@ -9,11 +9,11 @@
stdenv.mkDerivation rec {
name = "sbcl-${version}";
version = "1.3.10";
version = "1.3.12";
src = fetchurl {
url = "mirror://sourceforge/project/sbcl/sbcl/${version}/${name}-source.tar.bz2";
sha256 = "0xspp04y0l0yxfi1zyv0qsj9b6px5i88xpannwpc45mkj6nplmja";
sha256 = "1hjr2xqazy4j0m58y4na6fz8ii3xflqairxy7vpd7ajbs00yqfc0";
};
patchPhase = ''
@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
(disable (x)
(setf features (remove x features))))
''
+ stdenv.lib.optionalString threadSupport "(enable :sb-thread)"
+ (if threadSupport then "(enable :sb-thread)" else "(disable :sb-thread)")
+ stdenv.lib.optionalString stdenv.isArm "(enable :arm)"
+ ''
)) " > customize-target-features.lisp

View file

@ -1,11 +1,11 @@
{ stdenv, fetchurl, makeWrapper, jre }:
stdenv.mkDerivation rec {
name = "scala-2.12.0";
name = "scala-2.12.1";
src = fetchurl {
url = "http://www.scala-lang.org/files/archive/${name}.tgz";
sha256 = "085k7zl9v3vxaqwq0r0yyj53cb6syvq2safn4fgz3w00ks2fyxw2";
sha256 = "0nf37ix3rrm50s7dacwlyr8fl1hgrbxbw5yz21qf58rj8n46ic2d";
};
propagatedBuildInputs = [ jre ] ;

View file

@ -186,6 +186,11 @@ self: super: {
}))
else super.hakyll;
# Heist's test suite requires system pandoc
heist = overrideCabal super.heist (drv: {
testToolDepends = [pkgs.pandoc];
});
# cabal2nix likes to generate dependencies on hinotify when hfsevents is really required
# on darwin: https://github.com/NixOS/cabal2nix/issues/146.
hinotify = if pkgs.stdenv.isDarwin then self.hfsevents else super.hinotify;
@ -1013,7 +1018,7 @@ self: super: {
};
# Needs new version.
haskell-src-exts-simple = super.haskell-src-exts-simple.override { haskell-src-exts = self.haskell-src-exts_1_18_2; };
haskell-src-exts-simple = super.haskell-src-exts-simple.override { haskell-src-exts = self.haskell-src-exts_1_19_0; };
# Test suite fails a QuickCheck property.
optparse-applicative_0_13_0_0 = dontCheck super.optparse-applicative_0_13_0_0;

View file

@ -76,6 +76,7 @@ self: super:
'';
});
# experimental
ghcjs-ffiqq = self.callPackage
({ mkDerivation, base, template-haskell, ghcjs-base, split, containers, text, ghc-prim
}:
@ -85,15 +86,37 @@ self: super:
src = pkgs.fetchFromGitHub {
owner = "ghcjs";
repo = "ghcjs-ffiqq";
rev = "da31b18582542fcfceade5ef6b2aca66662b9e20";
sha256 = "1mkp8p9hispyzvkb5v607ihjp912jfip61id8d42i19k554ssp8y";
rev = "b52338c2dcd3b0707bc8aff2e171411614d4aedb";
sha256 = "08zxfm1i6zb7n8vbz3dywdy67vkixfyw48580rwfp48rl1s2z1c7";
};
libraryHaskellDepends = [
base template-haskell ghcjs-base split containers text ghc-prim
];
description = "FFI QuasiQuoter for GHCJS";
license = stdenv.lib.licenses.mit;
license = pkgs.stdenv.lib.licenses.mit;
}) {};
# experimental
ghcjs-vdom = self.callPackage
({ mkDerivation, base, ghc-prim, ghcjs-ffiqq, ghcjs-base, ghcjs-prim
, containers, split, template-haskell
}:
mkDerivation rec {
pname = "ghcjs-vdom";
version = "0.2.0.0";
src = pkgs.fetchFromGitHub {
owner = "ghcjs";
repo = pname;
rev = "1c1175ba22eca6d7efa96f42a72290ade193c148";
sha256 = "0c6l1dk2anvz94yy5qblrfh2iv495rjq4qmhlycc24dvd02f7n9m";
};
libraryHaskellDepends = [
base ghc-prim ghcjs-ffiqq ghcjs-base ghcjs-prim containers split
template-haskell
];
license = pkgs.stdenv.lib.licenses.mit;
description = "bindings for https://github.com/Matt-Esch/virtual-dom";
inherit (src) homepage;
}) {};
ghcjs-dom = overrideCabal super.ghcjs-dom (drv: {
libraryHaskellDepends = with self; [

View file

@ -26,7 +26,7 @@ assert x11Support -> (libX11 != null && libXau != null && libXt != null
stdenv.mkDerivation rec {
v = "2.49";
name = "clisp-${v}";
src = fetchurl {
url = "mirror://gnu/clisp/release/${v}/${name}.tar.bz2";
sha256 = "8132ff353afaa70e6b19367a25ae3d5a43627279c25647c220641fed00f8e890";
@ -92,6 +92,7 @@ stdenv.mkDerivation rec {
description = "ANSI Common Lisp Implementation";
homepage = http://clisp.cons.org;
maintainers = with stdenv.lib.maintainers; [raskin tohl];
platforms = stdenv.lib.platforms.unix;
# problems on Darwin: https://github.com/NixOS/nixpkgs/issues/20062
platforms = stdenv.lib.platforms.linux;
};
}

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, fetchgit, perl, gnum4, ncurses, openssl, autoconf264, gcc, erlang
{ stdenv, fetchurl, fetchFromGitHub, perl, gnum4, ncurses, openssl, autoconf264, gcc, erlang
, gnused, gawk, makeWrapper
, odbcSupport ? false, unixODBC ? null
, wxSupport ? false, mesa ? null, wxGTK ? null, xorg ? null
@ -12,12 +12,13 @@ with stdenv.lib;
stdenv.mkDerivation rec {
name = "erlang-basho-" + version + "${optionalString odbcSupport "-odbc"}";
version = "16B03-1";
version = "16B02";
src = fetchgit {
url = "https://github.com/basho/otp";
rev = "cb3a485894e493ad172db2749129e613fe52713a";
sha256 = "0xn28cxlq0ya1aww9q14rg8jf3x2flwxrz6wdnpb0l2h2dasr655";
src = fetchFromGitHub {
owner = "basho";
repo = "otp";
rev = "OTP_R16B02_basho8";
sha256 = "1w0hbm0axxxa45v3kl6bywc9ayir5vwqxjpnjlzc616ldszb2m0x";
};
debugInfo = enableDebugInfo;
@ -56,7 +57,7 @@ stdenv.mkDerivation rec {
postInstall = let
manpages = fetchurl {
url = "http://www.erlang.org/download/otp_doc_man_R${version}.tar.gz";
sha256 = "17f3k5j17rdsah18gywjngip6cbfgp6nb9di6il4pahmf9yvqc8g";
sha256 = "12apxjmmd591y9g9bhr97z5jbd1jarqg7wj0y2sqhl21hc1yp75p";
};
in ''
ln -s $out/lib/erlang/lib/erl_interface*/bin/erl_call $out/bin/erl_call

View file

@ -1,19 +1,33 @@
{ stdenv, fetchFromGitHub, erlang, makeWrapper, coreutils, bash }:
{ stdenv, fetchFromGitHub, erlang, makeWrapper, coreutils, bash, beamPackages }:
stdenv.mkDerivation rec {
name = "lfe-${version}";
version = "1.1.1";
let
inherit (beamPackages) buildRebar3 buildHex;
proper = buildHex rec {
name = "proper";
version = "1.1.1-beta";
sha256 = "0hnkhs761yjynw9382w8wm4j3x0r7lllzavaq2kh9n7qy3zc1rdx";
configurePhase = ''
${erlang}/bin/escript write_compile_flags include/compile_flags.hrl
'';
};
in
buildRebar3 rec {
name = "lfe";
version = "1.2.1";
src = fetchFromGitHub {
owner = "rvirding";
repo = "lfe";
repo = name;
rev = version;
sha256 = "0w1vpjqj8ni43gi84i0mcml4gfaqhmmd9s46di37cngpdw86i3bz";
sha256 = "0j5gjlsk92y14kxgvd80q9vwyhmjkphpzadcswyjxikgahwg1avz";
};
buildInputs = [ erlang makeWrapper ];
setupHook = ./setup-hook.sh;
buildInputs = [ makeWrapper ];
beamDeps = [ proper ];
patches = [ ./no-test-deps.patch ];
doCheck = true;
checkTarget = "travis";
# These installPhase tricks are based on Elixir's Makefile.
# TODO: Make, upload, and apply a patch.
@ -24,7 +38,7 @@ stdenv.mkDerivation rec {
rm -Rf $ebindir
install -m755 -d $ebindir
install -m644 ebin/* $ebindir
install -m644 _build/default/lib/lfe/ebin/* $ebindir
install -m755 -d $bindir
for bin in bin/lfe{,c,doc,script}; do install -m755 $bin $bindir; done

View file

@ -0,0 +1,13 @@
diff --git a/rebar.config b/rebar.config
index 1d5a68e..ca33be7 100644
--- a/rebar.config
+++ b/rebar.config
@@ -2,7 +2,7 @@
{erl_opts, [debug_info]}.
-{profiles, [{test, [{deps, [proper]}]}]}.
+%% {profiles, [{test, [{deps, [proper]}]}]}.
{pre_hooks, [{"(linux|darwin|solaris|freebsd|netbsd|openbsd)", ct,
"bin/lfe bin/lfec"

View file

@ -1,5 +0,0 @@
addLfeLibPath() {
addToSearchPath ERL_LIBS $1/lib/lfe/lib
}
envHooks+=(addLfeLibPath)

View file

@ -3,10 +3,10 @@ with stdenv.lib;
stdenv.mkDerivation rec {
name = "picoLisp-${version}";
version = "15.11";
version = "16.6";
src = fetchurl {
url = "http://www.software-lab.de/${name}.tgz";
sha256 = "0gi1n7gl786wbz6sn0f0002h49f0zvfrzxlhabkghwlbva1rwp58";
sha256 = "0y9b4wqpgx0j0igbp4h7k0bw3hvp7dnrhl3fsaagjpp305b003z3";
};
buildInputs = optional stdenv.is64bit jdk;
patchPhase = optionalString stdenv.isArm ''

View file

@ -0,0 +1,32 @@
# This function provides generic bits to install a Python wheel.
{ python
, bootstrapped-pip
}:
{ buildInputs ? []
# Additional flags to pass to "pip install".
, installFlags ? []
, ... } @ attrs:
attrs // {
buildInputs = buildInputs ++ [ bootstrapped-pip ];
configurePhase = attrs.configurePhase or ''
runHook preConfigure
runHook postConfigure
'';
installPhase = attrs.installPhase or ''
runHook preInstall
mkdir -p "$out/${python.sitePackages}"
export PYTHONPATH="$out/${python.sitePackages}:$PYTHONPATH"
pushd dist
${bootstrapped-pip}/bin/pip install *.whl --no-index --prefix=$out --no-cache ${toString installFlags}
popd
runHook postInstall
'';
}

View file

@ -0,0 +1,19 @@
# This function provides specific bits for building a flit-based Python package.
{ flit
}:
{ ... } @ attrs:
attrs // {
buildInputs = [ flit ];
buildPhase = attrs.buildPhase or ''
runHook preBuild
flit wheel
runHook postBuild
'';
# Flit packages do not come with tests.
installCheckPhase = attrs.checkPhase or ":";
doCheck = attrs.doCheck or false;
}

View file

@ -0,0 +1,56 @@
# This function provides specific bits for building a setuptools-based Python package.
{ lib
, python
, bootstrapped-pip
}:
{
# passed to "python setup.py build_ext"
# https://github.com/pypa/pip/issues/881
setupPyBuildFlags ? []
# Execute before shell hook
, preShellHook ? ""
# Execute after shell hook
, postShellHook ? ""
, ... } @ attrs:
let
# use setuptools shim (so that setuptools is imported before distutils)
# pip does the same thing: https://github.com/pypa/pip/pull/3265
setuppy = ./run_setup.py;
in attrs // {
# we copy nix_run_setup.py over so it's executed relative to the root of the source
# many project make that assumption
buildPhase = attrs.buildPhase or ''
runHook preBuild
cp ${setuppy} nix_run_setup.py
${python.interpreter} nix_run_setup.py ${lib.optionalString (setupPyBuildFlags != []) ("build_ext " + (lib.concatStringsSep " " setupPyBuildFlags))} bdist_wheel
runHook postBuild
'';
installCheckPhase = attrs.checkPhase or ''
runHook preCheck
${python.interpreter} nix_run_setup.py test
runHook postCheck
'';
# Python packages that are installed with setuptools
# are typically distributed with tests.
# With Python it's a common idiom to run the tests
# after the software has been installed.
doCheck = attrs.doCheck or true;
shellHook = attrs.shellHook or ''
${preShellHook}
if test -e setup.py; then
tmp_path=$(mktemp -d)
export PATH="$tmp_path/bin:$PATH"
export PYTHONPATH="$tmp_path/${python.sitePackages}:$PYTHONPATH"
mkdir -p $tmp_path/${python.sitePackages}
${bootstrapped-pip}/bin/pip install -e . --prefix $tmp_path
fi
${postShellHook}
'';
}

View file

@ -0,0 +1,20 @@
# This function provides specific bits for building a wheel-based Python package.
{
}:
{ ... } @ attrs:
attrs // {
unpackPhase = ''
mkdir dist
cp $src dist/"''${src#*-}"
'';
# Wheels are pre-compiled
buildPhase = attrs.buildPhase or ":";
installCheckPhase = attrs.checkPhase or ":";
# Wheels don't have any checks to run
doCheck = attrs.doCheck or false;
}

View file

@ -7,120 +7,31 @@
, python
, mkPythonDerivation
, bootstrapped-pip
, flit
}:
{ buildInputs ? []
# propagate build dependencies so in case we have A -> B -> C,
# C can import package A propagated by B
#, propagatedBuildInputs ? []
# passed to "python setup.py build_ext"
# https://github.com/pypa/pip/issues/881
, setupPyBuildFlags ? []
# Execute before shell hook
, preShellHook ? ""
# Execute after shell hook
, postShellHook ? ""
# Additional flags to pass to "pip install".
, installFlags ? []
, format ? "setup"
let
setuptools-specific = import ./build-python-package-setuptools.nix { inherit lib python bootstrapped-pip; };
flit-specific = import ./build-python-package-flit.nix { inherit flit; };
wheel-specific = import ./build-python-package-wheel.nix { };
common = import ./build-python-package-common.nix { inherit python bootstrapped-pip; };
in
{
# Several package formats are supported.
# "setuptools" : Install a common setuptools/distutils based package. This builds a wheel.
# "wheel" : Install from a pre-compiled wheel.
# "flit" : Install a flit package. This builds a wheel.
# "other" : Provide your own buildPhase and installPhase.
format ? "setuptools"
, ... } @ attrs:
let
# use setuptools shim (so that setuptools is imported before distutils)
# pip does the same thing: https://github.com/pypa/pip/pull/3265
setuppy = ./run_setup.py;
formatspecific =
if format == "wheel" then
{
unpackPhase = ''
mkdir dist
cp $src dist/"''${src#*-}"
'';
if format == "setuptools" then common (setuptools-specific attrs)
else if format == "flit" then common (flit-specific attrs)
else if format == "wheel" then common (wheel-specific attrs)
else if format == "other" then {}
else throw "Unsupported format ${format}";
# Wheels are pre-compiled
buildPhase = attrs.buildPhase or ":";
installCheckPhase = attrs.checkPhase or ":";
# Wheels don't have any checks to run
doCheck = attrs.doCheck or false;
}
else if format == "setup" then
{
# we copy nix_run_setup.py over so it's executed relative to the root of the source
# many project make that assumption
buildPhase = attrs.buildPhase or ''
runHook preBuild
cp ${setuppy} nix_run_setup.py
${python.interpreter} nix_run_setup.py ${lib.optionalString (setupPyBuildFlags != []) ("build_ext " + (lib.concatStringsSep " " setupPyBuildFlags))} bdist_wheel
runHook postBuild
'';
installCheckPhase = attrs.checkPhase or ''
runHook preCheck
${python.interpreter} nix_run_setup.py test
runHook postCheck
'';
# Python packages that are installed with setuptools
# are typically distributed with tests.
# With Python it's a common idiom to run the tests
# after the software has been installed.
doCheck = attrs.doCheck or true;
}
else
throw "Unsupported format ${format}";
in mkPythonDerivation ( attrs // {
# To build and install a wheel we need pip
buildInputs = buildInputs ++ [ bootstrapped-pip ];
#inherit propagatedBuildInputs;
configurePhase = attrs.configurePhase or ''
runHook preConfigure
# patch python interpreter to write null timestamps when compiling python files
# this way python doesn't try to update them when we freeze timestamps in nix store
export DETERMINISTIC_BUILD=1
runHook postConfigure
'';
installPhase = attrs.installPhase or ''
runHook preInstall
mkdir -p "$out/${python.sitePackages}"
export PYTHONPATH="$out/${python.sitePackages}:$PYTHONPATH"
pushd dist
${bootstrapped-pip}/bin/pip install *.whl --no-index --prefix=$out --no-cache ${toString installFlags}
popd
runHook postInstall
'';
shellHook = attrs.shellHook or ''
${preShellHook}
if test -e setup.py; then
tmp_path=$(mktemp -d)
export PATH="$tmp_path/bin:$PATH"
export PYTHONPATH="$tmp_path/${python.sitePackages}:$PYTHONPATH"
mkdir -p $tmp_path/${python.sitePackages}
${bootstrapped-pip}/bin/pip install -e . --prefix $tmp_path
fi
${postShellHook}
'';
} // formatspecific)
in mkPythonDerivation ( attrs // formatspecific )

View file

@ -1,6 +1,8 @@
{ stdenv, fetchurl, zlib ? null, zlibSupport ? true, bzip2, includeModules ? false
, sqlite, tcl, tk, xlibsWrapper, openssl, readline, db, ncurses, gdbm, self, callPackage
, python26Packages }:
# For the Python package set
, pkgs, packageOverrides ? (self: super: {})
}:
assert zlibSupport -> zlib != null;
@ -100,13 +102,16 @@ let
${ optionalString includeModules "$out/bin/python ./setup.py build_ext"}
'';
passthru = rec {
passthru = let
pythonPackages = callPackage ../../../../../top-level/python-packages.nix {python=self; overrides=packageOverrides;};
in rec {
inherit libPrefix;
inherit zlibSupport;
isPy2 = true;
isPy26 = true;
buildEnv = callPackage ../../wrapper.nix { python = self; };
withPackages = import ../../with-packages.nix { inherit buildEnv; pythonPackages = python26Packages; };
withPackages = import ../../with-packages.nix { inherit buildEnv pythonPackages;};
pkgs = pythonPackages;
executable = libPrefix;
sitePackages = "lib/${libPrefix}/site-packages";
interpreter = "${self}/bin/${executable}";

View file

@ -10,12 +10,13 @@
, zlib
, callPackage
, self
, python27Packages
, gettext
, db
, expat
, libffi
, CF, configd, coreutils
# For the Python package set
, pkgs, packageOverrides ? (self: super: {})
}:
assert x11Support -> tcl != null
@ -180,11 +181,14 @@ in stdenv.mkDerivation {
rm "$out"/lib/python*/plat-*/regen # refers to glibc.dev
'';
passthru = rec {
passthru = let
pythonPackages = callPackage ../../../../../top-level/python-packages.nix {python=self; overrides=packageOverrides;};
in rec {
inherit libPrefix sitePackages x11Support hasDistutilsCxxPatch;
executable = libPrefix;
buildEnv = callPackage ../../wrapper.nix { python = self; };
withPackages = import ../../with-packages.nix { inherit buildEnv; pythonPackages = python27Packages; };
withPackages = import ../../with-packages.nix { inherit buildEnv pythonPackages;};
pkgs = pythonPackages;
isPy2 = true;
isPy27 = true;
interpreter = "${self}/bin/${executable}";

View file

@ -10,8 +10,9 @@
, zlib
, callPackage
, self
, python33Packages
, CF, configd
# For the Python package set
, pkgs, packageOverrides ? (self: super: {})
}:
assert x11Support -> tcl != null
@ -102,11 +103,14 @@ in stdenv.mkDerivation {
'';
passthru = rec {
passthru = let
pythonPackages = callPackage ../../../../../top-level/python-packages.nix {python=self; overrides=packageOverrides;};
in rec {
inherit libPrefix sitePackages x11Support;
executable = "${libPrefix}m";
buildEnv = callPackage ../../wrapper.nix { python = self; };
withPackages = import ../../with-packages.nix { inherit buildEnv; pythonPackages = python33Packages; };
withPackages = import ../../with-packages.nix { inherit buildEnv pythonPackages;};
pkgs = pythonPackages;
isPy3 = true;
isPy33 = true;
is_py3k = true; # deprecated

View file

@ -10,8 +10,9 @@
, zlib
, callPackage
, self
, python34Packages
, CF, configd
# For the Python package set
, pkgs, packageOverrides ? (self: super: {})
}:
assert x11Support -> tcl != null
@ -111,11 +112,14 @@ in stdenv.mkDerivation {
'';
passthru = rec {
passthru = let
pythonPackages = callPackage ../../../../../top-level/python-packages.nix {python=self; overrides=packageOverrides;};
in rec {
inherit libPrefix sitePackages x11Support;
executable = "${libPrefix}m";
buildEnv = callPackage ../../wrapper.nix { python = self; };
withPackages = import ../../with-packages.nix { inherit buildEnv; pythonPackages = python34Packages; };
withPackages = import ../../with-packages.nix { inherit buildEnv pythonPackages;};
pkgs = pythonPackages;
isPy3 = true;
isPy34 = true;
is_py3k = true; # deprecated

View file

@ -10,8 +10,9 @@
, zlib
, callPackage
, self
, python35Packages
, CF, configd
# For the Python package set
, pkgs, packageOverrides ? (self: super: {})
}:
assert x11Support -> tcl != null
@ -110,11 +111,14 @@ in stdenv.mkDerivation {
rm $out/lib/python${majorVersion}/__pycache__/_sysconfigdata.cpython*
'';
passthru = rec {
passthru = let
pythonPackages = callPackage ../../../../../top-level/python-packages.nix {python=self; overrides=packageOverrides;};
in rec {
inherit libPrefix sitePackages x11Support;
executable = "${libPrefix}m";
buildEnv = callPackage ../../wrapper.nix { python = self; };
withPackages = import ../../with-packages.nix { inherit buildEnv; pythonPackages = python35Packages; };
withPackages = import ../../with-packages.nix { inherit buildEnv pythonPackages;};
pkgs = pythonPackages;
isPy3 = true;
isPy35 = true;
interpreter = "${self}/bin/${executable}";

View file

@ -11,8 +11,9 @@
, zlib
, callPackage
, self
, python36Packages
, CF, configd
# For the Python package set
, pkgs, packageOverrides ? (self: super: {})
}:
assert x11Support -> tcl != null
@ -99,11 +100,14 @@ in stdenv.mkDerivation {
ln -s "$out/lib/pkgconfig/python3.pc" "$out/lib/pkgconfig/python.pc"
'';
passthru = rec {
passthru = let
pythonPackages = callPackage ../../../../../top-level/python-packages.nix {python=self; overrides=packageOverrides;};
in rec {
inherit libPrefix sitePackages x11Support;
executable = "${libPrefix}m";
buildEnv = callPackage ../../wrapper.nix { python = self; };
withPackages = import ../../with-packages.nix { inherit buildEnv; pythonPackages = python36Packages; };
withPackages = import ../../with-packages.nix { inherit buildEnv pythonPackages;};
pkgs = pythonPackages;
isPy3 = true;
isPy35 = true;
is_py3k = true; # deprecated

View file

@ -57,6 +57,10 @@ python.stdenv.mkDerivation (builtins.removeAttrs attrs ["disabled"] // {
inherit pythonPath;
# patch python interpreter to write null timestamps when compiling python files
# this way python doesn't try to update them when we freeze timestamps in nix store
DETERMINISTIC_BUILD=1;
buildInputs = [ wrapPython ] ++ buildInputs ++ pythonPath
++ [ (ensureNewerSourcesHook { year = "1980"; }) ]
++ (lib.optional (lib.hasSuffix "zip" attrs.src.name or "") unzip)

View file

@ -1,6 +1,9 @@
{ stdenv, fetchurl, zlib ? null, zlibSupport ? true, bzip2, pkgconfig, libffi
, sqlite, openssl, ncurses, python, expat, tcl, tk, xlibsWrapper, libX11
, makeWrapper, callPackage, self, pypyPackages, gdbm, db }:
, makeWrapper, callPackage, self, gdbm, db
# For the Python package set
, pkgs, packageOverrides ? (self: super: {})
}:
assert zlibSupport -> zlib != null;
@ -120,14 +123,17 @@ let
echo "manylinux1_compatible=False" >> $out/lib/${libPrefix}/_manylinux.py
'';
passthru = rec {
passthru = let
pythonPackages = callPackage ../../../../../top-level/python-packages.nix {python=self; overrides=packageOverrides;};
in rec {
inherit zlibSupport libPrefix;
executable = "pypy";
isPypy = true;
buildEnv = callPackage ../../wrapper.nix { python = self; };
interpreter = "${self}/bin/${executable}";
sitePackages = "site-packages";
withPackages = import ../../with-packages.nix { inherit buildEnv; pythonPackages = pypyPackages; };
withPackages = import ../../with-packages.nix { inherit buildEnv pythonPackages;};
pkgs = pythonPackages;
};
enableParallelBuilding = true; # almost no parallelization without STM

View file

@ -16,6 +16,10 @@ stdenv.mkDerivation rec {
sha256 = "09vag1ybfqvw37djmd9g740iqjvg8nwr4p0xb21rfj06vazrdg4b";
};
# FIXME: might be nice to put different APIs in different outputs
# (e.g. libaws-cpp-sdk-s3.so in output "s3").
outputs = [ "out" "dev" ];
buildInputs = [ cmake curl libuuid ];
cmakeFlags =

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