Merge branch 'master' into staging
This commit is contained in:
commit
fffc7638cd
2
.github/CONTRIBUTING.md
vendored
2
.github/CONTRIBUTING.md
vendored
@ -28,5 +28,5 @@ under the terms of [COPYING](../COPYING), which is an MIT-like license.
|
||||
* Not start with the package name
|
||||
* Not have a dot at the end
|
||||
|
||||
See the nixpkgs manual for more details on how to [Submit changes to nixpkgs](http://hydra.nixos.org/job/nixpkgs/trunk/manual/latest/download-by-type/doc/manual#chap-submitting-changes).
|
||||
See the nixpkgs manual for more details on how to [Submit changes to nixpkgs](https://nixos.org/nixpkgs/manual/#chap-submitting-changes).
|
||||
|
||||
|
@ -60,6 +60,10 @@ pkgs.stdenv.mkDerivation {
|
||||
inputFile = ../pkgs/development/idris-modules/README.md;
|
||||
outputFile = "languages-frameworks/idris.xml";
|
||||
}
|
||||
+ toDocbook {
|
||||
inputFile = ../pkgs/development/node-packages/README.md;
|
||||
outputFile = "languages-frameworks/node.xml";
|
||||
}
|
||||
+ toDocbook {
|
||||
inputFile = ../pkgs/development/r-modules/README.md;
|
||||
outputFile = "languages-frameworks/r.xml";
|
||||
|
@ -21,6 +21,7 @@ such as Perl or Haskell. These are described in this chapter.</para>
|
||||
<xi:include href="idris.xml" /> <!-- generated from ../../pkgs/development/idris-modules/README.md -->
|
||||
<xi:include href="java.xml" />
|
||||
<xi:include href="lua.xml" />
|
||||
<xi:include href="node.xml" /> <!-- generated from ../../pkgs/development/node-packages/README.md -->
|
||||
<xi:include href="perl.xml" />
|
||||
<xi:include href="python.xml" />
|
||||
<xi:include href="qt.xml" />
|
||||
|
@ -12,6 +12,7 @@
|
||||
abbradar = "Nikolay Amiantov <ab@fmap.me>";
|
||||
aboseley = "Adam Boseley <adam.boseley@gmail.com>";
|
||||
abuibrahim = "Ruslan Babayev <ruslan@babayev.com>";
|
||||
acowley = "Anthony Cowley <acowley@gmail.com>";
|
||||
adev = "Adrien Devresse <adev@adev.name>";
|
||||
Adjective-Object = "Maxwell Huang-Hobbs <mhuan13@gmail.com>";
|
||||
adnelson = "Allen Nelson <ithinkican@gmail.com>";
|
||||
@ -341,6 +342,7 @@
|
||||
redbaron = "Maxim Ivanov <ivanov.maxim@gmail.com>";
|
||||
redvers = "Redvers Davies <red@infect.me>";
|
||||
refnil = "Martin Lavoie <broemartino@gmail.com>";
|
||||
regnat = "Théophane Hufschmitt <regnat@regnat.ovh>";
|
||||
relrod = "Ricky Elrod <ricky@elrod.me>";
|
||||
renzo = "Renzo Carbonara <renzocarbonara@gmail.com>";
|
||||
retrry = "Tadas Barzdžius <retrry@gmail.com>";
|
||||
@ -367,6 +369,7 @@
|
||||
samuelrivas = "Samuel Rivas <samuelrivas@gmail.com>";
|
||||
sander = "Sander van der Burg <s.vanderburg@tudelft.nl>";
|
||||
schmitthenner = "Fabian Schmitthenner <development@schmitthenner.eu>";
|
||||
schneefux = "schneefux <schneefux+nixos_pkg@schneefux.xyz>";
|
||||
schristo = "Scott Christopher <schristopher@konputa.com>";
|
||||
scolobb = "Sergiu Ivanov <sivanov@colimite.fr>";
|
||||
sepi = "Raffael Mancini <raffael@mancini.lu>";
|
||||
@ -419,6 +422,7 @@
|
||||
ttuegel = "Thomas Tuegel <ttuegel@gmail.com>";
|
||||
tv = "Tomislav Viljetić <tv@shackspace.de>";
|
||||
tvestelind = "Tomas Vestelind <tomas.vestelind@fripost.org>";
|
||||
tvorog = "Marsel Zaripov <marszaripov@gmail.com>";
|
||||
twey = "James ‘Twey’ Kay <twey@twey.co.uk>";
|
||||
uralbash = "Svintsov Dmitry <root@uralbash.ru>";
|
||||
urkud = "Yury G. Kudryashov <urkud+nix@ya.ru>";
|
||||
|
@ -106,6 +106,11 @@ following incompatible changes:</para>
|
||||
tool introduced to generate Go package definition from its Go source automatically.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><literal>services.mongodb.extraConfig</literal> configuration format
|
||||
was changed to YAML.</para>
|
||||
</listitem>
|
||||
|
||||
</itemizedlist>
|
||||
|
||||
|
||||
|
@ -7,7 +7,7 @@ let
|
||||
preferLocalBuild = true;
|
||||
allowSubstitutes = false;
|
||||
name = "gtk2-immodule.cache";
|
||||
buildInputs = [ pkgs.gtk cfg.package ];
|
||||
buildInputs = [ pkgs.gtk2 cfg.package ];
|
||||
buildCommand = ''
|
||||
mkdir -p $out/etc/gtk-2.0/
|
||||
GTK_PATH=${cfg.package}/lib/gtk-2.0/ gtk-query-immodules-2.0 > $out/etc/gtk-2.0/immodules.cache
|
||||
|
@ -250,6 +250,7 @@
|
||||
./services/misc/mwlib.nix
|
||||
./services/misc/nix-daemon.nix
|
||||
./services/misc/nix-gc.nix
|
||||
./services/misc/nix-optimise.nix
|
||||
./services/misc/nixos-manual.nix
|
||||
./services/misc/nix-ssh-serve.nix
|
||||
./services/misc/nzbget.nix
|
||||
@ -289,6 +290,7 @@
|
||||
./services/monitoring/nagios.nix
|
||||
./services/monitoring/prometheus/default.nix
|
||||
./services/monitoring/prometheus/node-exporter.nix
|
||||
./services/monitoring/prometheus/alertmanager.nix
|
||||
./services/monitoring/riemann.nix
|
||||
./services/monitoring/riemann-dash.nix
|
||||
./services/monitoring/riemann-tools.nix
|
||||
@ -353,6 +355,7 @@
|
||||
./services/networking/haproxy.nix
|
||||
./services/networking/heyefi.nix
|
||||
./services/networking/hostapd.nix
|
||||
./services/networking/htpdate.nix
|
||||
./services/networking/i2pd.nix
|
||||
./services/networking/i2p.nix
|
||||
./services/networking/iodine.nix
|
||||
@ -474,6 +477,7 @@
|
||||
./services/web-apps/mattermost.nix
|
||||
./services/web-apps/pump.io.nix
|
||||
./services/web-apps/tt-rss.nix
|
||||
./services/web-apps/selfoss.nix
|
||||
./services/web-servers/apache-httpd/default.nix
|
||||
./services/web-servers/caddy.nix
|
||||
./services/web-servers/fcgiwrap.nix
|
||||
|
@ -139,6 +139,9 @@ with lib;
|
||||
# fontconfig-ultimate
|
||||
(mkRenamedOptionModule [ "fonts" "fontconfig" "ultimate" "rendering" ] [ "fonts" "fontconfig" "ultimate" "preset" ])
|
||||
|
||||
# murmur
|
||||
(mkRenamedOptionModule [ "services" "murmur" "welcome" ] [ "services" "murmur" "welcometext" ])
|
||||
|
||||
# Options that are obsolete and have no replacement.
|
||||
(mkRemovedOptionModule [ "boot" "initrd" "luks" "enable" ] "")
|
||||
(mkRemovedOptionModule [ "programs" "bash" "enable" ] "")
|
||||
|
@ -12,13 +12,11 @@ let
|
||||
|
||||
mongoCnf = pkgs.writeText "mongodb.conf"
|
||||
''
|
||||
bind_ip = ${cfg.bind_ip}
|
||||
${optionalString cfg.quiet "quiet = true"}
|
||||
dbpath = ${cfg.dbpath}
|
||||
syslog = true
|
||||
fork = true
|
||||
pidfilepath = ${cfg.pidFile}
|
||||
${optionalString (cfg.replSetName != "") "replSet = ${cfg.replSetName}"}
|
||||
net.bindIp: ${cfg.bind_ip}
|
||||
${optionalString cfg.quiet "systemLog.quiet: true"}
|
||||
systemLog.destination: syslog
|
||||
storage.dbPath: ${cfg.dbpath}
|
||||
${optionalString (cfg.replSetName != "") "replication.replSetName: ${cfg.replSetName}"}
|
||||
${cfg.extraConfig}
|
||||
'';
|
||||
|
||||
@ -84,9 +82,9 @@ in
|
||||
extraConfig = mkOption {
|
||||
default = "";
|
||||
example = ''
|
||||
nojournal = true
|
||||
storage.journal.enabled: false
|
||||
'';
|
||||
description = "MongoDB extra configuration";
|
||||
description = "MongoDB extra configuration in YAML format";
|
||||
};
|
||||
};
|
||||
|
||||
@ -112,7 +110,7 @@ in
|
||||
after = [ "network.target" ];
|
||||
|
||||
serviceConfig = {
|
||||
ExecStart = "${mongodb}/bin/mongod --quiet --config ${mongoCnf}";
|
||||
ExecStart = "${mongodb}/bin/mongod --quiet --config ${mongoCnf} --fork --pidfilepath ${cfg.pidFile}";
|
||||
User = cfg.user;
|
||||
PIDFile = cfg.pidFile;
|
||||
Type = "forking";
|
||||
|
@ -20,7 +20,7 @@ in
|
||||
|
||||
package = mkOption {
|
||||
type = types.package;
|
||||
example = literalExample "pkgs.riak2";
|
||||
example = literalExample "pkgs.riak";
|
||||
description = ''
|
||||
Riak package to use.
|
||||
'';
|
||||
@ -108,6 +108,7 @@ in
|
||||
pkgs.bash
|
||||
];
|
||||
|
||||
environment.HOME = "${cfg.dataDir}";
|
||||
environment.RIAK_DATA_DIR = "${cfg.dataDir}";
|
||||
environment.RIAK_LOG_DIR = "${cfg.logDir}";
|
||||
environment.RIAK_ETC_DIR = "/etc/riak";
|
||||
|
@ -533,6 +533,8 @@ in {
|
||||
fi
|
||||
fi
|
||||
|
||||
# enable required pg_trgm extension for gitlab
|
||||
psql gitlab -c "CREATE EXTENSION IF NOT EXISTS pg_trgm"
|
||||
# Always do the db migrations just to be sure the database is up-to-date
|
||||
${gitlab-rake}/bin/gitlab-rake db:migrate RAILS_ENV=production
|
||||
|
||||
|
49
nixos/modules/services/misc/nix-optimise.nix
Normal file
49
nixos/modules/services/misc/nix-optimise.nix
Normal file
@ -0,0 +1,49 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.nix.optimise;
|
||||
in
|
||||
|
||||
{
|
||||
|
||||
###### interface
|
||||
|
||||
options = {
|
||||
|
||||
nix.optimise = {
|
||||
|
||||
automatic = mkOption {
|
||||
default = false;
|
||||
type = types.bool;
|
||||
description = "Automatically run the nix store optimiser at a specific time.";
|
||||
};
|
||||
|
||||
dates = mkOption {
|
||||
default = "03:45";
|
||||
type = types.listOf types.str;
|
||||
description = ''
|
||||
Specification (in the format described by
|
||||
<citerefentry><refentrytitle>systemd.time</refentrytitle>
|
||||
<manvolnum>5</manvolnum></citerefentry>) of the time at
|
||||
which the optimiser will run.
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
###### implementation
|
||||
|
||||
config = {
|
||||
|
||||
systemd.services.nix-optimise =
|
||||
{ description = "Nix Store Optimiser";
|
||||
serviceConfig.ExecStart = "${config.nix.package}/bin/nix-store --optimise";
|
||||
startAt = optional cfg.automatic cfg.dates;
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
}
|
116
nixos/modules/services/monitoring/prometheus/alertmanager.nix
Normal file
116
nixos/modules/services/monitoring/prometheus/alertmanager.nix
Normal file
@ -0,0 +1,116 @@
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.services.prometheus.alertmanager;
|
||||
mkConfigFile = pkgs.writeText "alertmanager.yml" (builtins.toJSON cfg.configuration);
|
||||
in {
|
||||
options = {
|
||||
services.prometheus.alertmanager = {
|
||||
enable = mkEnableOption "Prometheus Alertmanager";
|
||||
|
||||
user = mkOption {
|
||||
type = types.str;
|
||||
default = "nobody";
|
||||
description = ''
|
||||
User name under which Alertmanager shall be run.
|
||||
'';
|
||||
};
|
||||
|
||||
group = mkOption {
|
||||
type = types.str;
|
||||
default = "nogroup";
|
||||
description = ''
|
||||
Group under which Alertmanager shall be run.
|
||||
'';
|
||||
};
|
||||
|
||||
configuration = mkOption {
|
||||
type = types.attrs;
|
||||
default = {};
|
||||
description = ''
|
||||
Alertmanager configuration as nix attribute set.
|
||||
'';
|
||||
};
|
||||
|
||||
logFormat = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
default = null;
|
||||
description = ''
|
||||
If set use a syslog logger or JSON logging.
|
||||
'';
|
||||
};
|
||||
|
||||
logLevel = mkOption {
|
||||
type = types.enum ["debug" "info" "warn" "error" "fatal"];
|
||||
default = "warn";
|
||||
description = ''
|
||||
Only log messages with the given severity or above.
|
||||
'';
|
||||
};
|
||||
|
||||
webExternalUrl = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
default = null;
|
||||
description = ''
|
||||
The URL under which Alertmanager is externally reachable (for example, if Alertmanager is served via a reverse proxy).
|
||||
Used for generating relative and absolute links back to Alertmanager itself.
|
||||
If the URL has a path portion, it will be used to prefix all HTTP endoints served by Alertmanager.
|
||||
If omitted, relevant URL components will be derived automatically.
|
||||
'';
|
||||
};
|
||||
|
||||
listenAddress = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
default = null;
|
||||
description = ''
|
||||
Address to listen on for the web interface and API.
|
||||
'';
|
||||
};
|
||||
|
||||
port = mkOption {
|
||||
type = types.int;
|
||||
default = 9093;
|
||||
description = ''
|
||||
Port to listen on for the web interface and API.
|
||||
'';
|
||||
};
|
||||
|
||||
openFirewall = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Open port in firewall for incoming connections.
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
networking.firewall.allowedTCPPorts = optional cfg.openFirewall cfg.port;
|
||||
|
||||
systemd.services.alertmanager = {
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
after = [ "network.target" ];
|
||||
script = ''
|
||||
${pkgs.prometheus-alertmanager.bin}/bin/alertmanager \
|
||||
-config.file ${mkConfigFile} \
|
||||
-web.listen-address ${cfg.listenAddress}:${toString cfg.port} \
|
||||
-log.level ${cfg.logLevel} \
|
||||
${optionalString (cfg.webExternalUrl != null) ''-web.external-url ${cfg.webExternalUrl} \''}
|
||||
${optionalString (cfg.logFormat != null) "-log.format ${cfg.logFormat}"}
|
||||
'';
|
||||
|
||||
serviceConfig = {
|
||||
User = cfg.user;
|
||||
Group = cfg.group;
|
||||
Restart = "always";
|
||||
PrivateTmp = true;
|
||||
WorkingDirectory = "/tmp";
|
||||
ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
@ -29,6 +29,9 @@ let
|
||||
"-storage.local.path=${cfg.dataDir}/metrics"
|
||||
"-config.file=${writePrettyJSON "prometheus.yml" promConfig}"
|
||||
"-web.listen-address=${cfg.listenAddress}"
|
||||
"-alertmanager.notification-queue-capacity=${toString cfg.alertmanagerNotificationQueueCapacity}"
|
||||
"-alertmanager.timeout=${toString cfg.alertmanagerTimeout}s"
|
||||
(optionalString (cfg.alertmanagerURL != []) "-alertmanager.url=${concatStringsSep "," cfg.alertmanagerURL}")
|
||||
];
|
||||
|
||||
promTypes.globalConfig = types.submodule {
|
||||
@ -388,6 +391,30 @@ in {
|
||||
A list of scrape configurations.
|
||||
'';
|
||||
};
|
||||
|
||||
alertmanagerURL = mkOption {
|
||||
type = types.listOf types.str;
|
||||
default = [];
|
||||
description = ''
|
||||
List of Alertmanager URLs to send notifications to.
|
||||
'';
|
||||
};
|
||||
|
||||
alertmanagerNotificationQueueCapacity = mkOption {
|
||||
type = types.int;
|
||||
default = 10000;
|
||||
description = ''
|
||||
The capacity of the queue for pending alert manager notifications.
|
||||
'';
|
||||
};
|
||||
|
||||
alertmanagerTimeout = mkOption {
|
||||
type = types.int;
|
||||
default = 10;
|
||||
description = ''
|
||||
Alert manager HTTP API timeout (in seconds).
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
80
nixos/modules/services/networking/htpdate.nix
Normal file
80
nixos/modules/services/networking/htpdate.nix
Normal file
@ -0,0 +1,80 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
inherit (pkgs) htpdate;
|
||||
|
||||
cfg = config.services.htpdate;
|
||||
in
|
||||
|
||||
{
|
||||
|
||||
###### interface
|
||||
|
||||
options = {
|
||||
|
||||
services.htpdate = {
|
||||
|
||||
enable = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Enable htpdate daemon.
|
||||
'';
|
||||
};
|
||||
|
||||
extraOptions = mkOption {
|
||||
type = types.str;
|
||||
default = "";
|
||||
description = ''
|
||||
Additional command line arguments to pass to htpdate.
|
||||
'';
|
||||
};
|
||||
|
||||
servers = mkOption {
|
||||
type = types.listOf types.str;
|
||||
default = [ "www.google.com" ];
|
||||
description = ''
|
||||
HTTP servers to use for time synchronization.
|
||||
'';
|
||||
};
|
||||
|
||||
proxy = mkOption {
|
||||
type = types.str;
|
||||
default = "";
|
||||
example = "127.0.0.1:8118";
|
||||
description = ''
|
||||
HTTP proxy used for requests.
|
||||
'';
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
###### implementation
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
|
||||
systemd.services.htpdate = {
|
||||
description = "htpdate daemon";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
serviceConfig = {
|
||||
Type = "forking";
|
||||
PIDFile = "/var/run/htpdate.pid";
|
||||
ExecStart = concatStringsSep " " [
|
||||
"${htpdate}/bin/htpdate"
|
||||
"-D -u nobody"
|
||||
"-a -s"
|
||||
"-l"
|
||||
"${optionalString (cfg.proxy != "") "-P ${cfg.proxy}"}"
|
||||
"${cfg.extraOptions}"
|
||||
"${concatStringsSep " " cfg.servers}"
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
}
|
@ -15,7 +15,7 @@ let
|
||||
logfile=/var/log/murmur/murmurd.log
|
||||
pidfile=${cfg.pidfile}
|
||||
|
||||
welcome="${cfg.welcome}"
|
||||
welcometext="${cfg.welcometext}"
|
||||
port=${toString cfg.port}
|
||||
|
||||
${if cfg.hostName == "" then "" else "host="+cfg.hostName}
|
||||
@ -84,7 +84,7 @@ in
|
||||
description = "Path to PID file for Murmur daemon.";
|
||||
};
|
||||
|
||||
welcome = mkOption {
|
||||
welcometext = mkOption {
|
||||
type = types.str;
|
||||
default = "";
|
||||
description = "Welcome message for connected clients.";
|
||||
|
166
nixos/modules/services/web-apps/selfoss.nix
Normal file
166
nixos/modules/services/web-apps/selfoss.nix
Normal file
@ -0,0 +1,166 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.services.selfoss;
|
||||
|
||||
poolName = "selfoss_pool";
|
||||
phpfpmSocketName = "/var/run/phpfpm/${poolName}.sock";
|
||||
|
||||
dataDir = "/var/lib/selfoss";
|
||||
|
||||
selfoss-config =
|
||||
let
|
||||
db_type = cfg.database.type;
|
||||
default_port = if (db_type == "mysql") then 3306 else 5342;
|
||||
in
|
||||
pkgs.writeText "selfoss-config.ini" ''
|
||||
[globals]
|
||||
${lib.optionalString (db_type != "sqlite") ''
|
||||
db_type=${db_type}
|
||||
db_host=${cfg.database.host}
|
||||
db_database=${cfg.database.name}
|
||||
db_username=${cfg.database.user}
|
||||
db_password=${cfg.database.password}
|
||||
db_port=${if (cfg.database.port != null) then cfg.database.port
|
||||
else default_port}
|
||||
''
|
||||
}
|
||||
${cfg.extraConfig}
|
||||
'';
|
||||
in
|
||||
{
|
||||
options = {
|
||||
services.selfoss = {
|
||||
enable = mkEnableOption "selfoss";
|
||||
|
||||
user = mkOption {
|
||||
type = types.str;
|
||||
default = "nginx";
|
||||
example = "nginx";
|
||||
description = ''
|
||||
User account under which both the service and the web-application run.
|
||||
'';
|
||||
};
|
||||
|
||||
pool = mkOption {
|
||||
type = types.str;
|
||||
default = "${poolName}";
|
||||
description = ''
|
||||
Name of existing phpfpm pool that is used to run web-application.
|
||||
If not specified a pool will be created automatically with
|
||||
default values.
|
||||
'';
|
||||
};
|
||||
|
||||
database = {
|
||||
type = mkOption {
|
||||
type = types.enum ["pgsql" "mysql" "sqlite"];
|
||||
default = "sqlite";
|
||||
description = ''
|
||||
Database to store feeds. Supported are sqlite, pgsql and mysql.
|
||||
'';
|
||||
};
|
||||
|
||||
host = mkOption {
|
||||
type = types.str;
|
||||
default = "localhost";
|
||||
description = ''
|
||||
Host of the database (has no effect if type is "sqlite").
|
||||
'';
|
||||
};
|
||||
|
||||
name = mkOption {
|
||||
type = types.str;
|
||||
default = "tt_rss";
|
||||
description = ''
|
||||
Name of the existing database (has no effect if type is "sqlite").
|
||||
'';
|
||||
};
|
||||
|
||||
user = mkOption {
|
||||
type = types.str;
|
||||
default = "tt_rss";
|
||||
description = ''
|
||||
The database user. The user must exist and has access to
|
||||
the specified database (has no effect if type is "sqlite").
|
||||
'';
|
||||
};
|
||||
|
||||
password = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
default = null;
|
||||
description = ''
|
||||
The database user's password (has no effect if type is "sqlite").
|
||||
'';
|
||||
};
|
||||
|
||||
port = mkOption {
|
||||
type = types.nullOr types.int;
|
||||
default = null;
|
||||
description = ''
|
||||
The database's port. If not set, the default ports will be
|
||||
provided (5432 and 3306 for pgsql and mysql respectively)
|
||||
(has no effect if type is "sqlite").
|
||||
'';
|
||||
};
|
||||
};
|
||||
extraConfig = mkOption {
|
||||
type = types.lines;
|
||||
default = "";
|
||||
description = ''
|
||||
Extra configuration added to config.ini
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
|
||||
services.phpfpm.poolConfigs = mkIf (cfg.pool == "${poolName}") {
|
||||
"${poolName}" = ''
|
||||
listen = "${phpfpmSocketName}";
|
||||
listen.owner = nginx
|
||||
listen.group = nginx
|
||||
listen.mode = 0600
|
||||
user = nginx
|
||||
pm = dynamic
|
||||
pm.max_children = 75
|
||||
pm.start_servers = 10
|
||||
pm.min_spare_servers = 5
|
||||
pm.max_spare_servers = 20
|
||||
pm.max_requests = 500
|
||||
catch_workers_output = 1
|
||||
'';
|
||||
};
|
||||
|
||||
systemd.services.selfoss-config = {
|
||||
serviceConfig.Type = "oneshot";
|
||||
script = ''
|
||||
mkdir -m 755 -p ${dataDir}
|
||||
cd ${dataDir}
|
||||
|
||||
# Delete all but the "data" folder
|
||||
ls | grep -v data | while read line; do rm -rf $line; done || true
|
||||
|
||||
# Create the files
|
||||
cp -r "${pkgs.selfoss}/"* "${dataDir}"
|
||||
ln -sf "${selfoss-config}" "${dataDir}/config.ini"
|
||||
chown -R "${cfg.user}" "${dataDir}"
|
||||
chmod -R 755 "${dataDir}"
|
||||
'';
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
};
|
||||
|
||||
systemd.services.selfoss-update = {
|
||||
serviceConfig = {
|
||||
ExecStart = "${pkgs.php}/bin/php ${dataDir}/cliupdate.php";
|
||||
User = "${cfg.user}";
|
||||
};
|
||||
startAt = "hourly";
|
||||
after = [ "selfoss-config.service" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
|
||||
};
|
||||
|
||||
};
|
||||
}
|
@ -142,10 +142,10 @@ in
|
||||
# Empty, immutable home directory of many system accounts.
|
||||
mkdir -p /var/empty
|
||||
# Make sure it's really empty
|
||||
${pkgs.e2fsprogs}/bin/chattr -i /var/empty
|
||||
${pkgs.e2fsprogs}/bin/chattr -f -i /var/empty || true
|
||||
find /var/empty -mindepth 1 -delete
|
||||
chmod 0555 /var/empty
|
||||
${pkgs.e2fsprogs}/bin/chattr +i /var/empty
|
||||
${pkgs.e2fsprogs}/bin/chattr -f +i /var/empty || true
|
||||
'';
|
||||
|
||||
system.activationScripts.usrbinenv = if config.environment.usrbinenv != null
|
||||
|
@ -198,9 +198,10 @@ let
|
||||
preLVMCommands preDeviceCommands postDeviceCommands postMountCommands preFailCommands kernelModules;
|
||||
|
||||
resumeDevices = map (sd: if sd ? device then sd.device else "/dev/disk/by-label/${sd.label}")
|
||||
(filter (sd: (sd ? label || hasPrefix "/dev/" sd.device) && !sd.randomEncryption
|
||||
# Don't include zram devices
|
||||
&& !(hasPrefix "/dev/zram" sd.device)) config.swapDevices);
|
||||
(filter (sd: hasPrefix "/dev/" sd.device && !sd.randomEncryption
|
||||
# Don't include zram devices
|
||||
&& !(hasPrefix "/dev/zram" sd.device)
|
||||
) config.swapDevices);
|
||||
|
||||
fsInfo =
|
||||
let f = fs: [ fs.mountPoint (if fs.device != null then fs.device else "/dev/disk/by-label/${fs.label}") fs.fsType (builtins.concatStringsSep "," fs.options) ];
|
||||
|
@ -111,16 +111,6 @@ rm -f /etc/{group,passwd,shadow}.lock
|
||||
rm -rf /nix/var/nix/gcroots/tmp /nix/var/nix/temproots
|
||||
|
||||
|
||||
# Create a ramfs on /run/keys to hold secrets that shouldn't be
|
||||
# written to disk (generally used for NixOps, harmless elsewhere).
|
||||
if ! mountpoint -q /run/keys; then
|
||||
rm -rf /run/keys
|
||||
mkdir /run/keys
|
||||
mount -t ramfs ramfs /run/keys
|
||||
chown 0:96 /run/keys
|
||||
chmod 0750 /run/keys
|
||||
fi
|
||||
|
||||
mkdir -m 0755 -p /run/lock
|
||||
|
||||
|
||||
|
@ -18,7 +18,7 @@ let
|
||||
|
||||
prioOption = prio: optionalString (prio != null) " pri=${toString prio}";
|
||||
|
||||
specialFSTypes = [ "proc" "sysfs" "tmpfs" "devtmpfs" "devpts" ];
|
||||
specialFSTypes = [ "proc" "sysfs" "tmpfs" "ramfs" "devtmpfs" "devpts" ];
|
||||
|
||||
coreFileSystemOpts = { name, config, ... }: {
|
||||
|
||||
@ -290,6 +290,9 @@ in
|
||||
"/dev" = { fsType = "devtmpfs"; options = [ "nosuid" "strictatime" "mode=755" "size=${config.boot.devSize}" ]; };
|
||||
"/dev/shm" = { fsType = "tmpfs"; options = [ "nosuid" "nodev" "strictatime" "mode=1777" "size=${config.boot.devShmSize}" ]; };
|
||||
"/dev/pts" = { fsType = "devpts"; options = [ "nosuid" "noexec" "mode=620" "gid=${toString config.ids.gids.tty}" ]; };
|
||||
|
||||
# To hold secrets that shouldn't be written to disk (generally used for NixOps, harmless elsewhere)
|
||||
"/run/keys" = { fsType = "ramfs"; options = [ "nosuid" "nodev" "mode=750" "gid=${toString config.ids.gids.keys}" ]; };
|
||||
} // optionalAttrs (!config.boot.isContainer) {
|
||||
# systemd-nspawn populates /sys by itself, and remounting it causes all
|
||||
# kinds of weird issues (most noticeably, waiting for host disk device
|
||||
|
@ -12,21 +12,21 @@ let
|
||||
''
|
||||
echo "Bringing ${name} up"
|
||||
ip link set dev ${name} up
|
||||
${optionalString (cfg . "localAddress" or null != null) ''
|
||||
${optionalString (cfg.localAddress != null) ''
|
||||
echo "Setting ip for ${name}"
|
||||
ip addr add ${cfg . "localAddress"} dev ${name}
|
||||
ip addr add ${cfg.localAddress} dev ${name}
|
||||
''}
|
||||
${optionalString (cfg . "localAddress6" or null != null) ''
|
||||
${optionalString (cfg.localAddress6 != null) ''
|
||||
echo "Setting ip6 for ${name}"
|
||||
ip -6 addr add ${cfg . "localAddress6"} dev ${name}
|
||||
ip -6 addr add ${cfg.localAddress6} dev ${name}
|
||||
''}
|
||||
${optionalString (cfg . "hostAddress" or null != null) ''
|
||||
${optionalString (cfg.hostAddress != null) ''
|
||||
echo "Setting route to host for ${name}"
|
||||
ip route add ${cfg . "hostAddress"} dev ${name}
|
||||
ip route add ${cfg.hostAddress} dev ${name}
|
||||
''}
|
||||
${optionalString (cfg . "hostAddress6" or null != null) ''
|
||||
${optionalString (cfg.hostAddress6 != null) ''
|
||||
echo "Setting route6 to host for ${name}"
|
||||
ip -6 route add ${cfg . "hostAddress6"} dev ${name}
|
||||
ip -6 route add ${cfg.hostAddress6} dev ${name}
|
||||
''}
|
||||
''
|
||||
);
|
||||
@ -56,9 +56,7 @@ let
|
||||
ip -6 route add default via $HOST_ADDRESS6
|
||||
fi
|
||||
|
||||
${concatStringsSep "\n" (mapAttrsToList renderExtraVeth cfg . "extraVeths" or {})}
|
||||
ip a
|
||||
ip r
|
||||
${concatStringsSep "\n" (mapAttrsToList renderExtraVeth cfg.extraVeths)}
|
||||
fi
|
||||
|
||||
# Start the regular stage 1 script.
|
||||
@ -67,7 +65,8 @@ let
|
||||
);
|
||||
|
||||
nspawnExtraVethArgs = (name: cfg: "--network-veth-extra=${name}");
|
||||
startScript = (cfg:
|
||||
|
||||
startScript = cfg:
|
||||
''
|
||||
mkdir -p -m 0755 "$root/etc" "$root/var/lib"
|
||||
mkdir -p -m 0700 "$root/var/lib/private" "$root/root" /run/containers
|
||||
@ -92,11 +91,7 @@ let
|
||||
fi
|
||||
fi
|
||||
|
||||
${if cfg . "extraVeths" or null != null then
|
||||
''extraFlags+=" ${concatStringsSep " " (mapAttrsToList nspawnExtraVethArgs cfg . "extraVeths" or {})}"''
|
||||
else
|
||||
''# No extra veth pairs to create''
|
||||
}
|
||||
extraFlags+=" ${concatStringsSep " " (mapAttrsToList nspawnExtraVethArgs cfg.extraVeths)}"
|
||||
|
||||
for iface in $INTERFACES; do
|
||||
extraFlags+=" --network-interface=$iface"
|
||||
@ -135,10 +130,9 @@ let
|
||||
--setenv LOCAL_ADDRESS6="$LOCAL_ADDRESS6" \
|
||||
--setenv PATH="$PATH" \
|
||||
${containerInit cfg} "''${SYSTEM_PATH:-/nix/var/nix/profiles/system}/init"
|
||||
''
|
||||
);
|
||||
'';
|
||||
|
||||
preStartScript = (cfg:
|
||||
preStartScript = cfg:
|
||||
''
|
||||
# Clean up existing machined registration and interfaces.
|
||||
machinectl terminate "$INSTANCE" 2> /dev/null || true
|
||||
@ -151,45 +145,43 @@ let
|
||||
${concatStringsSep "\n" (
|
||||
mapAttrsToList (name: cfg:
|
||||
''ip link del dev ${name} 2> /dev/null || true ''
|
||||
) cfg . "extraVeths" or {}
|
||||
) cfg.extraVeths
|
||||
)}
|
||||
''
|
||||
);
|
||||
'';
|
||||
|
||||
postStartScript = (cfg:
|
||||
let
|
||||
ipcall = (cfg: ipcmd: variable: attribute:
|
||||
if cfg . attribute or null == null then
|
||||
ipcall = cfg: ipcmd: variable: attribute:
|
||||
if cfg.${attribute} == null then
|
||||
''
|
||||
if [ -n "${variable}" ]; then
|
||||
${ipcmd} add ${variable} dev $ifaceHost
|
||||
fi
|
||||
''
|
||||
else
|
||||
''${ipcmd} add ${cfg . attribute} dev $ifaceHost''
|
||||
);
|
||||
renderExtraVeth = (name: cfg:
|
||||
if cfg . "hostBridge" or null != null then
|
||||
''${ipcmd} add ${cfg.${attribute}} dev $ifaceHost'';
|
||||
renderExtraVeth = name: cfg:
|
||||
if cfg.hostBridge != null then
|
||||
''
|
||||
# Add ${name} to bridge ${cfg.hostBridge}
|
||||
ip link set dev ${name} master ${cfg.hostBridge} up
|
||||
''
|
||||
else
|
||||
''
|
||||
# Set IPs and routes for ${name}
|
||||
${optionalString (cfg . "hostAddress" or null != null) ''
|
||||
ip addr add ${cfg . "hostAddress"} dev ${name}
|
||||
''}
|
||||
${optionalString (cfg . "hostAddress6" or null != null) ''
|
||||
ip -6 addr add ${cfg . "hostAddress6"} dev ${name}
|
||||
''}
|
||||
${optionalString (cfg . "localAddress" or null != null) ''
|
||||
ip route add ${cfg . "localAddress"} dev ${name}
|
||||
''}
|
||||
${optionalString (cfg . "localAddress6" or null != null) ''
|
||||
ip -6 route add ${cfg . "localAddress6"} dev ${name}
|
||||
''}
|
||||
''
|
||||
);
|
||||
# Set IPs and routes for ${name}
|
||||
${optionalString (cfg.hostAddress != null) ''
|
||||
ip addr add ${cfg.hostAddress} dev ${name}
|
||||
''}
|
||||
${optionalString (cfg.hostAddress6 != null) ''
|
||||
ip -6 addr add ${cfg.hostAddress6} dev ${name}
|
||||
''}
|
||||
${optionalString (cfg.localAddress != null) ''
|
||||
ip route add ${cfg.localAddress} dev ${name}
|
||||
''}
|
||||
${optionalString (cfg.localAddress6 != null) ''
|
||||
ip -6 route add ${cfg.localAddress6} dev ${name}
|
||||
''}
|
||||
'';
|
||||
in
|
||||
''
|
||||
if [ "$PRIVATE_NETWORK" = 1 ]; then
|
||||
@ -202,7 +194,7 @@ let
|
||||
${ipcall cfg "ip route" "$LOCAL_ADDRESS" "localAddress"}
|
||||
${ipcall cfg "ip -6 route" "$LOCAL_ADDRESS6" "localAddress6"}
|
||||
fi
|
||||
${concatStringsSep "\n" (mapAttrsToList renderExtraVeth cfg . "extraVeths" or {})}
|
||||
${concatStringsSep "\n" (mapAttrsToList renderExtraVeth cfg.extraVeths)}
|
||||
fi
|
||||
|
||||
# Get the leader PID so that we can signal it in
|
||||
@ -307,6 +299,15 @@ let
|
||||
|
||||
};
|
||||
|
||||
dummyConfig =
|
||||
{
|
||||
extraVeths = {};
|
||||
hostAddress = null;
|
||||
hostAddress6 = null;
|
||||
localAddress = null;
|
||||
localAddress6 = null;
|
||||
};
|
||||
|
||||
in
|
||||
|
||||
{
|
||||
@ -451,7 +452,7 @@ in
|
||||
containers. Each container appears as a service
|
||||
<literal>container-<replaceable>name</replaceable></literal>
|
||||
on the host system, allowing it to be started and stopped via
|
||||
<command>systemctl</command> .
|
||||
<command>systemctl</command>.
|
||||
'';
|
||||
};
|
||||
|
||||
@ -470,11 +471,11 @@ in
|
||||
environment.INSTANCE = "%i";
|
||||
environment.root = "/var/lib/containers/%i";
|
||||
|
||||
preStart = preStartScript {};
|
||||
preStart = preStartScript dummyConfig;
|
||||
|
||||
script = startScript {};
|
||||
script = startScript dummyConfig;
|
||||
|
||||
postStart = postStartScript {};
|
||||
postStart = postStartScript dummyConfig;
|
||||
|
||||
preStop =
|
||||
''
|
||||
|
@ -260,6 +260,7 @@ in rec {
|
||||
#tests.logstash = callTest tests/logstash.nix {};
|
||||
tests.mathics = callTest tests/mathics.nix {};
|
||||
tests.misc = callTest tests/misc.nix {};
|
||||
tests.mongodb = callTest tests/mongodb.nix {};
|
||||
tests.mumble = callTest tests/mumble.nix {};
|
||||
tests.munin = callTest tests/munin.nix {};
|
||||
tests.mysql = callTest tests/mysql.nix {};
|
||||
|
@ -1,7 +1,7 @@
|
||||
import ./make-test.nix ({ pkgs, ...} :
|
||||
|
||||
{
|
||||
name = "sddm";
|
||||
name = "kde5";
|
||||
meta = with pkgs.stdenv.lib.maintainers; {
|
||||
maintainers = [ ttuegel ];
|
||||
};
|
||||
|
34
nixos/tests/mongodb.nix
Normal file
34
nixos/tests/mongodb.nix
Normal file
@ -0,0 +1,34 @@
|
||||
# This test start mongodb, runs a query using mongo shell
|
||||
|
||||
import ./make-test.nix ({ pkgs, ...} : let
|
||||
testQuery = pkgs.writeScript "nixtest.js" ''
|
||||
db.greetings.insert({ "greeting": "hello" });
|
||||
print(db.greetings.findOne().greeting);
|
||||
'';
|
||||
in {
|
||||
name = "mongodb";
|
||||
meta = with pkgs.stdenv.lib.maintainers; {
|
||||
maintainers = [ bluescreen303 offline wkennington cstrahan rvl ];
|
||||
};
|
||||
|
||||
nodes = {
|
||||
one =
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
services = {
|
||||
mongodb.enable = true;
|
||||
mongodb.extraConfig = ''
|
||||
# Allow starting engine with only a small virtual disk
|
||||
storage.journal.enabled: false
|
||||
storage.mmapv1.smallFiles: true
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
startAll;
|
||||
$one->waitForUnit("mongodb.service");
|
||||
$one->succeed("mongo nixtest ${testQuery}") =~ /hello/ or die;
|
||||
'';
|
||||
})
|
@ -77,7 +77,7 @@ in {
|
||||
}; };
|
||||
mongodb.enable = true;
|
||||
mongodb.extraConfig = ''
|
||||
nojournal = true
|
||||
storage.journal.enabled: false
|
||||
'';
|
||||
};
|
||||
systemd.services.mongodb.unitConfig.Before = "pump.io.service";
|
||||
|
@ -403,16 +403,16 @@ rec {
|
||||
|
||||
testng = buildEclipsePlugin rec {
|
||||
name = "testng-${version}";
|
||||
version = "6.9.11.201604020423";
|
||||
version = "6.9.12.201607091356";
|
||||
|
||||
srcFeature = fetchurl {
|
||||
url = "http://beust.com/eclipse-old/eclipse_${version}/features/org.testng.eclipse_${version}.jar";
|
||||
sha256 = "1cp7f6f0525wqwjj4pyrp0q0ii7zcd5gwd5acaq9jjb13xgw8vav";
|
||||
sha256 = "06c6885d3ggg1i085zhfwayj06jn4v1jip9zz40921vpq0iand54";
|
||||
};
|
||||
|
||||
srcPlugin = fetchurl {
|
||||
url = "http://beust.com/eclipse-old/eclipse_${version}/plugins/org.testng.eclipse_${version}.jar";
|
||||
sha256 = "04m07cdfw0isp27ykx6dbrlcdw33rxww7vnavanygxxnlpyvyas3";
|
||||
sha256 = "0bpyb9bnh8kglajmdzb7pr21i1sly73kwdjbygg75ad7z37l58br";
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
91
pkgs/applications/editors/emacs/macport-25.1.nix
Normal file
91
pkgs/applications/editors/emacs/macport-25.1.nix
Normal file
@ -0,0 +1,91 @@
|
||||
{ stdenv, fetchurl, ncurses, pkgconfig, texinfo, libxml2, gnutls, gettext, autoconf, automake
|
||||
, AppKit, Carbon, Cocoa, IOKit, OSAKit, Quartz, QuartzCore, WebKit
|
||||
, ImageCaptureCore, GSS, ImageIO # These may be optional
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
emacsName = "emacs-25.1";
|
||||
name = "${emacsName}-mac-6.0";
|
||||
|
||||
builder = ./builder.sh;
|
||||
|
||||
src = fetchurl {
|
||||
url = "ftp://ftp.gnu.org/gnu/emacs/${emacsName}.tar.xz";
|
||||
sha256 = "19f2798ee3bc26c95dca3303e7ab141e7ad65d6ea2b6945eeba4dbea7df48f33";
|
||||
};
|
||||
|
||||
macportSrc = fetchurl {
|
||||
url = "ftp://ftp.math.s.chiba-u.ac.jp/emacs/${name}.tar.gz";
|
||||
sha256 = "2f7a3fd826e6dea541ada04f4a1ff2903a87a1f736b89c5b90bf7bb820568e34";
|
||||
};
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
buildInputs = [ ncurses libxml2 gnutls pkgconfig texinfo gettext autoconf automake];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
AppKit Carbon Cocoa IOKit OSAKit Quartz QuartzCore WebKit
|
||||
ImageCaptureCore GSS ImageIO # may be optional
|
||||
];
|
||||
|
||||
postUnpack = ''
|
||||
mv $sourceRoot $name
|
||||
tar xzf $macportSrc
|
||||
mv $name $sourceRoot
|
||||
'';
|
||||
|
||||
postPatch = ''
|
||||
patch -p1 < patch-mac
|
||||
substituteInPlace lisp/international/mule-cmds.el \
|
||||
--replace /usr/share/locale ${gettext}/share/locale
|
||||
'';
|
||||
|
||||
configureFlags = [
|
||||
"LDFLAGS=-L${ncurses.out}/lib"
|
||||
"--with-xml2=yes"
|
||||
"--with-gnutls=yes"
|
||||
"--with-mac"
|
||||
"--enable-mac-app=$$out/Applications"
|
||||
];
|
||||
|
||||
CFLAGS = "-O3 -DMAC_OS_X_VERSION_MAX_ALLOWED=1090";
|
||||
LDFLAGS = "-O3 -L${ncurses.out}/lib";
|
||||
|
||||
postInstall = ''
|
||||
mkdir -p $out/share/emacs/site-lisp/
|
||||
cp ${./site-start.el} $out/share/emacs/site-lisp/site-start.el
|
||||
'';
|
||||
|
||||
doCheck = true;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "GNU Emacs 25, the extensible, customizable text editor";
|
||||
homepage = http://www.gnu.org/software/emacs/;
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = with maintainers; [ jwiegley ];
|
||||
platforms = platforms.darwin;
|
||||
|
||||
longDescription = ''
|
||||
GNU Emacs is an extensible, customizable text editor—and more. At its
|
||||
core is an interpreter for Emacs Lisp, a dialect of the Lisp
|
||||
programming language with extensions to support text editing.
|
||||
|
||||
The features of GNU Emacs include: content-sensitive editing modes,
|
||||
including syntax coloring, for a wide variety of file types including
|
||||
plain text, source code, and HTML; complete built-in documentation,
|
||||
including a tutorial for new users; full Unicode support for nearly all
|
||||
human languages and their scripts; highly customizable, using Emacs
|
||||
Lisp code or a graphical interface; a large number of extensions that
|
||||
add other functionality, including a project planner, mail and news
|
||||
reader, debugger interface, calendar, and more. Many of these
|
||||
extensions are distributed with GNU Emacs; others are available
|
||||
separately.
|
||||
|
||||
This is "Mac port" addition to GNU Emacs 24. This provides a native
|
||||
GUI support for Mac OS X 10.4 - 10.11. Note that Emacs 23 and later
|
||||
already contain the official GUI support via the NS (Cocoa) port for
|
||||
Mac OS X 10.4 and later. So if it is good enough for you, then you
|
||||
don't need to try this.
|
||||
'';
|
||||
};
|
||||
}
|
@ -6,7 +6,7 @@ assert stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux";
|
||||
assert gksuSupport -> gksu != null;
|
||||
|
||||
let
|
||||
build = "3114";
|
||||
build = "3126";
|
||||
libPath = stdenv.lib.makeLibraryPath [glib xorg.libX11 gtk2 cairo pango];
|
||||
redirects = [ "/usr/bin/pkexec=${pkexecPath}" ]
|
||||
++ stdenv.lib.optional gksuSupport "/usr/bin/gksudo=${gksu}/bin/gksudo";
|
||||
@ -20,13 +20,13 @@ in let
|
||||
fetchurl {
|
||||
name = "sublimetext-${build}.tar.bz2";
|
||||
url = "https://download.sublimetext.com/sublime_text_3_build_${build}_x32.tar.bz2";
|
||||
sha256 = "0xrfx76ilw5hlx26hv9zx1kw8q9qf76646yyjmn36p6mq9vs6y0d";
|
||||
sha256 = "0acff4wj1s61x3xszdd93lkhaqa26lb7ryqdxnbphxzhf2jfzzwj";
|
||||
}
|
||||
else
|
||||
fetchurl {
|
||||
name = "sublimetext-${build}.tar.bz2";
|
||||
url = "https://download.sublimetext.com/sublime_text_3_build_${build}_x64.tar.bz2";
|
||||
sha256 = "0nmi2gkpz56a47a0f56nx6nl3sl7gif035517gx2v82113y9nh66";
|
||||
sha256 = "0ykj33fq86iv7f9zx76h90pl9y86iri0idhlj09a6prhk8p17nqq";
|
||||
};
|
||||
|
||||
dontStrip = true;
|
||||
|
@ -42,7 +42,7 @@ composableDerivation {
|
||||
} (fix: rec {
|
||||
|
||||
name = "vim_configurable-${version}";
|
||||
version = "7.4.826";
|
||||
version = "8.0.0005";
|
||||
|
||||
enableParallelBuilding = true; # test this
|
||||
|
||||
@ -54,7 +54,7 @@ composableDerivation {
|
||||
owner = "vim";
|
||||
repo = "vim";
|
||||
rev = "v${version}";
|
||||
sha256 = "04hp2gqbbj9h872bgj1g9xcaj5qlg9q45v6by2ch9n105dng9aj3";
|
||||
sha256 = "0ys3l3dr43vjad1f096ch1sl3x2ajsqkd03rdn6n812m7j4wipx0";
|
||||
};
|
||||
|
||||
"vim-nox" =
|
||||
@ -69,12 +69,6 @@ composableDerivation {
|
||||
|
||||
prePatch = "cd src";
|
||||
|
||||
# if darwin support is enabled, we want to make sure we're not building with
|
||||
# OS-installed python framework
|
||||
patches = stdenv.lib.optionals
|
||||
(stdenv.isDarwin && (config.vim.darwin or true))
|
||||
[ ./python_framework.patch ];
|
||||
|
||||
configureFlags
|
||||
= [ "--enable-gui=${args.gui}" "--with-features=${args.features}" ];
|
||||
|
||||
|
@ -1,24 +0,0 @@
|
||||
--- a/auto/configure
|
||||
+++ b/auto/configure
|
||||
@@ -5895,13 +5895,6 @@
|
||||
eof
|
||||
eval "`cd ${PYTHON_CONFDIR} && make -f "${tmp_mkf}" __ | sed '/ directory /d'`"
|
||||
rm -f -- "${tmp_mkf}"
|
||||
- if test "x$MACOSX" = "xyes" && ${vi_cv_path_python} -c \
|
||||
- "import sys; sys.exit(${vi_cv_var_python_version} < 2.3)"; then
|
||||
- vi_cv_path_python_plibs="-framework Python"
|
||||
- if test "x${vi_cv_path_python}" != "x/usr/bin/python" && test -n "${python_PYTHONFRAMEWORKPREFIX}"; then
|
||||
- vi_cv_path_python_plibs="-F${python_PYTHONFRAMEWORKPREFIX} -framework Python"
|
||||
- fi
|
||||
- else
|
||||
if test "${vi_cv_var_python_version}" = "1.4"; then
|
||||
vi_cv_path_python_plibs="${PYTHON_CONFDIR}/libModules.a ${PYTHON_CONFDIR}/libPython.a ${PYTHON_CONFDIR}/libObjects.a ${PYTHON_CONFDIR}/libParser.a"
|
||||
else
|
||||
@@ -5921,7 +5914,6 @@
|
||||
vi_cv_path_python_plibs="${vi_cv_path_python_plibs} ${python_BASEMODLIBS} ${python_LIBS} ${python_SYSLIBS} ${python_LINKFORSHARED}"
|
||||
vi_cv_path_python_plibs=`echo $vi_cv_path_python_plibs | sed s/-ltermcap//`
|
||||
|
||||
-fi
|
||||
|
||||
if ${vi_cv_dll_name_python+:} false; then :
|
||||
$as_echo_n "(cached) " >&6
|
@ -11,11 +11,12 @@ let
|
||||
else throw "ImageMagick is not supported on this platform.";
|
||||
|
||||
cfg = {
|
||||
version = "6.9.5-2";
|
||||
sha256 = "09h3rpr1jnzd7ipy5d16r2gi0bwg4hk5khwzv4cyhv1xzs8pk7pj";
|
||||
version = "6.9.5-10";
|
||||
sha256 = "0cxjzqzca80vf6sfx4z9zq4wq2w0vy9ajp9kf88jb4na8mwsn198";
|
||||
patches = [];
|
||||
}
|
||||
# Freeze version on mingw so we don't need to port the patch too often.
|
||||
# FIXME: This version has multiple security vulnerabilities
|
||||
// lib.optionalAttrs (stdenv.cross.libc or null == "msvcrt") {
|
||||
version = "6.9.2-0";
|
||||
sha256 = "17ir8bw1j7g7srqmsz3rx780sgnc21zfn0kwyj78iazrywldx8h7";
|
||||
|
@ -11,12 +11,12 @@
|
||||
assert stdenv ? glibc;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "2.0.5";
|
||||
version = "2.0.6";
|
||||
name = "darktable-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/darktable-org/darktable/releases/download/release-${version}/darktable-${version}.tar.xz";
|
||||
sha256 = "00hap68yvfdif6a4lpbhn4jx1n68mpd2kj473kml1xby9swp32w9";
|
||||
sha256 = "1h9qwxyvcv0fc6y5b6l2x4jd5mmw026blhjkcihj00r1aa3c2s13";
|
||||
};
|
||||
|
||||
buildInputs =
|
||||
|
4
pkgs/applications/graphics/rawtherapee/ReleaseInfo.cmake
Normal file
4
pkgs/applications/graphics/rawtherapee/ReleaseInfo.cmake
Normal file
@ -0,0 +1,4 @@
|
||||
set(GIT_BRANCH master)
|
||||
set(GIT_VERSION 4.2.1050)
|
||||
set(GIT_CHANGESET 2d0e5e4feeac9801994d82c5931531f508deb2e9)
|
||||
set(GIT_TAGDISTANCE 1050)
|
@ -5,14 +5,14 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "rawtherapee-4.2";
|
||||
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Beep6581";
|
||||
repo = "RawTherapee";
|
||||
rev = "4.2";
|
||||
sha256 = "1v4px239vlmk9l8wbzlvlyni4ns12icxmgfz21m86jkd10pj5dgr";
|
||||
};
|
||||
|
||||
|
||||
buildInputs = [ pkgconfig cmake pixman libpthreadstubs gtkmm2 libXau libXdmcp
|
||||
lcms2 libiptcdata mercurial libcanberra_gtk2 fftw expat pcre libsigcxx ];
|
||||
|
||||
@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
|
||||
description = "RAW converter and digital photo processing software";
|
||||
homepage = http://www.rawtherapee.com/;
|
||||
license = stdenv.lib.licenses.gpl3Plus;
|
||||
maintainers = with stdenv.lib.maintainers; [viric jcumming mahe];
|
||||
maintainers = with stdenv.lib.maintainers; [ viric jcumming mahe the-kenny ];
|
||||
platforms = with stdenv.lib.platforms; linux;
|
||||
};
|
||||
}
|
||||
|
36
pkgs/applications/graphics/rawtherapee/dev.nix
Normal file
36
pkgs/applications/graphics/rawtherapee/dev.nix
Normal file
@ -0,0 +1,36 @@
|
||||
{ stdenv, fetchFromGitHub, pkgconfig, cmake, pixman, libpthreadstubs, gtkmm2, libXau
|
||||
, libXdmcp, lcms2, libiptcdata, libcanberra_gtk2, fftw, expat, pcre, libsigcxx
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "rawtherapee-git-2016-09-21";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Beep6581";
|
||||
repo = "RawTherapee";
|
||||
rev = "2d0e5e4feeac9801994d82c5931531f508deb2e9";
|
||||
sha256 = "1d9bi3b6cslm0rhhqf0rx47nlnsnky284vqsxyq3mss6bd8880xh";
|
||||
};
|
||||
|
||||
buildInputs = [ pkgconfig cmake pixman libpthreadstubs gtkmm2 libXau libXdmcp
|
||||
lcms2 libiptcdata libcanberra_gtk2 fftw expat pcre libsigcxx ];
|
||||
|
||||
NIX_CFLAGS_COMPILE = "-std=gnu++11 -Wno-deprecated-declarations -Wno-unused-result";
|
||||
|
||||
# Copy generated ReleaseInfo.cmake so we don't need git. File was
|
||||
# generated manually using `./tools/generateReleaseInfo` in the
|
||||
# source folder. Make sure to regenerate it when updating.
|
||||
preConfigure = ''
|
||||
cp ${./ReleaseInfo.cmake} ./ReleaseInfo.cmake
|
||||
'';
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = {
|
||||
description = "RAW converter and digital photo processing software";
|
||||
homepage = http://www.rawtherapee.com/;
|
||||
license = stdenv.lib.licenses.gpl3Plus;
|
||||
maintainers = with stdenv.lib.maintainers; [ viric jcumming mahe the-kenny ];
|
||||
platforms = with stdenv.lib.platforms; linux;
|
||||
};
|
||||
}
|
@ -5,12 +5,12 @@
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "2.66.0";
|
||||
version = "2.68.0";
|
||||
name = "calibre-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://download.calibre-ebook.com/${version}/${name}.tar.xz";
|
||||
sha256 = "1dbv6p9cq9zj51zvhfy2b7aic2zqa44lmfmq7k7fkqcgb6wmanic";
|
||||
sha256 = "0mn6wdws1xxc4yvhp5vdzb5i5c9dsmamyms1njdzs5fv754rszpm";
|
||||
};
|
||||
|
||||
inherit python;
|
||||
@ -129,14 +129,14 @@ stdenv.mkDerivation rec {
|
||||
];
|
||||
categories = "Office";
|
||||
extraEntries = ''
|
||||
Actions=ebook-edit ebook-viewer
|
||||
Actions=Edit;Viewer;
|
||||
|
||||
[Desktop Action ebook-edit]
|
||||
[Desktop Action Edit]
|
||||
Name=Edit E-book
|
||||
Icon=@out@/share/calibre/images/tweak.png
|
||||
Exec=@out@/bin/ebook-edit --detach %F
|
||||
|
||||
[Desktop Action ebook-viewer]
|
||||
[Desktop Action Viewer]
|
||||
Name=E-book Viewer
|
||||
Icon=@out@/share/calibre/images/viewer.png
|
||||
Exec=@out@/bin/ebook-viewer --detach %F
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gpsprune-${version}";
|
||||
version = "18.4";
|
||||
version = "18.5";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://activityworkshop.net/software/gpsprune/gpsprune_${version}.jar";
|
||||
sha256 = "0wrkvff3c1w66373m2w2ib07rkn3rmbp3n7ixz72qd1swvbk6xx1";
|
||||
sha256 = "0xd97b7rs5i41hyih6zdbvls090903yfr1r9lflq93dyqhmzpdhn";
|
||||
};
|
||||
|
||||
phases = [ "installPhase" ];
|
||||
|
@ -1,12 +1,12 @@
|
||||
{ stdenv, buildEnv, fetchurl, mono, unzip }:
|
||||
|
||||
let
|
||||
version = "1.5.4";
|
||||
version = "1.6.3";
|
||||
drv = stdenv.mkDerivation {
|
||||
name = "keefox-${version}";
|
||||
src = fetchurl {
|
||||
url = "https://github.com/luckyrat/KeeFox/releases/download/v${version}/${version}.xpi";
|
||||
sha256 = "c7c30770beb0ea32cbdee5311d03a9910fb7772695af3aa655e4ae64cd4d8335";
|
||||
sha256 = "dc26c51a6b3690d4bec527c3732a72f67a85b804c60db5e699260552e2dd2bd9";
|
||||
};
|
||||
|
||||
meta = {
|
||||
|
@ -8,11 +8,11 @@
|
||||
# plugin derivations in the Nix store and nowhere else.
|
||||
with builtins; buildDotnetPackage rec {
|
||||
baseName = "keepass";
|
||||
version = "2.33";
|
||||
version = "2.34";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/keepass/KeePass-${version}-Source.zip";
|
||||
sha256 = "0n4rkx2awyq1gbqiby1lkf2zw82brji96s4fkjsahmci528a882i";
|
||||
sha256 = "e3f184e4deddd1aa5ee2b52e2373c772d3f3975e5eddb2fd729eb27b437011aa";
|
||||
};
|
||||
|
||||
sourceRoot = ".";
|
||||
@ -20,7 +20,7 @@ with builtins; buildDotnetPackage rec {
|
||||
buildInputs = [ unzip makeWrapper icoutils ];
|
||||
|
||||
pluginLoadPathsPatch =
|
||||
let outputLc = toString (add 8 (length plugins));
|
||||
let outputLc = toString (add 7 (length plugins));
|
||||
patchTemplate = readFile ./keepass-plugins.patch;
|
||||
loadTemplate = readFile ./keepass-plugins-load.patch;
|
||||
loads =
|
||||
|
@ -1 +1 @@
|
||||
+ m_pluginManager.LoadAllPlugins("$PATH$/lib/dotnet/keepass");
|
||||
+ m_pluginManager.LoadAllPlugins("$PATH$/lib/dotnet/keepass", SearchOption.TopDirectoryOnly, new string[] {});
|
||||
|
@ -1,13 +1,45 @@
|
||||
--- old/KeePass/Forms/MainForm.cs
|
||||
+++ new/KeePass/Forms/MainForm.cs
|
||||
@@ -384,9 +384,$OUTPUT_LC$ @@ namespace KeePass.Forms
|
||||
m_pluginManager.Initialize(m_pluginDefaultHost);
|
||||
|
||||
@@ -386,42 +386,$OUTPUT_LC$ @@ namespace KeePass.Forms
|
||||
m_pluginManager.UnloadAllPlugins();
|
||||
- if(AppPolicy.Current.Plugins)
|
||||
- m_pluginManager.LoadAllPlugins(UrlUtil.GetFileDirectory(
|
||||
- WinUtil.GetExecutable(), false, true));
|
||||
+ if(AppPolicy.Current.Plugins) {
|
||||
if(AppPolicy.Current.Plugins)
|
||||
{
|
||||
- string[] vExclNames = new string[] {
|
||||
- AppDefs.FileNames.Program, AppDefs.FileNames.XmlSerializers,
|
||||
- AppDefs.FileNames.NativeLib32, AppDefs.FileNames.NativeLib64,
|
||||
- AppDefs.FileNames.ShInstUtil
|
||||
- };
|
||||
-
|
||||
- string strPlgRoot = UrlUtil.GetFileDirectory(
|
||||
- WinUtil.GetExecutable(), false, true);
|
||||
- m_pluginManager.LoadAllPlugins(strPlgRoot, SearchOption.TopDirectoryOnly,
|
||||
- vExclNames);
|
||||
-
|
||||
- if(!NativeLib.IsUnix())
|
||||
- {
|
||||
- string strPlgSub = UrlUtil.EnsureTerminatingSeparator(strPlgRoot,
|
||||
- false) + AppDefs.PluginsDir;
|
||||
- m_pluginManager.LoadAllPlugins(strPlgSub, SearchOption.AllDirectories,
|
||||
- vExclNames);
|
||||
- }
|
||||
- else // Unix
|
||||
- {
|
||||
- try
|
||||
- {
|
||||
- DirectoryInfo diPlgRoot = new DirectoryInfo(strPlgRoot);
|
||||
- foreach(DirectoryInfo diSub in diPlgRoot.GetDirectories())
|
||||
- {
|
||||
- if(diSub == null) { Debug.Assert(false); continue; }
|
||||
-
|
||||
- if(string.Equals(diSub.Name, AppDefs.PluginsDir,
|
||||
- StrUtil.CaseIgnoreCmp))
|
||||
- m_pluginManager.LoadAllPlugins(diSub.FullName,
|
||||
- SearchOption.AllDirectories, vExclNames);
|
||||
- }
|
||||
- }
|
||||
- catch(Exception) { Debug.Assert(false); }
|
||||
- }
|
||||
- }
|
||||
$DO_LOADS$+ }
|
||||
|
||||
// Delete old files *after* loading plugins (when timestamps
|
||||
|
63
pkgs/applications/misc/xmind/default.nix
Normal file
63
pkgs/applications/misc/xmind/default.nix
Normal file
@ -0,0 +1,63 @@
|
||||
{ stdenv, lib, dpkg, fetchurl, gtk2, jre, libXtst, makeWrapper }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "xmind-${version}";
|
||||
version = "7.5-update1";
|
||||
|
||||
src = if stdenv.system == "i686-linux" then fetchurl {
|
||||
url = "http://dl2.xmind.net/xmind-downloads/${name}-linux_i386.deb";
|
||||
sha256 = "04kr6pw0kwy715bp9wcnqnw1k5wl65xa87lhljrskm291p402jy1";
|
||||
} else if stdenv.system == "x86_64-linux" then fetchurl {
|
||||
url = "http://dl2.xmind.net/xmind-downloads/${name}-linux_amd64.deb";
|
||||
sha256 = "1j2ynhk7p3m3vd6c4mjwpnlzqgfj5c4q3zydab3nfwncwx6gaqj9";
|
||||
} else throw "platform ${stdenv.system} not supported!";
|
||||
|
||||
nativeBuildInputs = [ dpkg makeWrapper ];
|
||||
|
||||
unpackCmd = "mkdir root ; dpkg-deb -x $curSrc root";
|
||||
|
||||
dontBuild = true;
|
||||
dontPatchELF = true;
|
||||
dontStrip = true;
|
||||
|
||||
libPath = lib.makeLibraryPath [ gtk2 libXtst ];
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out
|
||||
cp -r usr/lib/xmind $out/libexec
|
||||
cp -r usr/bin usr/share $out
|
||||
rm $out/libexec/XMind.ini
|
||||
mv etc/XMind.ini $out/libexec
|
||||
|
||||
patchelf --set-interpreter $(cat ${stdenv.cc}/nix-support/dynamic-linker) \
|
||||
$out/libexec/XMind
|
||||
|
||||
wrapProgram $out/libexec/XMind \
|
||||
--prefix LD_LIBRARY_PATH : "${libPath}"
|
||||
|
||||
substituteInPlace "$out/bin/XMind" \
|
||||
--replace '/usr/lib/xmind' "$out/libexec"
|
||||
|
||||
ln -s ${jre} $out/libexec/jre
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Mind-mapping software";
|
||||
longDescription = ''
|
||||
XMind is a mind mapping and brainstorming software. In addition
|
||||
to the management elements, the software can capture ideas,
|
||||
clarify thinking, manage complex information, and promote team
|
||||
collaboration for higher productivity.
|
||||
|
||||
It supports mind maps, fishbone diagrams, tree diagrams,
|
||||
organization charts, spreadsheets, etc. Normally, it is used for
|
||||
knowledge management, meeting minutes, task management, and
|
||||
GTD. Meanwhile, XMind can read FreeMind and MindManager files,
|
||||
and save to Evernote.
|
||||
'';
|
||||
homepage = http://www.xmind.net/;
|
||||
license = licenses.unfree;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ michalrus ];
|
||||
};
|
||||
}
|
@ -4,189 +4,189 @@
|
||||
# ruby generate_sources.rb 46.0.1 > sources.nix
|
||||
|
||||
{
|
||||
version = "48.0.2";
|
||||
version = "49.0";
|
||||
sources = [
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/ach/firefox-48.0.2.tar.bz2"; locale = "ach"; arch = "linux-i686"; sha512 = "2e06c639284e5258e9bba9f02f3d21df6a3a37e3dc55667b2836e9eb68ad5ab24ccd99f82714da14231b5c6a301a40acaf9763ca19b920bb4f6acf535dc753b6"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/ach/firefox-48.0.2.tar.bz2"; locale = "ach"; arch = "linux-x86_64"; sha512 = "d0777aa0a5128f9ea0b0929781a7d86ad81e72bc8c204e8f026d37bac120d0e210b0a0c8ed42aabd378f96fe52237a103ea25c773b49ea814d06862e770e3180"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/af/firefox-48.0.2.tar.bz2"; locale = "af"; arch = "linux-i686"; sha512 = "81cddaae3ab0ac26b3cb5faefddfb088addea7f5d112a317d5c56c16cdae2801539e7c9c4fd9d77a14ad77db7a96a75767d5c08b3858455b801adab8a997da02"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/af/firefox-48.0.2.tar.bz2"; locale = "af"; arch = "linux-x86_64"; sha512 = "5020fda908bcc8b3bb937c5ea4f5a78e74cf836488937f3c4c6f6533a57d5e086e88a85fefac3983407254e3f9a9e2a0b03167095ba9b6e30e69b7381dfe756f"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/an/firefox-48.0.2.tar.bz2"; locale = "an"; arch = "linux-i686"; sha512 = "a47b6bd64f1e654ed9041035c36ddda60cedaf634327fd005f9610390a53433da21f12fbe4a3225d756755544a01b9fea463965c47c08145103b357e5b1071b6"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/an/firefox-48.0.2.tar.bz2"; locale = "an"; arch = "linux-x86_64"; sha512 = "31d116e6e1950ae3e93ad0ac744967f00699a04f3df89f9e0e4a2cea62e2a9675f7499ca41fcc2acbb91a72cbe3cd74f057dc25a6db947b1b5448fb0d92decdb"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/ar/firefox-48.0.2.tar.bz2"; locale = "ar"; arch = "linux-i686"; sha512 = "bb9acd986a258cdc8c368aa1375cee500bf45be31821220c90d562bcc3d526bafc5362c91d4dbd7a003955adc9f26adfe8d62403cf3b9004b82f3880a5b58db7"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/ar/firefox-48.0.2.tar.bz2"; locale = "ar"; arch = "linux-x86_64"; sha512 = "dc4ae811b19887c8f039b046ec2d48d4aaf628f7869e471c97b637e5daaa0e0b0b96fa327ab3b2ba3a184ffbf91213f4cb619d2d2a396b22849782ac41f7f31b"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/as/firefox-48.0.2.tar.bz2"; locale = "as"; arch = "linux-i686"; sha512 = "d9dd79d56912bc65e4993214ff58f7dc725077a62e391495acb6aa4b50c371d1c843811e5c511408dc3b343df0056bf33efc1e8f16177f4549ee49fe7b22ccdb"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/as/firefox-48.0.2.tar.bz2"; locale = "as"; arch = "linux-x86_64"; sha512 = "f8278a0141814f2b0e1ac4bb0e94e6d566e97943fabfd7561e249de6a2da9650edfc42456e503ed2473d7df65b4f1949d5fe423b79f9519d59a1ece121361029"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/ast/firefox-48.0.2.tar.bz2"; locale = "ast"; arch = "linux-i686"; sha512 = "e1aca0b09d6c7ef78eff26e88d817a203ffc142f9be998ba08be74dce67da8ae4c728853c6f6f19a4b18fb439ed01fab556718a4f991a206bf5cc069232665a4"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/ast/firefox-48.0.2.tar.bz2"; locale = "ast"; arch = "linux-x86_64"; sha512 = "53ab2cc04741152f11fd4f7ad70eec7f927c7aa70997cf9d3069736a13bafa3b26dcabe610cb5dc10243a1b6b00f22bf9d6bc05afd26d0b7de254f55412c5805"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/az/firefox-48.0.2.tar.bz2"; locale = "az"; arch = "linux-i686"; sha512 = "39649887ca38ed1beb819227d80f5c75b0fbc08c537d6af48755c35a0ecc195127d9cf4c1af05a09b0e9e604144f5e9e00ad57d1cf895cc3f0142b482c98980a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/az/firefox-48.0.2.tar.bz2"; locale = "az"; arch = "linux-x86_64"; sha512 = "5c75fb1a34fa9fa447f7b279ef57cd0701baeeb95a2dee48b878d01d7e33eeba3d7985ef375317080a1a74732bebc4c26883bedfd00578d1a653deb2a250ca6e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/be/firefox-48.0.2.tar.bz2"; locale = "be"; arch = "linux-i686"; sha512 = "7879202dc251f9f2dce656058e51a724b7e49e9b03db8bf5921448b8e48b74186c40425ef51a84be6df810819ce2e297895017ac748b30221e3cad73c80eb0eb"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/be/firefox-48.0.2.tar.bz2"; locale = "be"; arch = "linux-x86_64"; sha512 = "35291f1c2326af74938c953ecb55e55951ceb8fe10443f39edd2b505dfd137be161f8c4a1e776e3ef75311f52609ce74cc5c13fb78f59893cbf7d7bdcb4c7162"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/bg/firefox-48.0.2.tar.bz2"; locale = "bg"; arch = "linux-i686"; sha512 = "07d630045d9c99655ef04b6de10e34e4c1eb6a38f5a1eed4f08f90ce0f61ca9129235e48882005c0c98eb962273ac644a46dd4cdf76b748ad1b007a018b7f1ef"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/bg/firefox-48.0.2.tar.bz2"; locale = "bg"; arch = "linux-x86_64"; sha512 = "457d65bb0afa6c755048191a24eaef286f5fbd9b68b020abf554c7ad978398605947cf276ce09d4447cca4b64f053b956af805196c45617f2f14911598a75f6b"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/bn-BD/firefox-48.0.2.tar.bz2"; locale = "bn-BD"; arch = "linux-i686"; sha512 = "a355957e649ab82a6693e8da580b075111fa14bb1efa722397e3fc56c1dd14e6bc4f1315c7a74f1dc47aca228d0faa59db358b7f2baf79939f480c2e4113781b"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/bn-BD/firefox-48.0.2.tar.bz2"; locale = "bn-BD"; arch = "linux-x86_64"; sha512 = "612ef87c01fe221c6e546f110efe228a73e632312af5ee3a4324904aba028365d06c9aaf080eb010b90f653d0aeb4a19f78a0abd15ee02688102cfd4f4c15f5f"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/bn-IN/firefox-48.0.2.tar.bz2"; locale = "bn-IN"; arch = "linux-i686"; sha512 = "43e41905c397a2e311ab1a326f70070e0a1b922dd38301cfe9af17ae7916f2b697e1f3d218bbfd26741492d10ab5f6623a182691f036dbb653996d87cba10861"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/bn-IN/firefox-48.0.2.tar.bz2"; locale = "bn-IN"; arch = "linux-x86_64"; sha512 = "29299d5174cc226330f7d89b734b15f934a8dbf6c577e81f37b362ce8fc2adf4d8f901f2ddbdf90d8d43181e369b5e339408604b5cd0bea8a2c6eeca5e319957"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/br/firefox-48.0.2.tar.bz2"; locale = "br"; arch = "linux-i686"; sha512 = "38ed922491f7690cc9aa62a4d9703c7d83dd67b067f3901a8ce34a3f937063fefacc0991530a79c66581554a86c564f8d0468f9a3aaf500c56abcc89ae4d872b"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/br/firefox-48.0.2.tar.bz2"; locale = "br"; arch = "linux-x86_64"; sha512 = "efbb2ccf082f2ac5b5d580f02642730b934e367fc4b6e841c53fc651b43c129ad092c0028d810d94aed102f01b521838dd81a0137cf057e903ccc78e182911b6"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/bs/firefox-48.0.2.tar.bz2"; locale = "bs"; arch = "linux-i686"; sha512 = "d9183190513145a246db8592631b22c61cb895fd8b8b5294c772da1c584f63cfdfdf67ab664cea5045611a9366521d91ec3ddeb74079a1046886ede1c0421ea5"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/bs/firefox-48.0.2.tar.bz2"; locale = "bs"; arch = "linux-x86_64"; sha512 = "140a0e65e8995702986e3c85fd38ef5b729911405156a3d3fbc37d7c10685a88300850c339ddb94687994bfa8482fa1f93690e3781d3e02f8f90f8f6eee17371"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/ca/firefox-48.0.2.tar.bz2"; locale = "ca"; arch = "linux-i686"; sha512 = "d80b1716eeafb294b2e1d68791e9d84b45285851361f732ec84688b5c440da1c30b669ac01b7a77bf8e065523d77d0a5a4e997a98a82652100b2111177c5567a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/ca/firefox-48.0.2.tar.bz2"; locale = "ca"; arch = "linux-x86_64"; sha512 = "12282634abc6acbd0877436258657116d1a0ea07f90b04447d8ce372c950e3b5288de9ae76a867b1af5c2d4dc2c85efbb349df616eaca95aa03774d7dd331c7a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/cak/firefox-48.0.2.tar.bz2"; locale = "cak"; arch = "linux-i686"; sha512 = "407f1eb4b637a8abdc342b61ed898a5900d9914e5fc67c9c9f44327221dcbcb2fba0e27e9b1af5540d25ad282e9765d1c91bc70ec4a7ac641404ce05d83ea22e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/cak/firefox-48.0.2.tar.bz2"; locale = "cak"; arch = "linux-x86_64"; sha512 = "a611f37240c3b22e715121d64ed636a650620022edadf8090cd4a51769373c669f230efd39316244b4d727244e093087fb88754aafdeba2948b0bff3316092e5"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/cs/firefox-48.0.2.tar.bz2"; locale = "cs"; arch = "linux-i686"; sha512 = "e7c7a1564944bbbc5852d11c11480bc03366cfaaacd132f2252a9322fe4f4cc94cc4d7853b56b4c5a130882f254fce4d791a047e5d141dc5143c97d5248da72f"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/cs/firefox-48.0.2.tar.bz2"; locale = "cs"; arch = "linux-x86_64"; sha512 = "d6931627e77fd8e4e0c445573e05a5e96bc6a2a47193cf2fb21403d0c10bdf009eb699d1cad6daee787e569d3508fb85f6edd8ffea80b69d6afed724d568ea50"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/cy/firefox-48.0.2.tar.bz2"; locale = "cy"; arch = "linux-i686"; sha512 = "15df651ea244c39150534bcb467649467c636281b7442af8ef5f2a296104b39ee951202b950fd6a960b10ff54fcea0f37a0b2a8f76cb969fbd9ed57e5a92d66b"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/cy/firefox-48.0.2.tar.bz2"; locale = "cy"; arch = "linux-x86_64"; sha512 = "0b168a6fc6f181303f7398ee3366f18bb2b256d654229da9cfa46ce0b424b4d5d414652509df3ca6600ddc7a9adf823050165d716a3d376a08563457af3e6696"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/da/firefox-48.0.2.tar.bz2"; locale = "da"; arch = "linux-i686"; sha512 = "64ef134d5839659c096d556e7060ee07ec160c59adc9ca3105eddbdc1c2b2b166e00996b2a88422461c7bdecdcd71b917e4ce1df8e92912542c413845ace7c69"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/da/firefox-48.0.2.tar.bz2"; locale = "da"; arch = "linux-x86_64"; sha512 = "cd477b4c541fa16f8c4054f670143c6605b7beb48fbe1b26948c50435e11f0d4fbcf907f192b53a1419a2be8589daf5c1efcae013366567a8c0003da0186593f"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/de/firefox-48.0.2.tar.bz2"; locale = "de"; arch = "linux-i686"; sha512 = "6768f6445dabcd1e98ed27a8a28b930a160c7717b688ea38e0930055c59c123fcd7f52d0159dd2b2425978fd9e8e2d0e4e0877e6bba659f840836ff68b2e6c67"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/de/firefox-48.0.2.tar.bz2"; locale = "de"; arch = "linux-x86_64"; sha512 = "6dd6fe70fc26f4b7fbcc1e7ec212263e4e6822d365704364ae8f4ef3ede45a68ea1651e65c02f36e90dc44f2462a874703cfa02bc45e74bf0ab19bc31267e471"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/dsb/firefox-48.0.2.tar.bz2"; locale = "dsb"; arch = "linux-i686"; sha512 = "328e30142ed129560ca2a23de9963f40cdb0ff87454a9257b00b9bdd9b5d566b6f2f263c484f3c58c8e52ae6de5221a1ca936f7960ce01d88f7ba4c9b97f789e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/dsb/firefox-48.0.2.tar.bz2"; locale = "dsb"; arch = "linux-x86_64"; sha512 = "7e57b66afdfca30e7c770ec87d7ffcbdc644c54e01e037bb348709c8f091d82da48a3ff3a3dd8187f12f5ba1f94599f8aa8ed375c7e6bd90a2f787b3b5a09340"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/el/firefox-48.0.2.tar.bz2"; locale = "el"; arch = "linux-i686"; sha512 = "ea715903a796e386aa1d1bca22a0dc3cde08690efc17ecaa8380f086fdb0968292a838296adb4c78ac30b7c93baabd4dc19d088ffd890e11c76b58d9baf73efd"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/el/firefox-48.0.2.tar.bz2"; locale = "el"; arch = "linux-x86_64"; sha512 = "1bf80e3b64c95d74b7893e2ee36947f293f574c49461d742d7f47ea990d198fa78d9d3f9c04ec3c4d81745549a23b2a502497766441c61098b9ccd5f9169f191"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/en-GB/firefox-48.0.2.tar.bz2"; locale = "en-GB"; arch = "linux-i686"; sha512 = "4db30d4d7140cdeafb41353133c9ea5679f5eeae8fdafde86887d6ac3553d1d0db74f2e189219f6f7cb9a8d33f2c2eef58b3280fd0d435593109ab5058404eab"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/en-GB/firefox-48.0.2.tar.bz2"; locale = "en-GB"; arch = "linux-x86_64"; sha512 = "4b9d24e2faff85cf56012baa7c4d32b29173f903a5c19b0ebc20c7959ae291be39ee875f98f08a07d16aacc0fa5e7633245e265f11b30c64f703f22c889abf7c"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/en-US/firefox-48.0.2.tar.bz2"; locale = "en-US"; arch = "linux-i686"; sha512 = "656ddb1fc57f2308cd5a6b376828676d9c7529dca18751e5ec6f4b903b47cc31c15f6fb70717605219051f8a54a89d9c579cd70327e2029ca374953671d9d1e6"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/en-US/firefox-48.0.2.tar.bz2"; locale = "en-US"; arch = "linux-x86_64"; sha512 = "ea8a1edee8ac64720a2694d0ed0ccecbc38d1b1aa6b65fa87969b31189f624549d3e3712052c55e0aebc65119701e88d4397bf01c8526b3ba662e6583acec815"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/en-ZA/firefox-48.0.2.tar.bz2"; locale = "en-ZA"; arch = "linux-i686"; sha512 = "27b805f5f89f999bf5a95f174dcc6d611dd297e8ae094e1557300d12311963a3410ad0c077355e2cb31d0e134f0d015fbdf7662e2f172174a1abb24dabdb4040"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/en-ZA/firefox-48.0.2.tar.bz2"; locale = "en-ZA"; arch = "linux-x86_64"; sha512 = "abad4283afed609217799fd3f97e6dd1b89d5844344a68912f712a8796613db371259883b92292fa12a33c923692f7302f63123431fbcba590c780fe4a9e2517"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/eo/firefox-48.0.2.tar.bz2"; locale = "eo"; arch = "linux-i686"; sha512 = "04fd9ec015150c9c8d26c69e7e0213caeb3a880b162eee48123b0355f73488bf667d5217cdcd2c45cd3cd5fc88c01ad02b4e2cc40b220beb93d55d64689206c6"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/eo/firefox-48.0.2.tar.bz2"; locale = "eo"; arch = "linux-x86_64"; sha512 = "fabb940bc6f392ed1f5e6e0fe23947d28e1b8143f29784509eeac361050921f1fc97ffe18e51f47026b7a69178ddbb367e4dec6cda45feccfc6876e9e178d6f1"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/es-AR/firefox-48.0.2.tar.bz2"; locale = "es-AR"; arch = "linux-i686"; sha512 = "01015a8756aaaa012fe35ba9d8192304fe8a22af6a512a644b20794446a31738b9142e03492db10e0e237a63cb3ffa2f581e700df00dfa3f4616157782cddf28"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/es-AR/firefox-48.0.2.tar.bz2"; locale = "es-AR"; arch = "linux-x86_64"; sha512 = "0383d5df8041ee2ba1d32b9b1e090c50a4b911bcfe5354d0cc43a09355a790882afe5a9a837dcf2d9f4456ac75594112c5e3f520400e23d7bc91d37499ac9533"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/es-CL/firefox-48.0.2.tar.bz2"; locale = "es-CL"; arch = "linux-i686"; sha512 = "4d74b9de4b4f0ab8ec43290d7f11c0439a1050e8561ae5192ff4fd3d0576d7d1857c9e616ed75b6fe7da5207e284b9713cb7184e65b093e101cbcb25fd90f74f"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/es-CL/firefox-48.0.2.tar.bz2"; locale = "es-CL"; arch = "linux-x86_64"; sha512 = "77aa56f1fca65c9374f15f012ecf1bbe439b99ed6ebe9823cd7f820e06cb10014033a4f6abb914969d0a5b03564385910af2569eb060c6065b7d1ceab5bbe7ef"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/es-ES/firefox-48.0.2.tar.bz2"; locale = "es-ES"; arch = "linux-i686"; sha512 = "9e93a646c345a5c129bd9472601dc9d1cf3955ee0e6ad44a4b55f2dec7dba7d133c865d2c8b59383f48b1a870e2e02f781c93ced3811b03873e9c2d241ba0513"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/es-ES/firefox-48.0.2.tar.bz2"; locale = "es-ES"; arch = "linux-x86_64"; sha512 = "488b79aba6acefe5a7973d63ba034eacc8894fd2e5aaea6c010af84975f45f00c49e85c003e876f1636a00dd396c6071511c84f61c0b6961ab677cee6b31ac3b"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/es-MX/firefox-48.0.2.tar.bz2"; locale = "es-MX"; arch = "linux-i686"; sha512 = "d2c353bc74b35d13f0e018ac8f8a1c3bba211524269b82188504e4b76701a2db2b085bea9c293caee4cd8ea8251d1c871ef0628bf7fe17123a0ca4475611dcc2"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/es-MX/firefox-48.0.2.tar.bz2"; locale = "es-MX"; arch = "linux-x86_64"; sha512 = "6bfea70619b2d9e853b36ad93ddc4b5b09c98279541eb737dda98009e61642fb9066ea097230fdfd942286d94fe512365fb48fa30ffddbde898589a471e02f89"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/et/firefox-48.0.2.tar.bz2"; locale = "et"; arch = "linux-i686"; sha512 = "c527a2736b3fabb6b248816e04373235281a5dd0f1275108fc006db1f2e48485bd5f413169f698f94d015aab2d6d8a00ba638a35eb574556453af2b8a2c20172"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/et/firefox-48.0.2.tar.bz2"; locale = "et"; arch = "linux-x86_64"; sha512 = "f3fad1f2f0256d0bdfabb3ce20eb475c1f54c762e3af1fec90565eb18cd7ef3603586c79821bfadca27eb7db42aad3a887abb348f955d394c8bbaad909314ce7"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/eu/firefox-48.0.2.tar.bz2"; locale = "eu"; arch = "linux-i686"; sha512 = "772423ee4b87e308d1dbda39265e6671a6576c3b950abcd2dbabe2491a8cc5b5b6fa8ddbb00504efa2f5f43b59339423ef1347a3a92b8f00f61ea4be5bab2c20"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/eu/firefox-48.0.2.tar.bz2"; locale = "eu"; arch = "linux-x86_64"; sha512 = "0b87aff412594848f1aca67e766c2423e1f28ad294a42feb894a69514fbd97efe97e6c119a19daba21c8d09f6e205ecc94bf1c4d150a5b684f7990494dcd2524"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/fa/firefox-48.0.2.tar.bz2"; locale = "fa"; arch = "linux-i686"; sha512 = "9d8c4f63297198054074bf244f947cb92db29f70695c69c6fd54cc18844653e4dae1447543c8ad8b8687c20231d72b6965e59d552aafb6f4c35bde89839b3909"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/fa/firefox-48.0.2.tar.bz2"; locale = "fa"; arch = "linux-x86_64"; sha512 = "7f3248c02c142ec88a9a32eed0a3f9802b6ad18a6fa56a28f2b5fd580ca917850352bbb4193559686f9e95f53e8e85727afd500eb03e3b5181180a1e5022328a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/ff/firefox-48.0.2.tar.bz2"; locale = "ff"; arch = "linux-i686"; sha512 = "fc160572277bfdb35cd3fb9c5a5b0a39710c78de4782ed679b96ae00c6cdf22b14d99d62462679bb4ab9bd68b8f7dc3cf43fb390a382e31120c91b24a98993f9"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/ff/firefox-48.0.2.tar.bz2"; locale = "ff"; arch = "linux-x86_64"; sha512 = "c192466b8f92186a80895f5bfe1094747b214ace2135c72cbb19bd71a7fb7b77491c8af4648a88dcbf2a1235d73a408c6122d7b46fe923633bce8d7113f03298"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/fi/firefox-48.0.2.tar.bz2"; locale = "fi"; arch = "linux-i686"; sha512 = "98bb77f6ad8b39d506e4fb0666386332fa22f01f4b7362fd614ea951c3520b7f692e8282d1aa175d94d43c46c267c941d4cfd0d19b454a7345ce13f7a264b6bf"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/fi/firefox-48.0.2.tar.bz2"; locale = "fi"; arch = "linux-x86_64"; sha512 = "14bf0b3a34dd2a6a7b5d0dcf8f5c0313e643f8a730afda92ab94afcf8505bed895724098e991c28344851288180d25e18b5327c44c742918d7e83007177cfb6c"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/fr/firefox-48.0.2.tar.bz2"; locale = "fr"; arch = "linux-i686"; sha512 = "b6a4ba15cc2c4d0f9aac90789e86f69d983e7dd33b744d213fa856259b57192e403ec67fce870d710782f0c0d3c24ae23a38bcb101d60efc967e87bf9efc43af"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/fr/firefox-48.0.2.tar.bz2"; locale = "fr"; arch = "linux-x86_64"; sha512 = "dba11e63b3435fe2665f5437147d854ac590394e1f270bc0ea9638f0f8622a8639ce54c74fb2ef0b75cc6df2eeaf28fa21ae4aec6a41637fa2b107581970ec4f"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/fy-NL/firefox-48.0.2.tar.bz2"; locale = "fy-NL"; arch = "linux-i686"; sha512 = "6be75948bacadfb5de5f49f5a1455294e5a511aaa30cd9575823c91b304b1f433fa5e10c146d971497f23052e6e2db2111d740ffb9e48ea8aafac81fd5477ff8"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/fy-NL/firefox-48.0.2.tar.bz2"; locale = "fy-NL"; arch = "linux-x86_64"; sha512 = "6e7e28ff66b29d39e87625711da4d83e376cca5521f8734b25b60b34e9bd350fb6b24a982306b902bfacbf367d9ebc3bb0d1de0d9d4f7fec39f5629aaeaec79b"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/ga-IE/firefox-48.0.2.tar.bz2"; locale = "ga-IE"; arch = "linux-i686"; sha512 = "22a3def2c74cefd8d7a254f4b746b1d131d9bc508f686c2027ad29bafd31a4e414d10a94d0c8c8ab7a4ac59b8a453e98183ce5e7597fd1624710803c139e704a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/ga-IE/firefox-48.0.2.tar.bz2"; locale = "ga-IE"; arch = "linux-x86_64"; sha512 = "cc5ada6a14ca46a89a8d20deefd7da57b012ec1cf2a271e6327de676639217b67d60208c9bbf4ea88418b5447ca62dd2addc584613e55a51afe04b3fbafe4a60"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/gd/firefox-48.0.2.tar.bz2"; locale = "gd"; arch = "linux-i686"; sha512 = "1c25a5d9c95c38faa1f9ee2709b1dbd2c3adad7b7c0d18a56dfb0e16b61cb0b47683e259d2876e2cce5a25c738fcec422939e417e3cc71229917af043a6425ac"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/gd/firefox-48.0.2.tar.bz2"; locale = "gd"; arch = "linux-x86_64"; sha512 = "c4f68019652565cb4fd9c3f7da7ff476442a6d2f168531db40f29524bf4b4961b04de98effefdbff935c8a7bd110fad0cd72aa229500348bda16807d55fa5de6"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/gl/firefox-48.0.2.tar.bz2"; locale = "gl"; arch = "linux-i686"; sha512 = "a74a1c2f18c2955f643315bf896d7ad2ca2b0f42c84622244c8ecb448911acb9a8aceb27e15b7f643c95293d7afef625ad7c6b927732e670f811a99287ccce3b"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/gl/firefox-48.0.2.tar.bz2"; locale = "gl"; arch = "linux-x86_64"; sha512 = "51cb84043f5bccb269c39fd7d043445d70a750ebc13fa85d902aabeafdd72d6696eaf0b955a0e040abec44c9134ba6709b67f7b635b80ad45eb78fa5a1013d44"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/gn/firefox-48.0.2.tar.bz2"; locale = "gn"; arch = "linux-i686"; sha512 = "f05f87f4be059f08a874cd28b5eea0a8be071bf548e726f9e14a47f0d96f9d0d9417cebb92919020fd5fc40801e83455a543270d61ce83652909508eac43d5a2"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/gn/firefox-48.0.2.tar.bz2"; locale = "gn"; arch = "linux-x86_64"; sha512 = "29f9a5895df46fb1844e447b1289b791d42b14250f814875afe67873cb00aba43d62175f29debc5d099abb9b0b4050465d2180d25987ec721d747ab46f433f47"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/gu-IN/firefox-48.0.2.tar.bz2"; locale = "gu-IN"; arch = "linux-i686"; sha512 = "b45dcf6d34b54bf69f36f49fd71589257ed6ce039315e50737c2ef4434917fb6b8dac18a4ee903575808d02762282620b9830c564578b87c1d4a5bd5a2234d30"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/gu-IN/firefox-48.0.2.tar.bz2"; locale = "gu-IN"; arch = "linux-x86_64"; sha512 = "efe560a176f13da9995ca59e5b8858d0c7a06c91aeebf361affcbecb0f0de88c977d33b15eb8ec9f80f305000b0ef2b621addf44cfa9ff4fbfb740b937b441f8"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/he/firefox-48.0.2.tar.bz2"; locale = "he"; arch = "linux-i686"; sha512 = "314706b90bfd6ea3c94c28f880284992b0886897a4576c5c55b6bc2b02aa31e7050ccc11af1d5a085633a7fe65dd5fd03a435fc378c64ca5ddaa10ed91853f58"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/he/firefox-48.0.2.tar.bz2"; locale = "he"; arch = "linux-x86_64"; sha512 = "44b716392d79a000732a3ce2737f2367f65d855481c7a0d75f33898812a49abcbe73ed6c57a983035a6628b5f80ecf3921a336e4f45c964a7d52145c71c73b48"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/hi-IN/firefox-48.0.2.tar.bz2"; locale = "hi-IN"; arch = "linux-i686"; sha512 = "03b36a04acfaf4a2e79a0e34368292723aa9aabbb2f4a0f0508dc8a7c7511133d18973ae08fe00b2ea571976ed6acabec44092694fc230c4cdaeee174d6aacb5"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/hi-IN/firefox-48.0.2.tar.bz2"; locale = "hi-IN"; arch = "linux-x86_64"; sha512 = "7d1b3d4e3b33c61d63671f4ec4a36e422c2ae99c192231bfd70d98c68b81a8ea61b0538e8efa47a3ad4b23ba58e405dcdd8044a7403aa1ff241aaf4ab76d4eec"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/hr/firefox-48.0.2.tar.bz2"; locale = "hr"; arch = "linux-i686"; sha512 = "eb445e988d3ad1b009c1a8f92e07aafc38babcc8641c92b161efede4b7079731e72140d609cadf6220bbba23e3146ccabfd7fe875836c962ca4b12f451e8ac00"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/hr/firefox-48.0.2.tar.bz2"; locale = "hr"; arch = "linux-x86_64"; sha512 = "dbb8fa4458a36c403f68642c41c15fbd9cf1e7a703805ebdde827b9bf25752885c0263c1a604f37d0508994513259a2e3719b288fa9ed4d0b563d82e0e5f0dd9"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/hsb/firefox-48.0.2.tar.bz2"; locale = "hsb"; arch = "linux-i686"; sha512 = "e2b7c81ff1c57f1e656169fd206f33660718278468f062e46249b875babc6598857bcfcb884ac658ebe907e745413c82d948d8bf7a0ec34617a55cb0ae90f7e9"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/hsb/firefox-48.0.2.tar.bz2"; locale = "hsb"; arch = "linux-x86_64"; sha512 = "14544652977e0faa49cb5727e283e1e6cf59df14194b67777ee151e37ea68c53ed8efb2b5000233ffe8efa530ca881d4e84a7b5bf281a0f51d8baffb115f11fe"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/hu/firefox-48.0.2.tar.bz2"; locale = "hu"; arch = "linux-i686"; sha512 = "072c40fac3ce476abed251140e71b1c537aa61ba29460bc26a6cbf224a43fd926cd2e690929c108e0437537025fe0a45fdda71fc2ac6637385a0e75678330cf8"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/hu/firefox-48.0.2.tar.bz2"; locale = "hu"; arch = "linux-x86_64"; sha512 = "e9893aaab901d03e9563bf84839577d55942f8d78d1f520388922392d7e7101d7752354816696f6fb1ab77bc2473b0cdaa7b2c62d6412c33c6616353f0b9a984"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/hy-AM/firefox-48.0.2.tar.bz2"; locale = "hy-AM"; arch = "linux-i686"; sha512 = "bd4f2e7a1c9c7ab1558caced2716acd3e0d3441873dc00f1fcef9e20bc2b25e1d3ec3d520a378c3b8fe9bac36a500d745516f16f14aa9b530c9ad940565690f5"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/hy-AM/firefox-48.0.2.tar.bz2"; locale = "hy-AM"; arch = "linux-x86_64"; sha512 = "e36ba4db7706d08d03c84cf3a78c20c60e7e67ebed01943d54b1483ec86e5b2f17dc7a1319c29863e7f6fd3b35ff390d1b462692c06c8ec26c164c0daa251dfb"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/id/firefox-48.0.2.tar.bz2"; locale = "id"; arch = "linux-i686"; sha512 = "61cba41c80783921039ecb5038bc16da52e8191e38b8dd8d276225fe21f6bf1c8628d0e8f15292e02fa07a962ca355d7173f0dce6cd3b2259f87b823d2ce70ca"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/id/firefox-48.0.2.tar.bz2"; locale = "id"; arch = "linux-x86_64"; sha512 = "12ca05a297c65780d1a2df33aec2bed06498db34e98283053b1f7082e96fd83f92d320a8db91d7e4bd44405c21c5d276913f47403da479cacb3a082f6d1e43fa"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/is/firefox-48.0.2.tar.bz2"; locale = "is"; arch = "linux-i686"; sha512 = "7df3200095a8b8b02bbf41f1a160e4557e059e514ffa4ef25c0dc0e274c319677d134cd8d2583e4ec51bed68091ca7cb8b13bf6e26afd682398ed285dc055da7"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/is/firefox-48.0.2.tar.bz2"; locale = "is"; arch = "linux-x86_64"; sha512 = "c55649493a8bd47a9d53ffc8d6c22f741550fc40124f54bce320c96a73316e6c48229e12d0615c48b55e873b3ddddf38320987af5a109db68f53646e3c8206a1"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/it/firefox-48.0.2.tar.bz2"; locale = "it"; arch = "linux-i686"; sha512 = "f42fc4acdb2f30650c62dd8ff440e1def00920a1481f8f008565517bb535459773f8c7a39d7d89edcac91b683f92eeeac41c0c4d4c5d4fbf6d74f66ddf528a07"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/it/firefox-48.0.2.tar.bz2"; locale = "it"; arch = "linux-x86_64"; sha512 = "c7828610404f8bf93f3dde1feaf713e3111a7d3a6db792b013ecfc0dc225782d537d5842ac35af292451a7c5e475407655f246881472575d2912d0c607b52c30"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/ja/firefox-48.0.2.tar.bz2"; locale = "ja"; arch = "linux-i686"; sha512 = "9464f9a33ca3d0fbee32df31d1fe677ff298b21209986db8cc4893ff9414a96b885fa408f36d32c95e68274e2815a77be02c3859754c217874a5d3c0b6d280d6"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/ja/firefox-48.0.2.tar.bz2"; locale = "ja"; arch = "linux-x86_64"; sha512 = "d150ad3102d90bcb755bd91c9960710c64518b7ffa445a6f4e15055a449eb9aeb4203084180cf2234c000dbe98620ac91fc9dc453415cb7e981457c43d08ae4f"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/kk/firefox-48.0.2.tar.bz2"; locale = "kk"; arch = "linux-i686"; sha512 = "d28ad5965aa76f2525164045a06118a289cd543b1b9afd7e0681da4739467858a2c1eaf3a7aab1002c3c18d51a3a5623801d974c0230b78a07a664016d302b33"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/kk/firefox-48.0.2.tar.bz2"; locale = "kk"; arch = "linux-x86_64"; sha512 = "4846ea6f4834cb21b609d1c71b3efbd75bc5a98b63cda04d152c18e0b22ff5980004e01d09aeb83a108ba2c401e655e5b6b2e5ea1a2e9fd707b1bb409c46f3c9"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/km/firefox-48.0.2.tar.bz2"; locale = "km"; arch = "linux-i686"; sha512 = "6d3fca317792c6929e55fc0757f72decbbd2f714f259fe53eeb549d0b85984745dd1177aa15d68bc352a541703d1d3f4983943b03c4d3cdc2edb6e57c1cfc2dc"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/km/firefox-48.0.2.tar.bz2"; locale = "km"; arch = "linux-x86_64"; sha512 = "c719b3631626d57da3d14a1ae356122b3df1f3c92a1633e2f85ecdaed9ac83abf066cd2ea5ce679e6e38dbc1d1f6839e2f3df9ff2f8e217f25bd25900693f47e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/kn/firefox-48.0.2.tar.bz2"; locale = "kn"; arch = "linux-i686"; sha512 = "76faf5f9b98e4a13a42c71df7411fa51c0b6def1d973970c149b18adfa36b2e2eb14c94e3371d303abb3d0c7e226d9d42b15cb7a77d161fe404a4c567fea01ca"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/kn/firefox-48.0.2.tar.bz2"; locale = "kn"; arch = "linux-x86_64"; sha512 = "a772a4adf418adf933bf82379cc3b69c4f5e426ed63d4d6458a87b005a59070cd035a483718dedb433d9401f4da4dbec70e0a5e920f5046478a1aaa4547547e2"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/ko/firefox-48.0.2.tar.bz2"; locale = "ko"; arch = "linux-i686"; sha512 = "0ada95e8e3367ac30c91be660a037de18c5bb9edaf10d8a078d8c5f37c954717c3e33b710249274faf5e95409f9f67cef28f28d2ab34e452deae4fb66ab01bad"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/ko/firefox-48.0.2.tar.bz2"; locale = "ko"; arch = "linux-x86_64"; sha512 = "dda86dbbd40721ac85c9b8486dd54a33fc5978ca79312cabfeb7700e0fbba809062c3b6be61e6c784c6b479f435d4ab886c2a6788dd115585af9e9f277ba6192"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/lij/firefox-48.0.2.tar.bz2"; locale = "lij"; arch = "linux-i686"; sha512 = "f9053b301331d36710e31fe6d2172a98af5219e9900d60810bb02eaf1f19e6f4db6e0500de6ef6e77acd4705fdb0bc5025e9db52ef44bb79d82c674b53eee6e0"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/lij/firefox-48.0.2.tar.bz2"; locale = "lij"; arch = "linux-x86_64"; sha512 = "63a4b697a1295b92b93d8602abb027be6a07cc58c45ade11957f716d91b3670015901ae6f5a667c4119798f4135c59be128f3c8e97c7ed6dc69b7f2f40c7d58d"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/lt/firefox-48.0.2.tar.bz2"; locale = "lt"; arch = "linux-i686"; sha512 = "77dc96b596e3010cdad83d3ce2b23f075672ddae73999652fbff24c85ef7ec0a749c1793b77eb7d34bb9c8beb6803d97c8ccc84b8f6ec02a8629c895d1a3400f"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/lt/firefox-48.0.2.tar.bz2"; locale = "lt"; arch = "linux-x86_64"; sha512 = "f7252d515e700fae4ffe31219b0135629d50487359947ad2b6d7a61e578b20997b95c4c2a7930b93f1b59ab9262a8b28bcfad22c14fc98029043339e3f2318aa"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/lv/firefox-48.0.2.tar.bz2"; locale = "lv"; arch = "linux-i686"; sha512 = "44d97dc8855004fd91b96155592edd4f6ac9e92257814eae2727df0a4e1df496e1be13fb95c0e2ba6d0e31e8ea12df659317cc5ac8d005322075c9d8d13a67ec"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/lv/firefox-48.0.2.tar.bz2"; locale = "lv"; arch = "linux-x86_64"; sha512 = "1fa86b8f8cfaec70db3c6033276f1b5a943e2065d78754f873c7ca99897f0195e0793bec936d2471b814a90c5a211a9653d8ef5480d64cd1fa9c49d7f8ed34bc"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/mai/firefox-48.0.2.tar.bz2"; locale = "mai"; arch = "linux-i686"; sha512 = "df4e98b7414b58c145e7fe82b78c66c5d8a7fa8dbb34f78b91f9160ce3bb9e22ab065485de15e13d3660186760a9cb3c88403e8955ad092064eaab29f8dfe9b2"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/mai/firefox-48.0.2.tar.bz2"; locale = "mai"; arch = "linux-x86_64"; sha512 = "7bf726777eaa92f4a18107c4be48024cb2a7ae4a3aa9d94cf55a6b0fa46ab7256f097e7f7c610ae1f748c376063b7dd275f03dc7664e86fc738b867671e5d231"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/mk/firefox-48.0.2.tar.bz2"; locale = "mk"; arch = "linux-i686"; sha512 = "7c48c47f916ac8389b5b10bae29d40820b59b3e52fc86b1408c426f4ed662f49243fbe6e7267b17ed3ff9dc179b435fbfa2516dce974972097fb39985039b4e3"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/mk/firefox-48.0.2.tar.bz2"; locale = "mk"; arch = "linux-x86_64"; sha512 = "b184dc34a47a9336190ff0090140b47ca345b9445dfe40133ed08ba30bb9966e1f7b5488a5289ddc4d84cb4de0b7121824ed6570afe857f0da8ebf6ab26a5c4b"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/ml/firefox-48.0.2.tar.bz2"; locale = "ml"; arch = "linux-i686"; sha512 = "cb363c7b01ba9d252375b4f01d9515561bec11d72655730aa7c05d95d8ac4ba58288c64638543bcc48fb36387e6ea4e4604f34616d8b90ea068e09f7bfb8be61"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/ml/firefox-48.0.2.tar.bz2"; locale = "ml"; arch = "linux-x86_64"; sha512 = "789aaaf1495740adbcc4ffc90ffe0e3dd2b7d1822444bea6676bddcad228aaecb0a67916560cac892067383f2faca06b066782e8a40f39928e7cdf2370a3f0f8"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/mr/firefox-48.0.2.tar.bz2"; locale = "mr"; arch = "linux-i686"; sha512 = "d6a45cf0bf37fcf67369bfd9a3e0fd2a3fa4b1538a905e419915d5eaa350f812739de97179f2efcedf5aa2fa0571f555fe4012bd05a39adc331a34bab934808e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/mr/firefox-48.0.2.tar.bz2"; locale = "mr"; arch = "linux-x86_64"; sha512 = "46bac718bade7205bd307b7c1ec9957d245c18d305f08d9c2263e070128f49d4fb7e4fbd3b1270866a1aeae8e726a21e7befb884af8d86bf323bc6723cc05c63"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/ms/firefox-48.0.2.tar.bz2"; locale = "ms"; arch = "linux-i686"; sha512 = "490fc881444dcdda259719b2545de34b8a3759d6f13a4d66cdd449fb629948bf6ded39576a2ffa53ef6d83ff16854c8c0b8521001ce3f43abf1f35387c8d6191"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/ms/firefox-48.0.2.tar.bz2"; locale = "ms"; arch = "linux-x86_64"; sha512 = "fc4c0588aeec05fdb2d65adadbacb210d04470e9588b3950d2011ab0e667311aed76262888f9870a4ce409370d8ed19b3d481437bef72960b151f76d0eb7ecb4"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/nb-NO/firefox-48.0.2.tar.bz2"; locale = "nb-NO"; arch = "linux-i686"; sha512 = "d75931b47ede66d7c5025c4fabfdd918f21b0f66a9d8c2a5e772d3d26d941926da4f0852ac8dab92dc9236a0aec4b5cc1eadf5132d00721a91676cff1d7076cb"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/nb-NO/firefox-48.0.2.tar.bz2"; locale = "nb-NO"; arch = "linux-x86_64"; sha512 = "e42a91e469b87235a8deed1e4564899287dd568d0ae93ebe139d499d9d5f59aafc327178a86f36f5f44d90ffb404907c80643f00f1160014708f061afe1e17a6"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/nl/firefox-48.0.2.tar.bz2"; locale = "nl"; arch = "linux-i686"; sha512 = "e0dbe6187eadcf305546f2916c8d21c6ae6dfa634aa30b51002a8d2ddda412cb35fd2c6cf5a44ab42c9805ec3a6c3322132e5121b04476935d7f67d30291011f"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/nl/firefox-48.0.2.tar.bz2"; locale = "nl"; arch = "linux-x86_64"; sha512 = "56b674761390018c7bbfdc8523b0ccef1d66576478cee43a6464d6df3e0da741ed9775e7ab48abf57028f62f43d91d8a0e7b17a8ce301c87ee576f9daaceb1f5"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/nn-NO/firefox-48.0.2.tar.bz2"; locale = "nn-NO"; arch = "linux-i686"; sha512 = "a18693969b1d3f8824ecdc705c3b577dc1288cd5ba47ca0e3cd8e88d0a5a01927f87e56a2beff62d3ca9e6aa325619221f2f134c8c95b0687a49bc0f2cfc2ada"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/nn-NO/firefox-48.0.2.tar.bz2"; locale = "nn-NO"; arch = "linux-x86_64"; sha512 = "73874b50e63de07f73de2feac7a907dfb4e0eb014d913ea433c2f7d3ce9050b8ba811b72884ff7129a149ee38a30603246aaa55d81f11bb80e9fdfff87ba9120"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/or/firefox-48.0.2.tar.bz2"; locale = "or"; arch = "linux-i686"; sha512 = "de8dc3c4b91e96c5e49b32197e1351717cd1b359ba3802c9f0fd39516f25d4df7a9a57b4d4058d32e1d31af3c0ca8e1a8fd3fb4edbdb9718dc51f0881499bb0e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/or/firefox-48.0.2.tar.bz2"; locale = "or"; arch = "linux-x86_64"; sha512 = "999a71a5f978e2cf507966ac465ae170b4c01602c703b7ee85fa02224c8edb0f789d35bb0a20a5f72c86782a95943e9f8f4bfca301fd74ecc7f063f35bfe1f4c"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/pa-IN/firefox-48.0.2.tar.bz2"; locale = "pa-IN"; arch = "linux-i686"; sha512 = "7378012baf763bdab21238f306244be208c20ade796cb15e2801133f0ac8b00cd92a86403d9591d5c2af94ea6fafd7162953ce88b5e9148fd447118128b2398f"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/pa-IN/firefox-48.0.2.tar.bz2"; locale = "pa-IN"; arch = "linux-x86_64"; sha512 = "b20490e7303aeecb8d7b158464dd1a4f4b70979d74d0c4f2f15661abd0403dacb4674ea1bc2a09ce5b04ebed2987eab4475e839786e63dfb2f1eedfc44ec021c"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/pl/firefox-48.0.2.tar.bz2"; locale = "pl"; arch = "linux-i686"; sha512 = "e0cf99f816eeca80e7f2a5344b11202be124e1fa1f7a2c206ffb5c349556e0a2d5a7a3c653538bbb867c0a4d19eb9126c947806e0f021b68a9268d1913a178c3"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/pl/firefox-48.0.2.tar.bz2"; locale = "pl"; arch = "linux-x86_64"; sha512 = "fe27c64b344f6d02e09e240f1a8c45236c9632c2ea9422ede227ef4c1890bb81c049a8c320e4a53cc818c129927e289f8279a64cf15655563958af23b4ca7076"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/pt-BR/firefox-48.0.2.tar.bz2"; locale = "pt-BR"; arch = "linux-i686"; sha512 = "868461b1d4d971ae4af0010bffa03012940758fd5ae10c05045c77fd5bd0f50997775a1c390f1cdc553197eceb583de47659ce84055145a290ca81e6e66a0a36"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/pt-BR/firefox-48.0.2.tar.bz2"; locale = "pt-BR"; arch = "linux-x86_64"; sha512 = "ff50b389d0c653db38a4ab8bf3b28095ca81b30340e973315bfccedfc737e9e853711d813fb08c52178e9948f49f7ec1bf7ae7958d611c1998fe938a9478b657"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/pt-PT/firefox-48.0.2.tar.bz2"; locale = "pt-PT"; arch = "linux-i686"; sha512 = "6a786c014c60268c8d24ca99e40106571fcc1777afef117a0125f7a78658f41cdcab4b16bfc2dd4c7ee520af0753b0b4180fcdcf32eaca8dfec7975146a08a60"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/pt-PT/firefox-48.0.2.tar.bz2"; locale = "pt-PT"; arch = "linux-x86_64"; sha512 = "56e911a6b2839a10c3d06b76bcdf0b746fb45fa0ced80c466d240a31cf7e6aba6df21b98dec1a4d3bf11baba2f530dbf06d1f94706b622acd2b08f2b2ef9ebf4"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/rm/firefox-48.0.2.tar.bz2"; locale = "rm"; arch = "linux-i686"; sha512 = "88fe9ad3d7afc11e195f40ec0bddb4ab5e04446e08f9317f82733e32e536d32b2a68a1ebb235f8cca828555c4b315911dbba178159f12f8bb2cad64a8a44511a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/rm/firefox-48.0.2.tar.bz2"; locale = "rm"; arch = "linux-x86_64"; sha512 = "5153adba79e65368d1e901dc557d311b637d8e9b0506ba979246bd1ab6d5e31e2d885a73be704488457e051e81467412bd45a6c74d30e20198d9309f6ce59dd6"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/ro/firefox-48.0.2.tar.bz2"; locale = "ro"; arch = "linux-i686"; sha512 = "faea58185a6bf7d57134b218a058ed4a3abf4d51dec96a5f5dde0f04daf2a2c8c76846bef8b8b43ed7fce05b4c6431fad52ee61f4e47ad62be95ef8b8914a726"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/ro/firefox-48.0.2.tar.bz2"; locale = "ro"; arch = "linux-x86_64"; sha512 = "319792a258e2ba40cceeabf5b0879c2572811484046bf34fa04b213c083391de20da1bcdb654294ac961a8b818f0c9c9287f32948e65eb50f3a85f43b15e538b"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/ru/firefox-48.0.2.tar.bz2"; locale = "ru"; arch = "linux-i686"; sha512 = "ec44f3a0d95beaebf99e9492c7457ecf3857899d4587e8d27ecbd2205d5b4a1c1d0159f471ccdff01b5d9efdeda9dcdf28bb84bbd12c73e676ea0baeafe0afbf"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/ru/firefox-48.0.2.tar.bz2"; locale = "ru"; arch = "linux-x86_64"; sha512 = "3525382dcd7b2ee2f3ce847245216c0b8925679d539ef2f83e43d9062be06724db6f66b9b4747f3e20c5e7355e4b6ecabd816c07f201f2afe921570905cd0a3f"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/si/firefox-48.0.2.tar.bz2"; locale = "si"; arch = "linux-i686"; sha512 = "6cb64f9fa85fe4adddaf68f0a221da8b2dd92625b2302102ad530c15d51c6ca1994ba53a300ab1c054da1fc20c5073deb308a46060ee6d7ab6ca843a930a6138"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/si/firefox-48.0.2.tar.bz2"; locale = "si"; arch = "linux-x86_64"; sha512 = "499dd5b16a48ecca536379fec41fc9ebefc71ae12963bac44dd0d76014709e2ab219869f3b3fb08f5196b051ec8a7e519fb994b15613559b38b35c4e6d8bbfcc"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/sk/firefox-48.0.2.tar.bz2"; locale = "sk"; arch = "linux-i686"; sha512 = "11a73be8c2f801be0a46831b81980c2a9b2b9a4a645a710d01fb0d9a8e2de91ee18ea57c23b73b25e091bf88b15351a8fa261c349e9768d200172ea053e5c465"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/sk/firefox-48.0.2.tar.bz2"; locale = "sk"; arch = "linux-x86_64"; sha512 = "07e1462282e2484b58ba6b413034081a3e99ac907d7285f207530cb46d6ee61a6b166bb9d8820ca696789b57a0dcc3c1dc058975688d06b63b32f8a7a65974d2"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/sl/firefox-48.0.2.tar.bz2"; locale = "sl"; arch = "linux-i686"; sha512 = "64d0b5cfefc8e98c8ede5497164be13854334f72d1e526a08d43d6712e6286ae509347805e9329cb38bb8f4708615d51e56221309198071c0b6ecd6c7dfdfbb5"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/sl/firefox-48.0.2.tar.bz2"; locale = "sl"; arch = "linux-x86_64"; sha512 = "d6e727ca07084eefc02b2287a286daf6302ea0cc3c8fcc22f238ce2c9074e95c0ec031068acdeb34277786670a91faf85027c9ae5acb963d150b1a89e534f98f"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/son/firefox-48.0.2.tar.bz2"; locale = "son"; arch = "linux-i686"; sha512 = "9ac81b861b81d7cd4e9e71b6cf72a1bd8469c8190371b93b41034596148d831ef7f231b84de9cb8e520d7e3e92e83fdaf2290bca5e9c578ade17e0dfab41293a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/son/firefox-48.0.2.tar.bz2"; locale = "son"; arch = "linux-x86_64"; sha512 = "9759f52732b9a84b8c6b3237356b0ec1c2aa0a2a1db79164cee491e761a9e10d88e931f73a5bbf0b7ed184738c44d12e542903577e1f0811f823853d43daf2d4"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/sq/firefox-48.0.2.tar.bz2"; locale = "sq"; arch = "linux-i686"; sha512 = "c7bc8ec81124127735d49d74bb12b77de24a5a851c34c3728adc752596e04c6b1ebeaf1a361fbca36631135cd9e385664adaef4d3c76ecea4d41cf88d7b6adfd"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/sq/firefox-48.0.2.tar.bz2"; locale = "sq"; arch = "linux-x86_64"; sha512 = "aa7b7c20f372f23d507aa7bfd088b2d2306b267a3cbf1b0004400d29b96187d9ea74a77933b9dcc42ef081d7dcb8db56b397d37ff001c61bed22976a6435d3b8"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/sr/firefox-48.0.2.tar.bz2"; locale = "sr"; arch = "linux-i686"; sha512 = "cdef642d72e3c3e33c1e2cfb8a5005249719390ce732b06ffeb15b01a77539263605fd8657ac8cbe8acfa2c92b2e1c0dd2168728ae2578e25453d6d79c06a17b"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/sr/firefox-48.0.2.tar.bz2"; locale = "sr"; arch = "linux-x86_64"; sha512 = "f12bbabaefb8811d3babe7b3673fd7f281645bb8bba0372594cca4fee4e0b81afedf46378fef714c1e624ede6039c913f66bb227a2d076a6950a0e623606adad"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/sv-SE/firefox-48.0.2.tar.bz2"; locale = "sv-SE"; arch = "linux-i686"; sha512 = "dac4342478d5a8e2743c6cbb44f58774be0b9bb96d9ec7a94b4ef41d093e76a511ff914d323ee5aa55cd8a00292c477e41eb0bb9fe37cfd91c89fae432a661b7"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/sv-SE/firefox-48.0.2.tar.bz2"; locale = "sv-SE"; arch = "linux-x86_64"; sha512 = "44323f6ff400058dad98f2e7a2f82afd52d706fecd34e7a6dd1780f45b6af77d2f6e892e2aa33784e4624f40ec5251e494ad0b8f95bbc11351dca94c599b405f"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/ta/firefox-48.0.2.tar.bz2"; locale = "ta"; arch = "linux-i686"; sha512 = "cac58900c6d169d1ef3828b4627c36c86224e21a011141c8bbf9fd3df3ea3bcddb5ba821d7d8ac9f5e6f5e348d1ae3cd92cbf2c151d380c22cb925f595cb637e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/ta/firefox-48.0.2.tar.bz2"; locale = "ta"; arch = "linux-x86_64"; sha512 = "38fba18d8edc2a4fd614a39b77aeeafeafea98e1dbc3bc2863284bbc2b7b07d28b273da9e3fa0bcabac90bd8049dc295db3d28e0dd0f1f522bb496f06d7e7c5d"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/te/firefox-48.0.2.tar.bz2"; locale = "te"; arch = "linux-i686"; sha512 = "25adccb31523a1159fa9022791198869d87c8ef44deb8e3d7626a2500ddd82fa977d3c294d755b7e0385eb4dc80e00067091da78c65ece26e45b3ab9f2a4676c"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/te/firefox-48.0.2.tar.bz2"; locale = "te"; arch = "linux-x86_64"; sha512 = "550ba329d8c968fda79d0dbc7291f83bfd66227ba60a79c697cfb29a81216d3323853a651e401a0a8d02c658093330470b42bc0b91f4e27bcde368b33072ed8f"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/th/firefox-48.0.2.tar.bz2"; locale = "th"; arch = "linux-i686"; sha512 = "a41abdaa15a97e55e0062a9f114a80bdc0e750112c15fe7204124aa1f9e54ad3caa1515caf145cf5e5269f41d1b32d8a0c2fa6691612e1b36fbcbc685ba17f79"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/th/firefox-48.0.2.tar.bz2"; locale = "th"; arch = "linux-x86_64"; sha512 = "ecd440389c07042aaf7aad74a135562eaf60c23f840bea0b9b3b62438610c0adf8de1c2ca57ab700f70913ee498317d92fd1c00f92d1af5d6d50a95c15d9bf72"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/tr/firefox-48.0.2.tar.bz2"; locale = "tr"; arch = "linux-i686"; sha512 = "06b828afd3c9a89aaa448d9a8e18579142cf19d0008c409e115bb0148c4cb298eb2e896bdf20f3593f5f873489eb9b701104643d6088218c98e7b2ed44a6a775"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/tr/firefox-48.0.2.tar.bz2"; locale = "tr"; arch = "linux-x86_64"; sha512 = "3107986002dd0b05fc10de856a532c40d5c38291bfbea07948b2c4fefe9cc2d4f5d8567b0e9856ec7fbbc7004078bc485a572b1a1dacf444db5c71aa7684edc6"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/uk/firefox-48.0.2.tar.bz2"; locale = "uk"; arch = "linux-i686"; sha512 = "9e6d5854a468c5ecc942735c89d740fc8e304053f6e07a9caa3960dbf95e4cb9a6c7c0dd2e9e951bb49314c4cf0385a5a99ad7df6700ba21b9816f6aa3c77689"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/uk/firefox-48.0.2.tar.bz2"; locale = "uk"; arch = "linux-x86_64"; sha512 = "ef021c365d2ef8d2eeaa6a92ac5d9d979361de30e2de06c7442f2085d66719a9fa876f77393737778f5b8afa29cff1898a0ac638df2e45b6c54e0c25c7c9b2b2"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/uz/firefox-48.0.2.tar.bz2"; locale = "uz"; arch = "linux-i686"; sha512 = "d15770f8b6db9f55ecaff13d27a0c2559c032870873930c420fcd2d94c79ef3853138e42fe4205b5ac8af33aafcd6b2130c712025ef49801717b153e416058bc"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/uz/firefox-48.0.2.tar.bz2"; locale = "uz"; arch = "linux-x86_64"; sha512 = "4b47c53585f3ed44d80d0099596ab710dc6565499c2f9ce0ed38ac24274882d5bdab16260c4c67c73b1b93b4fe9a8ceb0ca135b2d432fdae28c91025d1cb2e9d"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/vi/firefox-48.0.2.tar.bz2"; locale = "vi"; arch = "linux-i686"; sha512 = "2d2dfc0c5515dac6bbc337acb41d72aad101837caa75257a1e369991ca93dac0bbc4cc3b31c8457f76ccba18afc9751eba33b9f602777a65d65da5ce0c208858"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/vi/firefox-48.0.2.tar.bz2"; locale = "vi"; arch = "linux-x86_64"; sha512 = "7afafaee8de0e47d8e9919bb60da7cd361b18ee15b764522d9609e44e1aeac3ca8b5ffa97c23430a66efc4f38c28a5ffdc05bb4a46734ad2e3388f587b16110f"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/xh/firefox-48.0.2.tar.bz2"; locale = "xh"; arch = "linux-i686"; sha512 = "b86ceb71c96d19e92af81604925b005eef63c7a55ce5fd9c1176017c9938389c30a5d91134c3d900a4a0635dcad7b25233f39848f9b50fee4e1ca1520dcf2c95"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/xh/firefox-48.0.2.tar.bz2"; locale = "xh"; arch = "linux-x86_64"; sha512 = "c6ed1a65b72d6d63b4c031da93fa1e07cca97027d2a3dedc15e9cd2ffc21b371236e1b2cdeae02534e37c7efe6112cdbce0e5924e872c76e057cd59445ceef04"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/zh-CN/firefox-48.0.2.tar.bz2"; locale = "zh-CN"; arch = "linux-i686"; sha512 = "90ea550631d4b3a314b56896d1eeff147e42e41667a94f6457fd18cd2c4bf0e18ca3134e4dc20696a2a30ad9795cfeb454908cb99c580b30bd5eb147e53004cb"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/zh-CN/firefox-48.0.2.tar.bz2"; locale = "zh-CN"; arch = "linux-x86_64"; sha512 = "3ef020131a05958aff64d5d313aa8bcb92801d1ea0215406532efa55cbc66291d976e7aaa9bb11b38d35634d3e2ead7f838a7d908066e0b36b65d41767d38583"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-i686/zh-TW/firefox-48.0.2.tar.bz2"; locale = "zh-TW"; arch = "linux-i686"; sha512 = "8725261467ff069d523d6e813ca04a8912a21df2fada21cfc8c9442aada3a882fbab7468fed376a2a16be121caf68e74de21fffbd1b9345bd68923dffa2c4a31"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/48.0.2/linux-x86_64/zh-TW/firefox-48.0.2.tar.bz2"; locale = "zh-TW"; arch = "linux-x86_64"; sha512 = "172fe85c404b8ae7e073e11953a74896a07238c89077fc487be2dbb52a43fa183dd1ec17fb43971b2ada95c8c85a6aeb2b5bd9b637f0de8a3322a57b18783255"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/ach/firefox-49.0.tar.bz2"; locale = "ach"; arch = "linux-i686"; sha512 = "b082245bf287224c9487d650305cbc8cc8a602c36b526fc0174f56489bbe211dfff78ec40ad2dcf8df5eb4d951c352fdba5fe4b7a3181b54b54d1304ce9cfdfe"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/ach/firefox-49.0.tar.bz2"; locale = "ach"; arch = "linux-x86_64"; sha512 = "0c724d60357c817d78a4430103a50188db56f9e6b915cffc1d5177675727e1f253bdec37244651bfe1d055974a202306424f59e43c97c41c31954fa931c73f7c"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/af/firefox-49.0.tar.bz2"; locale = "af"; arch = "linux-i686"; sha512 = "0cde959ebafc32dd5bb34af6bd7eb30a556ab6092459766a52e60621f545051300b41c3212786afb5a2e01cd3dc744fda72fd1461f4d2770e734537df930c7fb"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/af/firefox-49.0.tar.bz2"; locale = "af"; arch = "linux-x86_64"; sha512 = "59d8b7ae0db4720811e9d85f00055eb2f702a24cd9a1e0b6fc6cc1b07d55559d02976a6cc176063c777f391f5c1206c647cbdfaa8c880c4d97b3764e42ce3fb9"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/an/firefox-49.0.tar.bz2"; locale = "an"; arch = "linux-i686"; sha512 = "e0a5d4993fc3088b517330278228d87d27871c2c6b07b1c771c3af274bdb7968de36cd16d78d1056dfd32773a3e813d38728bea3f5177d83c7ad87645f339aa4"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/an/firefox-49.0.tar.bz2"; locale = "an"; arch = "linux-x86_64"; sha512 = "d10c9bda25fdf945c11dc83abb088ef5758c7cefc6c1eab2db246d680c8bf97517bf7839710481684f03c6339089fdc1c01f6eedd88e1c675320e4f7898ed2ab"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/ar/firefox-49.0.tar.bz2"; locale = "ar"; arch = "linux-i686"; sha512 = "6f9d6f15dfd5af271d4e0a7944d2a37c17c755278ac9c951bb8c2e6602f71bacd0aa63297e041f1422364f0125310af8179975d023bd7cf0e01556695b720981"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/ar/firefox-49.0.tar.bz2"; locale = "ar"; arch = "linux-x86_64"; sha512 = "374ab7e28f5ef960b6d0ba6ffa2bef136d697916dbbcfb8d87186c9bc25aff188063d81bd250a6581c0e1870f222526ac7bf179f6960ffb34c08974b0f6a4be7"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/as/firefox-49.0.tar.bz2"; locale = "as"; arch = "linux-i686"; sha512 = "ea216d3def6e83a8dd6db481d3477747ba87049f668b41906c40abcce9913758aebe478c3ccd258b5267d6c9ad013bac3652fc6496811fb96e4639ad8adc829e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/as/firefox-49.0.tar.bz2"; locale = "as"; arch = "linux-x86_64"; sha512 = "f25cd18e71f331c906edfafa229f93336c92f792d023f7ad87f77d7ff59a80bdeb9a9d77fec585d623dc13c9694d3c256262c1bc9396e996fb713decf7c5991a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/ast/firefox-49.0.tar.bz2"; locale = "ast"; arch = "linux-i686"; sha512 = "2bcd3c9d217389ad200896d3e8f79b3708c0df0f255e1e3241156ce6bcf61123b839eda1e7700313b0fdd77cc4857f5ce321df228fc4133d7be475427d41550a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/ast/firefox-49.0.tar.bz2"; locale = "ast"; arch = "linux-x86_64"; sha512 = "a408ab3ac9ebb6b0f2ad6fc67577617597ddae3ef944d72648246c538da7d7dea6af260323ec061c43a1e84c3946cc879ea9ac85e19f780459021832186a66b2"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/az/firefox-49.0.tar.bz2"; locale = "az"; arch = "linux-i686"; sha512 = "ef7def291ac82d2675b9bd65907451a1ae1cc7e6f9ba33a99801230a945aa801b9e31b74fc66038644cd9b2d77eba4cbaf4de5af2be14351dbe06b6cd46ebb60"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/az/firefox-49.0.tar.bz2"; locale = "az"; arch = "linux-x86_64"; sha512 = "7b9df427933588e40fcdd99486b28a3a1df4bb2c7de54aa9feca2c4a3b0aafcbc86005962af228e5a57a5c48d84cc1104d95505dfae6d70f0d58297d22425849"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/be/firefox-49.0.tar.bz2"; locale = "be"; arch = "linux-i686"; sha512 = "4605f9e2b679ee41bb0b2ef915d7eafebc2018ad6291d4732468b264917691561c49b7497e2bcb4bd9b121dab239c1c35a837e622538410b1c3fb2056cb0b401"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/be/firefox-49.0.tar.bz2"; locale = "be"; arch = "linux-x86_64"; sha512 = "e0864d2534562c794ecb790dc1859d37ba400bf79e06fbcef571e2dff36458d515fe42e50bcc5ec172d2643225d146ea38065b1b595061252001a75d595ec82e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/bg/firefox-49.0.tar.bz2"; locale = "bg"; arch = "linux-i686"; sha512 = "4da00516d997ecaaf9ccd27b54e2d52916246f24ce28b62ac62451cf77f37611eccbea6b494b36c56d352327ebaa25a1de3fad4ebd8f076a113d204126591ed9"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/bg/firefox-49.0.tar.bz2"; locale = "bg"; arch = "linux-x86_64"; sha512 = "973290680cf923eaeab4a0ca2fc6950bc7445b5579c6d4c73845a3881b545ad1aaf9fbafa5d37fa45f271f4a3fd38eefc2d7a756d7dedaa08a52f55955473929"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/bn-BD/firefox-49.0.tar.bz2"; locale = "bn-BD"; arch = "linux-i686"; sha512 = "5fb2558b29c80b45208ba36874442e31d406c0a1b4c46ac8accc930b1ab98f1a24ea51d4172a2b2942af5475d21cc19db798b0db2032599f02eca60f7ee5cd30"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/bn-BD/firefox-49.0.tar.bz2"; locale = "bn-BD"; arch = "linux-x86_64"; sha512 = "db253c316e328385431d89ee373ac782b42ecc89c7aa6305253e85ba331b15513bf6295bd7f867ee298e2067afd4cec4c6a00e8645b94a31be14f4a1b89e64fb"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/bn-IN/firefox-49.0.tar.bz2"; locale = "bn-IN"; arch = "linux-i686"; sha512 = "574c3f178d81f2a2cf5aac98577b3f6e384a5adbbd4b2645111a3829cd0a7962a8304bf42d7dd29ca5e37311bf1b1e8b62634cac823d1bbfd832a71a2fb5cc3d"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/bn-IN/firefox-49.0.tar.bz2"; locale = "bn-IN"; arch = "linux-x86_64"; sha512 = "2b5e63643bc6a39f7493ee2e3744ca6b0c5a0c6251f4b1af32ab911f71cb5219d5506910bccc8f0168353c3fd0ab7d1eedf487ee7406f5a1852e010f6261cc02"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/br/firefox-49.0.tar.bz2"; locale = "br"; arch = "linux-i686"; sha512 = "efd72e7824440c1220ee34f578176d1b1652f2ca31cb4f28f7343bfa4d7cd91f40ead137b879fef39840d790e76b4261724f68175e8eaadc7a55f0b9ecce5538"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/br/firefox-49.0.tar.bz2"; locale = "br"; arch = "linux-x86_64"; sha512 = "17abd7de76cbc9b1871886d09a0c35df49d7acb3736b3a6c616a200932565170864ebbf1dc6b320ace2a0c95de1b892aae170fd3be794e9c27025f0c19c435f5"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/bs/firefox-49.0.tar.bz2"; locale = "bs"; arch = "linux-i686"; sha512 = "8ef4c39bcf10068156bdce5bb3df64753914476f92ce565b7fd681a674d6a45a5005efd2a7c4969bddb8eadbe11ddee7fa8ea206868b8505024b6688cd11c47d"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/bs/firefox-49.0.tar.bz2"; locale = "bs"; arch = "linux-x86_64"; sha512 = "3e25aa90f2348725517858299ac6ec3b1febad9dc2080f17484113c23e43862a1abf06d473c623bb0764a589ab68e3295c48b997ba3e76f21d5e04e0ecfdedaf"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/ca/firefox-49.0.tar.bz2"; locale = "ca"; arch = "linux-i686"; sha512 = "4120e2c2cfd3183c294be353243f32631f34f8e3ddd0767b5772a355058c3148557e606d1971e1a89da349fbcab56072366342f8a7f03d2b702a0ee55d1a6268"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/ca/firefox-49.0.tar.bz2"; locale = "ca"; arch = "linux-x86_64"; sha512 = "e3d8e3d060ad6cf28cbe06d51b21c26285f89cdc32695eede992d6953f9d62068f6951506f02e32e1ada37034abf095b1d6dd7a57076ae0eeac9ff939e2e84c5"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/cak/firefox-49.0.tar.bz2"; locale = "cak"; arch = "linux-i686"; sha512 = "5b27d128df2101f08a59dcd46f66ba7c07434b29e9729ece3c4681d7a5b6a4330023bfddda42ad5f1765c1ea3c1401f2664c019b0f84c182f709e91520813f7d"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/cak/firefox-49.0.tar.bz2"; locale = "cak"; arch = "linux-x86_64"; sha512 = "ea241cee1ef1ddc3545f4af9b0ad4e93a7879e04fc0c11e2288b3ea59d1ba2a5db36a048d5eebe0f69319b40ed6654866c498879ab50970124dbfa904f5929a2"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/cs/firefox-49.0.tar.bz2"; locale = "cs"; arch = "linux-i686"; sha512 = "93080871362ee9f8d07993fc2e509beb6e6abe496ab1b9cf8451979e65c25b7a6e4eda0759ec6d6631a1dd04874cea08e4e0e777bd0429ec6525563777040b02"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/cs/firefox-49.0.tar.bz2"; locale = "cs"; arch = "linux-x86_64"; sha512 = "9aaec753784c6e5db6fd48a2fe134cf4a9c008ff3f5ca09a17c5982b7389f2949c6551a004e0bac723c91ec5e20dab46221b35aa3f94974b5fc14629cb375096"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/cy/firefox-49.0.tar.bz2"; locale = "cy"; arch = "linux-i686"; sha512 = "843b18d25d94808737283b2b572902d999bf34ea17fe620319b3b15bf004d0b5526c89416d6f09ab84a6087353212e0e1a72fc3ef8df50acb7336da2819d4830"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/cy/firefox-49.0.tar.bz2"; locale = "cy"; arch = "linux-x86_64"; sha512 = "caa53c6ab2c4f8127fa637d8b8df9727e31b0c0ec9da8e016447cf8e1333cd82e0e41b93917821ceb8db59c558761ca52f4dd34fc4916e1b70499f491a9b3ecb"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/da/firefox-49.0.tar.bz2"; locale = "da"; arch = "linux-i686"; sha512 = "c4a441053cb6c116cb35817e03774690ad540b6f9c6865c6a64d4751137c3935c5c2422cafc60f10f4b9d393a6418c2862c8e05f8ce814abd1e028f867114901"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/da/firefox-49.0.tar.bz2"; locale = "da"; arch = "linux-x86_64"; sha512 = "8cb552f986e49d590659901f438e6f10d494445758d09798285285629f2cd11e7da39e828f56793673d70f5616b3ae9bea10d18c859f89190fb4998f5d75cab5"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/de/firefox-49.0.tar.bz2"; locale = "de"; arch = "linux-i686"; sha512 = "50f7a3e44c19e56d4845423065a47b6ccd12d353b10ff2ed21798a668e77fd37da86824a9da2b740f95d6f83af9a33eb3c50d8539db7d27a421606139212a71d"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/de/firefox-49.0.tar.bz2"; locale = "de"; arch = "linux-x86_64"; sha512 = "2678fdbd4a9ee6281eee6a04b3586d2e577110fdf98e8a589d934dddbbc4be565ef50d4b457709758a732506b56084938144d5d2e0b95a9fcba5afc3c826ad02"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/dsb/firefox-49.0.tar.bz2"; locale = "dsb"; arch = "linux-i686"; sha512 = "6fd71b3130ea4571ff4456876219f5720f99e190b92ea0615c6fdb519fed1dbc4432ecc65205a92023bfcf6c1ac49a622dca3dc0e3f362dd4a82253baffbd220"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/dsb/firefox-49.0.tar.bz2"; locale = "dsb"; arch = "linux-x86_64"; sha512 = "a23f6f93bb47ab231ee670817a28187e78ebbd459d4151444fd39b68b2c44990f06f8c90c850628ff8e88ab262c0aef48d990d4c235aeceb4d252249326bb16d"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/el/firefox-49.0.tar.bz2"; locale = "el"; arch = "linux-i686"; sha512 = "12406ba82fc63d94245188dc5e3a1afe8e97f00ced23d19b0f463806b1fe98fd49daaf9e7caea0f1b0a6f6bfd05237a1231bca5b6a49298c8e9a1ceabf5f3a94"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/el/firefox-49.0.tar.bz2"; locale = "el"; arch = "linux-x86_64"; sha512 = "dd4f50c2201652a912dbd5ee7b6e3053c2519d0fcc13ea683ff7c6f6b1ff80ed5ff27215980def1de5254c658dbcb59df13f5be09ca9acc7f41e5711c9819d6f"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/en-GB/firefox-49.0.tar.bz2"; locale = "en-GB"; arch = "linux-i686"; sha512 = "4ce5cbeefef030ba020f1f4ca674587734729d1451c072efc8bf7486b3f0929b9720ff399bb7acb80afbbd39997e218c47ad2a9c6b248c97695248e9b3448c65"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/en-GB/firefox-49.0.tar.bz2"; locale = "en-GB"; arch = "linux-x86_64"; sha512 = "ff7b4aaf59af5524d015ad680cd684e705cc9bd97b9afd459d829261d2b9f43a39a9a6cf56374b69e5e23674f97ac08e6ea4babc1732efb013e289c6c7835b8e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/en-US/firefox-49.0.tar.bz2"; locale = "en-US"; arch = "linux-i686"; sha512 = "d3815b311f7798c4c2dae7682c93ec32fa374fbddf5bc696cf13f048a2a6b1b35ba6b5700a30f0c0727ba346905e846da38402b8bdbb6b15549cbc2aa0d9446c"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/en-US/firefox-49.0.tar.bz2"; locale = "en-US"; arch = "linux-x86_64"; sha512 = "eecb07437e814ddb9c9331fde306b1531dd225866d91a7b15412aef905e89d753332940f2da7b6bc53e7d73c348091ef58b8304f95775378c4bff1a740c18162"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/en-ZA/firefox-49.0.tar.bz2"; locale = "en-ZA"; arch = "linux-i686"; sha512 = "c1e47313c2a07b5d33ab09d00148cf62e09ae566e0601518e0d3f65805e258c65fffbb240197f46e52d21c93b171d7cff64a74a3d7d9ac4ad8849a7648718165"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/en-ZA/firefox-49.0.tar.bz2"; locale = "en-ZA"; arch = "linux-x86_64"; sha512 = "50a5a6df373af7620b6fb3166a3c7ea06a73ed6d14d9dab46c1f7fb885f6a7da6a4fd7b1fa7e44b91f3dcf2e2b432e140f9ace19f51e35c7e7fb5994e024b5f1"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/eo/firefox-49.0.tar.bz2"; locale = "eo"; arch = "linux-i686"; sha512 = "9424ac023e76cf2c41e9bf50d941ae59a73ca716050c98401ebc6a7f2c891e22fe399bfab105454206dec7e503c05c16afd9605e44bbf9f3827b429a3372e416"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/eo/firefox-49.0.tar.bz2"; locale = "eo"; arch = "linux-x86_64"; sha512 = "bf8338a6ebc3c9c3f21249367e6d288b06fa31988ab110d11fd136a7575501531d5e7cb687d15cc883468d3f852ceb015c0570e42b355ddea5f384eb1dab53c0"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/es-AR/firefox-49.0.tar.bz2"; locale = "es-AR"; arch = "linux-i686"; sha512 = "6b5e1014d1c5379c6a461c8835459dc6bb030ec0b898aee547f122b1b92ae284d4fa2a2bd93893f43faeee5c30e3ddcef1bbd06abb655178fdf2d080af5bb137"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/es-AR/firefox-49.0.tar.bz2"; locale = "es-AR"; arch = "linux-x86_64"; sha512 = "d9625988b3754c2c0bd89aedf78bff52c53404ea8d47f642726767e6a11d18059c4e9e261bc5f5eee02dcf820a184020aa504570b32d3ced6d15beb82bc6916c"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/es-CL/firefox-49.0.tar.bz2"; locale = "es-CL"; arch = "linux-i686"; sha512 = "3cb9ff0f823aa1b8f2f33d2ad39763df9992ff84be75c1c4685ee34a3f3d1e614869f4d31a95f16c86e540318736845814c143a6bf26a5e6324df466e1ea02aa"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/es-CL/firefox-49.0.tar.bz2"; locale = "es-CL"; arch = "linux-x86_64"; sha512 = "1010add5bb4418960b77cdef8f1267ef9ba98fe9d7d82bbe7d125ed23589ad9b2f934af82e35e477bedeae324e9fa862354e268ca829346061bbe4308cf2b107"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/es-ES/firefox-49.0.tar.bz2"; locale = "es-ES"; arch = "linux-i686"; sha512 = "d64fcf43f71de119c4e5916943ff17b5e47e4c51c7482b4ebd9e90ae411cd1a302c6e246dde3a90ae5bd29d33f3915529633a3b87120ae571a90e6bf3e676c87"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/es-ES/firefox-49.0.tar.bz2"; locale = "es-ES"; arch = "linux-x86_64"; sha512 = "ce0d7b320514c975dfe74b9d6cf63a51162c68e40d4addbfddc378377a0788b501b6e6b80787137987196cff286fd62021cf99d9ef128bdaf2a9a271e6e83ed7"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/es-MX/firefox-49.0.tar.bz2"; locale = "es-MX"; arch = "linux-i686"; sha512 = "097d9e98cbb024042325188fa4744acc28035fa89788c613a579a74ae8619d02a16a49e7b73a8b4cce95102d9388bb3a857036c17b825be1b12acf7a8ab7568c"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/es-MX/firefox-49.0.tar.bz2"; locale = "es-MX"; arch = "linux-x86_64"; sha512 = "3cc5950e78621a31b11a3b1cc0946d41d4cf1eade23dd92c818df6f5f2bf60db228d278999610f80b2383feb5b8e1e78b90532135d8111c5ebc3b628d4804845"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/et/firefox-49.0.tar.bz2"; locale = "et"; arch = "linux-i686"; sha512 = "5be378c889cf86aa71e2c234ec090db8d8a67a778fe2fb8b271e141e931082e93c086aace526026ef57888accc8cc52d37827dfaa6e975d0a3b1710f27a02902"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/et/firefox-49.0.tar.bz2"; locale = "et"; arch = "linux-x86_64"; sha512 = "1754850a8415771904ae90b8096d3d04a3fe75df3aa87c1ea967bcfcb747483f2171ded2c8f3f091eaacfab3a2587b3be4a0009384fac74627c53135173a3508"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/eu/firefox-49.0.tar.bz2"; locale = "eu"; arch = "linux-i686"; sha512 = "e6356d13de9445e11e6b0a1908d2ab10ffb559c907a8e6d06cff090afbfcd4a557e1bc16ff13caeee61818d2044fbacc65ace65a7d27428aaa071cc52b453404"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/eu/firefox-49.0.tar.bz2"; locale = "eu"; arch = "linux-x86_64"; sha512 = "15d3cbb376dfa269eace5b2910172256b79787e16f1eaaaa7dd002e92d73f50540398f0097146e6d494e173e2f1c2f0dd7bbc4c7d52f3dbfc98ad6e376fc5bc5"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/fa/firefox-49.0.tar.bz2"; locale = "fa"; arch = "linux-i686"; sha512 = "151f18d14cd3be6360c36fa63c4cb605078fdc9146c3e28605d626fd85886561159275cc1dad44bb130f8b530da09aa897e3a23e061fc044c61ed74c930ce81e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/fa/firefox-49.0.tar.bz2"; locale = "fa"; arch = "linux-x86_64"; sha512 = "5810155928327671fac79d99b114c16f96120f3ca6c26c286c37d23d7fe71dfba2e8b9f0236a16a2cc6d1fc9fe2bd84278b6e5ddf25aa7876d672c6c157d2065"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/ff/firefox-49.0.tar.bz2"; locale = "ff"; arch = "linux-i686"; sha512 = "5716afa43a8efa70b2261906b990b376aa1505c206446273156f75c0fe8ce9cf0713e40a72125b4f0999cfa6d7d7d55872221a3effedde2f31abd4bad15085a1"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/ff/firefox-49.0.tar.bz2"; locale = "ff"; arch = "linux-x86_64"; sha512 = "bb85b1f71568d117d27d891978ea14b65340027803fdf0693a0a2c42b9429c7a57462c5e3b0acfa133a6a133ac4faf31ba83faa417587c1a35c3ae752d0be5a8"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/fi/firefox-49.0.tar.bz2"; locale = "fi"; arch = "linux-i686"; sha512 = "ed3a084f08985d9f4021327fc9b597bf184ef37e067ed6f96573337f63aae35f96f887594d9620d57c840ac6b2259add0e2a029b0a7f86d25bd3217cee609daf"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/fi/firefox-49.0.tar.bz2"; locale = "fi"; arch = "linux-x86_64"; sha512 = "f4d137824175b1231b662d800270bd59f1d1eb8a5d3c975f15a1f9a1efa4c9def03af0d82c0243e05e4113d1b23a7e08da35019f66c3e0f257d5f26cf0259bb1"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/fr/firefox-49.0.tar.bz2"; locale = "fr"; arch = "linux-i686"; sha512 = "0583f12e50318ae7eba691251e94a9828a227d1ca462ac1ef0dadc6371aab88838cc3cfe9c6ddcb9899b81111cfdc851d7a9dd9e82cbd89eeab29c02d3e2bd23"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/fr/firefox-49.0.tar.bz2"; locale = "fr"; arch = "linux-x86_64"; sha512 = "b12009c61cd54c7ad8d60a8d358b3f8fed9fd09172ae928d477844437c276fbf04021a2c367565923e204a6e3170857bc910a20364d66232bd4c3142dd7afc47"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/fy-NL/firefox-49.0.tar.bz2"; locale = "fy-NL"; arch = "linux-i686"; sha512 = "8e35ee5c5b323daf54624cf2dffe306a2a59b490d28c516c6537fd2cc6430e52e6134729dc98f03fef945c06d888cff690939f6c2fd418b2d99991bd8f4acc35"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/fy-NL/firefox-49.0.tar.bz2"; locale = "fy-NL"; arch = "linux-x86_64"; sha512 = "5b070c19834d6ecff8f607ed2cfb149dcd487d128620f79e1ecbd9fc874e594f5af43fa34f1543263f244f51b8d748af99c8a1cd8b10207e4014658e3f18ff36"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/ga-IE/firefox-49.0.tar.bz2"; locale = "ga-IE"; arch = "linux-i686"; sha512 = "482d840f25a6d734d530f81aabd30e516cf8070e0f43e0dea13af1745463a478c3f84f61eb305beb2440cdd3c1e219336c7dce8edf0197d21e87b3adde0eee17"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/ga-IE/firefox-49.0.tar.bz2"; locale = "ga-IE"; arch = "linux-x86_64"; sha512 = "fcf48da92e7b86d5a7bd59f09a919cab41bb72c33a73768fafbb93a970a254546df3b090b7aa3414ec25bc9b97b0c16b66ad57fca4a04218c07d8865e1bcbbcc"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/gd/firefox-49.0.tar.bz2"; locale = "gd"; arch = "linux-i686"; sha512 = "e6c244ea5ba25ed59695e961deffac3f99b9bfa03c1416c7c52d25d8be26c438813f3531c7dad243dc0ab36e6aab0c6485ffeebdec16e5ad47d4f6b5b3718edf"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/gd/firefox-49.0.tar.bz2"; locale = "gd"; arch = "linux-x86_64"; sha512 = "6cc1052e440888ca0114c6c7fb7ffc3c08cf9fc5ae5f38be0fd94dbda8e2230936f3046761983840a9b909b472852474641418b80eb5e268686b0f94ec2da39a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/gl/firefox-49.0.tar.bz2"; locale = "gl"; arch = "linux-i686"; sha512 = "69d928c79b5cefce463f4831363395954787690a0d0b6dadc9f9e89ddeba9f210c71a1a6b7504a35722b0f36cc871dacc82bf40b2b9bee454f871c045919ca10"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/gl/firefox-49.0.tar.bz2"; locale = "gl"; arch = "linux-x86_64"; sha512 = "190a8504b7ae9e72e06f0848a6c0746164fc208c7a7554caccd8e81f65f0ab914796f9e811095b8ecf50c6ec9b213856e3969bb8631f1734bd74255908eb2a42"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/gn/firefox-49.0.tar.bz2"; locale = "gn"; arch = "linux-i686"; sha512 = "801acc36c2821035af178d6ba779897041d2a7dfa760eb0e5dbfe578877fb62e40547fb5c26d0f6442ae0eba5b333616ede8d746565325fbb2d8e5b1d870e699"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/gn/firefox-49.0.tar.bz2"; locale = "gn"; arch = "linux-x86_64"; sha512 = "79db4de1e92e21264f2ec1bc8b9bf334adec8a48cc207b2d691ffc570bfff4d48da0a51accbab1b64395dc7679d1650fb158d8f4516de48004be7e3cf4b1932c"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/gu-IN/firefox-49.0.tar.bz2"; locale = "gu-IN"; arch = "linux-i686"; sha512 = "2520fb3d79e8a37b954a83cd4195ba79547fd12fde3c2a91f13a8d0ae9dd165f07cda6e7ffa9f9c3edc0e81998ff6e9343fac49bffd8d707010083adddf553a7"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/gu-IN/firefox-49.0.tar.bz2"; locale = "gu-IN"; arch = "linux-x86_64"; sha512 = "0864172462c8ca9bd162c8227e59f4684f6a90106c864a36224d58fd749b2d19d1496c6b877e432a1b8a6c680f9cde63d50352223def13ce8da4d5806de56a93"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/he/firefox-49.0.tar.bz2"; locale = "he"; arch = "linux-i686"; sha512 = "f1a595f504376d70531e5eb04efa86797705d869d462c7505909b416840040f2f7fc2a27718de6a743a9b2d37e5abd443674ba2f389882d9ecda86707adf8b8a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/he/firefox-49.0.tar.bz2"; locale = "he"; arch = "linux-x86_64"; sha512 = "4a4a7ed80a016812dcae29079c0f0badbdd39c020418dfbe07e05dca97b7632c9bc689bc084f7e957da6046cb2cdc74a7e0d9f06d358701c80f73e702cffb2fa"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/hi-IN/firefox-49.0.tar.bz2"; locale = "hi-IN"; arch = "linux-i686"; sha512 = "608477ed47c0d4cf9cbe33a240775dc10009546c4834012257839dee6d516b527051118c92ca8bc289a9f868cdaf432c1c44247efdf8d53e9cca87db02837bfa"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/hi-IN/firefox-49.0.tar.bz2"; locale = "hi-IN"; arch = "linux-x86_64"; sha512 = "9d2e91b8df386a3263b82cf88a945b5cc7de1a9fa3515b52c48f27ed1c8dd9b4edf471b588ba9c5a9d1eabebd7dc0fca89b33c0fff7ef6a0030a4474a158dbda"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/hr/firefox-49.0.tar.bz2"; locale = "hr"; arch = "linux-i686"; sha512 = "354d3cb33707ceb6a9d4d3f20304ad252e8f2efa36882f512c4382663b05ea70428f2978d2f9fd8871006cfba8a74d46f66b288bc0f2093218b0383d6248790a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/hr/firefox-49.0.tar.bz2"; locale = "hr"; arch = "linux-x86_64"; sha512 = "d5ee0aad4e91596503309d0028dc636550ac9f9fc5d36b1352026dda8de2c5a931175d96fb98192d93e52236b6c89c42fb9b56f2a69c484108281d2fae4dcbba"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/hsb/firefox-49.0.tar.bz2"; locale = "hsb"; arch = "linux-i686"; sha512 = "d18f984de95199e074d7d115f2a685f3d99d890cefd216e6d6fced2f5a8f71f0275729c5d35107f0810538373bf46e1ed04f541e1933cf0d4feac89e9bf44931"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/hsb/firefox-49.0.tar.bz2"; locale = "hsb"; arch = "linux-x86_64"; sha512 = "91e39217abcc24eb11fba06d95da8ff61355efc4c60be213197eca86359d6ce386ec890534ded720ec40814a7c347c6e2ff100fcf8a75697c40a06da496b078c"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/hu/firefox-49.0.tar.bz2"; locale = "hu"; arch = "linux-i686"; sha512 = "e6f1ee393c56d6f156b2f6c263460df19e7e52d6aeeee668702911fe0f016cabd8900db8a774b89ec74d43c5963c39cd8db75862a350565a13d9382964c9adc9"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/hu/firefox-49.0.tar.bz2"; locale = "hu"; arch = "linux-x86_64"; sha512 = "8f404fa390e70b54903267def0a458046ec6bf68bf8515352a61849a7ff72ac26c849c6bf69b992d3212268316ac8b954535aef9979b8edd4493481be6c8f9ae"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/hy-AM/firefox-49.0.tar.bz2"; locale = "hy-AM"; arch = "linux-i686"; sha512 = "e2adbeb30ac0b272e4e62dcf1876579dd3bfe0ab1d5f5385edc07c6a04d62d38cecbc584bbab12c1ba27377f7680d5a2a740e621c5a89d6fc616bca13e988661"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/hy-AM/firefox-49.0.tar.bz2"; locale = "hy-AM"; arch = "linux-x86_64"; sha512 = "7ce1778d1facd77af248f20f7b63ba5d20c13407dfa3ac25307777691d7f4f4844e421c1a6011867b8c7e18f2172f1905f81cf833268610042823525d1179932"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/id/firefox-49.0.tar.bz2"; locale = "id"; arch = "linux-i686"; sha512 = "6d98e771905f729de5890bbd75dc1131bfccc901638aaf362ce139c9341c417c8292e2f362adbd46ab8c8675c8f59f9a523a41b760a2f3dbadc96debeadc3a2a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/id/firefox-49.0.tar.bz2"; locale = "id"; arch = "linux-x86_64"; sha512 = "7feab0aadd4aaaa30d4a9a528ad1ce4737ee14c32df5d7c672708ec02b5f9567bf9f985d64c3064b86917de9c25fe10ce3b361c81bc5be1fba54439f287143c9"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/is/firefox-49.0.tar.bz2"; locale = "is"; arch = "linux-i686"; sha512 = "6fa9e14841a790ecb83969ab803fc90c73da1fc974af17cb0814abfc22d3d334538feb2b121b0bc976ea247f12242c7a9e0eca1a544492ae6c51376dd4f41677"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/is/firefox-49.0.tar.bz2"; locale = "is"; arch = "linux-x86_64"; sha512 = "18924e3085893b1182e60e490dee1332278bcd030ddf4ed0a05f1dc2cdd9ccafa5885b7eba6361d647e562cddfa3675d16708338073e88ad010b2cee4f8fa0c2"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/it/firefox-49.0.tar.bz2"; locale = "it"; arch = "linux-i686"; sha512 = "c67b8d3836c388c8433a779e55c23790ca906ca812b28c7d0d97261627e5c57534b8d0311ba50ae1876055745a8ad20911b482b53ab0eedf0d9767578082cbc6"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/it/firefox-49.0.tar.bz2"; locale = "it"; arch = "linux-x86_64"; sha512 = "705518c053e6af3a3b23e66b019c3ee1e51d73a75755663ccc671335f1ac3fb5b8c941a4f09dbe21abb279474d0cfb822beb115b51cd3edaf32f72154c661f21"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/ja/firefox-49.0.tar.bz2"; locale = "ja"; arch = "linux-i686"; sha512 = "585800058eb00b56bb6509886cd4f51ab9d9fb80de5c4b63f60a1b9bf5779a1b9f5310a99d746fcd8931c7eb2bb078ddd444518b624a73cbdfb535bbe38f759b"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/ja/firefox-49.0.tar.bz2"; locale = "ja"; arch = "linux-x86_64"; sha512 = "4dd92b0d0261649ffe51d20898cd633fd35efba7c8a55585a8fad9fb5b49ee6be53dea58deb0fc84ed13355406f0a663a78ad2a41cd6f1cd52b63e1c1ab8724a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/kk/firefox-49.0.tar.bz2"; locale = "kk"; arch = "linux-i686"; sha512 = "a199ed24401d183745166d82929305c742a2a1cbed24ef09c91259515564bd5e5b86e30125285766f820755e65bd8e62eddb3079092243b88a4a91e5d5ca47b4"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/kk/firefox-49.0.tar.bz2"; locale = "kk"; arch = "linux-x86_64"; sha512 = "413078071b8ca1c9ff8c971e1fc8ae7b23e93414c8eee70820fb8662a4197f4f7ac7f8db11e7aacb2a914c3846be43a2aff9ed13f18c065bf7fd467807c51a50"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/km/firefox-49.0.tar.bz2"; locale = "km"; arch = "linux-i686"; sha512 = "c0ab421db1c33783e201762a3790d807e54f789ed16c2bdd372223cf10207995d91e45f600ee9df778fa4548fa0e09ae1f432b11cf4fbb1e50b4c46c5a805bfc"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/km/firefox-49.0.tar.bz2"; locale = "km"; arch = "linux-x86_64"; sha512 = "5e50bcf2b9a70efe7ddfad9d05d4eef954c7da7d8ebad7ad6ff15b7464b46f636db49612f5d42294fff4e8225e8919934253f6acf4ffe4ad5967c75a6ba33be9"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/kn/firefox-49.0.tar.bz2"; locale = "kn"; arch = "linux-i686"; sha512 = "123bffa9583f8e5db3e94668baafb581aa5af023b3ca646e052360761b46be086b128a5a3c7b518f38bb9c57dc49df82ad9e88caf289655609708735421a4490"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/kn/firefox-49.0.tar.bz2"; locale = "kn"; arch = "linux-x86_64"; sha512 = "06b7bc1716f64c84f580e62051e437129624c02d6c5def9a4fa8b3489f6302e263e977743731ccf123a1eecc70d1cb4ab6a83cf0ec80fdaf82d4d11421ec3b31"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/ko/firefox-49.0.tar.bz2"; locale = "ko"; arch = "linux-i686"; sha512 = "bf8ceaaa462c253fbdfff2d57feba1fb649d74e7ade09f9e6120597ecd7e7bbabcae6d32da09764ed660d173f8f28eef993366876928145947a1befaeb564597"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/ko/firefox-49.0.tar.bz2"; locale = "ko"; arch = "linux-x86_64"; sha512 = "e3dd9441bc01aca97ab96763ce086c1c52b33781fdb90083431c15a5a057a5e51092cd79adbc10793d6159dec30d72704577e1dfebc68bb02f7182645a38528d"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/lij/firefox-49.0.tar.bz2"; locale = "lij"; arch = "linux-i686"; sha512 = "e47d12ed8959ab76c670e98fdee111e9a1897ca58a82730239ce1544c24d0149a40066666da74fd941b6653d19d65f75b7064391fd45a47d4926d6f4d3a6a771"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/lij/firefox-49.0.tar.bz2"; locale = "lij"; arch = "linux-x86_64"; sha512 = "81521acf4cc49a3e4dc7c4af58b7f048a949d170b95789001bf5cc02cade557042cce3b5243927e28c4c2bfebccaf1e4667bf0ce42871a51475baec2dc116fd4"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/lt/firefox-49.0.tar.bz2"; locale = "lt"; arch = "linux-i686"; sha512 = "2c9b2df1e811ecb5488ddc012c7c408b067901ad6329bfd6fa0838e7cccdb63eaf3c7bbf9ea5be5ff2f03aae8acf6b62612a90126209bbfece59a00b41a73598"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/lt/firefox-49.0.tar.bz2"; locale = "lt"; arch = "linux-x86_64"; sha512 = "587ae06c7639043ea347ef68bc1b143baf0d507d1e98ab0b5bcf5d3f6ae364c3d77d2855550ebf6f63f972fecebc9d7bd05eebe4227bde512f9b2a4c72f4d0a4"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/lv/firefox-49.0.tar.bz2"; locale = "lv"; arch = "linux-i686"; sha512 = "833a69b97e5f74ef1829ae80a91dd6219b20918b5a8e0faa272bb1defdda1704a4e17e21892f15d606d74d644a4506196b83b33000f8ef8697aeef85c4f5315e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/lv/firefox-49.0.tar.bz2"; locale = "lv"; arch = "linux-x86_64"; sha512 = "059d16aa412e31eb6453002b46a26384b125aaa1d212a22747ad465f6ccdc2cabfaef88a63479a04878f6c662ef45da0caed62b8e0c5a4cb8bf5037a820b34c5"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/mai/firefox-49.0.tar.bz2"; locale = "mai"; arch = "linux-i686"; sha512 = "df520edb25360d686cef1d8eb3c3566581a2f71e2b6a6119e2d6eed7c2004d3193d1e2784d3ae575ee5f750956f8eb83558d5793786abcf075ca991e78a610ea"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/mai/firefox-49.0.tar.bz2"; locale = "mai"; arch = "linux-x86_64"; sha512 = "6562f84949698c920b220982a32e04a6686a4a3690e97db835e0a648952035217f49e0f7d4c8441cf31130e80a952bdda986b7d943f4b5cdbead9ab6c316a0e6"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/mk/firefox-49.0.tar.bz2"; locale = "mk"; arch = "linux-i686"; sha512 = "3db4b5257edbf0f03585f7fe7ac0d2ddf269d2fc2c4ccb6cb17f62b61e4c152c02b54a5ae32cfdeb1f6eafba82a3db44ec1c8f82de5187226ded7ee2f6a0e442"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/mk/firefox-49.0.tar.bz2"; locale = "mk"; arch = "linux-x86_64"; sha512 = "4a09dd37f58904b1b5790dc23d7a81caa34e69bb663b7946ae9a7bba9d139696ce14b662ecdadc453a0021f33df90503110685b59f4bde528b53d8fa4ce68fd8"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/ml/firefox-49.0.tar.bz2"; locale = "ml"; arch = "linux-i686"; sha512 = "39d7b2342c9a2dfe07a643e0f15b6f0368c331d1576f075d6e864122f91bba8ad8af43619fdfd1cc880337267a7bf0e885879e60cee22dc3d4e4cd8c23713bd1"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/ml/firefox-49.0.tar.bz2"; locale = "ml"; arch = "linux-x86_64"; sha512 = "2a0d77e1e542b6a6a32c4cb122400b1b1023111cf234bbaf8e0d7c23e572283e163142b7de7c35108a2098e88352a31b118ed6914d07a832b8d155297cc317b0"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/mr/firefox-49.0.tar.bz2"; locale = "mr"; arch = "linux-i686"; sha512 = "ccdbdeefd26a0a6e005028976d0549a22fde6ce5c054806c15aba6447595785789eec0365d3a48712f2077e834b68e46ae6ea085ca776a9cb6b5bf326929b0d5"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/mr/firefox-49.0.tar.bz2"; locale = "mr"; arch = "linux-x86_64"; sha512 = "a5053f31dc8ea124756933ecc79870887d89fde3c6bfe0aee4d930a778edac865d3a929d2afbb714629ec77717aa1bba19d7647ddd3784951dd4510d76dc95d4"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/ms/firefox-49.0.tar.bz2"; locale = "ms"; arch = "linux-i686"; sha512 = "83b325c1c175dd01b3a04f35533e6adb0b82a5629a1be4e560a2eb65bc705c3d4e762db9fe8faa59aeb02cd55eeb95f1f587fca555ea1c5f5e353a6fb8edd550"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/ms/firefox-49.0.tar.bz2"; locale = "ms"; arch = "linux-x86_64"; sha512 = "674ac356543ffe310e0adae210ca8f01f287130eab80a610428ba854bce781c3fb281f6a2d2ce540acf66a650de3b9f960f1a7a0606c93576f0f02f5a1179865"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/nb-NO/firefox-49.0.tar.bz2"; locale = "nb-NO"; arch = "linux-i686"; sha512 = "8efba2a1704c6c37fd91776d40f702aa9fc1951dae23aa164d8dc50cc14e22e047ac88f93a5090f15782fab37be1c0d1448ccf641e1426313bfd013488585da7"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/nb-NO/firefox-49.0.tar.bz2"; locale = "nb-NO"; arch = "linux-x86_64"; sha512 = "799179660bc918c5fb0c9781581ed0dac0ec7932dbf897fbb632a1fc8e7b310161b6d0d13d34d6259380e51be726e4afc1875abf3ae4a2a3bbc3454711f503cb"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/nl/firefox-49.0.tar.bz2"; locale = "nl"; arch = "linux-i686"; sha512 = "d5ae51a144176a1748c3d7060d6e81e71975faf8ce02daefc53f087524e6afbc101c16e32fca2568f38d438cb748cd7194d64a6e89c6ceaab00d3adfff154ea8"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/nl/firefox-49.0.tar.bz2"; locale = "nl"; arch = "linux-x86_64"; sha512 = "ee514f354a05630ac3135afdc668d59780626ab58e01f88d4d60effad71b8772f5bbced8fd2616e53236d75a32bb9ab7c187c399942f1d3c58fe7cdc7449f715"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/nn-NO/firefox-49.0.tar.bz2"; locale = "nn-NO"; arch = "linux-i686"; sha512 = "6f4c1959d9fd6d793908ca790b74c96f609167211aeb814ce630c0a57842c5d1a22e67697e71871cc9e04a2bb1b4c72603ede8cbcbade3702a07e24831b9bfbd"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/nn-NO/firefox-49.0.tar.bz2"; locale = "nn-NO"; arch = "linux-x86_64"; sha512 = "5159f3b060724bbdbc7f7575955d1143eda0d7e38eb4ed7efa29e82908311a351a4597f3ac374023574ec8021a1ea26a439379357eee5710aab6ff9b6e59cf39"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/or/firefox-49.0.tar.bz2"; locale = "or"; arch = "linux-i686"; sha512 = "a2057b3d615c61075a1667ac3b55fde78f8e037f6b67496faf7590067b0b4192065af8818b189f0eedf4c0a22e9cc6a0e35095cfc2f832168dadd174fa0b0cfa"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/or/firefox-49.0.tar.bz2"; locale = "or"; arch = "linux-x86_64"; sha512 = "e109c47b21d7dd4f18fb728f2f20322cfaa26574e43be5bc8b100fbc6272a8117ea00575bda525fe2876415e4127393882c41a252786f9857346b732255981c0"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/pa-IN/firefox-49.0.tar.bz2"; locale = "pa-IN"; arch = "linux-i686"; sha512 = "54dfeaf8cf5ae829f802e985ec4b4ccf12bdc967df9ce5e35bd19b4cbb932fffb425127519703d576ba58ede507f97d609caf2168be1159acec9aadaf393f24f"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/pa-IN/firefox-49.0.tar.bz2"; locale = "pa-IN"; arch = "linux-x86_64"; sha512 = "4abd39707f2fc415b12a9041e1763978d90ddfbb167fd7ac901002a155e5b82f7c9299e446aa4de222e35f894b29a51b25b0ce0803ec54480788a52b9740679d"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/pl/firefox-49.0.tar.bz2"; locale = "pl"; arch = "linux-i686"; sha512 = "df54680a948595d2a889c5d92e321f64161081a0618bf9227593ba22db57b9dd639e245637d5a2473da7dec46a81487720ce8651963223ac368f1cd52504fe06"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/pl/firefox-49.0.tar.bz2"; locale = "pl"; arch = "linux-x86_64"; sha512 = "2230bc383cdad5d6ecdbab7f2890d511420d89bd4de3b52f987c1d62c81153b8ce47ecf25f74c210572c50f8ac90f289f235d95df14c69bbb16dc5a817c146b8"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/pt-BR/firefox-49.0.tar.bz2"; locale = "pt-BR"; arch = "linux-i686"; sha512 = "c5155061326efd963a43d44add6644c42ef1b84fb07e0ffaa8e9f2d8b5f213d614ccea04d8251435aac6c88523e759449e7b91c49317fd19380c33d39572ab4c"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/pt-BR/firefox-49.0.tar.bz2"; locale = "pt-BR"; arch = "linux-x86_64"; sha512 = "b2757aaba8b0078b23a9e8c12c26ee2699a93e19029deeef37809086e57d23ac4c58338268d814774a6c8aa2c727efbb12205256795c5e19ca9ebe5b1cfb59cc"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/pt-PT/firefox-49.0.tar.bz2"; locale = "pt-PT"; arch = "linux-i686"; sha512 = "e3c6728add0ed5a320da8abfec1dd2bf63952e38a01f71601bc882789be771423fdf5625c35c9b4c0d278c0c3ea646e0409b09596f74f16a6397568524815b8d"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/pt-PT/firefox-49.0.tar.bz2"; locale = "pt-PT"; arch = "linux-x86_64"; sha512 = "8763f5917f2945536524af90916301e94ec60ec7cf1e5d3d128e9c72f01f25924d34f65e48708cd2a9aafe9f3a4d4beac26d83e8803b7e2bb3c6eaf630dfeda5"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/rm/firefox-49.0.tar.bz2"; locale = "rm"; arch = "linux-i686"; sha512 = "ed1285152ef25a0471846f1aef7785a7958246d078cf78617e543de851d0b1722964b0428a3216d7d4feb40a8c2b76faf9802ed7c278a95592f252897415f4f7"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/rm/firefox-49.0.tar.bz2"; locale = "rm"; arch = "linux-x86_64"; sha512 = "f7d042a502a7c7cbe4af94e3649170cbcc52d3d925ff6158245aa60935fd09ebd743a29edee2b78908232e0e98cc1a1c40a50c6e19b6ca037c0b2f6249f39e60"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/ro/firefox-49.0.tar.bz2"; locale = "ro"; arch = "linux-i686"; sha512 = "2dc4658d7b9aad11ee14a036db8e6171c5a912f93ed24e94b951c188f418eb7180e4621ad0d540eb9878ae8664f202287e09aa3636eaa1afc2cbdcf7606e6232"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/ro/firefox-49.0.tar.bz2"; locale = "ro"; arch = "linux-x86_64"; sha512 = "b5643df75ab40c4830afdc88d010e50c0c2fb7b9560caf985c80d84a0744b47fcc08f5d3dfa3a45bfc55f4ec22adf49e9cfe9513fa3d645887b813a0ae8bea4e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/ru/firefox-49.0.tar.bz2"; locale = "ru"; arch = "linux-i686"; sha512 = "b74c8e4e82e113b07f901d66108e505010087f8a44664b172af8625bd622dedd178a94a9391d29af22347f309cc8d455cfc4392d1bdf7fefb2dfd7bc35ccc3fc"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/ru/firefox-49.0.tar.bz2"; locale = "ru"; arch = "linux-x86_64"; sha512 = "eae3cf9a4588f99ff93d6ab08943872bdc4b215f1442aa1dd5d2ba9f1866264b767753a84de033e0979f24518876b536f8476840523920a7a1e1a94779080e29"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/si/firefox-49.0.tar.bz2"; locale = "si"; arch = "linux-i686"; sha512 = "69b3282ddd9b4cc57775cf1b13bfae3dcb7efe6c04f5279bb2d055ddeac0a008b05bbc82e12768521c075b83a8a7c37b8ec8d9ae01b022cea309b7155642495c"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/si/firefox-49.0.tar.bz2"; locale = "si"; arch = "linux-x86_64"; sha512 = "fee048d1f5a743f5c9ec01241b87ed3c1c5c725423348b29bc76eb2ff9b23ab39b9fc5374e82b43412efe6e3b5a10cbe8b559b1c2b3289ae763901032c877496"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/sk/firefox-49.0.tar.bz2"; locale = "sk"; arch = "linux-i686"; sha512 = "ebad91e8633219cd7a5fe14712c83b8ad5e8931d201f42c67d61d955293de1adc836eff993450acd6df02211b7219cd2f4e274ecc515d6e422f77cbff4245118"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/sk/firefox-49.0.tar.bz2"; locale = "sk"; arch = "linux-x86_64"; sha512 = "b02a2ff848f6da677ae77d873e3d2ad77b6c650efbf44b967a1e2b704bb813875ffb39be9f7fbc1a39ac31060a6214266c4649c6e665b24a53c23c3e6b126258"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/sl/firefox-49.0.tar.bz2"; locale = "sl"; arch = "linux-i686"; sha512 = "de23536009e3d11816304f3bfc49d7ba77c4427907ae91a337e41ddb301cd188ff9802bbb42d6505e0b559d7107a2f150675e7c5ec53e9f3c689daee6a100c3c"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/sl/firefox-49.0.tar.bz2"; locale = "sl"; arch = "linux-x86_64"; sha512 = "ee47a01e1673eca4101c69f67e639ad6dba6272502affa1c5af3081cf4bc8ee9cd3156006c14f8eccb687139913c61ef582aa567e6d35ff8630a075072e9b6fb"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/son/firefox-49.0.tar.bz2"; locale = "son"; arch = "linux-i686"; sha512 = "de572494fd7ec09ab71d6b65e51fa2bf16934ed26fc7a21e74d55f3b6309075d830b6c41bd37887ebcdf9eed46a0e2093a853d8b4733bf112b4d06582afc239f"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/son/firefox-49.0.tar.bz2"; locale = "son"; arch = "linux-x86_64"; sha512 = "bae6e78ca201f0ba6f3c882cee89fcb5c5a46149d54d114196d689bb5b26e785fe3a3ff0a659a10d140e5530de847ea4d775cfc919d8e36be1ff21f0452f585f"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/sq/firefox-49.0.tar.bz2"; locale = "sq"; arch = "linux-i686"; sha512 = "c1a3828372703a06ff71752de271a5e6e999be5be2cc7bbf3ae7b1c23737035a3cb0685113806d98f96e62873818ee2d8a113822966499c1f54578e0570105a9"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/sq/firefox-49.0.tar.bz2"; locale = "sq"; arch = "linux-x86_64"; sha512 = "491fea89f4d662061d1ff4b7a91756aceaa1bf336733d68f2ec775eff0505a98397ac7eabc9e411d38e3b96298a7c7f948b389b4574a277e490d364416dce010"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/sr/firefox-49.0.tar.bz2"; locale = "sr"; arch = "linux-i686"; sha512 = "e7ef9c19f485a50b46a2944283e3d2e46c82c68e350786e3bf31720367a682464e096ec7b3045f740c8af981be76be94d1c8965a1f10cf5271be4328edfb5a9a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/sr/firefox-49.0.tar.bz2"; locale = "sr"; arch = "linux-x86_64"; sha512 = "7fbf31358db27264452544742c5589e8cc57d0b2998748545d63ad8f88d6e6d43f358cc72fbde6004edf9370a32b7d5e53d7b6aa831c86271742ad007e9e3304"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/sv-SE/firefox-49.0.tar.bz2"; locale = "sv-SE"; arch = "linux-i686"; sha512 = "cde0b52a9b03c2673a13cc330c8d47308d84e43d7e70183cacd53252572b25c97d932fabed06dddfc395a8a192717a28f5b8fa175f857d90209971462ab45a09"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/sv-SE/firefox-49.0.tar.bz2"; locale = "sv-SE"; arch = "linux-x86_64"; sha512 = "c2a4297b7f096b187fbfd59166e10182090eed5a9063d90ddad591fd0b235ae145f22829a7d36176f8c18d760c177882131749eb29d76ddeda062f17da07f9af"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/ta/firefox-49.0.tar.bz2"; locale = "ta"; arch = "linux-i686"; sha512 = "d8e7dc079889db15438a8e59ee42b78ff818014cc03136efa9a69a238f36a3c0db3fec073ba156280e427c8d67ac54f606eac390854337edcf6ecc751cbb8695"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/ta/firefox-49.0.tar.bz2"; locale = "ta"; arch = "linux-x86_64"; sha512 = "881280f9799000fbfe664c7b67ced2bea2d9c99400ae7aa5a5e8274472306f5d6ca030d7eb7ce060c98c308d887af1bc00558c48cc1915ada7b43940d955c224"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/te/firefox-49.0.tar.bz2"; locale = "te"; arch = "linux-i686"; sha512 = "f628a62da53b356b0543b59ecb8ac3eab72956de499761fbec7e93c1c415929f0c0571c274c16a5412c69c709ef1c82b6f35bbee2d48286c092ad6b7fccf4e8c"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/te/firefox-49.0.tar.bz2"; locale = "te"; arch = "linux-x86_64"; sha512 = "a3f2bc14ac0e3961ed75ad5c221374a91373a637cea05e023c87c2b06bc2beb63ab7470c1bf6da95304b5afe615ef05c0843cc508ff491b549e73a9e65d17d59"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/th/firefox-49.0.tar.bz2"; locale = "th"; arch = "linux-i686"; sha512 = "cf5196484a6408a3ba27f440909492c542305fb47dc463e5e54801f264efb274916484bb7b5850c34eb6fd3937a484fe3800d807e40c0d1a3bc902040fabf1b1"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/th/firefox-49.0.tar.bz2"; locale = "th"; arch = "linux-x86_64"; sha512 = "8f70f70faaeeba6cff2326dba2b43f4e80924e7f11666ede7474e896dbba42cfba650b0e9328d2b432474b06fc0ec738edaacf2b17e8acf549d5d7b590f75f3c"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/tr/firefox-49.0.tar.bz2"; locale = "tr"; arch = "linux-i686"; sha512 = "1af9ff1d8376ec7eba385ac88d17bea0cdf02885b88d501f77b40d5402f9d918ed42cb8e4ce2e33610eb3f57ca5a26850acf6cfe83954bec205ee33a6d74fc31"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/tr/firefox-49.0.tar.bz2"; locale = "tr"; arch = "linux-x86_64"; sha512 = "9a8ead1fdd4cf3cd49c8e3d626cc721ed79d949b91a9646157360c4d74381ccc6e32118adbae46ee060d8e0b7e5eaccdfad9af42beea216c1bdcb081a14e91a6"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/uk/firefox-49.0.tar.bz2"; locale = "uk"; arch = "linux-i686"; sha512 = "c105b652cafd9baf5b8d3f8ebcd64ad1ace6da89d9746ee65fbee00891b2a4ad821c9a181cf1d6ddeb3b75dca08cace3b7e74f1e357aac5a6f08960499efdd4d"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/uk/firefox-49.0.tar.bz2"; locale = "uk"; arch = "linux-x86_64"; sha512 = "01eeb3f62f2ee7377811aa38ec69426fbbb0fccac23e91d0202a7c35ede59eeab1d534fce6dfa7c51fb083626fbc9b3cfba48793c7d0fe625e1163d14fccf36a"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/uz/firefox-49.0.tar.bz2"; locale = "uz"; arch = "linux-i686"; sha512 = "38259f998ff94528b1f466cfdc332f0fcd10b3ec4da3e0f88a5b3966eb7fc703763f2b9e4fabfc71ec286e9349d47c8c929b036f539dfef833411c6bae32d6e3"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/uz/firefox-49.0.tar.bz2"; locale = "uz"; arch = "linux-x86_64"; sha512 = "dfdaa4540b742911226034fa75127c5de88ee3e97e10e7c29514df1331e5d8e3d1b8798f7050083c18a71838c6210343d6e63343ce6964ace885ac8172438314"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/vi/firefox-49.0.tar.bz2"; locale = "vi"; arch = "linux-i686"; sha512 = "634f54f7d54f1b47a401b319eb8053ab08e43711650117a0155757280b6824eafa9d9f9ab6887cddce1d9c8190f949194d93cd9741d76bdf3df5d82a27b767d9"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/vi/firefox-49.0.tar.bz2"; locale = "vi"; arch = "linux-x86_64"; sha512 = "b9cfd74289669d4d2ee49e216ae0eed15aa2377d54c632ec0d15f9799867a0bf24ad2efe17047fe63e3fdf2d9e486c33c1d96926872106053a36968e5f546714"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/xh/firefox-49.0.tar.bz2"; locale = "xh"; arch = "linux-i686"; sha512 = "26c6bf5c9d2d1007d93d95351e3f9bd7ea246cee6b40ea77f7e26087d8612f709a01829a7e5bcfff8bdee4f7874c36966ae229b86a31f74c724deda875221de5"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/xh/firefox-49.0.tar.bz2"; locale = "xh"; arch = "linux-x86_64"; sha512 = "153e6a2c1644e00bdc950f092f99c515aa079dbafdbd618287639f00481af22a4acaca7e8d4aeb0e78e004eaf17a11911425ce8296b67298b4b6bfafd2d4dc23"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/zh-CN/firefox-49.0.tar.bz2"; locale = "zh-CN"; arch = "linux-i686"; sha512 = "a24bc352a98315fab4a64cb1078b35b1531b559b3f044cb349a2d4f52e4ee54b27510e8b0c9e3aa2d891dcb17036e1ab057bf3b6395cd73147314e413894d90e"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/zh-CN/firefox-49.0.tar.bz2"; locale = "zh-CN"; arch = "linux-x86_64"; sha512 = "a9b26841eceda1c9cea02f3b0b4707d8c79ad78c26fecbd5d6a69fdcdbbf087d487252934b2e6f02f89c29644f241beba1a555b67d22a396e60db8c5e21b9512"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-i686/zh-TW/firefox-49.0.tar.bz2"; locale = "zh-TW"; arch = "linux-i686"; sha512 = "a81cfb6d197d99476dd9d4386df40a7b507d9fdbf6c8966aa20bed2537c7689c3ae0e09f5053f66b9e3d5f4a462157d4d09de371c31cecc5c64a8c6e1501ffd5"; }
|
||||
{ url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/49.0/linux-x86_64/zh-TW/firefox-49.0.tar.bz2"; locale = "zh-TW"; arch = "linux-x86_64"; sha512 = "2c98d22cfe74847143601acc36adceba62d93ca90adc8c2b8044bbeb101ef39f7ddc19210cd0905542cc8205cd2dfaf9709fdd3d6596113b9ca1eca522ebd7eb"; }
|
||||
];
|
||||
}
|
||||
|
@ -141,14 +141,14 @@ in {
|
||||
|
||||
firefox-unwrapped = common {
|
||||
pname = "firefox";
|
||||
version = "48.0.2";
|
||||
sha512 = "d5addb0cd01e2aeb0fd9387800e82e385f3986716887840322d261d772a442f6fdb1d910cd53f2373f0fb82ed0b2a45356ac83f3ef230e14a2b9db8999ad8a4e";
|
||||
version = "49.0";
|
||||
sha512 = "9431f86dec5587131699ae57ae428be168e4d6c7d1d48df643c10540e8e18bc5eadfcd08bb204950be611c87d35d8a40aa8ece454b7dfa3992239639c2d688a9";
|
||||
};
|
||||
|
||||
firefox-esr-unwrapped = common {
|
||||
pname = "firefox-esr";
|
||||
version = "45.3.0esr";
|
||||
sha512 = "ee618aec579625122c3e511a7ac83ac4db9718f5695b6fe6250717602178bae9bb7e5ebe8764f4d33ecf44d3db13abfed0d24c1ec71e64a1087fb6d5a579b0c0";
|
||||
version = "45.4.0esr";
|
||||
sha512 = "2955e02f829a10186a8b22320fb97d4b0fc2b45721fcffa6295653fd760d516ae72b5656547685ba1e0699b381e28044996d9ee12a8738842b4e6b8acd296715";
|
||||
};
|
||||
|
||||
}
|
||||
|
@ -10,17 +10,18 @@
|
||||
}:
|
||||
|
||||
let
|
||||
version = "1.3";
|
||||
build = "551.30-1";
|
||||
version = "1.4";
|
||||
build = "589.29-1";
|
||||
fullVersion = "stable_${version}.${build}";
|
||||
|
||||
info = if stdenv.is64bit then {
|
||||
arch = "amd64";
|
||||
sha256 = "89d0630c9df56cfb12a87f23430179f6d14a8c57fb029d1c8d28ab06c98b7640";
|
||||
sha256 = "14sb58qrqnqcpkzacwnwfln558p018zargppxq21p5ic8s92v1g6";
|
||||
} else {
|
||||
arch = "i386";
|
||||
sha256 = "0a7e07833f5359e38516222767da63edeca92177cbb6d4ef4946a6ef7c7b2946";
|
||||
sha256 = "0c4l9ji5xlxwzcjsrvxjkx53j76y777fj6hh7plfkkanlrfkryac";
|
||||
};
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
product = "vivaldi";
|
||||
name = "${product}-${version}";
|
||||
@ -65,6 +66,17 @@ in stdenv.mkDerivation rec {
|
||||
cp -r opt "$out"
|
||||
mkdir "$out/bin"
|
||||
ln -s "$out/opt/vivaldi/vivaldi" "$out/bin/vivaldi"
|
||||
mkdir -p "$out/share"
|
||||
cp -r usr/share/{applications,xfce4} "$out"/share
|
||||
substituteInPlace "$out"/share/applications/*.desktop \
|
||||
--replace /usr/bin/vivaldi-stable "$out"/bin/vivaldi
|
||||
local d
|
||||
for d in 16 22 24 32 48 64 128 256; do
|
||||
mkdir -p "$out"/share/icons/hicolor/''${d}x''${d}/apps
|
||||
ln -s \
|
||||
"$out"/opt/vivaldi/product_logo_''${d}.png \
|
||||
"$out"/share/icons/hicolor/''${d}x''${d}/apps/vivaldi.png
|
||||
done
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
buildGoPackage rec {
|
||||
name = "terraform-${version}";
|
||||
version = "0.7.2";
|
||||
version = "0.7.4";
|
||||
rev = "v${version}";
|
||||
|
||||
goPackagePath = "github.com/hashicorp/terraform";
|
||||
@ -11,7 +11,7 @@ buildGoPackage rec {
|
||||
inherit rev;
|
||||
owner = "hashicorp";
|
||||
repo = "terraform";
|
||||
sha256 = "002jg4iwg4g4hkg4hm3szlkyagqzipln3l44b8azh1a7vh1m8cp2";
|
||||
sha256 = "1mj9kk9awhfv717xf9d8nc35xva8wqhbgls7cbgycg550cc2hf85";
|
||||
};
|
||||
|
||||
postInstall = ''
|
||||
@ -27,5 +27,6 @@ buildGoPackage rec {
|
||||
description = "Tool for building, changing, and versioning infrastructure";
|
||||
homepage = "https://www.terraform.io/";
|
||||
license = licenses.mpl20;
|
||||
maintainers = with maintainers; [ zimbatm ];
|
||||
};
|
||||
}
|
||||
|
@ -2,12 +2,12 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "purple-hangouts-hg-${version}";
|
||||
version = "2016-07-17";
|
||||
version = "2016-08-31";
|
||||
|
||||
src = fetchhg {
|
||||
url = "https://bitbucket.org/EionRobb/purple-hangouts/";
|
||||
rev = "2c60a5e";
|
||||
sha256 = "1m8132ywg9982q3yiqgy1hzm61wkgi590425pp8yk1q03yipd6zb";
|
||||
rev = "1c0286e48e92";
|
||||
sha256 = "0iv1isa8brm89nvmwrvxjm5ymx4svqrz3gf5yciqzf6kpc82gnxr";
|
||||
};
|
||||
|
||||
buildInputs = [ pidgin glib json_glib protobuf protobufc ];
|
||||
|
@ -2,12 +2,12 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
version = "0.8.19";
|
||||
version = "0.8.20";
|
||||
name = "irssi-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
urls = [ "https://github.com/irssi/irssi/releases/download/${version}/${name}.tar.gz" ];
|
||||
sha256 = "0ny8dry1b8siyc5glaxcwzng0d2mxnwxk74v64f8xplqhrvlnkzy";
|
||||
sha256 = "0riz2wsdcs5hx5rwynm99fi01973lfrss21y8qy30dw2m9v0zqpm";
|
||||
};
|
||||
|
||||
buildInputs = [ pkgconfig ncurses glib openssl perl libintlOrEmpty ];
|
||||
|
@ -36,7 +36,8 @@ stdenv.mkDerivation {
|
||||
qmakeFlags="$qmakeFlags DESTDIR=$out"
|
||||
'';
|
||||
|
||||
enableParallelBuilding = true;
|
||||
# gui/settings/PluginsPage.h:25:28: fatal error: ui_PluginsPage.h: No such file or directory
|
||||
enableParallelBuilding = false;
|
||||
|
||||
postInstall = ''
|
||||
mkdir -p $out/bin
|
||||
|
@ -28,25 +28,17 @@ let
|
||||
lib = stdenv.lib;
|
||||
langsSpaces = lib.concatStringsSep " " langs;
|
||||
|
||||
fetchThirdParty = {name, md5, brief, subDir ? ""}: fetchurl {
|
||||
inherit name md5;
|
||||
url = if brief then
|
||||
"http://dev-www.libreoffice.org/src/${subDir}${name}"
|
||||
else
|
||||
"http://dev-www.libreoffice.org/src/${subDir}${md5}-${name}";
|
||||
};
|
||||
|
||||
fetchSrc = {name, sha256}: fetchurl {
|
||||
url = "http://download.documentfoundation.org/libreoffice/src/${subdir}/libreoffice-${name}-${version}.tar.xz";
|
||||
inherit sha256;
|
||||
};
|
||||
|
||||
srcs = {
|
||||
third_party = [ (fetchurl rec {
|
||||
third_party = [ (let md5 = "185d60944ea767075d27247c3162b3bc"; in fetchurl rec {
|
||||
url = "http://dev-www.libreoffice.org/extern/${md5}-${name}";
|
||||
md5 = "185d60944ea767075d27247c3162b3bc";
|
||||
sha256 = "1infwvv1p6i21scywrldsxs22f62x85mns4iq8h6vr6vlx3fdzga";
|
||||
name = "unowinreg.dll";
|
||||
}) ] ++ (map fetchThirdParty (import ./libreoffice-srcs.nix));
|
||||
}) ] ++ (map (x : ((fetchurl {inherit (x) url sha256 name;}) // {inherit (x) md5name md5;})) (import ./libreoffice-srcs.nix));
|
||||
|
||||
translations = fetchSrc {
|
||||
name = "translations";
|
||||
@ -84,7 +76,7 @@ in stdenv.mkDerivation rec {
|
||||
|
||||
postUnpack = ''
|
||||
mkdir -v $sourceRoot/src
|
||||
'' + (stdenv.lib.concatMapStrings (f: "ln -sfv ${f} $sourceRoot/src/${f.outputHash}-${f.name}\nln -sfv ${f} $sourceRoot/src/${f.name}\n") srcs.third_party)
|
||||
'' + (stdenv.lib.concatMapStrings (f: "ln -sfv ${f} $sourceRoot/src/${f.md5 or f.outputHash}-${f.name}\nln -sfv ${f} $sourceRoot/src/${f.name}\n") srcs.third_party)
|
||||
+ ''
|
||||
ln -sv ${srcs.help} $sourceRoot/src/${srcs.help.name}
|
||||
ln -svf ${srcs.translations} $sourceRoot/src/${srcs.translations.name}
|
||||
|
@ -8,28 +8,66 @@ of the input file, and writes the result to stdout.
|
||||
|
||||
todo - Ideally we would move as much as possible into derivation dependencies.
|
||||
"""
|
||||
import collections, itertools, json, re, sys, os
|
||||
import collections, itertools, json, re, subprocess, sys, os
|
||||
|
||||
def main():
|
||||
|
||||
packages = list(get_packages())
|
||||
|
||||
for x in packages:
|
||||
print(x, file=sys.stderr)
|
||||
|
||||
print('[')
|
||||
|
||||
for x in get_packages():
|
||||
for x in packages:
|
||||
|
||||
print('{')
|
||||
md5 = x['md5']
|
||||
tarball = x['tarball']
|
||||
|
||||
print(' name = "{}";'.format(x['tarball']))
|
||||
print(' md5 = "{}";'.format(x['md5']))
|
||||
print(' brief = {};'.format('true' if x['brief'] else 'false'))
|
||||
url = construct_url(x)
|
||||
print('url: {}'.format(url), file=sys.stderr)
|
||||
|
||||
if 'subdir' in x:
|
||||
print(' subDir = "{}";'.format(x['subdir']))
|
||||
path = download(url, tarball, md5)
|
||||
print('path: {}'.format(path), file=sys.stderr)
|
||||
|
||||
print('}')
|
||||
sha256 = get_sha256(path)
|
||||
print('sha256: {}'.format(sha256), file=sys.stderr)
|
||||
|
||||
print(' {')
|
||||
print(' name = "{}";'.format(tarball))
|
||||
print(' url = "{}";'.format(url))
|
||||
print(' sha256 = "{}";'.format(sha256))
|
||||
print(' md5 = "{}";'.format(md5))
|
||||
print(' md5name = "{}-{}";'.format(md5,tarball))
|
||||
print(' }')
|
||||
|
||||
print(']')
|
||||
|
||||
|
||||
def construct_url(x):
|
||||
if x['brief']:
|
||||
return 'http://dev-www.libreoffice.org/src/{}{}'.format(
|
||||
x.get('subdir', ''), x['tarball'])
|
||||
else:
|
||||
return 'http://dev-www.libreoffice.org/src/{}{}-{}'.format(
|
||||
x.get('subdir', ''), x['md5'], x['tarball'])
|
||||
|
||||
|
||||
def download(url, name, md5):
|
||||
cmd = ['nix-prefetch-url', url, md5, '--print-path',
|
||||
'--type', 'md5', '--name', name]
|
||||
proc = subprocess.run(cmd, stdout=subprocess.PIPE, check=True,
|
||||
universal_newlines=True)
|
||||
return proc.stdout.split('\n')[1].strip()
|
||||
|
||||
|
||||
def get_sha256(path):
|
||||
cmd = ['sha256sum', path]
|
||||
proc = subprocess.run(cmd, stdout=subprocess.PIPE, check=True,
|
||||
universal_newlines=True)
|
||||
return proc.stdout.split(' ')[0].strip()
|
||||
|
||||
|
||||
def get_packages():
|
||||
"""
|
||||
All of the package data: What's parsed from download.lst,
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -28,25 +28,17 @@ let
|
||||
lib = stdenv.lib;
|
||||
langsSpaces = lib.concatStringsSep " " langs;
|
||||
|
||||
fetchThirdParty = {name, md5, brief, subDir ? ""}: fetchurl {
|
||||
inherit name md5;
|
||||
url = if brief then
|
||||
"http://dev-www.libreoffice.org/src/${subDir}${name}"
|
||||
else
|
||||
"http://dev-www.libreoffice.org/src/${subDir}${md5}-${name}";
|
||||
};
|
||||
|
||||
fetchSrc = {name, sha256}: fetchurl {
|
||||
url = "http://download.documentfoundation.org/libreoffice/src/${subdir}/libreoffice-${name}-${version}.tar.xz";
|
||||
inherit sha256;
|
||||
};
|
||||
|
||||
srcs = {
|
||||
third_party = [ (fetchurl rec {
|
||||
third_party = [ (let md5 = "185d60944ea767075d27247c3162b3bc"; in fetchurl rec {
|
||||
url = "http://dev-www.libreoffice.org/extern/${md5}-${name}";
|
||||
md5 = "185d60944ea767075d27247c3162b3bc";
|
||||
sha256 = "1infwvv1p6i21scywrldsxs22f62x85mns4iq8h6vr6vlx3fdzga";
|
||||
name = "unowinreg.dll";
|
||||
}) ] ++ (map fetchThirdParty (import ./libreoffice-srcs-still.nix));
|
||||
}) ] ++ (map (x : ((fetchurl {inherit (x) url sha256 name;}) // {inherit (x) md5name md5;})) (import ./libreoffice-srcs-still.nix));
|
||||
|
||||
translations = fetchSrc {
|
||||
name = "translations";
|
||||
@ -94,7 +86,7 @@ in stdenv.mkDerivation rec {
|
||||
|
||||
postUnpack = ''
|
||||
mkdir -v $sourceRoot/src
|
||||
'' + (stdenv.lib.concatMapStrings (f: "ln -sfv ${f} $sourceRoot/src/${f.outputHash}-${f.name}\nln -sfv ${f} $sourceRoot/src/${f.name}\n") srcs.third_party)
|
||||
'' + (stdenv.lib.concatMapStrings (f: "ln -sfv ${f} $sourceRoot/src/${f.md5 or f.outputHash}-${f.name}\nln -sfv ${f} $sourceRoot/src/${f.name}\n") srcs.third_party)
|
||||
+ ''
|
||||
ln -sv ${srcs.help} $sourceRoot/src/${srcs.help.name}
|
||||
ln -svf ${srcs.translations} $sourceRoot/src/${srcs.translations.name}
|
||||
|
@ -16,7 +16,7 @@ stdenv.mkDerivation {
|
||||
/* program */ gpl3Plus
|
||||
/* data */ cc-by-sa-30
|
||||
];
|
||||
platforms = platforms.unix;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ vbgl ];
|
||||
};
|
||||
}
|
||||
|
@ -1,46 +1,29 @@
|
||||
{ stdenv, fetchurl, which }:
|
||||
let
|
||||
s = # Generated upstream information
|
||||
rec {
|
||||
baseName="eprover";
|
||||
version="1.9";
|
||||
name="${baseName}-${version}";
|
||||
hash="0vipapqjg0339lpc98vpvz58m6xkqrhgxylmp0hrnld4lrhmcdn4";
|
||||
url="http://wwwlehre.dhbw-stuttgart.de/~sschulz/WORK/E_DOWNLOAD/V_1.9/E.tgz";
|
||||
sha256="0vipapqjg0339lpc98vpvz58m6xkqrhgxylmp0hrnld4lrhmcdn4";
|
||||
};
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
inherit (s) name;
|
||||
stdenv.mkDerivation rec {
|
||||
name = "eprover-${version}";
|
||||
version = "1.9.1";
|
||||
|
||||
src = fetchurl {
|
||||
name = "E-${s.version}.tar.gz";
|
||||
inherit (s) url sha256;
|
||||
url = "http://wwwlehre.dhbw-stuttgart.de/~sschulz/WORK/E_DOWNLOAD/V_${version}/E.tgz";
|
||||
sha256 = "1vi977mdfqnj04m590aw4896nqzlc4c5rqadjzk86z1zvj7mqnqw";
|
||||
};
|
||||
|
||||
buildInputs = [ which ];
|
||||
|
||||
preConfigure = ''
|
||||
sed -e 's@^EXECPATH\\s.*@EXECPATH = '\$out'/bin@' \
|
||||
-e 's/^CC *= gcc$//' \
|
||||
-i Makefile.vars
|
||||
sed -e 's/ *CC *= gcc$//' -i Makefile.vars
|
||||
'';
|
||||
configureFlags = "--exec-prefix=$(out) --man-prefix=$(out)/share/man";
|
||||
|
||||
postInstall = ''
|
||||
sed -e s,EXECPATH=.\*,EXECPATH=$out/bin, -i $out/bin/eproof{,_ram}
|
||||
'';
|
||||
|
||||
buildPhase = "make install";
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
make install
|
||||
echo eproof -xAuto --tstp-in --tstp-out '"$@"' > $out/bin/eproof-tptp
|
||||
chmod a+x $out/bin/eproof-tptp
|
||||
'';
|
||||
|
||||
meta = {
|
||||
inherit (s) version;
|
||||
meta = with stdenv.lib; {
|
||||
description = "Automated theorem prover for full first-order logic with equality";
|
||||
homepage = http://www.eprover.org/;
|
||||
license = stdenv.lib.licenses.gpl2;
|
||||
maintainers = [stdenv.lib.maintainers.raskin];
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
license = licenses.gpl2;
|
||||
maintainers = with maintainers; [ raskin gebner ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
||||
|
@ -1,3 +0,0 @@
|
||||
url http://wwwlehre.dhbw-stuttgart.de/~sschulz/E/Download.html
|
||||
version_link '[.]tgz$'
|
||||
version '.*[/]V_([0-9.]+)[/].*' '\1'
|
26
pkgs/applications/science/logic/redprl/default.nix
Normal file
26
pkgs/applications/science/logic/redprl/default.nix
Normal file
@ -0,0 +1,26 @@
|
||||
{ stdenv, fetchgit, mlton }:
|
||||
stdenv.mkDerivation {
|
||||
name = "redprl-2016-09-22";
|
||||
src = fetchgit {
|
||||
url = "https://github.com/RedPRL/sml-redprl.git";
|
||||
rev = "3215faf0d494f4ac14d6e10172329a161df192c4";
|
||||
sha256 = "0pcq4q9xy34j7ziwbly4qxccpkcrl92r9y11bv6hdkbzwm1g2a77";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
buildInputs = [ mlton ];
|
||||
builder = builtins.toFile "builder.sh" ''
|
||||
source $stdenv/setup
|
||||
mkdir -p $out/bin
|
||||
cp -r $src/* .
|
||||
chmod -R +w src
|
||||
./script/mlton.sh
|
||||
mv ./bin/redprl $out/bin
|
||||
'';
|
||||
meta = {
|
||||
description = "A proof assistant for Nominal Computational Type Theory";
|
||||
homepage = "http://www.redprl.org/";
|
||||
license = stdenv.lib.licenses.mit;
|
||||
maintainers = [ stdenv.lib.maintainers.acowley ];
|
||||
platforms = stdenv.lib.platforms.unix;
|
||||
};
|
||||
}
|
@ -23,6 +23,6 @@ stdenv.mkDerivation {
|
||||
license = stdenv.lib.licenses.gpl2Plus;
|
||||
homepage = http://ecm.gforge.inria.fr/;
|
||||
maintainers = [ stdenv.lib.maintainers.roconnor ];
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
|
@ -2,12 +2,12 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "hub-${version}";
|
||||
version = "2.2.5";
|
||||
version = "2.2.8";
|
||||
|
||||
src = fetchgit {
|
||||
url = https://github.com/github/hub.git;
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "13pab3r2ngac2kljy9jb4lz3g3d6smkwydlx23ydjvyjbg2zb75r";
|
||||
sha256 = "1fv4jb9vsbkscnb79gss2mwnd1yf9jhgzw1mhimhx25xizbx1fck";
|
||||
};
|
||||
|
||||
|
||||
@ -30,9 +30,8 @@ stdenv.mkDerivation rec {
|
||||
mkdir -p "$out/share/zsh/site-functions"
|
||||
cp "etc/hub.zsh_completion" "$out/share/zsh/site-functions/_hub"
|
||||
|
||||
# Broken: https://github.com/github/hub/issues/592
|
||||
# mkdir -p "$out/etc/bash_completion.d"
|
||||
# cp "etc/hub.bash_completion.sh" "$out/etc/bash_completion.d/"
|
||||
mkdir -p "$out/etc/bash_completion.d"
|
||||
cp "etc/hub.bash_completion.sh" "$out/etc/bash_completion.d/"
|
||||
|
||||
# Should we also install provided git-hooks?
|
||||
# ?
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
let
|
||||
# if you bump version, update pkgs.tortoisehg too or ping maintainer
|
||||
version = "3.8.2";
|
||||
version = "3.9.1";
|
||||
name = "mercurial-${version}";
|
||||
inherit (pythonPackages) curses docutils hg-git dulwich python;
|
||||
in
|
||||
@ -14,7 +14,7 @@ stdenv.mkDerivation {
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://mercurial-scm.org/release/${name}.tar.gz";
|
||||
sha256 = "1zdz42znd6i7c3nf31j0k6frcs68qyniyvcad8k2a1hlarlv2y6b";
|
||||
sha256 = "0x6zjl8za6nnlbmyxng4pfrr2h77zi3wbg985262ghjyx33lypk2";
|
||||
};
|
||||
|
||||
inherit python; # pass it so that the same version can be used in hg2git
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
pythonPackages.buildPythonApplication rec {
|
||||
name = "tortoisehg-${version}";
|
||||
version = "3.8.1";
|
||||
version = "3.9.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://bitbucket.org/tortoisehg/targz/downloads/${name}.tar.gz";
|
||||
sha256 = "1v5h5yz9b360ris9p8zsdjxqvaflp9z2b6b7dfb4abn2irv3jip6";
|
||||
sha256 = "12bqvkkwkb6m5hls7gipkxbnspfrk1k6l9l0fff0wp1zajnp4pnn";
|
||||
};
|
||||
|
||||
pythonPath = with pythonPackages; [ pyqt4 mercurial qscintilla iniparse ];
|
||||
|
@ -1,12 +1,12 @@
|
||||
{stdenv, fetchurl}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "1.20141026-1";
|
||||
version = "1.20151229-1";
|
||||
name = "vcsh-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/RichiH/vcsh/archive/v${version}.tar.gz";
|
||||
sha256 = "1wgrmkygsbmk8zj88kjx9aim2fc44hh2d1a83h4mn2j714pffh33";
|
||||
sha256 = "0wgg5zz11ql2v37vby5gbqvnbs80g1q83b9qbvm8d2pqx8bsb0kn";
|
||||
};
|
||||
|
||||
phases = [ "unpackPhase" "installPhase" "fixupPhase" ];
|
||||
|
@ -22,11 +22,9 @@ stdenv.mkDerivation rec {
|
||||
nativeBuildInputs = [ pkgconfig autoconf automake gettext ruby ];
|
||||
|
||||
buildInputs = [
|
||||
expat
|
||||
file xdg_utils boost libebml zlib
|
||||
libmatroska libogg libvorbis flac
|
||||
(optional withGUI qt5.qtbase)
|
||||
];
|
||||
expat file xdg_utils boost libebml zlib libmatroska libogg
|
||||
libvorbis flac
|
||||
] ++ optional withGUI qt5.qtbase;
|
||||
|
||||
preConfigure = "./autogen.sh; patchShebangs .";
|
||||
buildPhase = "./drake -j $NIX_BUILD_CORES";
|
||||
|
30
pkgs/applications/video/streamlink/default.nix
Normal file
30
pkgs/applications/video/streamlink/default.nix
Normal file
@ -0,0 +1,30 @@
|
||||
{ stdenv, pythonPackages, fetchFromGitHub, rtmpdump }:
|
||||
|
||||
pythonPackages.buildPythonApplication rec {
|
||||
version = "1.14.0-rc1";
|
||||
name = "streamlink-${version}";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "streamlink";
|
||||
repo = "streamlink";
|
||||
rev = "ffc099b16b9a9d2c0c44081d687c50ee2e935f29";
|
||||
sha256 = "0ix2k2yd2jzcazkjjb0iczr4bv7pgx873k7bhxgb9zwplklxpw1k";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = (with pythonPackages; [ pycrypto requests2 ]) ++ [ rtmpdump ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://github.com/streamlink/streamlink;
|
||||
description = "CLI for extracting streams from various websites to video player of your choosing";
|
||||
longDescription = ''
|
||||
Streamlink is a CLI utility that pipes flash videos from online
|
||||
streaming services to a variety of video players such as VLC, or
|
||||
alternatively, a browser.
|
||||
|
||||
Streamlink is a fork of the livestreamer project.
|
||||
'';
|
||||
license = licenses.bsd2;
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.dezgeg ];
|
||||
};
|
||||
}
|
@ -12,15 +12,15 @@ let
|
||||
stage1Dir = "lib/rkt/stage1-images";
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
version = "1.14.0";
|
||||
version = "1.15.0";
|
||||
name = "rkt-${version}";
|
||||
BUILDDIR="build-${name}";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
rev = "v${version}";
|
||||
owner = "coreos";
|
||||
repo = "rkt";
|
||||
sha256 = "0wniknmsv6xml3cp6ggjlqvcpwhp4bw1dqdnbm561mchvm69zhc2";
|
||||
rev = "v${version}";
|
||||
sha256 = "0ppi6r3wr69s6ka1j9xljvq3rw2chp8syyvqcx6ijnzjbwgbwar3";
|
||||
};
|
||||
|
||||
stage1BaseImage = fetchurl {
|
||||
|
@ -9,6 +9,7 @@
|
||||
, pulseSupport ? false, libpulseaudio ? null
|
||||
, enableHardening ? false
|
||||
, headless ? false
|
||||
, patchelfUnstable # needed until 0.10 is released
|
||||
}:
|
||||
|
||||
with stdenv.lib;
|
||||
@ -48,7 +49,7 @@ in stdenv.mkDerivation {
|
||||
buildInputs =
|
||||
[ iasl dev86 libxslt libxml2 xproto libX11 libXext libXcursor libIDL
|
||||
libcap glib lvm2 python alsaLib curl libvpx pam xorriso makeself perl
|
||||
pkgconfig which libXmu libpng ]
|
||||
pkgconfig which libXmu libpng patchelfUnstable ]
|
||||
++ optional javaBindings jdk
|
||||
++ optional pythonBindings python
|
||||
++ optional pulseSupport libpulseaudio
|
||||
@ -181,9 +182,6 @@ in stdenv.mkDerivation {
|
||||
|
||||
passthru = { inherit version; /* for guest additions */ };
|
||||
|
||||
# Workaround for https://github.com/NixOS/patchelf/issues/93 (can be removed once this issue is addressed)
|
||||
dontPatchELF = true;
|
||||
|
||||
meta = {
|
||||
description = "PC emulator";
|
||||
homepage = http://www.virtualbox.org/;
|
||||
|
@ -139,5 +139,6 @@ stdenv.mkDerivation {
|
||||
license = "GPL";
|
||||
maintainers = [ lib.maintainers.sander ];
|
||||
platforms = lib.platforms.linux;
|
||||
broken = kernel.features.grsecurity or false;
|
||||
};
|
||||
}
|
||||
|
@ -2,13 +2,14 @@
|
||||
, xcbutilimage, pam, libX11, libev, cairo, libxkbcommon, libxkbfile }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
rev = "63a4c23ec6f0b3f62144122a4277d51caf023e4f";
|
||||
name = "i3lock-color-2.7_rev${builtins.substring 0 7 rev}";
|
||||
rev = "c8e1aece7301c3c6481bf2f695734f8d273f252e";
|
||||
version = "2.7-2016-09-17";
|
||||
name = "i3lock-color-${version}";
|
||||
src = fetchFromGitHub {
|
||||
owner = "Arcaena";
|
||||
owner = "chrjguill";
|
||||
repo = "i3lock-color";
|
||||
inherit rev;
|
||||
sha256 = "1wfp0p85h45l50l6zfk5cr9ynka60vhjlgnyk8mqd5fp0w4ibxip";
|
||||
sha256 = "07fpvwgdfxsnxnf63idrz3n1kbyayr53lsfns2q775q93cz1mfia";
|
||||
};
|
||||
buildInputs = [ which pkgconfig libxcb xcbutilkeysyms xcbutilimage pam libX11
|
||||
libev cairo libxkbcommon libxkbfile ];
|
||||
|
@ -16,5 +16,4 @@ import <nix/fetchurl.nix> {
|
||||
let m = builtins.match "mirror://([a-z]+)/(.*)" url; in
|
||||
if m == null then url
|
||||
else builtins.head (mirrors.${builtins.elemAt m 0}) + (builtins.elemAt m 1);
|
||||
|
||||
}
|
||||
|
@ -1886,22 +1886,22 @@ rec {
|
||||
};
|
||||
|
||||
debian8i386 = {
|
||||
name = "debian-8.5-jessie-i386";
|
||||
fullName = "Debian 8.5 Jessie (i386)";
|
||||
name = "debian-8.6-jessie-i386";
|
||||
fullName = "Debian 8.6 Jessie (i386)";
|
||||
packagesList = fetchurl {
|
||||
url = mirror://debian/dists/jessie/main/binary-i386/Packages.xz;
|
||||
sha256 = "f87a1ee673b335c28cb6ac87be61d6ef20f32dd847835c2bb7d400a00a464c7f";
|
||||
sha256 = "b915c936233609af3ecf9272cd53fbdb2144d463e8472a30507aa112ef5e6a6b";
|
||||
};
|
||||
urlPrefix = mirror://debian;
|
||||
packages = commonDebianPackages;
|
||||
};
|
||||
|
||||
debian8x86_64 = {
|
||||
name = "debian-8.5-jessie-amd64";
|
||||
fullName = "Debian 8.5 Jessie (amd64)";
|
||||
name = "debian-8.6-jessie-amd64";
|
||||
fullName = "Debian 8.6 Jessie (amd64)";
|
||||
packagesList = fetchurl {
|
||||
url = mirror://debian/dists/jessie/main/binary-amd64/Packages.xz;
|
||||
sha256 = "df6aea15d5547ae8dc6d7ceadc8bf6499bc5a3907d13231f811bf3c1c22474ef";
|
||||
sha256 = "8b80b6608a8fc72509b949efe1730077f0e8383b29c6aed5f86d9f9b51a631d8";
|
||||
};
|
||||
urlPrefix = mirror://debian;
|
||||
packages = commonDebianPackages;
|
||||
|
@ -1,15 +1,34 @@
|
||||
{ stdenv, fetchurl }:
|
||||
{ stdenv, fetchFromGitHub }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "google-fonts";
|
||||
version = "2015-11-18";
|
||||
name = "google-fonts-${version}";
|
||||
version = "2016-08-30";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/google/fonts/archive/a26bc2b9f4ad27266c2587dc0355b3066519844a.tar.gz";
|
||||
sha256 = "1aizwzsxg30mjds1628280bs7ishgsfairnx131654gm51aihw8p";
|
||||
src = fetchFromGitHub {
|
||||
owner = "google";
|
||||
repo = "fonts";
|
||||
rev = "7a4070f65f2ca85ffdf2d465ff5e095005bae197";
|
||||
sha256 = "0c20vcsd0jki8drrim68z2ca0cxli4wyh1i1gyg4iyac0a0v8wx3";
|
||||
};
|
||||
|
||||
phases = [ "unpackPhase" "installPhase" ];
|
||||
outputHashAlgo = "sha256";
|
||||
outputHashMode = "recursive";
|
||||
outputHash = "13n2icpdp1z7i14rnfwkjdydhbjgdvyl1crd71hfy6l1j2p3kzyf";
|
||||
|
||||
phases = [ "unpackPhase" "patchPhase" "installPhase" ];
|
||||
|
||||
patchPhase = ''
|
||||
# These directories need to be removed because they contain
|
||||
# older or duplicate versions of fonts also present in other
|
||||
# directories. This causes non-determinism in the install since
|
||||
# the installation order of font files with the same name is not
|
||||
# fixed.
|
||||
rm -rv ofl/alefhebrew \
|
||||
ofl/misssaintdelafield \
|
||||
ofl/mrbedford \
|
||||
ofl/siamreap \
|
||||
ofl/terminaldosislight
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
dest=$out/share/fonts/truetype
|
||||
@ -18,10 +37,6 @@ stdenv.mkDerivation rec {
|
||||
chmod -x $dest/*.ttf
|
||||
'';
|
||||
|
||||
outputHashAlgo = "sha256";
|
||||
outputHashMode = "recursive";
|
||||
outputHash = "0q03gg0sh2mljlbmhamnxz28d13znh9dzca84p554s7pwg6z4wca";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://www.google.com/fontsl;
|
||||
description = "Font files available from Google Font";
|
||||
|
44
pkgs/data/fonts/lato/default.nix
Normal file
44
pkgs/data/fonts/lato/default.nix
Normal file
@ -0,0 +1,44 @@
|
||||
{ stdenv, fetchurl, unzip }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "lato-2.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = http://www.latofonts.com/download/Lato2OFL.zip;
|
||||
sha256 = "1f5540g0ja1nx3ddd3ywn77xc81ssrxpq8n3gyb9sabyq2b4xda2";
|
||||
};
|
||||
|
||||
sourceRoot = "Lato2OFL";
|
||||
|
||||
buildInputs = [ unzip ];
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/share/fonts/lato
|
||||
cp *.ttf $out/share/fonts/lato
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://www.latofonts.com/;
|
||||
|
||||
description = ''
|
||||
Sans-serif typeface family designed in Summer 2010 by Łukasz Dziedzic
|
||||
'';
|
||||
|
||||
longDescription = ''
|
||||
Lato is a sans-serif typeface family designed in the Summer 2010 by
|
||||
Warsaw-based designer Łukasz Dziedzic ("Lato" means "Summer" in Polish).
|
||||
In December 2010 the Lato family was published under the open-source Open
|
||||
Font License by his foundry tyPoland, with support from Google.
|
||||
|
||||
In 2013-2014, the family was greatly extended to cover 3000+ glyphs per
|
||||
style. The Lato 2.010 family now supports 100+ Latin-based languages, 50+
|
||||
Cyrillic-based languages as well as Greek and IPA phonetics. In the
|
||||
process, the metrics and kerning of the family have been revised and four
|
||||
additional weights were created.
|
||||
'';
|
||||
|
||||
license = licenses.ofl;
|
||||
platforms = platforms.all;
|
||||
maintainers = with maintainers; [ chris-martin ];
|
||||
};
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchurl, yacc }:
|
||||
{ stdenv, fetchpatch, fetchurl, yacc }:
|
||||
|
||||
let
|
||||
|
||||
@ -14,6 +14,15 @@ in stdenv.mkDerivation {
|
||||
|
||||
buildInputs = [ yacc ];
|
||||
|
||||
patches = [
|
||||
# CVE-2012-0808
|
||||
(fetchpatch {
|
||||
name = "as31-mkstemps.patch";
|
||||
url = "https://bugs.debian.org/cgi-bin/bugreport.cgi?att=1;bug=655496;filename=as31-mkstemps.patch;msg=5";
|
||||
sha256 = "0iia4wa8m141bwz4588yxb1dp2qwhapcii382sncm6jvwyngwh21";
|
||||
})
|
||||
];
|
||||
|
||||
preConfigure = ''
|
||||
chmod +x ./configure
|
||||
'';
|
||||
|
@ -1,16 +1,28 @@
|
||||
{ stdenv, fetchurl, gnat, zlib }:
|
||||
{ stdenv, fetchFromGitHub, gnat, zlib, llvm_35, ncurses, clang, flavour ? "mcode" }:
|
||||
|
||||
# mcode only works on x86, while the llvm flavour works on both x86 and x86_64.
|
||||
|
||||
|
||||
assert flavour == "llvm" || flavour == "mcode";
|
||||
|
||||
let
|
||||
inherit (stdenv.lib) optional;
|
||||
inherit (stdenv.lib) optionals;
|
||||
version = "0.33";
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "ghdl-mcode-${version}";
|
||||
name = "ghdl-${flavour}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/tgingold/ghdl/archive/v${version}.tar.gz";
|
||||
sha256 = "09yvgqyglbakd74v2dgr470clzm744i232nixyffcds55vkij5da";
|
||||
src = fetchFromGitHub {
|
||||
owner = "tgingold";
|
||||
repo = "ghdl";
|
||||
rev = "v${version}";
|
||||
sha256 = "0g72rk2yzr0lrpncq2c1qcv71w3mi2hjq84r1yzgjr6d0qm87r2a";
|
||||
};
|
||||
|
||||
buildInputs = [ gnat zlib ];
|
||||
buildInputs = [ gnat zlib ] ++ optionals (flavour == "llvm") [ clang ncurses ];
|
||||
|
||||
configureFlags = optional (flavour == "llvm") "--with-llvm=${llvm_35}";
|
||||
|
||||
patchPhase = ''
|
||||
# Disable warnings-as-errors, because there are warnings (unused things)
|
||||
@ -23,11 +35,10 @@ stdenv.mkDerivation rec {
|
||||
|
||||
meta = {
|
||||
homepage = "http://sourceforge.net/p/ghdl-updates/wiki/Home/";
|
||||
description = "Free VHDL simulator, mcode flavour";
|
||||
description = "Free VHDL simulator";
|
||||
maintainers = with stdenv.lib.maintainers; [viric];
|
||||
# I think that mcode can only generate x86 code,
|
||||
# so it fails to link pieces on x86_64.
|
||||
platforms = with stdenv.lib.platforms; [ "i686-linux" ];
|
||||
platforms = with stdenv.lib.platforms; (if flavour == "llvm" then [ "i686-linux" "x86_64-linux" ]
|
||||
else [ "i686-linux" ]);
|
||||
license = stdenv.lib.licenses.gpl2Plus;
|
||||
};
|
||||
}
|
||||
|
@ -61,6 +61,8 @@ stdenv.mkDerivation rec {
|
||||
done
|
||||
|
||||
substituteInPlace $(pwd)/../${usr_prefix}/bin/mlton --replace '/${usr_prefix}/lib/mlton' $(pwd)/../${usr_prefix}/lib/mlton
|
||||
'' + stdenv.lib.optionalString stdenv.cc.isClang ''
|
||||
sed -i "s_ patch -s -p0 <gdtoa.hide-public-fns.patch_ patch -s -p0 <gdtoa.hide-public-fns.patch\n\tsed -i 's|printf(emptyfmt|printf(\"\"|g' ./gdtoa/arithchk.c_" ./runtime/Makefile
|
||||
'';
|
||||
|
||||
preBuild = ''
|
||||
|
@ -1,82 +1,7 @@
|
||||
let
|
||||
safeX11 = stdenv: !(stdenv.isArm || stdenv.isMips);
|
||||
in
|
||||
|
||||
{ stdenv, fetchurl, ncurses, buildEnv, libX11, xproto, useX11 ? safeX11 stdenv }:
|
||||
|
||||
if useX11 && !(safeX11 stdenv)
|
||||
then throw "x11 not available in ocaml with arm or mips arch"
|
||||
else # let the indentation flow
|
||||
|
||||
let
|
||||
useNativeCompilers = !stdenv.isMips;
|
||||
inherit (stdenv.lib) optionals optionalString;
|
||||
in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
x11env = buildEnv { name = "x11env"; paths = [libX11 xproto]; };
|
||||
x11lib = x11env + "/lib";
|
||||
x11inc = x11env + "/include";
|
||||
|
||||
name = "ocaml-4.01.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://caml.inria.fr/pub/distrib/ocaml-4.01/${name}.tar.bz2";
|
||||
sha256 = "b1ca708994180236917ae79e17606da5bd334ca6acd6873a550027e1c0ec874a";
|
||||
};
|
||||
|
||||
import ./generic.nix rec {
|
||||
major_version = "4";
|
||||
minor_version = "01";
|
||||
patch_version = "0";
|
||||
patches = [ ./fix-clang-build-on-osx.diff ];
|
||||
|
||||
prefixKey = "-prefix ";
|
||||
configureFlags = ["-no-tk"] ++ optionals useX11 [ "-x11lib" x11lib
|
||||
"-x11include" x11inc ];
|
||||
|
||||
buildFlags = "world" + optionalString useNativeCompilers " bootstrap world.opt";
|
||||
buildInputs = [ncurses] ++ optionals useX11 [ libX11 xproto ];
|
||||
installTargets = "install" + optionalString useNativeCompilers " installopt";
|
||||
preConfigure = ''
|
||||
CAT=$(type -tp cat)
|
||||
sed -e "s@/bin/cat@$CAT@" -i config/auto-aux/sharpbang
|
||||
'';
|
||||
postBuild = ''
|
||||
mkdir -p $out/include
|
||||
ln -sv $out/lib/ocaml/caml $out/include/caml
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
nativeCompilers = useNativeCompilers;
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://caml.inria.fr/ocaml;
|
||||
branch = "4.01";
|
||||
license = with licenses; [
|
||||
qpl /* compiler */
|
||||
lgpl2 /* library */
|
||||
];
|
||||
description = "Most popular variant of the Caml language";
|
||||
|
||||
longDescription =
|
||||
''
|
||||
OCaml is the most popular variant of the Caml language. From a
|
||||
language standpoint, it extends the core Caml language with a
|
||||
fully-fledged object-oriented layer, as well as a powerful module
|
||||
system, all connected by a sound, polymorphic type system featuring
|
||||
type inference.
|
||||
|
||||
The OCaml system is an industrial-strength implementation of this
|
||||
language, featuring a high-performance native-code compiler (ocamlopt)
|
||||
for 9 processor architectures (IA32, PowerPC, AMD64, Alpha, Sparc,
|
||||
Mips, IA64, HPPA, StrongArm), as well as a bytecode compiler (ocamlc)
|
||||
and an interactive read-eval-print loop (ocaml) for quick development
|
||||
and portability. The OCaml distribution includes a comprehensive
|
||||
standard library, a replay debugger (ocamldebug), lexer (ocamllex) and
|
||||
parser (ocamlyacc) generators, a pre-processor pretty-printer (camlp4)
|
||||
and a documentation generator (ocamldoc).
|
||||
'';
|
||||
|
||||
platforms = with platforms; linux ++ darwin;
|
||||
};
|
||||
|
||||
sha256 = "03d7ida94s1gpr3gadf4jyhmh5rrszd5s4m4z59daaib25rvfyv7";
|
||||
}
|
||||
|
@ -1,80 +1,7 @@
|
||||
let
|
||||
safeX11 = stdenv: !(stdenv.isArm || stdenv.isMips);
|
||||
in
|
||||
|
||||
{ stdenv, fetchurl, ncurses, buildEnv, libX11, xproto, useX11 ? safeX11 stdenv }:
|
||||
|
||||
assert useX11 -> !stdenv.isArm && !stdenv.isMips;
|
||||
|
||||
let
|
||||
useNativeCompilers = !stdenv.isMips;
|
||||
inherit (stdenv.lib) optionals optionalString;
|
||||
in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
x11env = buildEnv { name = "x11env"; paths = [libX11 xproto]; };
|
||||
x11lib = x11env + "/lib";
|
||||
x11inc = x11env + "/include";
|
||||
|
||||
name = "ocaml-4.02.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://caml.inria.fr/pub/distrib/ocaml-4.02/${name}.tar.xz";
|
||||
sha256 = "1qwwvy8nzd87hk8rd9sm667nppakiapnx4ypdwcrlnav2dz6kil3";
|
||||
};
|
||||
|
||||
import ./generic.nix rec {
|
||||
major_version = "4";
|
||||
minor_version = "02";
|
||||
patch_version = "3";
|
||||
patches = [ ./ocamlbuild.patch ];
|
||||
|
||||
prefixKey = "-prefix ";
|
||||
configureFlags = optionals useX11 [ "-x11lib" x11lib
|
||||
"-x11include" x11inc ];
|
||||
|
||||
buildFlags = "world" + optionalString useNativeCompilers " bootstrap world.opt";
|
||||
buildInputs = [ncurses] ++ optionals useX11 [ libX11 xproto ];
|
||||
installTargets = "install" + optionalString useNativeCompilers " installopt";
|
||||
preConfigure = ''
|
||||
CAT=$(type -tp cat)
|
||||
sed -e "s@/bin/cat@$CAT@" -i config/auto-aux/sharpbang
|
||||
'';
|
||||
postBuild = ''
|
||||
mkdir -p $out/include
|
||||
ln -sv $out/lib/ocaml/caml $out/include/caml
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
nativeCompilers = useNativeCompilers;
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://caml.inria.fr/ocaml;
|
||||
branch = "4.02";
|
||||
license = with licenses; [
|
||||
qpl /* compiler */
|
||||
lgpl2 /* library */
|
||||
];
|
||||
description = "Most popular variant of the Caml language";
|
||||
|
||||
longDescription =
|
||||
''
|
||||
OCaml is the most popular variant of the Caml language. From a
|
||||
language standpoint, it extends the core Caml language with a
|
||||
fully-fledged object-oriented layer, as well as a powerful module
|
||||
system, all connected by a sound, polymorphic type system featuring
|
||||
type inference.
|
||||
|
||||
The OCaml system is an industrial-strength implementation of this
|
||||
language, featuring a high-performance native-code compiler (ocamlopt)
|
||||
for 9 processor architectures (IA32, PowerPC, AMD64, Alpha, Sparc,
|
||||
Mips, IA64, HPPA, StrongArm), as well as a bytecode compiler (ocamlc)
|
||||
and an interactive read-eval-print loop (ocaml) for quick development
|
||||
and portability. The OCaml distribution includes a comprehensive
|
||||
standard library, a replay debugger (ocamldebug), lexer (ocamllex) and
|
||||
parser (ocamlyacc) generators, a pre-processor pretty-printer (camlp4)
|
||||
and a documentation generator (ocamldoc).
|
||||
'';
|
||||
|
||||
platforms = with platforms; linux ++ darwin;
|
||||
};
|
||||
|
||||
sha256 = "1qwwvy8nzd87hk8rd9sm667nppakiapnx4ypdwcrlnav2dz6kil3";
|
||||
}
|
||||
|
6
pkgs/development/compilers/ocaml/4.03.nix
Normal file
6
pkgs/development/compilers/ocaml/4.03.nix
Normal file
@ -0,0 +1,6 @@
|
||||
import ./generic.nix rec {
|
||||
major_version = "4";
|
||||
minor_version = "03";
|
||||
patch_version = "0";
|
||||
sha256 = "09p3iwwi55r6rbrpyp8f0wmkb0ppcgw67yxw6yfky60524wayp39";
|
||||
}
|
89
pkgs/development/compilers/ocaml/generic.nix
Normal file
89
pkgs/development/compilers/ocaml/generic.nix
Normal file
@ -0,0 +1,89 @@
|
||||
{ minor_version, major_version, patch_version
|
||||
, url ? null
|
||||
, sha256, ...}@args:
|
||||
let
|
||||
versionNoPatch = "${toString major_version}.${toString minor_version}";
|
||||
version = "${versionNoPatch}.${toString patch_version}";
|
||||
real_url = if url == null then
|
||||
"http://caml.inria.fr/pub/distrib/ocaml-${versionNoPatch}/ocaml-${version}.tar.xz"
|
||||
else url;
|
||||
safeX11 = stdenv: !(stdenv.isArm || stdenv.isMips);
|
||||
in
|
||||
|
||||
{ stdenv, fetchurl, ncurses, buildEnv, libX11, xproto, useX11 ? safeX11 stdenv }:
|
||||
|
||||
assert useX11 -> !stdenv.isArm && !stdenv.isMips;
|
||||
|
||||
let
|
||||
useNativeCompilers = !stdenv.isMips;
|
||||
inherit (stdenv.lib) optionals optionalString;
|
||||
name = "ocaml-${version}";
|
||||
in
|
||||
|
||||
stdenv.mkDerivation (args // rec {
|
||||
|
||||
x11env = buildEnv { name = "x11env"; paths = [libX11 xproto]; };
|
||||
x11lib = x11env + "/lib";
|
||||
x11inc = x11env + "/include";
|
||||
|
||||
inherit name;
|
||||
|
||||
src = fetchurl {
|
||||
url = real_url;
|
||||
inherit sha256;
|
||||
};
|
||||
|
||||
prefixKey = "-prefix ";
|
||||
configureFlags = optionals useX11 [ "-x11lib" x11lib
|
||||
"-x11include" x11inc ];
|
||||
|
||||
buildFlags = "world" + optionalString useNativeCompilers " bootstrap world.opt";
|
||||
buildInputs = [ncurses] ++ optionals useX11 [ libX11 xproto ];
|
||||
installTargets = "install" + optionalString useNativeCompilers " installopt";
|
||||
preConfigure = ''
|
||||
CAT=$(type -tp cat)
|
||||
sed -e "s@/bin/cat@$CAT@" -i config/auto-aux/sharpbang
|
||||
'';
|
||||
postBuild = ''
|
||||
mkdir -p $out/include
|
||||
ln -sv $out/lib/ocaml/caml $out/include/caml
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
nativeCompilers = useNativeCompilers;
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://caml.inria.fr/ocaml;
|
||||
branch = "4.03";
|
||||
license = with licenses; [
|
||||
qpl /* compiler */
|
||||
lgpl2 /* library */
|
||||
];
|
||||
description = "Most popular variant of the Caml language";
|
||||
|
||||
longDescription =
|
||||
''
|
||||
OCaml is the most popular variant of the Caml language. From a
|
||||
language standpoint, it extends the core Caml language with a
|
||||
fully-fledged object-oriented layer, as well as a powerful module
|
||||
system, all connected by a sound, polymorphic type system featuring
|
||||
type inference.
|
||||
|
||||
The OCaml system is an industrial-strength implementation of this
|
||||
language, featuring a high-performance native-code compiler (ocamlopt)
|
||||
for 9 processor architectures (IA32, PowerPC, AMD64, Alpha, Sparc,
|
||||
Mips, IA64, HPPA, StrongArm), as well as a bytecode compiler (ocamlc)
|
||||
and an interactive read-eval-print loop (ocaml) for quick development
|
||||
and portability. The OCaml distribution includes a comprehensive
|
||||
standard library, a replay debugger (ocamldebug), lexer (ocamllex) and
|
||||
parser (ocamlyacc) generators, a pre-processor pretty-printer (camlp4)
|
||||
and a documentation generator (ocamldoc).
|
||||
'';
|
||||
|
||||
platforms = with platforms; linux ++ darwin;
|
||||
};
|
||||
|
||||
})
|
||||
|
||||
|
@ -17,7 +17,7 @@ let
|
||||
else
|
||||
throw "openjdk requires i686-linux or x86_64 linux";
|
||||
|
||||
update = "91";
|
||||
update = "111";
|
||||
|
||||
build = "01";
|
||||
|
||||
@ -28,31 +28,31 @@ let
|
||||
repover = "jdk7u${update}-b${build}";
|
||||
jdk7 = fetchurl {
|
||||
url = "${baseurl}/archive/${repover}.tar.gz";
|
||||
sha256 = "08f7cbayyrryim3xbrs12cr12i1mczcikyc9rdlsyih0r4xvll28";
|
||||
sha256 = "0wgb7hr2gipx1jg28fnsjh7xa744sh1mgr6z3xivmnsfy3dm91gi";
|
||||
};
|
||||
langtools = fetchurl {
|
||||
url = "${baseurl}/langtools/archive/${repover}.tar.gz";
|
||||
sha256 = "0rmlzrgsacn60blpg1sp30k6p0sgzsml8wb41yc998km1bsnjxnh";
|
||||
sha256 = "0x1xs923h6sma02cbp1whg735x8vcndh5k01b7rkf714g6rxwa0y";
|
||||
};
|
||||
hotspot = fetchurl {
|
||||
url = "${baseurl}/hotspot/archive/${repover}.tar.gz";
|
||||
sha256 = "1w1n81y9jcvjzssl4049yzfc0gdfnh73ki6wg1d8pg22zlyhrrwv";
|
||||
sha256 = "187apnsvnd4cfa7ss5g59dbh7x5ah8f1lwa2wvjfv055h2cmphpn";
|
||||
};
|
||||
corba = fetchurl {
|
||||
url = "${baseurl}/corba/archive/${repover}.tar.gz";
|
||||
sha256 = "086yr927bxnlgljx7mw2cg6f6aip57hi4qpn1h35n6fsyvb4n67h";
|
||||
sha256 = "0vmxf5sgjcmkm7i1scanaa2x75a1byj8b36vcajlr6j7qmdx6r8c";
|
||||
};
|
||||
jdk = fetchurl {
|
||||
url = "${baseurl}/jdk/archive/${repover}.tar.gz";
|
||||
sha256 = "14r39ylj3qa63arpqxl0h84baah1kjgnyp3v9d7d4vd0yagpn66b";
|
||||
sha256 = "1f8f2dgrjhx8aw1gzawrf8qggf5j0dygsla08bbsxhx5mc5a6cka";
|
||||
};
|
||||
jaxws = fetchurl {
|
||||
url = "${baseurl}/jaxws/archive/${repover}.tar.gz";
|
||||
sha256 = "1p1739gb5gx9m4sm3i4javfk9lk41wnz92k6gis6sq99dd1bj1l5";
|
||||
sha256 = "03982ajxm0hzany1jg009ym84vryx7a8qfi6wcgjxyxvk8vnz37c";
|
||||
};
|
||||
jaxp = fetchurl {
|
||||
url = "${baseurl}/jaxp/archive/${repover}.tar.gz";
|
||||
sha256 = "1nl3kmbwqhhymcp25rnmf5mr3dn87lgdxvz9wgng7if6yqxlyakq";
|
||||
sha256 = "0578h04y1ha60yjplsa8lqdjds9s2lxzgs9ybm9rs1rqzxmm0xmy";
|
||||
};
|
||||
openjdk = stdenv.mkDerivation rec {
|
||||
name = "openjdk-7u${update}b${build}";
|
||||
|
@ -20,7 +20,7 @@ with stdenv.lib;
|
||||
stdenv.mkDerivation rec {
|
||||
name = "erlang-" + version + "${optionalString odbcSupport "-odbc"}"
|
||||
+ "${optionalString javacSupport "-javac"}";
|
||||
version = "19.0.2";
|
||||
version = "19.1";
|
||||
|
||||
# Minor OTP releases are not always released as tarbals at
|
||||
# http://erlang.org/download/ So we have to download from
|
||||
@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
|
||||
owner = "erlang";
|
||||
repo = "otp";
|
||||
rev = "OTP-${version}";
|
||||
sha256 = "1vsykghhzpgmc42jwj48crl11zzzpvrqvh2lk8lxfqbflzflxm6j";
|
||||
sha256 = "0nnjj069d5pjhgcd8vvqbrkjdac3p1v4s3zb59i4h73vg7f5p736";
|
||||
};
|
||||
|
||||
buildInputs =
|
||||
@ -42,15 +42,6 @@ stdenv.mkDerivation rec {
|
||||
|
||||
debugInfo = enableDebugInfo;
|
||||
|
||||
envAndCpPatch = fetchurl {
|
||||
url = "https://github.com/binarin/otp/commit/9f9841eb7327c9fe73e84e197fd2965a97b639cf.patch";
|
||||
sha256 = "10h5348p6g279b4q01i5jdqlljww5chcvrx5b4b0dv79pk0p0m9f";
|
||||
};
|
||||
|
||||
patches = [
|
||||
envAndCpPatch
|
||||
];
|
||||
|
||||
preConfigure = ''
|
||||
./otp_build autoconf
|
||||
'';
|
||||
|
@ -300,8 +300,8 @@ let
|
||||
|
||||
in {
|
||||
php56 = generic {
|
||||
version = "5.6.25";
|
||||
sha256 = "1pldn4z7pzcjm8li9xryrniz5cz542cbv4nlrr13wzzdmhr61kjq";
|
||||
version = "5.6.26";
|
||||
sha256 = "0dk2ifn50iv8jvw2jyw2pr9xqnkksxfv9qbpay84na54hf0anynl";
|
||||
};
|
||||
|
||||
php70 = generic {
|
||||
|
@ -1,20 +1,20 @@
|
||||
{ stdenv, fetchFromGitHub, pkgconfig, gettext, gtk3, intltool, glib
|
||||
, gtk_doc, autoconf, automake, libtool, libarchive, libyaml
|
||||
, gobjectIntrospection, sqlite, libsoup, gcab, attr, acl, docbook_xsl
|
||||
, libuuid, json_glib
|
||||
, libuuid, json_glib, autoconf-archive
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "appstream-glib-0.5.12";
|
||||
name = "appstream-glib-0.6.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "hughsie";
|
||||
repo = "appstream-glib";
|
||||
rev = stdenv.lib.replaceStrings ["." "-"] ["_" "_"] name;
|
||||
sha256 = "00b0441f409vzgy0znn42k093w7hwv3495qvsakxnhvk1h1ws23s";
|
||||
sha256 = "12l0vzhi9vpyrnf7vrpq21rb26mb6yskp5zgngdjyjanwhzmc617";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ autoconf automake libtool pkgconfig intltool ];
|
||||
nativeBuildInputs = [ autoconf automake libtool pkgconfig intltool autoconf-archive ];
|
||||
buildInputs = [ glib gtk_doc gettext sqlite libsoup
|
||||
gcab attr acl docbook_xsl libuuid json_glib
|
||||
libarchive libyaml gtk3 gobjectIntrospection ];
|
||||
|
@ -2,8 +2,8 @@
|
||||
|
||||
callPackage ./generic.nix (args // {
|
||||
baseVersion = "1.11";
|
||||
revision = "30";
|
||||
sha256 = "09d1cvg6dnfi225wipc1fw691bq7xxdcmgkq8smldc5kivf3mbwd";
|
||||
revision = "31";
|
||||
sha256 = "1vnx75g5zzzbgsrwnmnhqdal29gcn63g0ldyj0g9cky8ha8iqx8f";
|
||||
openssl = null;
|
||||
postPatch = "sed '1i#include <cmath>' -i src/tests/test_bigint.cpp";
|
||||
})
|
||||
|
@ -1,7 +1,7 @@
|
||||
{ callPackage, ... } @ args:
|
||||
|
||||
callPackage ./generic.nix (args // rec {
|
||||
version = "${branch}.7";
|
||||
version = "${branch}.8";
|
||||
branch = "2.8";
|
||||
sha256 = "1rggcy8kflmlvdyf5yqv0zshycysyqz45fl06v8zsh2n6d5cwxw7";
|
||||
sha256 = "19h6xmlcb933hgpfd40mjwkral8v389v25sx660a3p7aiyalh25p";
|
||||
})
|
||||
|
@ -1,11 +1,11 @@
|
||||
{stdenv, fetchurl}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "jansson-2.7";
|
||||
name = "jansson-2.8";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.digip.org/jansson/releases/${name}.tar.gz";
|
||||
sha256 = "1mvq9p85khsl818i4vbszyfab0fd45mdrwrxjkzw05mk1xcyc1br";
|
||||
sha256 = "0v7v82mv7x44rpcxmrpnmb8hqimx67qwsp2cz9mv3y0f37iykwnf";
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
@ -1,11 +1,13 @@
|
||||
{ stdenv, fetchurl, pkgconfig, libxml2, glibmm, perl }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libxml++-2.38.1";
|
||||
name = "libxml++-${maj_ver}.${min_ver}";
|
||||
maj_ver = "2.40";
|
||||
min_ver = "1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/libxml++/2.38/${name}.tar.xz";
|
||||
sha256 = "0px0ljcf9rsfa092dzmm097yn7wln6d5fgsvj9lnrnq3kcc2j9c8";
|
||||
url = "mirror://gnome/sources/libxml++/${maj_ver}/${name}.tar.xz";
|
||||
sha256 = "1sb3akryklvh2v6m6dihdnbpf1lkx441v972q9hlz1sq6bfspm2a";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig perl ];
|
||||
@ -14,8 +16,6 @@ stdenv.mkDerivation rec {
|
||||
|
||||
propagatedBuildInputs = [ libxml2 ];
|
||||
|
||||
configureFlags = "--disable-documentation"; #doesn't build without this for some reason
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://libxmlplusplus.sourceforge.net/;
|
||||
description = "C++ wrapper for the libxml2 XML parser library";
|
||||
|
@ -1,7 +1,7 @@
|
||||
diff -ru -x '*~' mesa-11.1.4-orig/src/gallium/targets/dri/Makefile.am mesa-11.1.4/src/gallium/targets/dri/Makefile.am
|
||||
--- mesa-11.1.4-orig/src/gallium/targets/dri/Makefile.am 2016-05-09 14:20:52.000000000 +0200
|
||||
+++ mesa-11.1.4/src/gallium/targets/dri/Makefile.am 2016-05-22 17:56:03.396185082 +0200
|
||||
@@ -126,14 +126,13 @@
|
||||
diff -ru -x '*~' mesa-12.0.3-orig/src/gallium/targets/dri/Makefile.am mesa-12.0.3/src/gallium/targets/dri/Makefile.am
|
||||
--- mesa-12.0.3-orig/src/gallium/targets/dri/Makefile.am 2016-09-08 18:57:48.000000000 +0200
|
||||
+++ mesa-12.0.3/src/gallium/targets/dri/Makefile.am 2016-09-22 14:42:19.173575498 +0200
|
||||
@@ -134,14 +134,13 @@
|
||||
done;
|
||||
endif
|
||||
|
||||
@ -19,9 +19,25 @@ diff -ru -x '*~' mesa-11.1.4-orig/src/gallium/targets/dri/Makefile.am mesa-11.1.
|
||||
|
||||
uninstall-hook:
|
||||
for i in $(TARGET_DRIVERS); do \
|
||||
diff -ru -x '*~' mesa-11.1.4-orig/src/gallium/targets/vdpau/Makefile.am mesa-11.1.4/src/gallium/targets/vdpau/Makefile.am
|
||||
--- mesa-11.1.4-orig/src/gallium/targets/vdpau/Makefile.am 2016-01-29 13:21:30.000000000 +0100
|
||||
+++ mesa-11.1.4/src/gallium/targets/vdpau/Makefile.am 2016-05-22 20:54:12.722358242 +0200
|
||||
diff -ru -x '*~' mesa-12.0.3-orig/src/gallium/targets/va/Makefile.am mesa-12.0.3/src/gallium/targets/va/Makefile.am
|
||||
--- mesa-12.0.3-orig/src/gallium/targets/va/Makefile.am 2016-09-08 18:57:48.000000000 +0200
|
||||
+++ mesa-12.0.3/src/gallium/targets/va/Makefile.am 2016-09-22 14:45:39.635963339 +0200
|
||||
@@ -71,10 +71,10 @@
|
||||
# gallium_drv_video.so in the set of final installed files.
|
||||
install-data-hook:
|
||||
for i in $(TARGET_DRIVERS); do \
|
||||
- ln -f $(DESTDIR)$(vadir)/gallium_drv_video.so \
|
||||
+ ln -srf $(DESTDIR)$(vadir)/gallium_drv_video.so \
|
||||
$(DESTDIR)$(vadir)/$${i}_drv_video.so; \
|
||||
done; \
|
||||
- $(RM) $(DESTDIR)$(vadir)/gallium_drv_video.*
|
||||
+ $(RM) $(DESTDIR)$(vadir)/gallium_drv_video.la
|
||||
|
||||
uninstall-hook:
|
||||
for i in $(TARGET_DRIVERS); do \
|
||||
diff -ru -x '*~' mesa-12.0.3-orig/src/gallium/targets/vdpau/Makefile.am mesa-12.0.3/src/gallium/targets/vdpau/Makefile.am
|
||||
--- mesa-12.0.3-orig/src/gallium/targets/vdpau/Makefile.am 2016-05-24 21:19:37.000000000 +0200
|
||||
+++ mesa-12.0.3/src/gallium/targets/vdpau/Makefile.am 2016-09-22 14:42:19.173575498 +0200
|
||||
@@ -103,15 +103,14 @@
|
||||
done;
|
||||
endif
|
||||
@ -49,10 +65,31 @@ diff -ru -x '*~' mesa-11.1.4-orig/src/gallium/targets/vdpau/Makefile.am mesa-11.
|
||||
|
||||
uninstall-hook:
|
||||
for i in $(TARGET_DRIVERS); do \
|
||||
diff -ru -x '*~' mesa-11.1.4-orig/src/mesa/drivers/dri/Makefile.am mesa-11.1.4/src/mesa/drivers/dri/Makefile.am
|
||||
--- mesa-11.1.4-orig/src/mesa/drivers/dri/Makefile.am 2016-01-18 08:39:26.000000000 +0100
|
||||
+++ mesa-11.1.4/src/mesa/drivers/dri/Makefile.am 2016-05-22 17:55:46.251244940 +0200
|
||||
@@ -86,14 +86,13 @@
|
||||
diff -ru -x '*~' mesa-12.0.3-orig/src/gallium/targets/xvmc/Makefile.am mesa-12.0.3/src/gallium/targets/xvmc/Makefile.am
|
||||
--- mesa-12.0.3-orig/src/gallium/targets/xvmc/Makefile.am 2016-05-24 21:19:37.000000000 +0200
|
||||
+++ mesa-12.0.3/src/gallium/targets/xvmc/Makefile.am 2016-09-22 14:54:22.291014543 +0200
|
||||
@@ -73,7 +73,7 @@
|
||||
j=libXvMCgallium.$(LIB_EXT); \
|
||||
k=libXvMC$${i}.$(LIB_EXT); \
|
||||
l=$${k}.$(XVMC_MAJOR).$(XVMC_MINOR).0; \
|
||||
- ln -f $${dest_dir}/$${j}.$(XVMC_MAJOR).$(XVMC_MINOR).0 \
|
||||
+ ln -srf $${dest_dir}/$${j}.$(XVMC_MAJOR).$(XVMC_MINOR).0 \
|
||||
$${dest_dir}/$${l}; \
|
||||
ln -sf $${l} \
|
||||
$${dest_dir}/$${k}.$(XVMC_MAJOR).$(XVMC_MINOR); \
|
||||
@@ -82,7 +82,7 @@
|
||||
ln -sf $${l} \
|
||||
$${dest_dir}/$${k}; \
|
||||
done; \
|
||||
- $(RM) $${dest_dir}/libXvMCgallium.*
|
||||
+ $(RM) $${dest_dir}/libXvMCgallium.la
|
||||
|
||||
uninstall-hook:
|
||||
for i in $(TARGET_DRIVERS); do \
|
||||
diff -ru -x '*~' mesa-12.0.3-orig/src/mesa/drivers/dri/Makefile.am mesa-12.0.3/src/mesa/drivers/dri/Makefile.am
|
||||
--- mesa-12.0.3-orig/src/mesa/drivers/dri/Makefile.am 2016-09-08 18:57:48.000000000 +0200
|
||||
+++ mesa-12.0.3/src/mesa/drivers/dri/Makefile.am 2016-09-22 14:42:19.173575498 +0200
|
||||
@@ -94,14 +94,13 @@
|
||||
done;
|
||||
endif
|
||||
|
||||
|
@ -1,256 +0,0 @@
|
||||
From 6f35f6deb5ca7daebe289f86477e061ce3ee5f46 Mon Sep 17 00:00:00 2001
|
||||
From: Matt Caswell <matt@openssl.org>
|
||||
Date: Thu, 5 May 2016 11:10:26 +0100
|
||||
Subject: [PATCH] Avoid some undefined pointer arithmetic
|
||||
|
||||
A common idiom in the codebase is:
|
||||
|
||||
if (p + len > limit)
|
||||
{
|
||||
return; /* Too long */
|
||||
}
|
||||
|
||||
Where "p" points to some malloc'd data of SIZE bytes and
|
||||
limit == p + SIZE
|
||||
|
||||
"len" here could be from some externally supplied data (e.g. from a TLS
|
||||
message).
|
||||
|
||||
The rules of C pointer arithmetic are such that "p + len" is only well
|
||||
defined where len <= SIZE. Therefore the above idiom is actually
|
||||
undefined behaviour.
|
||||
|
||||
For example this could cause problems if some malloc implementation
|
||||
provides an address for "p" such that "p + len" actually overflows for
|
||||
values of len that are too big and therefore p + len < limit!
|
||||
|
||||
Issue reported by Guido Vranken.
|
||||
|
||||
CVE-2016-2177
|
||||
|
||||
Reviewed-by: Rich Salz <rsalz@openssl.org>
|
||||
---
|
||||
ssl/s3_srvr.c | 14 +++++++-------
|
||||
ssl/ssl_sess.c | 2 +-
|
||||
ssl/t1_lib.c | 48 ++++++++++++++++++++++++++----------------------
|
||||
3 files changed, 34 insertions(+), 30 deletions(-)
|
||||
|
||||
diff --git a/ssl/s3_srvr.c b/ssl/s3_srvr.c
|
||||
index 04cf93a..6c74caa 100644
|
||||
--- a/ssl/s3_srvr.c
|
||||
+++ b/ssl/s3_srvr.c
|
||||
@@ -1040,7 +1040,7 @@ int ssl3_get_client_hello(SSL *s)
|
||||
|
||||
session_length = *(p + SSL3_RANDOM_SIZE);
|
||||
|
||||
- if (p + SSL3_RANDOM_SIZE + session_length + 1 >= d + n) {
|
||||
+ if (SSL3_RANDOM_SIZE + session_length + 1 >= (d + n) - p) {
|
||||
al = SSL_AD_DECODE_ERROR;
|
||||
SSLerr(SSL_F_SSL3_GET_CLIENT_HELLO, SSL_R_LENGTH_TOO_SHORT);
|
||||
goto f_err;
|
||||
@@ -1058,7 +1058,7 @@ int ssl3_get_client_hello(SSL *s)
|
||||
/* get the session-id */
|
||||
j = *(p++);
|
||||
|
||||
- if (p + j > d + n) {
|
||||
+ if ((d + n) - p < j) {
|
||||
al = SSL_AD_DECODE_ERROR;
|
||||
SSLerr(SSL_F_SSL3_GET_CLIENT_HELLO, SSL_R_LENGTH_TOO_SHORT);
|
||||
goto f_err;
|
||||
@@ -1114,14 +1114,14 @@ int ssl3_get_client_hello(SSL *s)
|
||||
|
||||
if (s->version == DTLS1_VERSION || s->version == DTLS1_BAD_VER) {
|
||||
/* cookie stuff */
|
||||
- if (p + 1 > d + n) {
|
||||
+ if ((d + n) - p < 1) {
|
||||
al = SSL_AD_DECODE_ERROR;
|
||||
SSLerr(SSL_F_SSL3_GET_CLIENT_HELLO, SSL_R_LENGTH_TOO_SHORT);
|
||||
goto f_err;
|
||||
}
|
||||
cookie_len = *(p++);
|
||||
|
||||
- if (p + cookie_len > d + n) {
|
||||
+ if ((d + n ) - p < cookie_len) {
|
||||
al = SSL_AD_DECODE_ERROR;
|
||||
SSLerr(SSL_F_SSL3_GET_CLIENT_HELLO, SSL_R_LENGTH_TOO_SHORT);
|
||||
goto f_err;
|
||||
@@ -1166,7 +1166,7 @@ int ssl3_get_client_hello(SSL *s)
|
||||
p += cookie_len;
|
||||
}
|
||||
|
||||
- if (p + 2 > d + n) {
|
||||
+ if ((d + n ) - p < 2) {
|
||||
al = SSL_AD_DECODE_ERROR;
|
||||
SSLerr(SSL_F_SSL3_GET_CLIENT_HELLO, SSL_R_LENGTH_TOO_SHORT);
|
||||
goto f_err;
|
||||
@@ -1180,7 +1180,7 @@ int ssl3_get_client_hello(SSL *s)
|
||||
}
|
||||
|
||||
/* i bytes of cipher data + 1 byte for compression length later */
|
||||
- if ((p + i + 1) > (d + n)) {
|
||||
+ if ((d + n) - p < i + 1) {
|
||||
/* not enough data */
|
||||
al = SSL_AD_DECODE_ERROR;
|
||||
SSLerr(SSL_F_SSL3_GET_CLIENT_HELLO, SSL_R_LENGTH_MISMATCH);
|
||||
@@ -1246,7 +1246,7 @@ int ssl3_get_client_hello(SSL *s)
|
||||
|
||||
/* compression */
|
||||
i = *(p++);
|
||||
- if ((p + i) > (d + n)) {
|
||||
+ if ((d + n) - p < i) {
|
||||
/* not enough data */
|
||||
al = SSL_AD_DECODE_ERROR;
|
||||
SSLerr(SSL_F_SSL3_GET_CLIENT_HELLO, SSL_R_LENGTH_MISMATCH);
|
||||
diff --git a/ssl/ssl_sess.c b/ssl/ssl_sess.c
|
||||
index 48fc451..a97d060 100644
|
||||
--- a/ssl/ssl_sess.c
|
||||
+++ b/ssl/ssl_sess.c
|
||||
@@ -602,7 +602,7 @@ int ssl_get_prev_session(SSL *s, unsigned char *session_id, int len,
|
||||
int r;
|
||||
#endif
|
||||
|
||||
- if (session_id + len > limit) {
|
||||
+ if (limit - session_id < len) {
|
||||
fatal = 1;
|
||||
goto err;
|
||||
}
|
||||
diff --git a/ssl/t1_lib.c b/ssl/t1_lib.c
|
||||
index 0bdb77d..8ed1793 100644
|
||||
--- a/ssl/t1_lib.c
|
||||
+++ b/ssl/t1_lib.c
|
||||
@@ -942,11 +942,11 @@ static void ssl_check_for_safari(SSL *s, const unsigned char *data,
|
||||
0x02, 0x03, /* SHA-1/ECDSA */
|
||||
};
|
||||
|
||||
- if (data >= (limit - 2))
|
||||
+ if (limit - data <= 2)
|
||||
return;
|
||||
data += 2;
|
||||
|
||||
- if (data > (limit - 4))
|
||||
+ if (limit - data < 4)
|
||||
return;
|
||||
n2s(data, type);
|
||||
n2s(data, size);
|
||||
@@ -954,7 +954,7 @@ static void ssl_check_for_safari(SSL *s, const unsigned char *data,
|
||||
if (type != TLSEXT_TYPE_server_name)
|
||||
return;
|
||||
|
||||
- if (data + size > limit)
|
||||
+ if (limit - data < size)
|
||||
return;
|
||||
data += size;
|
||||
|
||||
@@ -962,7 +962,7 @@ static void ssl_check_for_safari(SSL *s, const unsigned char *data,
|
||||
const size_t len1 = sizeof(kSafariExtensionsBlock);
|
||||
const size_t len2 = sizeof(kSafariTLS12ExtensionsBlock);
|
||||
|
||||
- if (data + len1 + len2 != limit)
|
||||
+ if (limit - data != (int)(len1 + len2))
|
||||
return;
|
||||
if (memcmp(data, kSafariExtensionsBlock, len1) != 0)
|
||||
return;
|
||||
@@ -971,7 +971,7 @@ static void ssl_check_for_safari(SSL *s, const unsigned char *data,
|
||||
} else {
|
||||
const size_t len = sizeof(kSafariExtensionsBlock);
|
||||
|
||||
- if (data + len != limit)
|
||||
+ if (limit - data != (int)(len))
|
||||
return;
|
||||
if (memcmp(data, kSafariExtensionsBlock, len) != 0)
|
||||
return;
|
||||
@@ -1019,19 +1019,19 @@ int ssl_parse_clienthello_tlsext(SSL *s, unsigned char **p,
|
||||
if (data == limit)
|
||||
goto ri_check;
|
||||
|
||||
- if (data > (limit - 2))
|
||||
+ if (limit - data < 2)
|
||||
goto err;
|
||||
|
||||
n2s(data, len);
|
||||
|
||||
- if (data + len != limit)
|
||||
+ if (limit - data != len)
|
||||
goto err;
|
||||
|
||||
- while (data <= (limit - 4)) {
|
||||
+ while (limit - data >= 4) {
|
||||
n2s(data, type);
|
||||
n2s(data, size);
|
||||
|
||||
- if (data + size > (limit))
|
||||
+ if (limit - data < size)
|
||||
goto err;
|
||||
# if 0
|
||||
fprintf(stderr, "Received extension type %d size %d\n", type, size);
|
||||
@@ -1460,20 +1460,20 @@ int ssl_parse_serverhello_tlsext(SSL *s, unsigned char **p, unsigned char *d,
|
||||
SSL_TLSEXT_HB_DONT_SEND_REQUESTS);
|
||||
# endif
|
||||
|
||||
- if (data >= (d + n - 2))
|
||||
+ if ((d + n) - data <= 2)
|
||||
goto ri_check;
|
||||
|
||||
n2s(data, length);
|
||||
- if (data + length != d + n) {
|
||||
+ if ((d + n) - data != length) {
|
||||
*al = SSL_AD_DECODE_ERROR;
|
||||
return 0;
|
||||
}
|
||||
|
||||
- while (data <= (d + n - 4)) {
|
||||
+ while ((d + n) - data >= 4) {
|
||||
n2s(data, type);
|
||||
n2s(data, size);
|
||||
|
||||
- if (data + size > (d + n))
|
||||
+ if ((d + n) - data < size)
|
||||
goto ri_check;
|
||||
|
||||
if (s->tlsext_debug_cb)
|
||||
@@ -2179,29 +2179,33 @@ int tls1_process_ticket(SSL *s, unsigned char *session_id, int len,
|
||||
/* Skip past DTLS cookie */
|
||||
if (s->version == DTLS1_VERSION || s->version == DTLS1_BAD_VER) {
|
||||
i = *(p++);
|
||||
- p += i;
|
||||
- if (p >= limit)
|
||||
+
|
||||
+ if (limit - p <= i)
|
||||
return -1;
|
||||
+
|
||||
+ p += i;
|
||||
}
|
||||
/* Skip past cipher list */
|
||||
n2s(p, i);
|
||||
- p += i;
|
||||
- if (p >= limit)
|
||||
+ if (limit - p <= i)
|
||||
return -1;
|
||||
+ p += i;
|
||||
+
|
||||
/* Skip past compression algorithm list */
|
||||
i = *(p++);
|
||||
- p += i;
|
||||
- if (p > limit)
|
||||
+ if (limit - p < i)
|
||||
return -1;
|
||||
+ p += i;
|
||||
+
|
||||
/* Now at start of extensions */
|
||||
- if ((p + 2) >= limit)
|
||||
+ if (limit - p <= 2)
|
||||
return 0;
|
||||
n2s(p, i);
|
||||
- while ((p + 4) <= limit) {
|
||||
+ while (limit - p >= 4) {
|
||||
unsigned short type, size;
|
||||
n2s(p, type);
|
||||
n2s(p, size);
|
||||
- if (p + size > limit)
|
||||
+ if (limit - p < size)
|
||||
return 0;
|
||||
if (type == TLSEXT_TYPE_session_ticket) {
|
||||
int r;
|
||||
--
|
||||
1.9.1
|
||||
|
@ -1,279 +0,0 @@
|
||||
From a004e72b95835136d3f1ea90517f706c24c03da7 Mon Sep 17 00:00:00 2001
|
||||
From: Matt Caswell <matt@openssl.org>
|
||||
Date: Thu, 5 May 2016 11:10:26 +0100
|
||||
Subject: [PATCH] Avoid some undefined pointer arithmetic
|
||||
|
||||
A common idiom in the codebase is:
|
||||
|
||||
if (p + len > limit)
|
||||
{
|
||||
return; /* Too long */
|
||||
}
|
||||
|
||||
Where "p" points to some malloc'd data of SIZE bytes and
|
||||
limit == p + SIZE
|
||||
|
||||
"len" here could be from some externally supplied data (e.g. from a TLS
|
||||
message).
|
||||
|
||||
The rules of C pointer arithmetic are such that "p + len" is only well
|
||||
defined where len <= SIZE. Therefore the above idiom is actually
|
||||
undefined behaviour.
|
||||
|
||||
For example this could cause problems if some malloc implementation
|
||||
provides an address for "p" such that "p + len" actually overflows for
|
||||
values of len that are too big and therefore p + len < limit!
|
||||
|
||||
Issue reported by Guido Vranken.
|
||||
|
||||
CVE-2016-2177
|
||||
|
||||
Reviewed-by: Rich Salz <rsalz@openssl.org>
|
||||
---
|
||||
ssl/s3_srvr.c | 14 +++++++-------
|
||||
ssl/ssl_sess.c | 2 +-
|
||||
ssl/t1_lib.c | 56 ++++++++++++++++++++++++++++++--------------------------
|
||||
3 files changed, 38 insertions(+), 34 deletions(-)
|
||||
|
||||
diff --git a/ssl/s3_srvr.c b/ssl/s3_srvr.c
|
||||
index ab28702..ab7f690 100644
|
||||
--- a/ssl/s3_srvr.c
|
||||
+++ b/ssl/s3_srvr.c
|
||||
@@ -980,7 +980,7 @@ int ssl3_get_client_hello(SSL *s)
|
||||
|
||||
session_length = *(p + SSL3_RANDOM_SIZE);
|
||||
|
||||
- if (p + SSL3_RANDOM_SIZE + session_length + 1 >= d + n) {
|
||||
+ if (SSL3_RANDOM_SIZE + session_length + 1 >= (d + n) - p) {
|
||||
al = SSL_AD_DECODE_ERROR;
|
||||
SSLerr(SSL_F_SSL3_GET_CLIENT_HELLO, SSL_R_LENGTH_TOO_SHORT);
|
||||
goto f_err;
|
||||
@@ -998,7 +998,7 @@ int ssl3_get_client_hello(SSL *s)
|
||||
/* get the session-id */
|
||||
j = *(p++);
|
||||
|
||||
- if (p + j > d + n) {
|
||||
+ if ((d + n) - p < j) {
|
||||
al = SSL_AD_DECODE_ERROR;
|
||||
SSLerr(SSL_F_SSL3_GET_CLIENT_HELLO, SSL_R_LENGTH_TOO_SHORT);
|
||||
goto f_err;
|
||||
@@ -1054,14 +1054,14 @@ int ssl3_get_client_hello(SSL *s)
|
||||
|
||||
if (SSL_IS_DTLS(s)) {
|
||||
/* cookie stuff */
|
||||
- if (p + 1 > d + n) {
|
||||
+ if ((d + n) - p < 1) {
|
||||
al = SSL_AD_DECODE_ERROR;
|
||||
SSLerr(SSL_F_SSL3_GET_CLIENT_HELLO, SSL_R_LENGTH_TOO_SHORT);
|
||||
goto f_err;
|
||||
}
|
||||
cookie_len = *(p++);
|
||||
|
||||
- if (p + cookie_len > d + n) {
|
||||
+ if ((d + n ) - p < cookie_len) {
|
||||
al = SSL_AD_DECODE_ERROR;
|
||||
SSLerr(SSL_F_SSL3_GET_CLIENT_HELLO, SSL_R_LENGTH_TOO_SHORT);
|
||||
goto f_err;
|
||||
@@ -1131,7 +1131,7 @@ int ssl3_get_client_hello(SSL *s)
|
||||
}
|
||||
}
|
||||
|
||||
- if (p + 2 > d + n) {
|
||||
+ if ((d + n ) - p < 2) {
|
||||
al = SSL_AD_DECODE_ERROR;
|
||||
SSLerr(SSL_F_SSL3_GET_CLIENT_HELLO, SSL_R_LENGTH_TOO_SHORT);
|
||||
goto f_err;
|
||||
@@ -1145,7 +1145,7 @@ int ssl3_get_client_hello(SSL *s)
|
||||
}
|
||||
|
||||
/* i bytes of cipher data + 1 byte for compression length later */
|
||||
- if ((p + i + 1) > (d + n)) {
|
||||
+ if ((d + n) - p < i + 1) {
|
||||
/* not enough data */
|
||||
al = SSL_AD_DECODE_ERROR;
|
||||
SSLerr(SSL_F_SSL3_GET_CLIENT_HELLO, SSL_R_LENGTH_MISMATCH);
|
||||
@@ -1211,7 +1211,7 @@ int ssl3_get_client_hello(SSL *s)
|
||||
|
||||
/* compression */
|
||||
i = *(p++);
|
||||
- if ((p + i) > (d + n)) {
|
||||
+ if ((d + n) - p < i) {
|
||||
/* not enough data */
|
||||
al = SSL_AD_DECODE_ERROR;
|
||||
SSLerr(SSL_F_SSL3_GET_CLIENT_HELLO, SSL_R_LENGTH_MISMATCH);
|
||||
diff --git a/ssl/ssl_sess.c b/ssl/ssl_sess.c
|
||||
index b182998..54ee783 100644
|
||||
--- a/ssl/ssl_sess.c
|
||||
+++ b/ssl/ssl_sess.c
|
||||
@@ -573,7 +573,7 @@ int ssl_get_prev_session(SSL *s, unsigned char *session_id, int len,
|
||||
int r;
|
||||
#endif
|
||||
|
||||
- if (session_id + len > limit) {
|
||||
+ if (limit - session_id < len) {
|
||||
fatal = 1;
|
||||
goto err;
|
||||
}
|
||||
diff --git a/ssl/t1_lib.c b/ssl/t1_lib.c
|
||||
index fb64607..cdac011 100644
|
||||
--- a/ssl/t1_lib.c
|
||||
+++ b/ssl/t1_lib.c
|
||||
@@ -1867,11 +1867,11 @@ static void ssl_check_for_safari(SSL *s, const unsigned char *data,
|
||||
0x02, 0x03, /* SHA-1/ECDSA */
|
||||
};
|
||||
|
||||
- if (data >= (limit - 2))
|
||||
+ if (limit - data <= 2)
|
||||
return;
|
||||
data += 2;
|
||||
|
||||
- if (data > (limit - 4))
|
||||
+ if (limit - data < 4)
|
||||
return;
|
||||
n2s(data, type);
|
||||
n2s(data, size);
|
||||
@@ -1879,7 +1879,7 @@ static void ssl_check_for_safari(SSL *s, const unsigned char *data,
|
||||
if (type != TLSEXT_TYPE_server_name)
|
||||
return;
|
||||
|
||||
- if (data + size > limit)
|
||||
+ if (limit - data < size)
|
||||
return;
|
||||
data += size;
|
||||
|
||||
@@ -1887,7 +1887,7 @@ static void ssl_check_for_safari(SSL *s, const unsigned char *data,
|
||||
const size_t len1 = sizeof(kSafariExtensionsBlock);
|
||||
const size_t len2 = sizeof(kSafariTLS12ExtensionsBlock);
|
||||
|
||||
- if (data + len1 + len2 != limit)
|
||||
+ if (limit - data != (int)(len1 + len2))
|
||||
return;
|
||||
if (memcmp(data, kSafariExtensionsBlock, len1) != 0)
|
||||
return;
|
||||
@@ -1896,7 +1896,7 @@ static void ssl_check_for_safari(SSL *s, const unsigned char *data,
|
||||
} else {
|
||||
const size_t len = sizeof(kSafariExtensionsBlock);
|
||||
|
||||
- if (data + len != limit)
|
||||
+ if (limit - data != (int)(len))
|
||||
return;
|
||||
if (memcmp(data, kSafariExtensionsBlock, len) != 0)
|
||||
return;
|
||||
@@ -2053,19 +2053,19 @@ static int ssl_scan_clienthello_tlsext(SSL *s, unsigned char **p,
|
||||
if (data == limit)
|
||||
goto ri_check;
|
||||
|
||||
- if (data > (limit - 2))
|
||||
+ if (limit - data < 2)
|
||||
goto err;
|
||||
|
||||
n2s(data, len);
|
||||
|
||||
- if (data + len != limit)
|
||||
+ if (limit - data != len)
|
||||
goto err;
|
||||
|
||||
- while (data <= (limit - 4)) {
|
||||
+ while (limit - data >= 4) {
|
||||
n2s(data, type);
|
||||
n2s(data, size);
|
||||
|
||||
- if (data + size > (limit))
|
||||
+ if (limit - data < size)
|
||||
goto err;
|
||||
# if 0
|
||||
fprintf(stderr, "Received extension type %d size %d\n", type, size);
|
||||
@@ -2472,18 +2472,18 @@ static int ssl_scan_clienthello_custom_tlsext(SSL *s,
|
||||
if (s->hit || s->cert->srv_ext.meths_count == 0)
|
||||
return 1;
|
||||
|
||||
- if (data >= limit - 2)
|
||||
+ if (limit - data <= 2)
|
||||
return 1;
|
||||
n2s(data, len);
|
||||
|
||||
- if (data > limit - len)
|
||||
+ if (limit - data < len)
|
||||
return 1;
|
||||
|
||||
- while (data <= limit - 4) {
|
||||
+ while (limit - data >= 4) {
|
||||
n2s(data, type);
|
||||
n2s(data, size);
|
||||
|
||||
- if (data + size > limit)
|
||||
+ if (limit - data < size)
|
||||
return 1;
|
||||
if (custom_ext_parse(s, 1 /* server */ , type, data, size, al) <= 0)
|
||||
return 0;
|
||||
@@ -2569,20 +2569,20 @@ static int ssl_scan_serverhello_tlsext(SSL *s, unsigned char **p,
|
||||
SSL_TLSEXT_HB_DONT_SEND_REQUESTS);
|
||||
# endif
|
||||
|
||||
- if (data >= (d + n - 2))
|
||||
+ if ((d + n) - data <= 2)
|
||||
goto ri_check;
|
||||
|
||||
n2s(data, length);
|
||||
- if (data + length != d + n) {
|
||||
+ if ((d + n) - data != length) {
|
||||
*al = SSL_AD_DECODE_ERROR;
|
||||
return 0;
|
||||
}
|
||||
|
||||
- while (data <= (d + n - 4)) {
|
||||
+ while ((d + n) - data >= 4) {
|
||||
n2s(data, type);
|
||||
n2s(data, size);
|
||||
|
||||
- if (data + size > (d + n))
|
||||
+ if ((d + n) - data < size)
|
||||
goto ri_check;
|
||||
|
||||
if (s->tlsext_debug_cb)
|
||||
@@ -3307,29 +3307,33 @@ int tls1_process_ticket(SSL *s, unsigned char *session_id, int len,
|
||||
/* Skip past DTLS cookie */
|
||||
if (SSL_IS_DTLS(s)) {
|
||||
i = *(p++);
|
||||
- p += i;
|
||||
- if (p >= limit)
|
||||
+
|
||||
+ if (limit - p <= i)
|
||||
return -1;
|
||||
+
|
||||
+ p += i;
|
||||
}
|
||||
/* Skip past cipher list */
|
||||
n2s(p, i);
|
||||
- p += i;
|
||||
- if (p >= limit)
|
||||
+ if (limit - p <= i)
|
||||
return -1;
|
||||
+ p += i;
|
||||
+
|
||||
/* Skip past compression algorithm list */
|
||||
i = *(p++);
|
||||
- p += i;
|
||||
- if (p > limit)
|
||||
+ if (limit - p < i)
|
||||
return -1;
|
||||
+ p += i;
|
||||
+
|
||||
/* Now at start of extensions */
|
||||
- if ((p + 2) >= limit)
|
||||
+ if (limit - p <= 2)
|
||||
return 0;
|
||||
n2s(p, i);
|
||||
- while ((p + 4) <= limit) {
|
||||
+ while (limit - p >= 4) {
|
||||
unsigned short type, size;
|
||||
n2s(p, type);
|
||||
n2s(p, size);
|
||||
- if (p + size > limit)
|
||||
+ if (limit - p < size)
|
||||
return 0;
|
||||
if (type == TLSEXT_TYPE_session_ticket) {
|
||||
int r;
|
||||
--
|
||||
1.9.1
|
||||
|
@ -106,26 +106,18 @@ let
|
||||
in {
|
||||
|
||||
openssl_1_0_1 = common {
|
||||
version = "1.0.1t";
|
||||
sha256 = "4a6ee491a2fdb22e519c76fdc2a628bb3cec12762cd456861d207996c8a07088";
|
||||
patches = [
|
||||
# https://git.openssl.org/?p=openssl.git;a=commit;h=6f35f6deb5ca7daebe289f86477e061ce3ee5f46
|
||||
./1.0.1-CVE-2016-2177.diff
|
||||
];
|
||||
version = "1.0.1u";
|
||||
sha256 = "0fb7y9pwbd76pgzd7xzqfrzibmc0vf03sl07f34z5dhm2b5b84j3";
|
||||
};
|
||||
|
||||
openssl_1_0_2 = common {
|
||||
version = "1.0.2h";
|
||||
sha256 = "1d4007e53aad94a5b2002fe045ee7bb0b3d98f1a47f8b2bc851dcd1c74332919";
|
||||
patches = [
|
||||
# https://git.openssl.org/?p=openssl.git;a=commit;h=a004e72b95835136d3f1ea90517f706c24c03da7
|
||||
./1.0.2-CVE-2016-2177.diff
|
||||
];
|
||||
version = "1.0.2i";
|
||||
sha256 = "0vyy038676cv3m2523fi9ll9nkjxadqdnz18zdp5nm6925yli1wj";
|
||||
};
|
||||
|
||||
openssl_1_1_0 = common {
|
||||
version = "1.1.0";
|
||||
sha256 = "10lcpmnxap9nw8ymdglys93cgkwd1lf1rz4fhq5whwhlmkwrzipm";
|
||||
version = "1.1.0a";
|
||||
sha256 = "0as40a1lipl9qfax7495jc1xfb049ygavkaxxk4y5kcn8birdrn2";
|
||||
};
|
||||
|
||||
}
|
||||
|
@ -1,21 +0,0 @@
|
||||
{ stdenv, fetchurl, cmake, openssl, popt, xmlto }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "0.4.1";
|
||||
name = "rabbitmq-c-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
name = "${name}.tar.gz";
|
||||
url = "https://github.com/alanxz/rabbitmq-c/releases/download/v${version}/${name}.tar.gz";
|
||||
sha256 = "01m4n043hzhhxky8z67zj3r4gbg3mwcqbwqr9nms9lqbfaa70x93";
|
||||
};
|
||||
|
||||
buildInputs = [ cmake openssl popt xmlto ];
|
||||
|
||||
meta = {
|
||||
description = "RabbitMQ C AMQP client library";
|
||||
homepage = https://github.com/alanxz/rabbitmq-c;
|
||||
license = stdenv.lib.licenses.mit;
|
||||
platforms = with stdenv.lib.platforms; linux;
|
||||
};
|
||||
}
|
@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
|
||||
url = "http://www.vandenoever.info/software/strigi/${name}.tar.bz2";
|
||||
sha256 = "12grxzqwnvbyqw7q1gnz42lypadxmq89vk2qpxczmpmc4nk63r23";
|
||||
};
|
||||
|
||||
|
||||
includeAllQtDirs = true;
|
||||
|
||||
CLUCENE_HOME = clucene_core;
|
||||
@ -24,6 +24,15 @@ stdenv.mkDerivation rec {
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
# Strigi installs some libraries in an incorrect place
|
||||
# ($out/$out/lib instead of $out/lib), so move them to the right
|
||||
# place.
|
||||
postInstall =
|
||||
''
|
||||
mv $out/$out/lib/* $out/lib
|
||||
rm -rf $out/nix
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = http://strigi.sourceforge.net;
|
||||
description = "A very fast and efficient crawler to index data on your harddrive";
|
||||
|
@ -1,86 +0,0 @@
|
||||
{ stdenv, fetchurl, fetchpatch, perl, python, ruby, bison, gperf, cmake
|
||||
, pkgconfig, gettext, gobjectIntrospection, libnotify
|
||||
, gtk2, gtk3, wayland, libwebp, enchant
|
||||
, libxml2, libsoup, libsecret, libxslt, harfbuzz, libpthreadstubs
|
||||
, enableGeoLocation ? false, geoclue2, sqlite, xorg
|
||||
, enableCredentialStorage ? !stdenv.isDarwin
|
||||
, gst-plugins-base, readline, libedit
|
||||
}:
|
||||
|
||||
assert enableGeoLocation -> geoclue2 != null;
|
||||
assert stdenv.isDarwin -> !enableCredentialStorage;
|
||||
|
||||
with stdenv.lib;
|
||||
stdenv.mkDerivation rec {
|
||||
name = "webkitgtk-${version}";
|
||||
version = "2.10.9";
|
||||
|
||||
meta = {
|
||||
description = "Web content rendering engine, GTK+ port";
|
||||
homepage = "http://webkitgtk.org/";
|
||||
license = licenses.bsd2;
|
||||
platforms = platforms.linux;
|
||||
hydraPlatforms = [];
|
||||
maintainers = with maintainers; [ koral ];
|
||||
};
|
||||
|
||||
preConfigure = "patchShebangs Tools";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://webkitgtk.org/releases/${name}.tar.xz";
|
||||
sha256 = "0sg935wpkgyd5ypd5fj25vd7ri8s6sbrmssb53xbgcc02xs8vcdv";
|
||||
};
|
||||
|
||||
patches = [
|
||||
./finding-harfbuzz-icu.patch
|
||||
] ++ optional stdenv.isDarwin ./adding-libintl.patch;
|
||||
|
||||
cmakeFlags = [
|
||||
"-DPORT=GTK"
|
||||
"-DUSE_LIBHYPHEN=OFF"
|
||||
] ++ optionals (!enableCredentialStorage) [
|
||||
"-DENABLE_CREDENTIAL_STORAGE=OFF"
|
||||
] ++ optionals (!enableGeoLocation) [
|
||||
"-DENABLE_GEOLOCATION=OFF"
|
||||
] ++ optionals stdenv.isDarwin [
|
||||
"-DENABLE_WEBKIT=ON"
|
||||
"-DENABLE_X11_TARGET=OFF"
|
||||
"-DENABLE_QUARTZ_TARGET=ON"
|
||||
"-DENABLE_TOOLS=ON"
|
||||
"-DENABLE_MINIBROWSER=ON"
|
||||
"-DENABLE_PLUGIN_PROCESS_GTK2=OFF"
|
||||
"-DENABLE_VIDEO=OFF"
|
||||
"-DENABLE_WEB_AUDIO=OFF"
|
||||
"-DENABLE_OPENGL=OFF"
|
||||
"-DENABLE_INTROSPECTION=OFF"
|
||||
"-DUSE_LIBNOTIFY=OFF"
|
||||
"-DCMAKE_SHARED_LINKER_FLAGS=-L/path/to/nonexistent/folder"
|
||||
];
|
||||
|
||||
# XXX: WebKit2 missing include path for gst-plugins-base.
|
||||
# Filled: https://bugs.webkit.org/show_bug.cgi?id=148894
|
||||
NIX_CFLAGS_COMPILE = "-I${gst-plugins-base.dev}/include/gstreamer-1.0";
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake perl python ruby bison gperf sqlite
|
||||
pkgconfig gettext gobjectIntrospection
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
gtk2 libwebp enchant libnotify
|
||||
libxml2 libxslt harfbuzz libpthreadstubs
|
||||
gst-plugins-base xorg.libXt
|
||||
] ++ optionals enableCredentialStorage [
|
||||
libsecret
|
||||
] ++ (if stdenv.isDarwin then [
|
||||
readline libedit
|
||||
] else [
|
||||
wayland
|
||||
]) ++ optional enableGeoLocation geoclue2;
|
||||
|
||||
propagatedBuildInputs = [
|
||||
libsoup gtk3
|
||||
];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
}
|
63
pkgs/development/libraries/webkitgtk/2.14.nix
Normal file
63
pkgs/development/libraries/webkitgtk/2.14.nix
Normal file
@ -0,0 +1,63 @@
|
||||
{ stdenv, fetchurl, perl, python, ruby, bison, gperf, cmake
|
||||
, pkgconfig, gettext, gobjectIntrospection, libnotify, gnutls
|
||||
, gtk2, gtk3, wayland, libwebp, enchant, xlibs, libxkbcommon, epoxy, at_spi2_core
|
||||
, libxml2, libsoup, libsecret, libxslt, harfbuzz, libpthreadstubs
|
||||
, enableGeoLocation ? true, geoclue2, sqlite
|
||||
, gst-plugins-base
|
||||
}:
|
||||
|
||||
assert enableGeoLocation -> geoclue2 != null;
|
||||
|
||||
with stdenv.lib;
|
||||
stdenv.mkDerivation rec {
|
||||
name = "webkitgtk-${version}";
|
||||
version = "2.14.0";
|
||||
|
||||
meta = {
|
||||
description = "Web content rendering engine, GTK+ port";
|
||||
homepage = "http://webkitgtk.org/";
|
||||
license = licenses.bsd2;
|
||||
platforms = platforms.linux;
|
||||
hydraPlatforms = [];
|
||||
maintainers = with maintainers; [ ];
|
||||
};
|
||||
|
||||
preConfigure = "patchShebangs Tools";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://webkitgtk.org/releases/${name}.tar.xz";
|
||||
sha256 = "02paj0anbnqn1z3hn5c4csmq9nga995rzagiplj3sjk2dj1ss4q5";
|
||||
};
|
||||
|
||||
# see if we can clean this up....
|
||||
|
||||
patches = [ ./finding-harfbuzz-icu.patch ];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DPORT=GTK"
|
||||
"-DUSE_LIBHYPHEN=0"
|
||||
"-DENABLE_GLES2=ON"
|
||||
];
|
||||
|
||||
# XXX: WebKit2 missing include path for gst-plugins-base.
|
||||
# Filled: https://bugs.webkit.org/show_bug.cgi?id=148894
|
||||
#NIX_CFLAGS_COMPILE = "-I${gst-plugins-base.dev}/include/gstreamer-1.0";
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake perl python ruby bison gperf sqlite
|
||||
pkgconfig gettext gobjectIntrospection
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
gtk2 wayland libwebp enchant libnotify gnutls
|
||||
libxml2 libsecret libxslt harfbuzz libpthreadstubs
|
||||
gst-plugins-base libxkbcommon epoxy at_spi2_core
|
||||
] ++ optional enableGeoLocation geoclue2
|
||||
++ (with xlibs; [ libXdmcp libXt libXtst ]);
|
||||
|
||||
propagatedBuildInputs = [
|
||||
libsoup gtk3
|
||||
];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
}
|
@ -1,5 +1,7 @@
|
||||
NPM packages
|
||||
===========
|
||||
Node.js packages
|
||||
===============
|
||||
To add a package from [NPM](https://www.npmjs.com/) to nixpkgs:
|
||||
|
||||
1. Install node2nix: `nix-env -f '<nixpkgs>' -iA node2nix`.
|
||||
2. Modify `pkgs/development/node-packages/node-packages.json`, to add, update,
|
||||
or remove package entries.
|
||||
|
@ -1,5 +1,5 @@
|
||||
{stdenv, buildOcaml, fetchurl, async_kernel,
|
||||
async_unix, async_extra, pa_ounit}:
|
||||
{stdenv, buildOcaml, fetchurl, async_kernel_p4,
|
||||
async_unix_p4, async_extra_p4, pa_ounit}:
|
||||
|
||||
buildOcaml rec {
|
||||
name = "async";
|
||||
@ -12,7 +12,7 @@ buildOcaml rec {
|
||||
sha256 = "ecc4ca939ab098e689332921b110dbaacd06d9f8d8bf697023dfff3ca37dc1e9";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ async_kernel async_unix async_extra pa_ounit ];
|
||||
propagatedBuildInputs = [ async_kernel_p4 async_unix_p4 async_extra_p4 pa_ounit ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://github.com/janestreet/async;
|
||||
|
@ -1,6 +1,6 @@
|
||||
{stdenv, buildOcaml, fetchurl, async_kernel, async_unix,
|
||||
bin_prot, core, custom_printf, fieldslib, herelib, pa_ounit,
|
||||
pipebang, pa_test, sexplib}:
|
||||
{stdenv, buildOcaml, fetchurl, async_kernel_p4, async_unix_p4,
|
||||
bin_prot_p4, core_p4, custom_printf, fieldslib_p4, herelib, pa_ounit,
|
||||
pipebang, pa_test, sexplib_p4}:
|
||||
|
||||
buildOcaml rec {
|
||||
name = "async_extra";
|
||||
@ -14,8 +14,8 @@ buildOcaml rec {
|
||||
};
|
||||
|
||||
buildInputs = [ pa_test pa_ounit ];
|
||||
propagatedBuildInputs = [ async_kernel async_unix core bin_prot custom_printf
|
||||
fieldslib herelib pipebang sexplib ];
|
||||
propagatedBuildInputs = [ async_kernel_p4 async_unix_p4 core_p4 bin_prot_p4 custom_printf
|
||||
fieldslib_p4 herelib pipebang sexplib_p4 ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://github.com/janestreet/async_extra;
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user