mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-16 14:54:29 +01:00
Merge branch 'staging-next' into staging
This commit is contained in:
commit
268872d996
289 changed files with 5926 additions and 3369 deletions
10
.github/CODEOWNERS
vendored
10
.github/CODEOWNERS
vendored
|
@ -58,11 +58,11 @@
|
|||
/doc/languages-frameworks/python.section.md @FRidh
|
||||
|
||||
# Haskell
|
||||
/pkgs/development/compilers/ghc @basvandijk
|
||||
/pkgs/development/haskell-modules @basvandijk
|
||||
/pkgs/development/haskell-modules/default.nix @basvandijk
|
||||
/pkgs/development/haskell-modules/generic-builder.nix @basvandijk
|
||||
/pkgs/development/haskell-modules/hoogle.nix @basvandijk
|
||||
/pkgs/development/compilers/ghc @basvandijk @cdepillabout
|
||||
/pkgs/development/haskell-modules @basvandijk @cdepillabout
|
||||
/pkgs/development/haskell-modules/default.nix @basvandijk @cdepillabout
|
||||
/pkgs/development/haskell-modules/generic-builder.nix @basvandijk @cdepillabout
|
||||
/pkgs/development/haskell-modules/hoogle.nix @basvandijk @cdepillabout
|
||||
|
||||
# Perl
|
||||
/pkgs/development/interpreters/perl @volth
|
||||
|
|
|
@ -416,7 +416,7 @@ overrides = self: super: rec {
|
|||
<para>
|
||||
Please note that the <literal>citrix_receiver</literal> package has been deprecated since its
|
||||
development was <link xlink:href="https://docs.citrix.com/en-us/citrix-workspace-app.html">discontinued by upstream</link>
|
||||
and will be replaced by <link xlink:href="https://www.citrix.com/products/workspace-app/">the citrix workspace app</link>.
|
||||
and has been replaced by <link xlink:href="https://www.citrix.com/products/workspace-app/">the citrix workspace app</link>.
|
||||
</para>
|
||||
</note>
|
||||
<link xlink:href="https://www.citrix.com/products/receiver/">Citrix Receiver</link> and
|
||||
|
@ -458,7 +458,7 @@ overrides = self: super: rec {
|
|||
<title>Custom certificates</title>
|
||||
|
||||
<para>
|
||||
The <literal>Citrix Receiver</literal> and <literal>Citrix Workspace App</literal>
|
||||
The <literal>Citrix Workspace App</literal>
|
||||
in <literal>nixpkgs</literal> trust several certificates
|
||||
<link xlink:href="https://curl.haxx.se/docs/caextract.html">from the
|
||||
Mozilla database</link> by default. However several companies using Citrix
|
||||
|
@ -472,7 +472,7 @@ overrides = self: super: rec {
|
|||
<programlisting>
|
||||
<![CDATA[with import <nixpkgs> { config.allowUnfree = true; };
|
||||
let extraCerts = [ ./custom-cert-1.pem ./custom-cert-2.pem /* ... */ ]; in
|
||||
citrix_workspace.override { # the same applies for `citrix_receiver` if used.
|
||||
citrix_workspace.override {
|
||||
inherit extraCerts;
|
||||
}]]>
|
||||
</programlisting>
|
||||
|
|
|
@ -2411,7 +2411,7 @@ addEnvHooks "$hostOffset" myBashFunction
|
|||
<para>
|
||||
The Bintools Wrapper was only just recently split off from CC Wrapper,
|
||||
so the division of labor is still being worked out. For example, it
|
||||
shouldn't care about about the C standard library, but just take a
|
||||
shouldn't care about the C standard library, but just take a
|
||||
derivation with the dynamic loader (which happens to be the glibc on
|
||||
linux). Dependency finding however is a task both wrappers will continue
|
||||
to need to share, and probably the most important to understand. It is
|
||||
|
|
|
@ -1109,10 +1109,6 @@
|
|||
githubId = 977929;
|
||||
name = "Cody Allen";
|
||||
};
|
||||
cf6b88f = {
|
||||
email = "elmo.todurov@eesti.ee";
|
||||
name = "Elmo Todurov";
|
||||
};
|
||||
cfouche = {
|
||||
email = "chaddai.fouche@gmail.com";
|
||||
github = "Chaddai";
|
||||
|
@ -1219,6 +1215,12 @@
|
|||
githubId = 3956062;
|
||||
name = "Simon Lackerbauer";
|
||||
};
|
||||
cizra = {
|
||||
email = "todurov+nix@gmail.com";
|
||||
github = "cizra";
|
||||
githubId = 2131991;
|
||||
name = "Elmo Todurov";
|
||||
};
|
||||
ck3d = {
|
||||
email = "ck3d@gmx.de";
|
||||
github = "ck3d";
|
||||
|
@ -4156,11 +4158,11 @@
|
|||
email = "miltador@yandex.ua";
|
||||
name = "Vasiliy Solovey";
|
||||
};
|
||||
mimadrid = {
|
||||
email = "mimadrid@ucm.es";
|
||||
github = "mimadrid";
|
||||
mimame = {
|
||||
email = "miguel.madrid.mencia@gmail.com";
|
||||
github = "mimame";
|
||||
githubId = 3269878;
|
||||
name = "Miguel Madrid";
|
||||
name = "Miguel Madrid Mencía";
|
||||
};
|
||||
minijackson = {
|
||||
email = "minijackson@riseup.net";
|
||||
|
@ -6649,7 +6651,7 @@
|
|||
githubId = 1525767;
|
||||
name = "Vaibhav Sagar";
|
||||
};
|
||||
valebes = {
|
||||
valebes = {
|
||||
email = "valebes@gmail.com";
|
||||
github = "valebes";
|
||||
githubid = 10956211;
|
||||
|
|
|
@ -11,13 +11,15 @@ import click
|
|||
import requests
|
||||
from pyquery import PyQuery as pq
|
||||
|
||||
def map_dict (f, d):
|
||||
for k,v in d.items():
|
||||
d[k] = f(v)
|
||||
|
||||
maintainers_json = subprocess.check_output([
|
||||
'nix-instantiate', '-E', 'import ./maintainers/maintainer-list.nix {}', '--eval', '--json'
|
||||
'nix-instantiate', '-A', 'lib.maintainers', '--eval', '--strict', '--json'
|
||||
])
|
||||
maintainers = json.loads(maintainers_json)
|
||||
MAINTAINERS = {v: k for k, v in maintainers.items()}
|
||||
|
||||
MAINTAINERS = map_dict(lambda v: v.get('github', None), maintainers)
|
||||
|
||||
def get_response_text(url):
|
||||
return pq(requests.get(url).text) # IO
|
||||
|
@ -38,30 +40,39 @@ def get_maintainers(attr_name):
|
|||
'-A',
|
||||
'.'.join(nixname[1:]) + '.meta',
|
||||
EVAL_FILE[nixname[0]],
|
||||
'--arg',
|
||||
'nixpkgs',
|
||||
'./.',
|
||||
'--json'])
|
||||
meta = json.loads(meta_json)
|
||||
if meta.get('maintainers'):
|
||||
return [MAINTAINERS[name] for name in meta['maintainers'] if MAINTAINERS.get(name)]
|
||||
return meta.get('maintainers', [])
|
||||
except:
|
||||
return []
|
||||
|
||||
def filter_github_users(maintainers):
|
||||
github_only = []
|
||||
for i in maintainers:
|
||||
if i.get('github'):
|
||||
github_only.append(i)
|
||||
return github_only
|
||||
|
||||
def print_build(table_row):
|
||||
a = pq(table_row)('a')[1]
|
||||
print("- [ ] [{}]({})".format(a.text, a.get('href')), flush=True)
|
||||
|
||||
maintainers = get_maintainers(a.text)
|
||||
if maintainers:
|
||||
print(" - maintainers: {}".format(", ".join(map(lambda u: '@' + u, maintainers))))
|
||||
|
||||
job_maintainers = filter_github_users(get_maintainers(a.text))
|
||||
if job_maintainers:
|
||||
print(" - maintainers: {}".format(" ".join(map(lambda u: '@' + u.get('github'), job_maintainers))))
|
||||
# TODO: print last three persons that touched this file
|
||||
# TODO: pinpoint the diff that broke this build, or maybe it's transient or maybe it never worked?
|
||||
|
||||
|
||||
sys.stdout.flush()
|
||||
|
||||
@click.command()
|
||||
@click.option(
|
||||
'--jobset',
|
||||
default="nixos/release-17.09",
|
||||
help='Hydra project like nixos/release-17.09')
|
||||
default="nixos/release-19.09",
|
||||
help='Hydra project like nixos/release-19.09')
|
||||
def cli(jobset):
|
||||
"""
|
||||
Given a Hydra project, inspect latest evaluation
|
||||
|
@ -93,6 +104,7 @@ def cli(jobset):
|
|||
print_build(tr)
|
||||
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
try:
|
||||
cli()
|
||||
|
|
|
@ -7,10 +7,12 @@
|
|||
<refmiscinfo class="source">NixOS</refmiscinfo>
|
||||
<!-- <refmiscinfo class="version"><xi:include href="version.txt" parse="text"/></refmiscinfo> -->
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname><command>nixos-rebuild</command>
|
||||
</refname><refpurpose>reconfigure a NixOS machine</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>nixos-rebuild</command><group choice='req'>
|
||||
|
@ -74,6 +76,7 @@
|
|||
<arg>
|
||||
<option>--builders</option> <replaceable>builder-spec</replaceable>
|
||||
</arg>
|
||||
|
||||
<sbr />
|
||||
<arg>
|
||||
<group choice='req'>
|
||||
|
@ -121,8 +124,10 @@
|
|||
</arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsection>
|
||||
<title>Description</title>
|
||||
|
||||
<para>
|
||||
This command updates the system so that it corresponds to the configuration
|
||||
specified in <filename>/etc/nixos/configuration.nix</filename>. Thus, every
|
||||
|
@ -133,9 +138,11 @@
|
|||
(re)starts any system services if needed. Please note that user services need
|
||||
to be started manually as they aren't detected by the activation script at the moment.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This command has one required argument, which specifies the desired
|
||||
operation. It must be one of the following:
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term>
|
||||
|
@ -152,6 +159,7 @@
|
|||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<option>boot</option>
|
||||
|
@ -165,6 +173,7 @@
|
|||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<option>test</option>
|
||||
|
@ -179,6 +188,7 @@
|
|||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<option>build</option>
|
||||
|
@ -197,6 +207,7 @@
|
|||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<option>dry-build</option>
|
||||
|
@ -208,6 +219,7 @@
|
|||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<option>dry-activate</option>
|
||||
|
@ -222,6 +234,7 @@
|
|||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<option>edit</option>
|
||||
|
@ -232,6 +245,7 @@
|
|||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<option>build-vm</option>
|
||||
|
@ -249,12 +263,14 @@
|
|||
<prompt>$ </prompt>./result/bin/run-*-vm
|
||||
</screen>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The VM is implemented using the <literal>qemu</literal> package. For
|
||||
best performance, you should load the <literal>kvm-intel</literal> or
|
||||
<literal>kvm-amd</literal> kernel modules to get hardware
|
||||
virtualisation.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The VM mounts the Nix store of the host through the 9P file system. The
|
||||
host Nix store is read-only, so Nix commands that modify the Nix store
|
||||
|
@ -262,6 +278,7 @@
|
|||
<command>nixos-rebuild</command>; to change the VM’s configuration,
|
||||
you must halt the VM and re-run the commands above.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The VM has its own <literal>ext3</literal> root file system, which is
|
||||
automatically created when the VM is first started, and is persistent
|
||||
|
@ -272,6 +289,7 @@
|
|||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<option>build-vm-with-bootloader</option>
|
||||
|
@ -294,11 +312,13 @@
|
|||
</variablelist>
|
||||
</para>
|
||||
</refsection>
|
||||
|
||||
<refsection>
|
||||
<title>Options</title>
|
||||
<para>
|
||||
This command accepts the following options:
|
||||
</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term>
|
||||
|
@ -310,6 +330,7 @@
|
|||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<option>--install-bootloader</option>
|
||||
|
@ -321,6 +342,7 @@
|
|||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<option>--no-build-nix</option>
|
||||
|
@ -336,6 +358,7 @@
|
|||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<option>--fast</option>
|
||||
|
@ -349,6 +372,7 @@
|
|||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<option>--rollback</option>
|
||||
|
@ -363,6 +387,7 @@
|
|||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<option>--builders</option> <replaceable>builder-spec</replaceable>
|
||||
|
@ -382,6 +407,7 @@
|
|||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<option>--profile-name</option>
|
||||
|
@ -412,6 +438,7 @@
|
|||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<option>--build-host</option>
|
||||
|
@ -437,6 +464,7 @@
|
|||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<option>--target-host</option>
|
||||
|
@ -449,6 +477,7 @@
|
|||
be accessible over ssh, and for the commands <option>switch</option>,
|
||||
<option>boot</option> and <option>test</option> you need root access.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
If <option>--build-host</option> is not explicitly specified,
|
||||
<option>--build-host</option> will implicitly be set to the same value as
|
||||
|
@ -457,6 +486,7 @@
|
|||
place remotely (and no build artifacts will be copied to the local
|
||||
machine).
|
||||
</para>
|
||||
|
||||
<para>
|
||||
You can include a remote user name in the host name
|
||||
(<replaceable>user@host</replaceable>). You can also set ssh options by
|
||||
|
@ -465,6 +495,7 @@
|
|||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
|
||||
<para>
|
||||
In addition, <command>nixos-rebuild</command> accepts various Nix-related
|
||||
flags, including <option>--max-jobs</option> / <option>-j</option>,
|
||||
|
@ -473,8 +504,10 @@
|
|||
<option>-v</option>. See the Nix manual for details.
|
||||
</para>
|
||||
</refsection>
|
||||
|
||||
<refsection>
|
||||
<title>Environment</title>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term>
|
||||
|
@ -487,6 +520,7 @@
|
|||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<envar>NIX_SSHOPTS</envar>
|
||||
|
@ -500,9 +534,12 @@
|
|||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsection>
|
||||
|
||||
<refsection>
|
||||
<title>Files</title>
|
||||
|
||||
<variablelist>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<filename>/run/current-system</filename>
|
||||
|
@ -513,6 +550,7 @@
|
|||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<filename>/nix/var/nix/profiles/system</filename>
|
||||
|
@ -524,8 +562,10 @@
|
|||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
</refsection>
|
||||
|
||||
<refsection>
|
||||
<title>Bugs</title>
|
||||
<para>
|
||||
|
|
|
@ -478,6 +478,12 @@
|
|||
Prometheus 2 is now configured with <literal>services.prometheus</literal>.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Citrix Receiver (<literal>citrix_receiver</literal>) has been dropped in favor of Citrix Workspace
|
||||
(<literal>citrix_workspace</literal>).
|
||||
</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</section>
|
||||
|
||||
|
|
|
@ -273,20 +273,6 @@ with lib;
|
|||
(mkRenamedOptionModule [ "networking" "extraResolvconfConf" ] [ "networking" "resolvconf" "extraConfig" ])
|
||||
(mkRenamedOptionModule [ "networking" "resolvconfOptions" ] [ "networking" "resolvconf" "extraOptions" ])
|
||||
|
||||
# Redshift
|
||||
(mkChangedOptionModule [ "services" "redshift" "latitude" ] [ "location" "latitude" ]
|
||||
(config:
|
||||
let value = getAttrFromPath [ "services" "redshift" "latitude" ] config;
|
||||
in if value == null then
|
||||
throw "services.redshift.latitude is set to null, you can remove this"
|
||||
else builtins.fromJSON value))
|
||||
(mkChangedOptionModule [ "services" "redshift" "longitude" ] [ "location" "longitude" ]
|
||||
(config:
|
||||
let value = getAttrFromPath [ "services" "redshift" "longitude" ] config;
|
||||
in if value == null then
|
||||
throw "services.redshift.longitude is set to null, you can remove this"
|
||||
else builtins.fromJSON value))
|
||||
|
||||
# Redis
|
||||
(mkRemovedOptionModule [ "services" "redis" "user" ] "The redis module now is hardcoded to the redis user.")
|
||||
(mkRemovedOptionModule [ "services" "redis" "dbpath" ] "The redis module now uses /var/lib/redis as data directory.")
|
||||
|
|
|
@ -275,6 +275,7 @@ in
|
|||
${pkgs.sudo}/bin/sudo -u ${config.services.postgresql.superUser} ${config.services.postgresql.package}/bin/createdb -O hydra hydra
|
||||
touch ${baseDir}/.db-created
|
||||
fi
|
||||
echo "create extension if not exists pg_trgm" | ${pkgs.sudo}/bin/sudo -u ${config.services.postgresql.superUser} -- ${config.services.postgresql.package}/bin/psql hydra
|
||||
''}
|
||||
|
||||
if [ ! -e ${cfg.gcRootsDir} ]; then
|
||||
|
@ -379,6 +380,23 @@ in
|
|||
};
|
||||
};
|
||||
|
||||
systemd.services.hydra-notify =
|
||||
{ wantedBy = [ "multi-user.target" ];
|
||||
requires = [ "hydra-init.service" ];
|
||||
after = [ "hydra-init.service" ];
|
||||
restartTriggers = [ hydraConf ];
|
||||
environment = env // {
|
||||
PGPASSFILE = "${baseDir}/pgpass-queue-runner";
|
||||
};
|
||||
serviceConfig =
|
||||
{ ExecStart = "@${cfg.package}/bin/hydra-notify hydra-notify";
|
||||
# FIXME: run this under a less privileged user?
|
||||
User = "hydra-queue-runner";
|
||||
Restart = "always";
|
||||
RestartSec = 5;
|
||||
};
|
||||
};
|
||||
|
||||
# If there is less than a certain amount of free disk space, stop
|
||||
# the queue/evaluator to prevent builds from failing or aborting.
|
||||
systemd.services.hydra-check-space =
|
||||
|
@ -416,6 +434,8 @@ in
|
|||
hydra-users hydra-queue-runner hydra
|
||||
hydra-users hydra-www hydra
|
||||
hydra-users root hydra
|
||||
# The postgres user is used to create the pg_trgm extension for the hydra database
|
||||
hydra-users postgres postgres
|
||||
'';
|
||||
|
||||
services.postgresql.authentication = optionalString haveLocalDB
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
{ config, lib, pkgs, utils, ... }:
|
||||
|
||||
# TODO: support non-postgresql
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
|
@ -806,8 +804,8 @@ in {
|
|||
export otp="$(<'${cfg.secrets.otpFile}')"
|
||||
export jws="$(<'${cfg.secrets.jwsFile}')"
|
||||
${pkgs.jq}/bin/jq -n '{production: {secret_key_base: $ENV.secret,
|
||||
otp_key_base: $ENV.db,
|
||||
db_key_base: $ENV.otp,
|
||||
otp_key_base: $ENV.otp,
|
||||
db_key_base: $ENV.db,
|
||||
openid_connect_signing_key: $ENV.jws}}' \
|
||||
> '${cfg.statePath}/config/secrets.yml'
|
||||
)
|
||||
|
|
|
@ -8,6 +8,8 @@ let
|
|||
dynamicHostsEnabled =
|
||||
cfg.dynamicHosts.enable && cfg.dynamicHosts.hostsDirs != {};
|
||||
|
||||
delegateWireless = config.networking.wireless.enable == true && cfg.unmanaged != [];
|
||||
|
||||
# /var/lib/misc is for dnsmasq.leases.
|
||||
stateDirs = "/var/lib/NetworkManager /var/lib/dhclient /var/lib/misc";
|
||||
|
||||
|
@ -177,10 +179,11 @@ in {
|
|||
basePackages = mkOption {
|
||||
type = types.attrsOf types.package;
|
||||
default = { inherit (pkgs)
|
||||
networkmanager modemmanager wpa_supplicant crda
|
||||
networkmanager modemmanager crda
|
||||
networkmanager-openvpn networkmanager-vpnc
|
||||
networkmanager-openconnect networkmanager-fortisslvpn
|
||||
networkmanager-l2tp networkmanager-iodine; };
|
||||
networkmanager-l2tp networkmanager-iodine; }
|
||||
// optionalAttrs (!delegateWireless) { inherit (pkgs) wpa_supplicant; };
|
||||
internal = true;
|
||||
};
|
||||
|
||||
|
@ -377,8 +380,11 @@ in {
|
|||
config = mkIf cfg.enable {
|
||||
|
||||
assertions = [
|
||||
{ assertion = config.networking.wireless.enable == false;
|
||||
message = "You can not use networking.networkmanager with networking.wireless";
|
||||
{ assertion = config.networking.wireless.enable == true -> cfg.unmanaged != [];
|
||||
message = ''
|
||||
You can not use networking.networkmanager with networking.wireless.
|
||||
Except if you mark some interfaces as <literal>unmanaged</literal> by NetworkManager.
|
||||
'';
|
||||
}
|
||||
{ assertion = !dynamicHostsEnabled || (dynamicHostsEnabled && cfg.dns == "dnsmasq");
|
||||
message = ''
|
||||
|
@ -496,18 +502,17 @@ in {
|
|||
aliases = [ "dbus-org.freedesktop.nm-dispatcher.service" ];
|
||||
};
|
||||
|
||||
# Turn off NixOS' network management
|
||||
networking = {
|
||||
# Turn off NixOS' network management when networking is managed entirely by NetworkManager
|
||||
networking = (mkIf (!delegateWireless) {
|
||||
useDHCP = false;
|
||||
# use mkDefault to trigger the assertion about the conflict above
|
||||
# Use mkDefault to trigger the assertion about the conflict above
|
||||
wireless.enable = mkDefault false;
|
||||
};
|
||||
}) // (mkIf cfg.enableStrongSwan {
|
||||
networkmanager.packages = [ pkgs.networkmanager_strongswan ];
|
||||
});
|
||||
|
||||
security.polkit.extraConfig = polkitConf;
|
||||
|
||||
networking.networkmanager.packages =
|
||||
mkIf cfg.enableStrongSwan [ pkgs.networkmanager_strongswan ];
|
||||
|
||||
services.dbus.packages =
|
||||
optional cfg.enableStrongSwan pkgs.strongswanNM ++ cfg.packages;
|
||||
|
||||
|
|
|
@ -120,16 +120,24 @@ in {
|
|||
'';
|
||||
};
|
||||
|
||||
poolConfig = mkOption {
|
||||
type = types.lines;
|
||||
default = ''
|
||||
pm = dynamic
|
||||
pm.max_children = 32
|
||||
pm.start_servers = 2
|
||||
pm.min_spare_servers = 2
|
||||
pm.max_spare_servers = 4
|
||||
pm.max_requests = 500
|
||||
poolSettings = mkOption {
|
||||
type = with types; attrsOf (oneOf [ str int bool ]);
|
||||
default = {
|
||||
"pm" = "dynamic";
|
||||
"pm.max_children" = "32";
|
||||
"pm.start_servers" = "2";
|
||||
"pm.min_spare_servers" = "2";
|
||||
"pm.max_spare_servers" = "4";
|
||||
"pm.max_requests" = "500";
|
||||
};
|
||||
description = ''
|
||||
Options for nextcloud's PHP pool. See the documentation on <literal>php-fpm.conf</literal> for details on configuration directives.
|
||||
'';
|
||||
};
|
||||
|
||||
poolConfig = mkOption {
|
||||
type = types.nullOr types.lines;
|
||||
default = null;
|
||||
description = ''
|
||||
Options for nextcloud's PHP pool. See the documentation on <literal>php-fpm.conf</literal> for details on configuration directives.
|
||||
'';
|
||||
|
@ -287,6 +295,11 @@ in {
|
|||
message = "Please specify exactly one of adminpass or adminpassFile";
|
||||
}
|
||||
];
|
||||
|
||||
warnings = optional (cfg.poolConfig != null) ''
|
||||
Using config.services.nextcloud.poolConfig is deprecated and will become unsupported in a future release.
|
||||
Please migrate your configuration to config.services.nextcloud.poolSettings.
|
||||
'';
|
||||
}
|
||||
|
||||
{ systemd.timers.nextcloud-cron = {
|
||||
|
@ -423,7 +436,7 @@ in {
|
|||
settings = mapAttrs (name: mkDefault) {
|
||||
"listen.owner" = "nginx";
|
||||
"listen.group" = "nginx";
|
||||
};
|
||||
} // cfg.poolSettings;
|
||||
extraConfig = cfg.poolConfig;
|
||||
};
|
||||
};
|
||||
|
|
|
@ -9,6 +9,22 @@ let
|
|||
|
||||
in {
|
||||
|
||||
imports = [
|
||||
(mkChangedOptionModule [ "services" "redshift" "latitude" ] [ "location" "latitude" ]
|
||||
(config:
|
||||
let value = getAttrFromPath [ "services" "redshift" "latitude" ] config;
|
||||
in if value == null then
|
||||
throw "services.redshift.latitude is set to null, you can remove this"
|
||||
else builtins.fromJSON value))
|
||||
(mkChangedOptionModule [ "services" "redshift" "longitude" ] [ "location" "longitude" ]
|
||||
(config:
|
||||
let value = getAttrFromPath [ "services" "redshift" "longitude" ] config;
|
||||
in if value == null then
|
||||
throw "services.redshift.longitude is set to null, you can remove this"
|
||||
else builtins.fromJSON value))
|
||||
(mkRenamedOptionModule [ "services" "redshift" "provider" ] [ "location" "provider" ])
|
||||
];
|
||||
|
||||
options.services.redshift = {
|
||||
enable = mkOption {
|
||||
type = types.bool;
|
||||
|
|
|
@ -218,7 +218,7 @@ in
|
|||
|
||||
systemd.user = {
|
||||
services.nixos-activation = {
|
||||
description = "Run user specific NixOS activation";
|
||||
description = "Run user-specific NixOS activation";
|
||||
script = config.system.userActivationScripts.script;
|
||||
unitConfig.ConditionUser = "!@system";
|
||||
serviceConfig.Type = "oneshot";
|
||||
|
|
|
@ -88,7 +88,7 @@ let cfg = config.system.autoUpgrade; in
|
|||
HOME = "/root";
|
||||
} // config.networking.proxy.envVars;
|
||||
|
||||
path = [ pkgs.coreutils pkgs.gnutar pkgs.xz.bin pkgs.gitMinimal config.nix.package.out ];
|
||||
path = with pkgs; [ coreutils gnutar xz.bin gzip gitMinimal config.nix.package.out ];
|
||||
|
||||
script = let
|
||||
nixos-rebuild = "${config.system.build.nixos-rebuild}/bin/nixos-rebuild";
|
||||
|
|
|
@ -44,6 +44,8 @@ cat >data.json <<EOF
|
|||
"enabled": "1",
|
||||
"visible": "1",
|
||||
"keepnr": "1",
|
||||
"enableemail": true,
|
||||
"emailoverride": "hydra@localhost",
|
||||
"nixexprinput": "trivial",
|
||||
"nixexprpath": "trivial.nix",
|
||||
"inputs": {
|
||||
|
|
|
@ -8,8 +8,10 @@ let
|
|||
trivialJob = pkgs.writeTextDir "trivial.nix" ''
|
||||
{ trivial = builtins.derivation {
|
||||
name = "trivial";
|
||||
system = "x86_64-linux";
|
||||
system = "${system}";
|
||||
builder = "/bin/sh";
|
||||
allowSubstitutes = false;
|
||||
preferLocalBuild = true;
|
||||
args = ["-c" "echo success > $out; exit 0"];
|
||||
};
|
||||
}
|
||||
|
@ -53,11 +55,16 @@ let
|
|||
notificationSender = "example@example.com";
|
||||
|
||||
package = pkgs.hydra.override { inherit nix; };
|
||||
|
||||
extraConfig = ''
|
||||
email_notification = 1
|
||||
'';
|
||||
};
|
||||
services.postfix.enable = true;
|
||||
nix = {
|
||||
buildMachines = [{
|
||||
hostName = "localhost";
|
||||
systems = [ "x86_64-linux" ];
|
||||
systems = [ system ];
|
||||
}];
|
||||
|
||||
binaryCaches = [];
|
||||
|
@ -68,12 +75,12 @@ let
|
|||
# let the system boot up
|
||||
$machine->waitForUnit("multi-user.target");
|
||||
# test whether the database is running
|
||||
$machine->succeed("systemctl status postgresql.service");
|
||||
$machine->waitForUnit("postgresql.service");
|
||||
# test whether the actual hydra daemons are running
|
||||
$machine->succeed("systemctl status hydra-queue-runner.service");
|
||||
$machine->succeed("systemctl status hydra-init.service");
|
||||
$machine->succeed("systemctl status hydra-evaluator.service");
|
||||
$machine->succeed("systemctl status hydra-send-stats.service");
|
||||
$machine->waitForUnit("hydra-init.service");
|
||||
$machine->requireActiveUnit("hydra-queue-runner.service");
|
||||
$machine->requireActiveUnit("hydra-evaluator.service");
|
||||
$machine->requireActiveUnit("hydra-notify.service");
|
||||
|
||||
$machine->succeed("hydra-create-user admin --role admin --password admin");
|
||||
|
||||
|
@ -84,6 +91,8 @@ let
|
|||
$machine->succeed("create-trivial-project.sh");
|
||||
|
||||
$machine->waitUntilSucceeds('curl -L -s http://localhost:3000/build/1 -H "Accept: application/json" | jq .buildstatus | xargs test 0 -eq');
|
||||
|
||||
$machine->waitUntilSucceeds('journalctl -eu hydra-notify.service -o cat | grep -q "sending mail notification to hydra@localhost"');
|
||||
'';
|
||||
})));
|
||||
|
||||
|
|
|
@ -63,8 +63,8 @@ in
|
|||
$client2->sendChars("y");
|
||||
|
||||
# Find clients in logs
|
||||
$server->waitUntilSucceeds("grep -q 'client1' /var/log/murmur/murmurd.log");
|
||||
$server->waitUntilSucceeds("grep -q 'client2' /var/log/murmur/murmurd.log");
|
||||
$server->waitUntilSucceeds("journalctl -eu murmur -o cat | grep -q client1");
|
||||
$server->waitUntilSucceeds("journalctl -eu murmur -o cat | grep -q client2");
|
||||
|
||||
$server->sleep(5); # wait to get screenshot
|
||||
$client1->screenshot("screen1");
|
||||
|
|
|
@ -26,7 +26,7 @@ import ./make-test.nix ({ pkgs, ...} : {
|
|||
$machine->waitForFile("/home/alice/.Xauthority");
|
||||
$machine->succeed("xauth merge ~alice/.Xauthority");
|
||||
$machine->sendKeys("alt-ctrl-x");
|
||||
$machine->waitForWindow(qr/machine.*alice/);
|
||||
$machine->waitForWindow(qr/alice.*machine/);
|
||||
$machine->sleep(1);
|
||||
$machine->screenshot("terminal");
|
||||
$machine->waitUntilSucceeds("xmonad --restart");
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
pname = "lollypop";
|
||||
version = "1.1.4.14";
|
||||
version = "1.1.4.16";
|
||||
|
||||
format = "other";
|
||||
doCheck = false;
|
||||
|
@ -29,7 +29,7 @@ python3.pkgs.buildPythonApplication rec {
|
|||
url = "https://gitlab.gnome.org/World/lollypop";
|
||||
rev = "refs/tags/${version}";
|
||||
fetchSubmodules = true;
|
||||
sha256 = "004cwbnxss6vmdsc6i0y83h3xbc2bzc0ra4z99pkizkky2mz6swj";
|
||||
sha256 = "1azfxc1vc1j4ph0zrfsgz2gac1vwmbj65j6wjlxx3nr8kia4mccl";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "wasabiwallet";
|
||||
version = "1.1.6";
|
||||
version = "1.1.9";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/zkSNACKs/WalletWasabi/releases/download/v${version}/WasabiLinux-${version}.tar.gz";
|
||||
sha256 = "1i7fhaj9chjlm7qg0h3azy4djnm9rxskbr3dzjj0n9rw8cjdqyq6";
|
||||
sha256 = "1dz05ivhadfjfp4yfpz492401yznm3rlnx7g4nqzxwh4cmqzisrm";
|
||||
};
|
||||
|
||||
dontBuild = true;
|
||||
|
|
|
@ -68,10 +68,6 @@ env NIXPKGS_ALLOW_BROKEN=1 nix-instantiate --show-trace ../../../../ -A emacsPac
|
|||
inherit (self.melpaPackages) easy-kill;
|
||||
};
|
||||
|
||||
elpy = super.elpy.overrideAttrs(old: {
|
||||
propagatedUserEnvPkgs = old.propagatedUserEnvPkgs ++ [ external.elpy ];
|
||||
});
|
||||
|
||||
emacsql-sqlite = super.emacsql-sqlite.overrideAttrs(old: {
|
||||
buildInputs = old.buildInputs ++ [ pkgs.sqlite ];
|
||||
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
{ stdenv, zlib, fetchFromGitHub, python3Packages }:
|
||||
{ stdenv, zlib, fetchFromGitHub, python3Packages, wrapQtAppsHook }:
|
||||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "manuskript";
|
||||
version = "0.9.0";
|
||||
|
||||
format = "other";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
repo = pname;
|
||||
owner = "olivierkes";
|
||||
|
@ -11,6 +13,8 @@ python3Packages.buildPythonApplication rec {
|
|||
sha256 = "13y1s0kba1ib6g977n7h920kyr7abdw03kpal512m7iwa9g2kdw8";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ wrapQtAppsHook ];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
python3Packages.pyqt5
|
||||
python3Packages.lxml
|
||||
|
@ -30,6 +34,10 @@ python3Packages.buildPythonApplication rec {
|
|||
cp -r sample-projects/ $out/share/${pname}
|
||||
'';
|
||||
|
||||
postFixup = ''
|
||||
wrapQtApp $out/bin/manuskript
|
||||
'';
|
||||
|
||||
doCheck = false;
|
||||
|
||||
meta = {
|
||||
|
|
|
@ -11,13 +11,13 @@ let
|
|||
archive_fmt = if system == "x86_64-darwin" then "zip" else "tar.gz";
|
||||
|
||||
sha256 = {
|
||||
x86_64-linux = "1iz36nhkg78346g5407df6jv4d1ydb22hhgs8hiaxql3hq5z7x3q";
|
||||
x86_64-darwin = "1iijk0kx90rax39iradbbafyvd3vwnzsgvyb3s13asy42pbhhkky";
|
||||
x86_64-linux = "1wxaxz2q4qizh6f23ipz8ihay6bpjdq0545vijqd84fqazcji6sq";
|
||||
x86_64-darwin = "1gb9w3hvw3avn852an5v8m1ia64fkavnvaawjfc3455b248iiqvk";
|
||||
}.${system};
|
||||
in
|
||||
callPackage ./generic.nix rec {
|
||||
|
||||
version = "1.38.0";
|
||||
version = "1.38.1";
|
||||
pname = "vscode";
|
||||
|
||||
executableName = "code" + lib.optionalString isInsiders "-insiders";
|
||||
|
|
|
@ -11,13 +11,13 @@ let
|
|||
archive_fmt = if system == "x86_64-darwin" then "zip" else "tar.gz";
|
||||
|
||||
sha256 = {
|
||||
x86_64-linux = "09rq5jx7aicwp3qqi5pcv6bmyyp1rm5cfa96hvy3f4grhq1fi132";
|
||||
x86_64-darwin = "1y1lbb3q5myaz7jg21x5sl0in8wr46brqj9zyrg3f16zahsagzr4";
|
||||
x86_64-linux = "15m7mfb8gmx3pwydc37blj0rxwgmkrnqfj6y79rpqlr2dg92gwlb";
|
||||
x86_64-darwin = "080k4fnfa5ylmmya6zprgci3gld9mrbqsfnk53hgcny91ykl5xj5";
|
||||
}.${system};
|
||||
in
|
||||
callPackage ./generic.nix rec {
|
||||
|
||||
version = "1.38.0";
|
||||
version = "1.38.1";
|
||||
pname = "vscodium";
|
||||
|
||||
executableName = "codium";
|
||||
|
|
|
@ -1,18 +1,21 @@
|
|||
{ stdenv, rustPlatform , fetchFromGitHub, Security }:
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "whitebox_tools";
|
||||
version = "0.9.0";
|
||||
version = "0.16.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "jblindsay";
|
||||
repo = "whitebox-tools";
|
||||
rev = "6221cdf327be70f0ee4f2053b76bfa01c3f37caa";
|
||||
sha256 = "1423ga964mz7qkl88vkcm8qfprsksx04aq4sz9v5ghnmdzzvl89x";
|
||||
rev = "v${version}";
|
||||
sha256 = "1vs4hf2x3qjnffs9kjx56rzl67kpcy8xvng6p0r9fp9mfnblxg6j";
|
||||
};
|
||||
|
||||
buildInputs = stdenv.lib.optional stdenv.isDarwin Security;
|
||||
|
||||
cargoSha256 = "11m13h9b75xz8dfisfcykar53qsl1crrp3l75s73gkkkvczlfd24";
|
||||
cargoSha256 = "1y3vk8bzsaisx7wrncjxcqdh355f2wk4n59vq5qgj37fph2zpy7f";
|
||||
|
||||
# failures: structures::polyline::test::test_polyline_split
|
||||
doCheck = false;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "An advanced geospatial data analysis platform";
|
||||
|
|
|
@ -1,22 +0,0 @@
|
|||
Get the environment propagated to scons forked childs, and correct the dicom plugin about
|
||||
a typedef of size_t that failed at least on x86_64-linux.
|
||||
|
||||
diff --git a/SConstruct b/SConstruct
|
||||
index 9e752d6..f93f27f 100644
|
||||
--- a/SConstruct
|
||||
+++ b/SConstruct
|
||||
@@ -9,13 +9,7 @@ else:
|
||||
|
||||
commit_id = os.popen('git rev-parse HEAD').read().replace('\n','')
|
||||
|
||||
-env = Environment(LIBPATH=[],
|
||||
- CPPFLAGS = cppflags + ['-Wno-deprecated-declarations',
|
||||
- '-Wno-reorder',
|
||||
- '-Wno-unused-but-set-variable',
|
||||
- '-Wno-unused-function'],
|
||||
- CXXFLAGS=['-std=c++1y']
|
||||
- )
|
||||
+env = Environment(ENV = os.environ)
|
||||
|
||||
env['SBOX'] = False
|
||||
env['COMMITIDSHORT'] = commit_id[0:6]
|
|
@ -1,34 +0,0 @@
|
|||
{ stdenv, fetchFromGitHub, gdk-pixbuf, scons, pkgconfig, gtk2, glib
|
||||
, pcre, cfitsio, perl, gob2, vala, libtiff, json-glib }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "giv";
|
||||
version = "0.9.26";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "dov";
|
||||
repo = "giv";
|
||||
rev = "v${version}";
|
||||
sha256 = "1sfm8j3hvqij6z3h8xz724d7hjqqbzljl2a6pp4yjpnnrxksnic2";
|
||||
};
|
||||
|
||||
hardeningDisable = [ "format" ];
|
||||
|
||||
prePatch = ''
|
||||
sed -i s,/usr/bin/perl,${perl}/bin/perl, doc/eperl
|
||||
sed -i s,/usr/local,$out, SConstruct
|
||||
'';
|
||||
|
||||
patches = [ ./build.patch ];
|
||||
|
||||
nativeBuildInputs = [ scons pkgconfig vala perl gob2 ];
|
||||
buildInputs = [ gdk-pixbuf gtk2 glib pcre cfitsio libtiff json-glib ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Cross platform image and hierarchical vector viewer based";
|
||||
homepage = http://giv.sourceforge.net/giv/;
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = with maintainers; [ ];
|
||||
platforms = with platforms; linux;
|
||||
};
|
||||
}
|
|
@ -103,6 +103,6 @@ stdenv.mkDerivation rec {
|
|||
description = "Image browser and viewer for GNOME";
|
||||
platforms = platforms.linux;
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = [ maintainers.mimadrid ];
|
||||
maintainers = [ maintainers.mimame ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -10,11 +10,11 @@
|
|||
|
||||
mkDerivation rec {
|
||||
pname = "krita";
|
||||
version = "4.2.5";
|
||||
version = "4.2.6";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://download.kde.org/stable/${pname}/${version}/${pname}-${version}.tar.gz";
|
||||
sha256 = "1f14r2mrqasl6nr3sss0xy2h8xlxd5wdcjcd64m9nz2gwlm39r7w";
|
||||
url = "https://download.kde.org/stable/${pname}/${version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "0qdaw8xx3h91v8iw6nw2h276ka8hflaq4r4qwz5mqfd3h254jzym";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake extra-cmake-modules python3Packages.sip makeWrapper ];
|
||||
|
|
|
@ -70,10 +70,13 @@ mkDerivation {
|
|||
kpurpose
|
||||
kdeclarative
|
||||
];
|
||||
patches = [ ./mlt-path.patch ];
|
||||
inherit mlt;
|
||||
postPatch =
|
||||
# Module Qt5::Concurrent must be included in `find_package` before it is used.
|
||||
''
|
||||
sed -i CMakeLists.txt -e '/find_package(Qt5 REQUIRED/ s|)| Concurrent)|'
|
||||
substituteAllInPlace src/kdenlivesettings.kcfg
|
||||
'';
|
||||
meta = {
|
||||
license = with lib.licenses; [ gpl2Plus ];
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
kmail-account-wizard, kmailtransport, knotifications, knotifyconfig,
|
||||
kontactinterface, kparts, kpty, kservice, ktextwidgets, ktnef, kwallet,
|
||||
kwidgetsaddons, kwindowsystem, kxmlgui, libgravatar, libksieve, mailcommon,
|
||||
messagelib, pim-sieve-editor, qtscript, qtwebengine,
|
||||
messagelib, pim-sieve-editor, qtscript, qtwebengine, akonadi
|
||||
}:
|
||||
|
||||
mkDerivation {
|
||||
|
@ -25,6 +25,6 @@ mkDerivation {
|
|||
ktextwidgets ktnef kwidgetsaddons kwindowsystem kxmlgui libgravatar
|
||||
libksieve mailcommon messagelib pim-sieve-editor qtscript qtwebengine
|
||||
];
|
||||
propagatedUserEnvPkgs = [ kdepim-runtime kwallet ];
|
||||
propagatedUserEnvPkgs = [ kdepim-runtime kwallet akonadi ];
|
||||
patches = [ ./kmail.patch ];
|
||||
}
|
||||
|
|
22
pkgs/applications/kde/mlt-path.patch
Normal file
22
pkgs/applications/kde/mlt-path.patch
Normal file
|
@ -0,0 +1,22 @@
|
|||
diff -ruN old/src/kdenlivesettings.kcfg new/src/kdenlivesettings.kcfg
|
||||
--- old/src/kdenlivesettings.kcfg 2019-09-10 23:20:27.555392353 -0400
|
||||
+++ new/src/kdenlivesettings.kcfg 2019-09-10 23:25:47.533964155 -0400
|
||||
@@ -378,14 +378,14 @@
|
||||
</group>
|
||||
|
||||
<group name="env">
|
||||
- <entry name="mltpath" type="Path">
|
||||
+ <entry name="mltpath" type="Path" hidden="true">
|
||||
<label>Mlt framework install path.</label>
|
||||
- <default></default>
|
||||
+ <default>@mlt@/share/mlt/profiles</default>
|
||||
</entry>
|
||||
|
||||
- <entry name="rendererpath" type="Path">
|
||||
+ <entry name="rendererpath" type="Path" hidden="true">
|
||||
<label>Mlt melt renderer install path.</label>
|
||||
- <default></default>
|
||||
+ <default>@mlt@/bin/melt</default>
|
||||
</entry>
|
||||
|
||||
<entry name="ffmpegpath" type="Path">
|
|
@ -1,33 +1,33 @@
|
|||
{ stdenv, swiProlog, makeWrapper,
|
||||
fetchFromGitHub,
|
||||
lexicon ? "lexicon/clex_lexicon.pl",
|
||||
lexicon ? "prolog/lexicon/clex_lexicon.pl",
|
||||
pname ? "ape",
|
||||
description ? "Parser for Attempto Controlled English (ACE)",
|
||||
license ? with stdenv.lib; licenses.lgpl3
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "${pname}-${version}";
|
||||
version = "6.7-131003";
|
||||
inherit pname;
|
||||
version = "2019-08-10";
|
||||
|
||||
buildInputs = [ swiProlog makeWrapper ];
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Attempto";
|
||||
repo = "APE";
|
||||
rev = version;
|
||||
sha256 = "0cw47qjg4896kw3vps6rfs02asvscsqvcfdiwgfmqb3hvykb1sdx";
|
||||
rev = "113b81621262d7a395779465cb09397183e6f74c";
|
||||
sha256 = "0xyvna2fbr18hi5yvm0zwh77q02dfna1g4g53z9mn2rmlfn2mhjh";
|
||||
};
|
||||
|
||||
patchPhase = ''
|
||||
# We move the file first to avoid "same file" error in the default case
|
||||
cp ${lexicon} new_lexicon.pl
|
||||
rm lexicon/clex_lexicon.pl
|
||||
cp new_lexicon.pl lexicon/clex_lexicon.pl
|
||||
rm prolog/lexicon/clex_lexicon.pl
|
||||
cp new_lexicon.pl prolog/lexicon/clex_lexicon.pl
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
make build
|
||||
make SHELL=${stdenv.shell} build
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
|
|
|
@ -22,17 +22,21 @@ stdenv.mkDerivation {
|
|||
nativeBuildInputs = [ autoreconfHook pkgconfig ];
|
||||
buildInputs = [ glib libxml2 exiv2 imagemagick ];
|
||||
|
||||
prePatch = ''
|
||||
sed -i 's|#include <exiv2/exif.hpp>|#include <exiv2/exiv2.hpp>|' src/jpeg-utils.cpp
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
mkdir $out/{bin,share} -p
|
||||
cp src/cgg{,-dirgen} $out/bin/
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = http://cgg.bzatek.net/;
|
||||
description = "a simple static web photo gallery, designed to be clean and easily usable";
|
||||
license = stdenv.lib.licenses.gpl2;
|
||||
maintainers = [ stdenv.lib.maintainers.matthiasbeyer ];
|
||||
platforms = with stdenv.lib.platforms; linux ++ darwin;
|
||||
meta = with stdenv.lib; {
|
||||
homepage = "http://cgg.bzatek.net/";
|
||||
description = "A simple static web photo gallery, designed to be clean and easily usable";
|
||||
license = licenses.gpl2;
|
||||
maintainers = [ maintainers.matthiasbeyer ];
|
||||
platforms = with platforms; linux ++ darwin;
|
||||
};
|
||||
}
|
||||
|
||||
|
|
|
@ -7,15 +7,15 @@ let
|
|||
else
|
||||
[ wxGTK ];
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "diff-pdf";
|
||||
version = "2017-12-30";
|
||||
version = "0.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "vslavik";
|
||||
repo = "diff-pdf";
|
||||
rev = "c4d67226ec4c29b30a7399e75f80636ff8a6f9fc";
|
||||
sha256 = "1c3ig7ckrg37p5vzvgjnsfdzdad328wwsx0r31lbs1d8pkjkgq3m";
|
||||
rev = "v${version}";
|
||||
sha256 = "0vzvyjpk6m89zs6j1dq85f93n2b1i6akn2g0z9qhagjd2pds920i";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ autoconf automake pkgconfig ];
|
||||
|
@ -24,9 +24,10 @@ stdenv.mkDerivation {
|
|||
preConfigure = "./bootstrap";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://vslavik.github.io/diff-pdf;
|
||||
homepage = "https://vslavik.github.io/diff-pdf/";
|
||||
description = "Simple tool for visually comparing two PDF files";
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.all;
|
||||
maintainers = with maintainers; [ dtzWill ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "electron-cash";
|
||||
version = "4.0.7";
|
||||
version = "4.0.10";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://electroncash.org/downloads/${version}/win-linux/Electron-Cash-${version}.tar.gz";
|
||||
# Verified using official SHA-1 and signature from
|
||||
# https://github.com/fyookball/keys-n-hashes
|
||||
sha256 = "d63ef2d52cff0b821b745067d752fd0c7f2902fa23eaf8e9392c54864cae5c77";
|
||||
sha256 = "48270e12956a2f4ef4d2b0cb60611e47f136b734a3741dab176542a32ae59ee5";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with python3Packages; [
|
||||
|
|
|
@ -5,13 +5,13 @@ with python3.pkgs;
|
|||
|
||||
buildPythonApplication rec {
|
||||
pname = "gcalcli";
|
||||
version = "4.1.1";
|
||||
version = "4.2.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "insanum";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "1qlmslywm4dfimggly4p0ckn2gj165mq1p0wkry9jpb3sg1m5fdf";
|
||||
sha256 = "0746vmhfclkpkqnyaidxid2z20mlv86hv0pjxy1qglrja91vkd72";
|
||||
};
|
||||
|
||||
postPatch = lib.optionalString stdenv.isLinux ''
|
||||
|
|
62
pkgs/applications/misc/gnome-multi-writer/default.nix
Normal file
62
pkgs/applications/misc/gnome-multi-writer/default.nix
Normal file
|
@ -0,0 +1,62 @@
|
|||
{ stdenv
|
||||
, fetchurl
|
||||
, appstream-glib
|
||||
, desktop-file-utils
|
||||
, gettext
|
||||
, glib
|
||||
, gnome3
|
||||
, gtk3
|
||||
, gusb
|
||||
, libcanberra-gtk3
|
||||
, libgudev
|
||||
, meson
|
||||
, ninja
|
||||
, pkgconfig
|
||||
, wrapGAppsHook
|
||||
, polkit
|
||||
, udisks
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "gnome-multi-writer";
|
||||
version = "3.32.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "1apdd8yi12zagf82k376a9wmdm27wzwdxpm2wf2pnwkaf786rmdw";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
appstream-glib
|
||||
desktop-file-utils
|
||||
gettext
|
||||
meson
|
||||
ninja
|
||||
pkgconfig
|
||||
wrapGAppsHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
glib
|
||||
gtk3
|
||||
gusb
|
||||
libcanberra-gtk3
|
||||
libgudev
|
||||
polkit
|
||||
udisks
|
||||
];
|
||||
|
||||
passthru = {
|
||||
updateScript = gnome3.updateScript {
|
||||
packageName = pname;
|
||||
};
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Tool for writing an ISO file to multiple USB devices at once";
|
||||
homepage = https://wiki.gnome.org/Apps/MultiWriter;
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = gnome3.maintainers;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
mkDerivation rec {
|
||||
pname = "gpxsee";
|
||||
version = "7.12";
|
||||
version = "7.13";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "tumic0";
|
||||
repo = "GPXSee";
|
||||
rev = version;
|
||||
sha256 = "0c3axs3mm6xzabwbvy9vgq1sryjpi4h91nwzy9iyv9zjxz7phgzc";
|
||||
sha256 = "08cg5k4ffj2wrcm4rk7vyixbyyz0424276fw2fn8lmziklkdqyjw";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ qmake ];
|
||||
|
@ -28,7 +28,7 @@ mkDerivation rec {
|
|||
all common GPS log file formats.
|
||||
'';
|
||||
license = licenses.gpl3;
|
||||
maintainers = [ maintainers.womfoo ];
|
||||
maintainers = with maintainers; [ womfoo sikmir ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -2,12 +2,12 @@
|
|||
|
||||
let
|
||||
pname = "joplin-desktop";
|
||||
version = "1.0.158";
|
||||
version = "1.0.167";
|
||||
in appimageTools.wrapType2 rec {
|
||||
name = "${pname}-${version}";
|
||||
src = fetchurl {
|
||||
url = "https://github.com/laurent22/joplin/releases/download/v${version}/Joplin-${version}-x86_64.AppImage";
|
||||
sha256 = "1xaamwcasihja3agwb0nnfnzc1wmmr0d2ng73qmfil9nhf9v3j6q";
|
||||
sha256 = "062f2av60490ffrml0q8zv68yir6zaqif0g3d32c985gcvmgn9lw";
|
||||
};
|
||||
|
||||
|
||||
|
|
|
@ -30,73 +30,25 @@ stdenv.mkDerivation rec {
|
|||
cp -r ${v251a_src}/* $sourceRoot
|
||||
'';
|
||||
|
||||
patches = [ ./k2pdfopt.patch ];
|
||||
patches = [ ./k2pdfopt.patch ./k2pdfopt-mupdf-1.16.1.patch ];
|
||||
|
||||
nativeBuildInputs = [ cmake pkgconfig ];
|
||||
|
||||
buildInputs =
|
||||
let
|
||||
# The patches below were constructed by taking the files from k2pdfopt in
|
||||
# the {mupdf,leptonica,tesseract}_mod/ directories, replacing the
|
||||
# corresponding files in the respective source trees, resolving any errors
|
||||
# with more recent versions of these depencencies, and running diff.
|
||||
mupdf_modded = mupdf.overrideAttrs (attrs: {
|
||||
# Excluded the pdf-*.c files, since they mostly just broke the #includes
|
||||
prePatch = ''
|
||||
cp ${src}/mupdf_mod/{font,stext-device,string}.c source/fitz/
|
||||
cp ${src}/mupdf_mod/font-win32.c source/pdf/
|
||||
'';
|
||||
patches = attrs.patches ++ [ ./mupdf.patch ]; # Last verified with mupdf 1.16.1
|
||||
});
|
||||
|
||||
leptonica_modded = leptonica.overrideAttrs (attrs: {
|
||||
name = "leptonica-1.74.4";
|
||||
# Modified source files apply to this particular version of leptonica
|
||||
version = "1.74.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.leptonica.org/source/leptonica-1.74.4.tar.gz";
|
||||
sha256 = "0fw39amgyv8v6nc7x8a4c7i37dm04i6c5zn62d24bgqnlhk59hr9";
|
||||
};
|
||||
|
||||
prePatch = ''
|
||||
cp ${src}/leptonica_mod/{allheaders.h,dewarp2.c,leptwin.c} src/
|
||||
'';
|
||||
patches = [
|
||||
# stripped down copy of upstream commit b88c821f8d347bce0aea86d606c710303919f3d2
|
||||
./leptonica-CVE-2018-3836.patch
|
||||
(fetchpatch {
|
||||
# CVE-2018-7186
|
||||
url = "https://github.com/DanBloomberg/leptonica/commit/"
|
||||
+ "ee301cb2029db8a6289c5295daa42bba7715e99a.patch";
|
||||
sha256 = "0cgb7mvz2px1rg5i80wk1wxxjvzjga617d8q6j7qygkp7jm6495d";
|
||||
})
|
||||
(fetchpatch {
|
||||
# CVE-2018-7247
|
||||
url = "https://github.com/DanBloomberg/leptonica/commit/"
|
||||
+ "c1079bb8e77cdd426759e466729917ca37a3ed9f.patch";
|
||||
sha256 = "1z4iac5gwqggh7aa8cvyp6nl9fwd1v7wif26caxc9y5qr3jj34qf";
|
||||
})
|
||||
(fetchpatch {
|
||||
# CVE-2018-7440
|
||||
url = "https://github.com/DanBloomberg/leptonica/commit/"
|
||||
+ "49ecb6c2dfd6ed5078c62f4a8eeff03e3beced3b.patch";
|
||||
sha256 = "1hjmva98iaw9xj7prg7aimykyayikcwnk4hk0380007hqb35lqmy";
|
||||
})
|
||||
];
|
||||
patches = [ ./leptonica.patch ]; # Last verified with leptonica 1.78.0
|
||||
});
|
||||
tesseract_modded = tesseract4.override {
|
||||
tesseractBase = tesseract4.tesseractBase.overrideAttrs (_: {
|
||||
prePatch = ''
|
||||
cp ${src}/tesseract_mod/baseapi.{h,cpp} src/api/
|
||||
cp ${src}/tesseract_mod/ccutil.{h,cpp} src/ccutil/
|
||||
cp ${src}/tesseract_mod/genericvector.h src/ccutil/
|
||||
cp ${src}/tesseract_mod/input.cpp src/lstm/
|
||||
cp ${src}/tesseract_mod/lstmrecognizer.cpp src/lstm/
|
||||
cp ${src}/tesseract_mod/mainblk.cpp src/ccutil/
|
||||
cp ${src}/tesseract_mod/params.cpp src/ccutil/
|
||||
cp ${src}/tesseract_mod/serialis.{h,cpp} src/ccutil/
|
||||
cp ${src}/tesseract_mod/tesscapi.cpp src/api/
|
||||
cp ${src}/tesseract_mod/tessdatamanager.cpp src/ccstruct/
|
||||
cp ${src}/tesseract_mod/tessedit.cpp src/ccmain/
|
||||
cp ${src}/include_mod/{tesseract.h,leptonica.h} src/api/
|
||||
'';
|
||||
patches = [ ./tesseract.patch ];
|
||||
patches = [ ./tesseract.patch ]; # Last verified with tesseract 1.4
|
||||
});
|
||||
};
|
||||
in
|
||||
|
|
151
pkgs/applications/misc/k2pdfopt/k2pdfopt-mupdf-1.16.1.patch
Normal file
151
pkgs/applications/misc/k2pdfopt/k2pdfopt-mupdf-1.16.1.patch
Normal file
|
@ -0,0 +1,151 @@
|
|||
diff --git a/willuslib/wmupdf.c b/willuslib/wmupdf.c
|
||||
index 81627ef..f14a96c 100644
|
||||
--- a/willuslib/wmupdf.c
|
||||
+++ b/willuslib/wmupdf.c
|
||||
@@ -189,8 +189,6 @@ int wmupdf_remake_pdf(char *infile,char *outfile,WPDFPAGEINFO *pageinfo,int use_
|
||||
pdf_write_opts.do_compress=1;
|
||||
pdf_write_opts.do_linear=0;
|
||||
pdf_write_opts.do_garbage=1; /* 2 and 3 don't work for this. */
|
||||
- pdf_write_opts.continue_on_error=0;
|
||||
- pdf_write_opts.errors=NULL;
|
||||
write_failed=0;
|
||||
wpdfpageinfo_sort(pageinfo);
|
||||
xref=NULL;
|
||||
@@ -1687,8 +1685,8 @@ WPDFOUTLINE *wpdfoutline_read_from_pdf_file(char *filename)
|
||||
/* Sumatra version of MuPDF v1.4 -- use locally installed fonts */
|
||||
pdf_install_load_system_font_funcs(ctx);
|
||||
fz_try(ctx) { doc=fz_open_document(ctx,filename); }
|
||||
- fz_catch(ctx)
|
||||
- {
|
||||
+ fz_catch(ctx)
|
||||
+ {
|
||||
fz_drop_context(ctx);
|
||||
return(NULL);
|
||||
}
|
||||
@@ -1890,5 +1888,5 @@ static pdf_obj *pdf_new_string_utf8(fz_context *ctx,char *string)
|
||||
willus_mem_free((double **)&utfbuf,funcname);
|
||||
return(pdfobj);
|
||||
}
|
||||
-
|
||||
+
|
||||
#endif /* HAVE_MUPDF_LIB */
|
||||
diff --git a/willuslib/wmupdfinfo.c b/willuslib/wmupdfinfo.c
|
||||
index 5c7f38c..9b9e6fd 100644
|
||||
--- a/willuslib/wmupdfinfo.c
|
||||
+++ b/willuslib/wmupdfinfo.c
|
||||
@@ -237,23 +237,22 @@ static void showglobalinfo(fz_context *ctx, globals *glo,char *filename)
|
||||
pdf_obj *robj;
|
||||
|
||||
robj=pdf_resolve_indirect(ctx,obj);
|
||||
- n=pdf_sprint_obj(ctx,NULL,0,robj,1);
|
||||
- buf=malloc(n+2);
|
||||
+ buf=pdf_sprint_obj(ctx,NULL,0,&n,robj,1,0);
|
||||
if (buf==NULL)
|
||||
{
|
||||
fz_write_printf(ctx,out,"Info object (%d %d R):\n",pdf_to_num(ctx,obj),pdf_to_gen(ctx,obj));
|
||||
- pdf_print_obj(ctx,out,robj,1);
|
||||
+ pdf_print_obj(ctx,out,robj,1,0);
|
||||
}
|
||||
else
|
||||
{
|
||||
- pdf_sprint_obj(ctx,buf,n+2,robj,1);
|
||||
+ pdf_sprint_obj(ctx,buf,n+2,&n,robj,1,0);
|
||||
display_pdf_field(ctx,out,buf,"Title","TITLE");
|
||||
display_pdf_field(ctx,out,buf,"CreationDate","CREATED");
|
||||
display_pdf_field(ctx,out,buf,"ModDate","LAST MODIFIED");
|
||||
display_pdf_field(ctx,out,buf,"Producer","PDF PRODUCER");
|
||||
display_pdf_field(ctx,out,buf,"Creator","CREATOR");
|
||||
display_file_size(ctx,out,filename);
|
||||
- free(buf);
|
||||
+ fz_free(ctx,buf);
|
||||
}
|
||||
}
|
||||
if (glo->dims==1)
|
||||
@@ -275,7 +274,7 @@ static void showglobalinfo(fz_context *ctx, globals *glo,char *filename)
|
||||
if (obj)
|
||||
{
|
||||
fz_write_printf(ctx,out, "\nEncryption object (%d %d R):\n", pdf_to_num(ctx,obj), pdf_to_gen(ctx,obj));
|
||||
- pdf_print_obj(ctx,out, pdf_resolve_indirect(ctx,obj), 1);
|
||||
+ pdf_print_obj(ctx,out, pdf_resolve_indirect(ctx,obj), 1, 0);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -396,7 +395,7 @@ gatherdimensions(fz_context *ctx, globals *glo, int page, pdf_obj *pageref, pdf_
|
||||
if (j < glo->dims)
|
||||
return;
|
||||
|
||||
- glo->dim = fz_resize_array(ctx, glo->dim, glo->dims+1, sizeof(struct info));
|
||||
+ glo->dim = fz_realloc_array(ctx, glo->dim, glo->dims+1, struct info);
|
||||
glo->dims++;
|
||||
|
||||
glo->dim[glo->dims - 1].page = page;
|
||||
@@ -441,7 +440,7 @@ gatherfonts(fz_context *ctx, globals *glo, int page, pdf_obj *pageref, pdf_obj *
|
||||
if (k < glo->fonts)
|
||||
continue;
|
||||
|
||||
- glo->font = fz_resize_array(ctx, glo->font, glo->fonts+1, sizeof(struct info));
|
||||
+ glo->font = fz_realloc_array(ctx, glo->font, glo->fonts+1, struct info);
|
||||
glo->fonts++;
|
||||
|
||||
glo->font[glo->fonts - 1].page = page;
|
||||
@@ -510,7 +509,7 @@ gatherimages(fz_context *ctx, globals *glo, int page, pdf_obj *pageref, pdf_obj
|
||||
if (k < glo->images)
|
||||
continue;
|
||||
|
||||
- glo->image = fz_resize_array(ctx, glo->image, glo->images+1, sizeof(struct info));
|
||||
+ glo->image = fz_realloc_array(ctx, glo->image, glo->images+1, struct info);
|
||||
glo->images++;
|
||||
|
||||
glo->image[glo->images - 1].page = page;
|
||||
@@ -568,7 +567,7 @@ gatherforms(fz_context *ctx, globals *glo, int page, pdf_obj *pageref, pdf_obj *
|
||||
if (k < glo->forms)
|
||||
continue;
|
||||
|
||||
- glo->form = fz_resize_array(ctx, glo->form, glo->forms+1, sizeof(struct info));
|
||||
+ glo->form = fz_realloc_array(ctx, glo->form, glo->forms+1, struct info);
|
||||
glo->forms++;
|
||||
|
||||
glo->form[glo->forms - 1].page = page;
|
||||
@@ -613,7 +612,7 @@ gatherpsobjs(fz_context *ctx, globals *glo, int page, pdf_obj *pageref, pdf_obj
|
||||
if (k < glo->psobjs)
|
||||
continue;
|
||||
|
||||
- glo->psobj = fz_resize_array(ctx, glo->psobj, glo->psobjs+1, sizeof(struct info));
|
||||
+ glo->psobj = fz_realloc_array(ctx, glo->psobj, glo->psobjs+1, struct info);
|
||||
glo->psobjs++;
|
||||
|
||||
glo->psobj[glo->psobjs - 1].page = page;
|
||||
@@ -656,7 +655,7 @@ gathershadings(fz_context *ctx, globals *glo, int page, pdf_obj *pageref, pdf_ob
|
||||
if (k < glo->shadings)
|
||||
continue;
|
||||
|
||||
- glo->shading = fz_resize_array(ctx, glo->shading, glo->shadings+1, sizeof(struct info));
|
||||
+ glo->shading = fz_realloc_array(ctx, glo->shading, glo->shadings+1, struct info);
|
||||
glo->shadings++;
|
||||
|
||||
glo->shading[glo->shadings - 1].page = page;
|
||||
@@ -724,7 +723,7 @@ gatherpatterns(fz_context *ctx, globals *glo, int page, pdf_obj *pageref, pdf_ob
|
||||
if (k < glo->patterns)
|
||||
continue;
|
||||
|
||||
- glo->pattern = fz_resize_array(ctx, glo->pattern, glo->patterns+1, sizeof(struct info));
|
||||
+ glo->pattern = fz_realloc_array(ctx, glo->pattern, glo->patterns+1, struct info);
|
||||
glo->patterns++;
|
||||
|
||||
glo->pattern[glo->patterns - 1].page = page;
|
||||
@@ -1216,7 +1215,7 @@ void wmupdfinfo_get(char *filename,int *pagelist,char **buf)
|
||||
if (fout==NULL)
|
||||
return;
|
||||
*/
|
||||
-
|
||||
+
|
||||
ctx = fz_new_context(NULL, NULL, FZ_STORE_UNLIMITED);
|
||||
if (!ctx)
|
||||
{
|
||||
@@ -1307,5 +1306,5 @@ static void date_convert(char *dst,char *src)
|
||||
else if (src[i]!='\0')
|
||||
sprintf(&dst[strlen(dst)]," %s",&src[i]);
|
||||
}
|
||||
-
|
||||
+
|
||||
#endif /* HAVE_MUPDF_LIB */
|
|
@ -1,95 +0,0 @@
|
|||
--- a/src/allheaders.h
|
||||
+++ b/src/allheaders.h
|
||||
@@ -2600,6 +2600,7 @@
|
||||
LEPT_DLL extern char * stringReverse ( const char *src );
|
||||
LEPT_DLL extern char * strtokSafe ( char *cstr, const char *seps, char **psaveptr );
|
||||
LEPT_DLL extern l_int32 stringSplitOnToken ( char *cstr, const char *seps, char **phead, char **ptail );
|
||||
+LEPT_DLL extern l_int32 stringCheckForChars ( const char *src, const char *chars, l_int32 *pfound );
|
||||
LEPT_DLL extern char * stringRemoveChars ( const char *src, const char *remchars );
|
||||
LEPT_DLL extern l_int32 stringFindSubstr ( const char *src, const char *sub, l_int32 *ploc );
|
||||
LEPT_DLL extern char * stringReplaceSubstr ( const char *src, const char *sub1, const char *sub2, l_int32 *pfound, l_int32 *ploc );
|
||||
--- a/src/gplot.c
|
||||
+++ b/src/gplot.c
|
||||
@@ -141,9 +141,10 @@
|
||||
const char *xlabel,
|
||||
const char *ylabel)
|
||||
{
|
||||
-char *newroot;
|
||||
-char buf[L_BUF_SIZE];
|
||||
-GPLOT *gplot;
|
||||
+char *newroot;
|
||||
+char buf[L_BUF_SIZE];
|
||||
+l_int32 badchar;
|
||||
+GPLOT *gplot;
|
||||
|
||||
PROCNAME("gplotCreate");
|
||||
|
||||
@@ -152,6 +153,9 @@
|
||||
if (outformat != GPLOT_PNG && outformat != GPLOT_PS &&
|
||||
outformat != GPLOT_EPS && outformat != GPLOT_LATEX)
|
||||
return (GPLOT *)ERROR_PTR("outformat invalid", procName, NULL);
|
||||
+ stringCheckForChars(rootname, "`;&|><\"?*", &badchar);
|
||||
+ if (badchar) /* danger of command injection */
|
||||
+ return (GPLOT *)ERROR_PTR("invalid rootname", procName, NULL);
|
||||
|
||||
if ((gplot = (GPLOT *)LEPT_CALLOC(1, sizeof(GPLOT))) == NULL)
|
||||
return (GPLOT *)ERROR_PTR("gplot not made", procName, NULL);
|
||||
--- a/src/utils2.c
|
||||
+++ b/src/utils2.c
|
||||
@@ -42,6 +42,7 @@
|
||||
* l_int32 stringSplitOnToken()
|
||||
*
|
||||
* Find and replace string and array procs
|
||||
+ * l_int32 stringCheckForChars()
|
||||
* char *stringRemoveChars()
|
||||
* l_int32 stringFindSubstr()
|
||||
* char *stringReplaceSubstr()
|
||||
@@ -701,6 +702,48 @@
|
||||
/*--------------------------------------------------------------------*
|
||||
* Find and replace procs *
|
||||
*--------------------------------------------------------------------*/
|
||||
+/*!
|
||||
+ * \brief stringCheckForChars()
|
||||
+ *
|
||||
+ * \param[in] src input string; can be of zero length
|
||||
+ * \param[in] chars string of chars to be searched for in %src
|
||||
+ * \param[out] pfound 1 if any characters are found; 0 otherwise
|
||||
+ * \return 0 if OK, 1 on error
|
||||
+ *
|
||||
+ * <pre>
|
||||
+ * Notes:
|
||||
+ * (1) This can be used to sanitize an operation by checking for
|
||||
+ * special characters that don't belong in a string.
|
||||
+ * </pre>
|
||||
+ */
|
||||
+l_int32
|
||||
+stringCheckForChars(const char *src,
|
||||
+ const char *chars,
|
||||
+ l_int32 *pfound)
|
||||
+{
|
||||
+char ch;
|
||||
+l_int32 i, n;
|
||||
+
|
||||
+ PROCNAME("stringCheckForChars");
|
||||
+
|
||||
+ if (!pfound)
|
||||
+ return ERROR_INT("&found not defined", procName, 1);
|
||||
+ *pfound = FALSE;
|
||||
+ if (!src || !chars)
|
||||
+ return ERROR_INT("src and chars not both defined", procName, 1);
|
||||
+
|
||||
+ n = strlen(src);
|
||||
+ for (i = 0; i < n; i++) {
|
||||
+ ch = src[i];
|
||||
+ if (strchr(chars, ch)) {
|
||||
+ *pfound = TRUE;
|
||||
+ break;
|
||||
+ }
|
||||
+ }
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+
|
||||
/*!
|
||||
* \brief stringRemoveChars()
|
||||
*
|
254
pkgs/applications/misc/k2pdfopt/leptonica.patch
Normal file
254
pkgs/applications/misc/k2pdfopt/leptonica.patch
Normal file
|
@ -0,0 +1,254 @@
|
|||
From 8c11a20925686855023df90ed477957c7d7fe91e Mon Sep 17 00:00:00 2001
|
||||
From: Daniel Fullmer <danielrf12@gmail.com>
|
||||
Date: Fri, 13 Sep 2019 15:54:21 -0400
|
||||
Subject: [PATCH] Willus mod for k2pdfopt
|
||||
|
||||
---
|
||||
src/allheaders.h | 4 ++
|
||||
src/dewarp2.c | 106 ++++++++++++++++++++++++++++++++++++++++++-----
|
||||
src/leptwin.c | 6 ++-
|
||||
3 files changed, 104 insertions(+), 12 deletions(-)
|
||||
|
||||
diff --git a/src/allheaders.h b/src/allheaders.h
|
||||
index e68eff1..b3cc729 100644
|
||||
--- a/src/allheaders.h
|
||||
+++ b/src/allheaders.h
|
||||
@@ -669,6 +669,10 @@ LEPT_DLL extern L_DEWARPA * dewarpaReadMem ( const l_uint8 *data, size_t size );
|
||||
LEPT_DLL extern l_ok dewarpaWrite ( const char *filename, L_DEWARPA *dewa );
|
||||
LEPT_DLL extern l_ok dewarpaWriteStream ( FILE *fp, L_DEWARPA *dewa );
|
||||
LEPT_DLL extern l_ok dewarpaWriteMem ( l_uint8 **pdata, size_t *psize, L_DEWARPA *dewa );
|
||||
+/* WILLUS MOD */
|
||||
+ LEPT_DLL extern l_int32 dewarpBuildPageModel_ex ( L_DEWARP *dew, const char *debugfile,l_int32 fit_order );
|
||||
+ LEPT_DLL extern l_int32 dewarpFindVertDisparity_ex ( L_DEWARP *dew, PTAA *ptaa, l_int32 rotflag,l_int32 fit_order );
|
||||
+ LEPT_DLL extern l_int32 dewarpBuildLineModel_ex ( L_DEWARP *dew, l_int32 opensize, const char *debugfile,l_int32 fit_order );
|
||||
LEPT_DLL extern l_ok dewarpBuildPageModel ( L_DEWARP *dew, const char *debugfile );
|
||||
LEPT_DLL extern l_ok dewarpFindVertDisparity ( L_DEWARP *dew, PTAA *ptaa, l_int32 rotflag );
|
||||
LEPT_DLL extern l_ok dewarpFindHorizDisparity ( L_DEWARP *dew, PTAA *ptaa );
|
||||
diff --git a/src/dewarp2.c b/src/dewarp2.c
|
||||
index 220eec1..2e29500 100644
|
||||
--- a/src/dewarp2.c
|
||||
+++ b/src/dewarp2.c
|
||||
@@ -144,9 +144,17 @@ static const l_float32 L_ALLOWED_W_FRACT = 0.05; /* no bigger */
|
||||
* longest textlines.
|
||||
* </pre>
|
||||
*/
|
||||
+/* WILLUS MOD */
|
||||
l_ok
|
||||
-dewarpBuildPageModel(L_DEWARP *dew,
|
||||
- const char *debugfile)
|
||||
+dewarpBuildPageModel(L_DEWARP *dew,const char *debugfile)
|
||||
+{
|
||||
+return(dewarpBuildPageModel_ex(dew,debugfile,2));
|
||||
+}
|
||||
+
|
||||
+l_ok
|
||||
+dewarpBuildPageModel_ex(L_DEWARP *dew,
|
||||
+ const char *debugfile,
|
||||
+ l_int32 fit_order)
|
||||
{
|
||||
l_int32 linecount, topline, botline, ret;
|
||||
PIX *pixs, *pix1, *pix2, *pix3;
|
||||
@@ -225,7 +233,7 @@ PTAA *ptaa1, *ptaa2;
|
||||
/* Get the sampled vertical disparity from the textline centers.
|
||||
* The disparity array will push pixels vertically so that each
|
||||
* textline is flat and centered at the y-position of the mid-point. */
|
||||
- if (dewarpFindVertDisparity(dew, ptaa2, 0) != 0) {
|
||||
+ if (dewarpFindVertDisparity_ex(dew, ptaa2, 0, fit_order) != 0) {
|
||||
L_WARNING("vertical disparity not built\n", procName);
|
||||
ptaaDestroy(&ptaa2);
|
||||
return 1;
|
||||
@@ -290,13 +298,24 @@ PTAA *ptaa1, *ptaa2;
|
||||
* a pdf. Non-pix debug output goes to /tmp.
|
||||
* </pre>
|
||||
*/
|
||||
+/* WILLUS MOD */
|
||||
l_ok
|
||||
dewarpFindVertDisparity(L_DEWARP *dew,
|
||||
PTAA *ptaa,
|
||||
l_int32 rotflag)
|
||||
{
|
||||
+return(dewarpFindVertDisparity_ex(dew,ptaa,rotflag,2));
|
||||
+}
|
||||
+/* WILLUS MOD -- add cubic and quartic fits and ..._ex functions */
|
||||
+l_int32
|
||||
+dewarpFindVertDisparity_ex(L_DEWARP *dew,
|
||||
+ PTAA *ptaa,
|
||||
+ l_int32 rotflag,
|
||||
+ l_int32 fit_order)
|
||||
+{
|
||||
l_int32 i, j, nlines, npts, nx, ny, sampling;
|
||||
-l_float32 c0, c1, c2, x, y, midy, val, medval, meddev, minval, maxval;
|
||||
+/* WILLUS MOD */
|
||||
+l_float32 c0, c1, c2, c3, c4, x, y, midy, val, medval, meddev, minval, maxval;
|
||||
l_float32 *famidys;
|
||||
NUMA *nax, *nafit, *nacurve0, *nacurve1, *nacurves;
|
||||
NUMA *namidy, *namidys, *namidysi;
|
||||
@@ -304,11 +323,22 @@ PIX *pix1, *pix2, *pixcirc, *pixdb;
|
||||
PTA *pta, *ptad, *ptacirc;
|
||||
PTAA *ptaa0, *ptaa1, *ptaa2, *ptaa3, *ptaa4, *ptaa5, *ptaat;
|
||||
FPIX *fpix;
|
||||
+/* WILLUS MOD */
|
||||
+l_int32 fit_order1,fit_order2;
|
||||
|
||||
PROCNAME("dewarpFindVertDisparity");
|
||||
|
||||
if (!dew)
|
||||
return ERROR_INT("dew not defined", procName, 1);
|
||||
+/* WILLUS MOD */
|
||||
+ if (fit_order < 10)
|
||||
+ fit_order1 = fit_order2 = fit_order;
|
||||
+ else
|
||||
+ {
|
||||
+ fit_order1=fit_order % 10;
|
||||
+ fit_order2=fit_order / 10;
|
||||
+ fit_order2=fit_order2 % 10;
|
||||
+ }
|
||||
dew->vsuccess = 0;
|
||||
if (!ptaa)
|
||||
return ERROR_INT("ptaa not defined", procName, 1);
|
||||
@@ -331,12 +361,32 @@ FPIX *fpix;
|
||||
pixdb = (rotflag) ? pixRotateOrth(dew->pixs, 1) : pixClone(dew->pixs);
|
||||
for (i = 0; i < nlines; i++) { /* for each line */
|
||||
pta = ptaaGetPta(ptaa, i, L_CLONE);
|
||||
- ptaGetQuadraticLSF(pta, &c2, &c1, &c0, NULL);
|
||||
- numaAddNumber(nacurve0, c2);
|
||||
+/* WILLUS MOD */
|
||||
+if (fit_order1>3)
|
||||
+ {
|
||||
+ ptaGetQuarticLSF(pta, &c4, &c3, &c2, &c1, &c0, NULL);
|
||||
+ numaAddNumber(nacurve0, c4);
|
||||
+ }
|
||||
+else if (fit_order1==3)
|
||||
+ {
|
||||
+ ptaGetCubicLSF(pta, &c3, &c2, &c1, &c0, NULL);
|
||||
+ numaAddNumber(nacurve0, c3);
|
||||
+ }
|
||||
+else
|
||||
+ {
|
||||
+ ptaGetQuadraticLSF(pta, &c2, &c1, &c0, NULL);
|
||||
+ numaAddNumber(nacurve0, c2);
|
||||
+ }
|
||||
ptad = ptaCreate(nx);
|
||||
for (j = 0; j < nx; j++) { /* uniformly sampled in x */
|
||||
x = j * sampling;
|
||||
- applyQuadraticFit(c2, c1, c0, x, &y);
|
||||
+/* WILLUS MOD */
|
||||
+if (fit_order1>3)
|
||||
+ applyQuarticFit(c4, c3, c2, c1, c0, x, &y);
|
||||
+else if (fit_order1==3)
|
||||
+ applyCubicFit(c3, c2, c1, c0, x, &y);
|
||||
+else
|
||||
+ applyQuadraticFit(c2, c1, c0, x, &y);
|
||||
ptaAddPt(ptad, x, y);
|
||||
}
|
||||
ptaaAddPta(ptaa0, ptad, L_INSERT);
|
||||
@@ -350,7 +400,13 @@ FPIX *fpix;
|
||||
for (i = 0; i < nlines; i++) {
|
||||
pta = ptaaGetPta(ptaa, i, L_CLONE);
|
||||
ptaGetArrays(pta, &nax, NULL);
|
||||
- ptaGetQuadraticLSF(pta, NULL, NULL, NULL, &nafit);
|
||||
+/* WILLUS MOD */
|
||||
+if (fit_order1>3)
|
||||
+ptaGetQuarticLSF(pta, NULL, NULL, NULL, NULL, NULL, &nafit);
|
||||
+else if (fit_order1==3)
|
||||
+ptaGetCubicLSF(pta, NULL, NULL, NULL, NULL, &nafit);
|
||||
+else
|
||||
+ptaGetQuadraticLSF(pta, NULL, NULL, NULL, &nafit);
|
||||
ptad = ptaCreateFromNuma(nax, nafit);
|
||||
ptaaAddPta(ptaat, ptad, L_INSERT);
|
||||
ptaDestroy(&pta);
|
||||
@@ -494,11 +550,24 @@ FPIX *fpix;
|
||||
ptaa5 = ptaaCreate(nx); /* uniformly sampled across full height of image */
|
||||
for (j = 0; j < nx; j++) { /* for each column */
|
||||
pta = ptaaGetPta(ptaa4, j, L_CLONE);
|
||||
- ptaGetQuadraticLSF(pta, &c2, &c1, &c0, NULL);
|
||||
+/* WILLUS MOD */
|
||||
+/* Order higher than 2 can cause a little craziness here. */
|
||||
+if (fit_order2>3)
|
||||
+ ptaGetQuarticLSF(pta, &c4, &c3, &c2, &c1, &c0, NULL);
|
||||
+else if (fit_order2==3)
|
||||
+ ptaGetCubicLSF(pta, &c3, &c2, &c1, &c0, NULL);
|
||||
+else
|
||||
+ ptaGetQuadraticLSF(pta, &c2, &c1, &c0, NULL);
|
||||
ptad = ptaCreate(ny);
|
||||
for (i = 0; i < ny; i++) { /* uniformly sampled in y */
|
||||
y = i * sampling;
|
||||
- applyQuadraticFit(c2, c1, c0, y, &val);
|
||||
+/* WILLUS MOD */
|
||||
+if (fit_order2>3)
|
||||
+ applyQuarticFit(c4, c3, c2, c1, c0, y, &val);
|
||||
+else if (fit_order2==3)
|
||||
+ applyCubicFit(c3, c2, c1, c0, y, &val);
|
||||
+else
|
||||
+ applyQuadraticFit(c2, c1, c0, y, &val);
|
||||
ptaAddPt(ptad, y, val);
|
||||
}
|
||||
ptaaAddPta(ptaa5, ptad, L_INSERT);
|
||||
@@ -1602,11 +1671,21 @@ FPIX *fpix;
|
||||
* See notes there.
|
||||
* </pre>
|
||||
*/
|
||||
+/* WILLUS MOD */
|
||||
l_ok
|
||||
dewarpBuildLineModel(L_DEWARP *dew,
|
||||
l_int32 opensize,
|
||||
const char *debugfile)
|
||||
{
|
||||
+return(dewarpBuildLineModel_ex(dew,opensize,debugfile,2));
|
||||
+}
|
||||
+
|
||||
+l_int32
|
||||
+dewarpBuildLineModel_ex(L_DEWARP *dew,
|
||||
+ l_int32 opensize,
|
||||
+ const char *debugfile,
|
||||
+ l_int32 fit_order)
|
||||
+{
|
||||
char buf[64];
|
||||
l_int32 i, j, bx, by, ret, nlines;
|
||||
BOXA *boxa;
|
||||
@@ -1695,6 +1774,8 @@ PTAA *ptaa1, *ptaa2;
|
||||
|
||||
/* Remove all lines that are not at least 0.75 times the length
|
||||
* of the longest line. */
|
||||
+/* WILLUS MOD */
|
||||
+/*
|
||||
ptaa2 = dewarpRemoveShortLines(pix, ptaa1, 0.75, DEBUG_SHORT_LINES);
|
||||
if (debugfile) {
|
||||
pix1 = pixConvertTo32(pix);
|
||||
@@ -1704,6 +1785,8 @@ PTAA *ptaa1, *ptaa2;
|
||||
pixDestroy(&pix1);
|
||||
pixDestroy(&pix2);
|
||||
}
|
||||
+*/
|
||||
+ptaa2=ptaa1;
|
||||
ptaaDestroy(&ptaa1);
|
||||
nlines = ptaaGetCount(ptaa2);
|
||||
if (nlines < dew->minlines) {
|
||||
@@ -1717,7 +1800,8 @@ PTAA *ptaa1, *ptaa2;
|
||||
* centers. The disparity array will push pixels vertically
|
||||
* so that each line is flat and centered at the y-position
|
||||
* of the mid-point. */
|
||||
- ret = dewarpFindVertDisparity(dew, ptaa2, 1 - i);
|
||||
+/* WILLUS MOD */
|
||||
+ ret = dewarpFindVertDisparity_ex(dew, ptaa2, 1 - i, fit_order);
|
||||
|
||||
/* If i == 0, move the result to the horizontal disparity,
|
||||
* rotating it back by -90 degrees. */
|
||||
diff --git a/src/leptwin.c b/src/leptwin.c
|
||||
index 72643a0..573d33e 100644
|
||||
--- a/src/leptwin.c
|
||||
+++ b/src/leptwin.c
|
||||
@@ -364,5 +364,9 @@ PIXCMAP *cmap;
|
||||
|
||||
return hBitmap;
|
||||
}
|
||||
-
|
||||
+#else
|
||||
+/* willus mod: Avoid weird issue with OS/X library archiver when there are no symbols */
|
||||
+int leptwin_my_empty_func(void);
|
||||
+int leptwin_my_empty_func(void)
|
||||
+{return(0);}
|
||||
#endif /* _WIN32 */
|
||||
--
|
||||
2.22.0
|
||||
|
1060
pkgs/applications/misc/k2pdfopt/mupdf.patch
Normal file
1060
pkgs/applications/misc/k2pdfopt/mupdf.patch
Normal file
File diff suppressed because it is too large
Load diff
|
@ -1,13 +1,675 @@
|
|||
From 39aa8502eee7bb669a29d1a9b3bfe5c9595ad960 Mon Sep 17 00:00:00 2001
|
||||
From: Daniel Fullmer <danielrf12@gmail.com>
|
||||
Date: Fri, 13 Sep 2019 13:45:05 -0400
|
||||
Subject: [PATCH] Willus mod changes from k2pdfopt
|
||||
|
||||
---
|
||||
src/api/Makefile.am | 1 +
|
||||
src/api/baseapi.cpp | 87 +++++++++++
|
||||
src/api/baseapi.h | 3 +
|
||||
src/api/tesscapi.cpp | 311 +++++++++++++++++++++++++++++++++++++
|
||||
src/api/tesseract.h | 29 ++++
|
||||
src/ccmain/tessedit.cpp | 5 +-
|
||||
src/ccutil/ccutil.h | 7 +
|
||||
src/ccutil/genericvector.h | 21 ++-
|
||||
src/ccutil/mainblk.cpp | 17 +-
|
||||
src/ccutil/params.cpp | 3 +-
|
||||
src/ccutil/serialis.cpp | 3 +
|
||||
src/ccutil/serialis.h | 2 +
|
||||
src/lstm/input.cpp | 3 +
|
||||
13 files changed, 488 insertions(+), 4 deletions(-)
|
||||
create mode 100644 src/api/tesscapi.cpp
|
||||
create mode 100644 src/api/tesseract.h
|
||||
|
||||
diff --git a/src/api/Makefile.am b/src/api/Makefile.am
|
||||
index d8c1e54..46ead13 100644
|
||||
index d9b76eb6..cd2dc30f 100644
|
||||
--- a/src/api/Makefile.am
|
||||
+++ b/src/api/Makefile.am
|
||||
@@ -42,7 +42,7 @@ libtesseract_api_la_CPPFLAGS = $(AM_CPPFLAGS)
|
||||
if VISIBILITY
|
||||
libtesseract_api_la_CPPFLAGS += -DTESS_EXPORTS
|
||||
endif
|
||||
-libtesseract_api_la_SOURCES = baseapi.cpp capi.cpp renderer.cpp pdfrenderer.cpp
|
||||
+libtesseract_api_la_SOURCES = baseapi.cpp capi.cpp renderer.cpp pdfrenderer.cpp tesscapi.cpp
|
||||
@@ -39,6 +39,7 @@ libtesseract_api_la_SOURCES += lstmboxrenderer.cpp
|
||||
libtesseract_api_la_SOURCES += pdfrenderer.cpp
|
||||
libtesseract_api_la_SOURCES += wordstrboxrenderer.cpp
|
||||
libtesseract_api_la_SOURCES += renderer.cpp
|
||||
+libtesseract_api_la_SOURCES += tesscapi.cpp
|
||||
|
||||
lib_LTLIBRARIES += libtesseract.la
|
||||
libtesseract_la_LDFLAGS =
|
||||
libtesseract_la_LDFLAGS = $(LEPTONICA_LIBS) $(OPENCL_LDFLAGS) $(libarchive_LIBS)
|
||||
diff --git a/src/api/baseapi.cpp b/src/api/baseapi.cpp
|
||||
index 9245d07c..ea964ee6 100644
|
||||
--- a/src/api/baseapi.cpp
|
||||
+++ b/src/api/baseapi.cpp
|
||||
@@ -215,6 +215,14 @@ TessBaseAPI::TessBaseAPI()
|
||||
// Use the current locale if building debug code.
|
||||
std::locale::global(std::locale(""));
|
||||
#endif
|
||||
+ const char *locale;
|
||||
+ locale = std::setlocale(LC_ALL, nullptr);
|
||||
+/* willus mod Remove assertions--taken care of in tesscapi.cpp */
|
||||
+// ASSERT_HOST(!strcmp(locale, "C"));
|
||||
+ locale = std::setlocale(LC_CTYPE, nullptr);
|
||||
+// ASSERT_HOST(!strcmp(locale, "C"));
|
||||
+ locale = std::setlocale(LC_NUMERIC, nullptr);
|
||||
+// ASSERT_HOST(!strcmp(locale, "C"));
|
||||
}
|
||||
|
||||
TessBaseAPI::~TessBaseAPI() {
|
||||
@@ -1333,6 +1341,85 @@ static void AddBoxToTSV(const PageIterator* it, PageIteratorLevel level,
|
||||
text->add_str_int("\t", bottom - top);
|
||||
}
|
||||
|
||||
+/* willus mod */
|
||||
+int TessBaseAPI::GetOCRWords(int **x00,int **y00,int **x11,int **y11,int **ybaseline0,
|
||||
+ char **utf8words)
|
||||
+
|
||||
+ {
|
||||
+ int iword,nwords,totlen,it8;
|
||||
+ int *x0,*y0,*x1,*y1,*ybaseline;
|
||||
+ char *tutf8;
|
||||
+
|
||||
+ ResultIterator *res_it = GetIterator();
|
||||
+ /* Count words */
|
||||
+ iword=0;
|
||||
+ totlen=0;
|
||||
+ while (!res_it->Empty(RIL_BLOCK))
|
||||
+ {
|
||||
+ if (res_it->Empty(RIL_WORD))
|
||||
+ {
|
||||
+ res_it->Next(RIL_WORD);
|
||||
+ continue;
|
||||
+ }
|
||||
+ iword++;
|
||||
+ STRING textstr=std::unique_ptr<const char[]>(res_it->GetUTF8Text(RIL_WORD)).get();
|
||||
+ totlen+=strlen(textstr.string())+1;
|
||||
+ res_it->Next(RIL_WORD);
|
||||
+ }
|
||||
+ nwords=iword;
|
||||
+/*
|
||||
+printf("\nnwords=%d, totlen=%d\n",nwords,totlen);
|
||||
+*/
|
||||
+ x0=(*x00)=(int *)malloc(sizeof(int)*5*nwords);
|
||||
+ y0=(*y00)=&x0[nwords];
|
||||
+ x1=(*x11)=&y0[nwords];
|
||||
+ y1=(*y11)=&x1[nwords];
|
||||
+ ybaseline=(*ybaseline0)=&y1[nwords];
|
||||
+ tutf8=(*utf8words)=(char *)malloc(totlen);
|
||||
+ iword=0;
|
||||
+ it8=0;
|
||||
+ res_it->Begin();
|
||||
+ while (!res_it->Empty(RIL_BLOCK))
|
||||
+ {
|
||||
+ if (res_it->Empty(RIL_WORD))
|
||||
+ {
|
||||
+ res_it->Next(RIL_WORD);
|
||||
+ continue;
|
||||
+ }
|
||||
+ STRING textstr=std::unique_ptr<const char[]>(res_it->GetUTF8Text(RIL_WORD)).get();
|
||||
+ strcpy(&tutf8[it8],textstr.string());
|
||||
+ it8 += strlen(&tutf8[it8])+1;
|
||||
+ /*
|
||||
+ STRING textstr("");
|
||||
+ textstr += std::unique_ptr<const char[]>(res_it->GetUTF8Text(RIL_WORD)).get();
|
||||
+ */
|
||||
+/*
|
||||
+printf("Word %d: '%s'\n",iword,textstr.string());
|
||||
+*/
|
||||
+ int left, top, right, bottom;
|
||||
+ int u1,v1,u2,v2;
|
||||
+ res_it->BoundingBox(RIL_WORD, &left, &top, &right, &bottom);
|
||||
+ res_it->Baseline(RIL_WORD, &u1, &v1, &u2, &v2);
|
||||
+ x0[iword]=left;
|
||||
+ x1[iword]=right;
|
||||
+ y0[iword]=top;
|
||||
+ y1[iword]=bottom;
|
||||
+ ybaseline[iword]=(v1+v2)/2;
|
||||
+ iword++;
|
||||
+/*
|
||||
+printf("BB: (%d,%d)-(%d,%d) BL: (%d,%d)-(%d,%d)\n",left,bottom,right,top,x1,y1,x2,y2);
|
||||
+*/
|
||||
+ res_it->Next(RIL_WORD);
|
||||
+ }
|
||||
+/*
|
||||
+printf("iword=%d\n",iword);
|
||||
+*/
|
||||
+ return(iword);
|
||||
+ }
|
||||
+
|
||||
+/* willus mod */
|
||||
+int GetOCRWords(int **x0,int **y0,int **x1,int **y1,int **ybaseline,char **utf8words);
|
||||
+
|
||||
/**
|
||||
* Make a TSV-formatted string from the internal data structures.
|
||||
* page_number is 0-based but will appear in the output as 1-based.
|
||||
diff --git a/src/api/baseapi.h b/src/api/baseapi.h
|
||||
index 3724dd92..23be5920 100644
|
||||
--- a/src/api/baseapi.h
|
||||
+++ b/src/api/baseapi.h
|
||||
@@ -575,6 +575,9 @@ class TESS_API TessBaseAPI {
|
||||
*/
|
||||
char* GetHOCRText(ETEXT_DESC* monitor, int page_number);
|
||||
|
||||
+/* willus mod */
|
||||
+int GetOCRWords(int **x0,int **y0,int **x1,int **y1,int **ybaseline,char **utf8words);
|
||||
+
|
||||
/**
|
||||
* Make a HTML-formatted string with hOCR markup from the internal
|
||||
* data structures.
|
||||
diff --git a/src/api/tesscapi.cpp b/src/api/tesscapi.cpp
|
||||
new file mode 100644
|
||||
index 00000000..1752fafe
|
||||
--- /dev/null
|
||||
+++ b/src/api/tesscapi.cpp
|
||||
@@ -0,0 +1,311 @@
|
||||
+/*
|
||||
+** tesscapi.cpp willus.com attempt at C wrapper for tesseract.
|
||||
+** (Butchered from tesseractmain.cpp)
|
||||
+** Last udpated 9-1-12
|
||||
+**
|
||||
+** Copyright (C) 2012 http://willus.com
|
||||
+**
|
||||
+** This program is free software: you can redistribute it and/or modify
|
||||
+** it under the terms of the GNU Affero General Public License as
|
||||
+** published by the Free Software Foundation, either version 3 of the
|
||||
+** License, or (at your option) any later version.
|
||||
+**
|
||||
+** This program is distributed in the hope that it will be useful,
|
||||
+** but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
+** GNU Affero General Public License for more details.
|
||||
+**
|
||||
+** You should have received a copy of the GNU Affero General Public License
|
||||
+** along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
+**
|
||||
+*/
|
||||
+
|
||||
+/*
|
||||
+#include "mfcpch.h"
|
||||
+*/
|
||||
+// #define USE_VLD //Uncomment for Visual Leak Detector.
|
||||
+#if (defined _MSC_VER && defined USE_VLD)
|
||||
+#include <vld.h>
|
||||
+#endif
|
||||
+
|
||||
+// Include automatically generated configuration file if running autoconf
|
||||
+#ifdef HAVE_CONFIG_H
|
||||
+#include "config_auto.h"
|
||||
+#endif
|
||||
+#include <locale.h>
|
||||
+#ifdef USING_GETTEXT
|
||||
+#include <libintl.h>
|
||||
+#define _(x) gettext(x)
|
||||
+#else
|
||||
+#define _(x) (x)
|
||||
+#endif
|
||||
+
|
||||
+#include "allheaders.h"
|
||||
+#include "baseapi.h"
|
||||
+#include "strngs.h"
|
||||
+#include "params.h"
|
||||
+#include "blobs.h"
|
||||
+#include "simddetect.h"
|
||||
+#include "tesseractclass.h"
|
||||
+/*
|
||||
+#include "notdll.h"
|
||||
+*/
|
||||
+
|
||||
+/* C Wrappers */
|
||||
+#include "tesseract.h"
|
||||
+
|
||||
+// static tesseract::TessBaseAPI api[4];
|
||||
+
|
||||
+/*
|
||||
+** ocr_type=0: OEM_DEFAULT
|
||||
+** ocr_type=1: OEM_TESSERACT_ONLY
|
||||
+** ocr_type=2: OEM_LSTM_ONLY
|
||||
+** ocr_type=3: OEM_TESSERACT_LSTM_COMBINED
|
||||
+*/
|
||||
+void *tess_capi_init(char *datapath,char *language,int ocr_type,FILE *out,
|
||||
+ char *initstr,int maxlen,int *status)
|
||||
+
|
||||
+ {
|
||||
+ char original_locale[256];
|
||||
+ tesseract::TessBaseAPI *api = new tesseract::TessBaseAPI;
|
||||
+/*
|
||||
+printf("@tess_capi_init\n");
|
||||
+printf(" datapath='%s'\n",datapath);
|
||||
+printf(" language='%s'\n",language);
|
||||
+printf(" ocr_type=%d\n",ocr_type);
|
||||
+*/
|
||||
+#ifdef USE_NLS
|
||||
+ setlocale (LC_ALL, "");
|
||||
+ bindtextdomain (PACKAGE, LOCALEDIR);
|
||||
+ textdomain (PACKAGE);
|
||||
+#endif
|
||||
+ /* willus mod, 11-24-16 */
|
||||
+ /* Tesseract needs "C" locale to correctly parse all data .traineddata files. */
|
||||
+/*
|
||||
+printf("locale='%s'\n",setlocale(LC_ALL,NULL));
|
||||
+printf("ctype='%s'\n",setlocale(LC_CTYPE,NULL));
|
||||
+printf("numeric='%s'\n",setlocale(LC_NUMERIC,NULL));
|
||||
+*/
|
||||
+ strncpy(original_locale,setlocale(LC_ALL,NULL),255);
|
||||
+ original_locale[255]='\0';
|
||||
+/*
|
||||
+printf("original_locale='%s'\n",original_locale);
|
||||
+*/
|
||||
+ setlocale(LC_ALL,"C");
|
||||
+/*
|
||||
+printf("new locale='%s'\n",setlocale(LC_ALL,NULL));
|
||||
+printf("new ctype='%s'\n",setlocale(LC_CTYPE,NULL));
|
||||
+printf("new numeric='%s'\n",setlocale(LC_NUMERIC,NULL));
|
||||
+*/
|
||||
+ // fprintf(stderr, "tesseract %s\n", tesseract::TessBaseAPI::Version());
|
||||
+ // Make the order of args a bit more forgiving than it used to be.
|
||||
+ const char* lang = "eng";
|
||||
+ tesseract::PageSegMode pagesegmode = tesseract::PSM_SINGLE_BLOCK;
|
||||
+ if (language!=NULL && language[0]!='\0')
|
||||
+ lang = language;
|
||||
+ /*
|
||||
+ if (output == NULL)
|
||||
+ {
|
||||
+ fprintf(stderr, _("Usage:%s imagename outputbase [-l lang] "
|
||||
+ "[-psm pagesegmode] [configfile...]\n"), argv[0]);
|
||||
+ fprintf(stderr,
|
||||
+ _("pagesegmode values are:\n"
|
||||
+ "0 = Orientation and script detection (OSD) only.\n"
|
||||
+ "1 = Automatic page segmentation with OSD.\n"
|
||||
+ "2 = Automatic page segmentation, but no OSD, or OCR\n"
|
||||
+ "3 = Fully automatic page segmentation, but no OSD. (Default)\n"
|
||||
+ "4 = Assume a single column of text of variable sizes.\n"
|
||||
+ "5 = Assume a single uniform block of vertically aligned text.\n"
|
||||
+ "6 = Assume a single uniform block of text.\n"
|
||||
+ "7 = Treat the image as a single text line.\n"
|
||||
+ "8 = Treat the image as a single word.\n"
|
||||
+ "9 = Treat the image as a single word in a circle.\n"
|
||||
+ "10 = Treat the image as a single character.\n"));
|
||||
+ fprintf(stderr, _("-l lang and/or -psm pagesegmode must occur before any"
|
||||
+ "configfile.\n"));
|
||||
+ exit(1);
|
||||
+ }
|
||||
+ */
|
||||
+/*
|
||||
+printf("SSE = %s\n",SIMDDetect::IsSSEAvailable() ? "AVAILABLE" : "NOT AVAILABLE");
|
||||
+printf("AVX = %s\n",SIMDDetect::IsAVXAvailable() ? "AVAILABLE" : "NOT AVAILABLE");
|
||||
+*/
|
||||
+/*
|
||||
+v4.00 loads either TESSERACT enginer, LSTM engine, or both. No CUBE.
|
||||
+*/
|
||||
+ ocr_type=0; /* Ignore specified and use default */
|
||||
+ api->SetOutputName(NULL);
|
||||
+ (*status)=api->Init(datapath,lang,
|
||||
+ ocr_type==0 ? tesseract::OEM_DEFAULT :
|
||||
+ (ocr_type==1 ? tesseract::OEM_TESSERACT_ONLY :
|
||||
+ (ocr_type==2 ? tesseract::OEM_LSTM_ONLY :
|
||||
+ (tesseract::OEM_TESSERACT_LSTM_COMBINED))));
|
||||
+ if ((*status)!=0)
|
||||
+ {
|
||||
+ /* willus mod, 11-24-16 */
|
||||
+ setlocale(LC_ALL,original_locale);
|
||||
+ api->End();
|
||||
+ delete api;
|
||||
+ return(NULL);
|
||||
+ }
|
||||
+ /*
|
||||
+ api.Init("tesscapi",lang,tesseract::OEM_DEFAULT,
|
||||
+ &(argv[arg]), argc - arg, NULL, NULL, false);
|
||||
+ */
|
||||
+ // We have 2 possible sources of pagesegmode: a config file and
|
||||
+ // the command line. For backwards compatability reasons, the
|
||||
+ // default in tesseract is tesseract::PSM_SINGLE_BLOCK, but the
|
||||
+ // default for this program is tesseract::PSM_AUTO. We will let
|
||||
+ // the config file take priority, so the command-line default
|
||||
+ // can take priority over the tesseract default, so we use the
|
||||
+ // value from the command line only if the retrieved mode
|
||||
+ // is still tesseract::PSM_SINGLE_BLOCK, indicating no change
|
||||
+ // in any config file. Therefore the only way to force
|
||||
+ // tesseract::PSM_SINGLE_BLOCK is from the command line.
|
||||
+ // It would be simpler if we could set the value before Init,
|
||||
+ // but that doesn't work.
|
||||
+ if (api->GetPageSegMode() == tesseract::PSM_SINGLE_BLOCK)
|
||||
+ api->SetPageSegMode(pagesegmode);
|
||||
+
|
||||
+ /*
|
||||
+ ** Initialization message
|
||||
+ */
|
||||
+ {
|
||||
+ char istr[1024];
|
||||
+ int sse,avx;
|
||||
+
|
||||
+// printf("tessedit_ocr_engine_mode = %d\n",tessedit_ocr_engine_mode);
|
||||
+ sprintf(istr,"%s",api->Version());
|
||||
+ sse=tesseract::SIMDDetect::IsSSEAvailable();
|
||||
+ avx=tesseract::SIMDDetect::IsAVXAvailable();
|
||||
+ if (sse || avx)
|
||||
+ sprintf(&istr[strlen(istr)]," [%s]",sse&&avx?"SSE+AVX":(sse?"SSE":"AVX"));
|
||||
+ sprintf(&istr[strlen(istr)],"\n Tesseract data folder = '%s'",datapath==NULL?getenv("TESSDATA_PREFIX"):datapath);
|
||||
+ strcat(istr,"\n Tesseract languages: ");
|
||||
+ GenericVector<STRING> languages;
|
||||
+ api->GetLoadedLanguagesAsVector(&languages);
|
||||
+/*
|
||||
+printf("OEM=%d\n",api->oem());
|
||||
+printf("Langs='%s'\n",api->GetInitLanguagesAsString());
|
||||
+printf("AnyTessLang()=%d\n",(int)api->tesseract()->AnyTessLang());
|
||||
+printf("AnyLSTMLang()=%d\n",(int)api->tesseract()->AnyLSTMLang());
|
||||
+printf("num_sub_langs()=%d\n",api->tesseract()->num_sub_langs());
|
||||
+printf("languages.size()=%d\n",(int)languages.size());
|
||||
+*/
|
||||
+
|
||||
+ for (int i=0;i<=api->tesseract()->num_sub_langs();i++)
|
||||
+ {
|
||||
+ tesseract::Tesseract *lang1;
|
||||
+ int eng;
|
||||
+ lang1 = i==0 ? api->tesseract() : api->tesseract()->get_sub_lang(i-1);
|
||||
+ eng=(int)lang1->tessedit_ocr_engine_mode;
|
||||
+ sprintf(&istr[strlen(istr)],"%s%s [%s]",i==0?"":", ",lang1->lang.string(),
|
||||
+ eng==2?"LSTM+Tess":(eng==1?"LSTM":"Tess"));
|
||||
+ }
|
||||
+/*
|
||||
+printf("%d. '%s'\n",i+1,languages[i].string());
|
||||
+printf(" sublang[%d].oem_engine = %d\n",i+1,(int)api->tesseract()->get_sub_lang(i)->tessedit_ocr_engine_mode);
|
||||
+*/
|
||||
+
|
||||
+ /*
|
||||
+ if (ocr_type==0 || ocr_type==3)
|
||||
+ sprintf(&istr[strlen(istr)],"[LSTM+] (lang=");
|
||||
+ else if (ocr_type==2)
|
||||
+ sprintf(&istr[strlen(istr)],"[LSTM] (lang=");
|
||||
+ strncpy(&istr[strlen(istr)],language,253-strlen(istr));
|
||||
+ istr[253]='\0';
|
||||
+ strcat(istr,")");
|
||||
+ */
|
||||
+ if (out!=NULL)
|
||||
+ fprintf(out,"%s\n",istr);
|
||||
+ if (initstr!=NULL)
|
||||
+ {
|
||||
+ strncpy(initstr,istr,maxlen-1);
|
||||
+ initstr[maxlen-1]='\0';
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+
|
||||
+ /* Turn off LSTM debugging output */
|
||||
+ api->SetVariable("lstm_debug_level","0");
|
||||
+#if (WILLUSDEBUG & 1)
|
||||
+ api->SetVariable("lstm_debug_level","9");
|
||||
+ api->SetVariable("paragraph_debug_level","9");
|
||||
+ api->SetVariable("tessdata_manager_debug_level","9");
|
||||
+ api->SetVariable("tosp_debug_level","9");
|
||||
+ api->SetVariable("wordrec_debug_level","9");
|
||||
+ api->SetVariable("segsearch_debug_level","9");
|
||||
+#endif
|
||||
+ /* willus mod, 11-24-16 */
|
||||
+ setlocale(LC_ALL,original_locale);
|
||||
+ return((void *)api);
|
||||
+ }
|
||||
+
|
||||
+
|
||||
+int tess_capi_get_ocr(void *vapi,PIX *pix,char *outstr,int maxlen,int segmode,FILE *out)
|
||||
+
|
||||
+ {
|
||||
+ tesseract::TessBaseAPI *api;
|
||||
+ static int old_segmode=-1;
|
||||
+
|
||||
+ api=(tesseract::TessBaseAPI *)vapi;
|
||||
+ if (old_segmode != segmode)
|
||||
+ {
|
||||
+ old_segmode=segmode;
|
||||
+ api->SetPageSegMode((tesseract::PageSegMode)segmode);
|
||||
+ }
|
||||
+ if (!api->ProcessPage(pix,0,NULL,NULL,0,NULL))
|
||||
+ {
|
||||
+ /* pixDestroy(&pix); */
|
||||
+ if (out!=NULL)
|
||||
+ fprintf(out,"tesscapi: Error during bitmap processing.\n");
|
||||
+ api->Clear();
|
||||
+ return(-1);
|
||||
+ }
|
||||
+ strncpy(outstr,api->GetUTF8Text(),maxlen-1);
|
||||
+ outstr[maxlen-1]='\0';
|
||||
+ api->Clear();
|
||||
+ return(0);
|
||||
+ }
|
||||
+
|
||||
+
|
||||
+int tess_capi_get_ocr_multiword(void *vapi,PIX *pix,int segmode,
|
||||
+ int **left,int **top,int **right,int **bottom,
|
||||
+ int **ybase,char **text,int *nw,
|
||||
+ FILE *out)
|
||||
+
|
||||
+ {
|
||||
+ tesseract::TessBaseAPI *api;
|
||||
+ static int old_segmode=-1;
|
||||
+
|
||||
+ api=(tesseract::TessBaseAPI *)vapi;
|
||||
+ if (old_segmode != segmode)
|
||||
+ {
|
||||
+ old_segmode=segmode;
|
||||
+ api->SetPageSegMode((tesseract::PageSegMode)segmode);
|
||||
+ }
|
||||
+ if (!api->ProcessPage(pix,0,NULL,NULL,0,NULL))
|
||||
+ {
|
||||
+ if (out!=NULL)
|
||||
+ fprintf(out,"tesscapi: Error during bitmap processing.\n");
|
||||
+ api->Clear();
|
||||
+ (*nw)=0;
|
||||
+ return(-1);
|
||||
+ }
|
||||
+ (*nw)=api->GetOCRWords(left,top,right,bottom,ybase,text);
|
||||
+ api->Clear();
|
||||
+ return(0);
|
||||
+ }
|
||||
+
|
||||
+
|
||||
+void tess_capi_end(void *vapi)
|
||||
+
|
||||
+ {
|
||||
+ tesseract::TessBaseAPI *api;
|
||||
+
|
||||
+ if (vapi==NULL)
|
||||
+ return;
|
||||
+ api=(tesseract::TessBaseAPI *)vapi;
|
||||
+ api->End();
|
||||
+ delete api;
|
||||
+ }
|
||||
diff --git a/src/api/tesseract.h b/src/api/tesseract.h
|
||||
new file mode 100644
|
||||
index 00000000..575948cc
|
||||
--- /dev/null
|
||||
+++ b/src/api/tesseract.h
|
||||
@@ -0,0 +1,29 @@
|
||||
+/*
|
||||
+** Willus.com's Tesseract C Wrappers
|
||||
+**
|
||||
+** 6-8-12
|
||||
+**
|
||||
+*/
|
||||
+
|
||||
+#ifndef _TESSERACT_H_
|
||||
+#define _TESSERACT_H_
|
||||
+
|
||||
+//#include <leptonica.h>
|
||||
+#ifdef __cplusplus
|
||||
+extern "C" {
|
||||
+#endif
|
||||
+
|
||||
+void *tess_capi_init(char *datapath,char *language,int ocr_type,FILE *out,
|
||||
+ char *initstr,int maxlen,int *status);
|
||||
+int tess_capi_get_ocr(void *api,PIX *pix,char *outstr,int maxlen,int segmode,FILE *out);
|
||||
+int tess_capi_get_ocr_multiword(void *vapi,PIX *pix,int segmode,
|
||||
+ int **left,int **top,int **right,int **bottom,
|
||||
+ int **ybase,char **text,int *nw,
|
||||
+ FILE *out);
|
||||
+void tess_capi_end(void *api);
|
||||
+
|
||||
+#ifdef __cplusplus
|
||||
+}
|
||||
+#endif
|
||||
+
|
||||
+#endif
|
||||
diff --git a/src/ccmain/tessedit.cpp b/src/ccmain/tessedit.cpp
|
||||
index 17f0951b..7af94ee2 100644
|
||||
--- a/src/ccmain/tessedit.cpp
|
||||
+++ b/src/ccmain/tessedit.cpp
|
||||
@@ -101,6 +101,10 @@ bool Tesseract::init_tesseract_lang_data(
|
||||
" to your \"tessdata\" directory.\n");
|
||||
return false;
|
||||
}
|
||||
+ /* willus mod */
|
||||
+ TFile fp;
|
||||
+ strncpy(fp.tfile_filename,tessdata_path.string(),511);
|
||||
+ fp.tfile_filename[511]='\0';
|
||||
#ifndef DISABLED_LEGACY_ENGINE
|
||||
if (oem == OEM_DEFAULT) {
|
||||
// Set the engine mode from availability, which can then be overridden by
|
||||
@@ -116,7 +120,6 @@ bool Tesseract::init_tesseract_lang_data(
|
||||
#endif // ndef DISABLED_LEGACY_ENGINE
|
||||
|
||||
// If a language specific config file (lang.config) exists, load it in.
|
||||
- TFile fp;
|
||||
if (mgr->GetComponent(TESSDATA_LANG_CONFIG, &fp)) {
|
||||
ParamUtils::ReadParamsFromFp(SET_PARAM_CONSTRAINT_NONE, &fp,
|
||||
this->params());
|
||||
diff --git a/src/ccutil/ccutil.h b/src/ccutil/ccutil.h
|
||||
index 71e89c60..bdeccc14 100644
|
||||
--- a/src/ccutil/ccutil.h
|
||||
+++ b/src/ccutil/ccutil.h
|
||||
@@ -80,6 +80,13 @@ class CCUtil {
|
||||
// Member parameters.
|
||||
// These have to be declared and initialized after params_ member, since
|
||||
// params_ should be initialized before parameters are added to it.
|
||||
+/* willus mod */
|
||||
+/*
|
||||
+ #ifdef _WIN32
|
||||
+ STRING_VAR_H(tessedit_module_name, WINDLLNAME,
|
||||
+ "Module colocated with tessdata dir");
|
||||
+ #endif
|
||||
+*/
|
||||
INT_VAR_H(ambigs_debug_level, 0, "Debug level for unichar ambiguities");
|
||||
BOOL_VAR_H(use_definite_ambigs_for_classifier, false,
|
||||
"Use definite ambiguities when running character classifier");
|
||||
diff --git a/src/ccutil/genericvector.h b/src/ccutil/genericvector.h
|
||||
index 3556d153..3a5e8662 100644
|
||||
--- a/src/ccutil/genericvector.h
|
||||
+++ b/src/ccutil/genericvector.h
|
||||
@@ -382,7 +382,26 @@ inline bool LoadDataFromFile(const char* filename, GenericVector<char>* data) {
|
||||
// reserve an extra byte in case caller wants to append a '\0' character
|
||||
data->reserve(size + 1);
|
||||
data->resize_no_init(size);
|
||||
- result = static_cast<long>(fread(&(*data)[0], 1, size, fp)) == size;
|
||||
+ /* willus mod Dec 2018--weird issue with Win XP and MinGW gcc 7.3.0 */
|
||||
+ /* Can't read entire file at once -- need to break up into smaller blocksize reads */
|
||||
+ {
|
||||
+ int frs,n;
|
||||
+ int blocksize;
|
||||
+ blocksize=1024*1024;
|
||||
+ for (n=0;1;)
|
||||
+ {
|
||||
+ int bs;
|
||||
+ bs= size-n > blocksize ? blocksize : size-n;
|
||||
+ frs=(int)fread(&(*data)[n],1,bs,fp);
|
||||
+ n+=frs;
|
||||
+ if (frs<bs || bs<blocksize || n>=size)
|
||||
+ break;
|
||||
+ }
|
||||
+ result = static_cast<long>((long)n==size);
|
||||
+ }
|
||||
+ /*
|
||||
+ result = static_cast<long>(fread(&(*data)[0], 1, size, fp)) == size;
|
||||
+ */
|
||||
}
|
||||
fclose(fp);
|
||||
}
|
||||
diff --git a/src/ccutil/mainblk.cpp b/src/ccutil/mainblk.cpp
|
||||
index 52b04b04..80b26044 100644
|
||||
--- a/src/ccutil/mainblk.cpp
|
||||
+++ b/src/ccutil/mainblk.cpp
|
||||
@@ -55,8 +55,22 @@ void CCUtil::main_setup(const char *argv0, const char *basename) {
|
||||
#if defined(_WIN32)
|
||||
} else if (datadir == nullptr || _access(datadir.string(), 0) != 0) {
|
||||
/* Look for tessdata in directory of executable. */
|
||||
+ /*
|
||||
+ char drive[_MAX_DRIVE];
|
||||
+ char dir[_MAX_DIR];
|
||||
+ */
|
||||
char path[_MAX_PATH];
|
||||
- DWORD length = GetModuleFileName(nullptr, path, sizeof(path));
|
||||
+ int i;
|
||||
+ /* DWORD length = */ GetModuleFileName(nullptr, path, sizeof(path));
|
||||
+ /* willus mod--avoid _splitpath_s -- not in XP */
|
||||
+ for (i=strlen(path)-1;i>=0 && path[i]!='/' && path[i]!='\\';i--);
|
||||
+ if (i>=0)
|
||||
+ {
|
||||
+ path[i]='\0';
|
||||
+ datadir=path;
|
||||
+ datadir += "/tessdata";
|
||||
+ }
|
||||
+ /*
|
||||
if (length > 0 && length < sizeof(path)) {
|
||||
char* separator = std::strrchr(path, '\\');
|
||||
if (separator != nullptr) {
|
||||
@@ -65,6 +79,7 @@ void CCUtil::main_setup(const char *argv0, const char *basename) {
|
||||
datadir += "/tessdata";
|
||||
}
|
||||
}
|
||||
+ */
|
||||
#endif /* _WIN32 */
|
||||
#if defined(TESSDATA_PREFIX)
|
||||
} else {
|
||||
diff --git a/src/ccutil/params.cpp b/src/ccutil/params.cpp
|
||||
index 00bf2563..486c5ce0 100644
|
||||
--- a/src/ccutil/params.cpp
|
||||
+++ b/src/ccutil/params.cpp
|
||||
@@ -82,7 +82,8 @@ bool ParamUtils::ReadParamsFromFp(SetParamConstraint constraint, TFile *fp,
|
||||
|
||||
if (!foundit) {
|
||||
anyerr = true; // had an error
|
||||
- tprintf("Warning: Parameter not found: %s\n", line);
|
||||
+ /* willus mod */
|
||||
+ tprintf("Tesseract warning: Parameter %s not found in file %s.\n",line,fp->tfile_filename);
|
||||
}
|
||||
}
|
||||
}
|
||||
diff --git a/src/ccutil/serialis.cpp b/src/ccutil/serialis.cpp
|
||||
index 7def011f..6107a494 100644
|
||||
--- a/src/ccutil/serialis.cpp
|
||||
+++ b/src/ccutil/serialis.cpp
|
||||
@@ -201,6 +201,9 @@ bool TFile::Open(const STRING& filename, FileReader reader) {
|
||||
offset_ = 0;
|
||||
is_writing_ = false;
|
||||
swap_ = false;
|
||||
+ /* willus mod */
|
||||
+ strncpy(tfile_filename,filename.string(),511);
|
||||
+ tfile_filename[511]='\0';
|
||||
if (reader == nullptr)
|
||||
return LoadDataFromFile(filename, data_);
|
||||
else
|
||||
diff --git a/src/ccutil/serialis.h b/src/ccutil/serialis.h
|
||||
index 095b9227..4cc8251e 100644
|
||||
--- a/src/ccutil/serialis.h
|
||||
+++ b/src/ccutil/serialis.h
|
||||
@@ -77,6 +77,8 @@ class TFile {
|
||||
public:
|
||||
TFile();
|
||||
~TFile();
|
||||
+ /* willus mod */
|
||||
+ char tfile_filename[512];
|
||||
|
||||
// All the Open methods load the whole file into memory for reading.
|
||||
// Opens a file with a supplied reader, or nullptr to use the default.
|
||||
diff --git a/src/lstm/input.cpp b/src/lstm/input.cpp
|
||||
index 73b584b3..0b0b54c3 100644
|
||||
--- a/src/lstm/input.cpp
|
||||
+++ b/src/lstm/input.cpp
|
||||
@@ -93,8 +93,11 @@ Pix* Input::PrepareLSTMInputs(const ImageData& image_data,
|
||||
return nullptr;
|
||||
}
|
||||
if (width < min_width || height < min_width) {
|
||||
+ /* willus mod -- no warning */
|
||||
+ /*
|
||||
tprintf("Image too small to scale!! (%dx%d vs min width of %d)\n", width,
|
||||
height, min_width);
|
||||
+ */
|
||||
pixDestroy(&pix);
|
||||
return nullptr;
|
||||
}
|
||||
--
|
||||
2.22.0
|
||||
|
||||
|
|
|
@ -5,12 +5,12 @@ assert lib.versionAtLeast (lib.getVersion ocaml) "4.07";
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "llpp";
|
||||
version = "30";
|
||||
version = "31";
|
||||
|
||||
src = fetchgit {
|
||||
url = "git://repo.or.cz/llpp.git";
|
||||
rev = "v${version}";
|
||||
sha256 = "0iilpzf12hs0zky58j55l4y5dvzv7fc53nsrg324n9vka92mppvd";
|
||||
sha256 = "14ibsm1zzxfidjajcj30b5m9in10q3817izahsjvkmryrvvn6qsg";
|
||||
fetchSubmodules = false;
|
||||
};
|
||||
|
||||
|
|
|
@ -1,14 +1,5 @@
|
|||
From cccadedfbcb6764a38382154838113a6b2fd4dee Mon Sep 17 00:00:00 2001
|
||||
From: Michael Hoang <enzime@users.noreply.github.com>
|
||||
Date: Mon, 10 Dec 2018 15:08:01 +1100
|
||||
Subject: [PATCH] Patch build.bash for nixpkgs
|
||||
|
||||
---
|
||||
build.bash | 37 ++-----------------------------------
|
||||
1 file changed, 2 insertions(+), 35 deletions(-)
|
||||
|
||||
diff --git a/build.bash b/build.bash
|
||||
index 1588011..72117d9 100755
|
||||
index 7c278b6..41494c5 100755
|
||||
--- a/build.bash
|
||||
+++ b/build.bash
|
||||
@@ -29,7 +29,6 @@ srcd="$(dirname $0)"
|
||||
|
@ -20,10 +11,10 @@ index 1588011..72117d9 100755
|
|||
mkdir -p $outd/{$wsid,lablGL}
|
||||
:>$outd/ordered
|
||||
@@ -39,12 +38,6 @@ isfresh() { test -r "$1.past" && . "$1.past" && test "$k" = "$2"; }
|
||||
mbt=native
|
||||
mbt=${mbt:-native}
|
||||
mulibs="$mudir/build/$mbt/libmupdf.a" # $mudir/build/$mbt/libmupdf-third.a
|
||||
|
||||
-keycmd="(cd $mudir && git describe --tags --dirty); digest $mulibs"
|
||||
-keycmd="(cd $mudir && make -q build=$mbt libs && echo); digest $mulibs"
|
||||
-isfresh "$mulibs" "$(eval $keycmd)" || (
|
||||
- make -C "$mudir" build=$mbt -j $mjobs libs
|
||||
- echo "k='$(eval $keycmd)'" >$mudir/build/$mbt/libmupdf.a.past
|
||||
|
@ -32,12 +23,12 @@ index 1588011..72117d9 100755
|
|||
oincs() {
|
||||
local i=
|
||||
local incs1=
|
||||
@@ -90,32 +83,6 @@ mflags() {
|
||||
@@ -90,34 +83,6 @@ mflags() {
|
||||
}
|
||||
|
||||
overs="$(ocamlc -vnum 2>/dev/null)" || overs=""
|
||||
-test "$overs" = "4.07.0" || {
|
||||
- url=https://caml.inria.fr/pub/distrib/ocaml-4.07/ocaml-4.07.0.tar.xz
|
||||
-test "$overs" = "4.08" || {
|
||||
- url=https://caml.inria.fr/pub/distrib/ocaml-4.08/ocaml-4.08.0.tar.xz
|
||||
- txz=$outd/$(basename $url)
|
||||
- isfresh $txz $url || {
|
||||
- executable_p() { command -v "$1" >/dev/null 2>&1; }
|
||||
|
@ -54,8 +45,10 @@ index 1588011..72117d9 100755
|
|||
- tar xf $txz -C $outd
|
||||
- bn=$(basename $url)
|
||||
- cd $outd/${bn%.tar.xz}
|
||||
- ./configure -prefix $absprefix \
|
||||
- -no-graph -no-debugger -no-ocamldoc -no-native-compiler
|
||||
- ./configure --disable-vmthreads --disable-graph-lib \
|
||||
- --disable-ocamldoc --enable-debugger=no \
|
||||
- --disable-flat-float-array \
|
||||
- --prefix=$absprefix
|
||||
- make -j $mjobs world
|
||||
- make install
|
||||
- echo "k='$url'" >$absprefix/bin/ocamlc.past
|
||||
|
@ -65,7 +58,7 @@ index 1588011..72117d9 100755
|
|||
|
||||
bocaml1() {
|
||||
grep -q "$3" $outd/ordered || {
|
||||
@@ -224,7 +191,7 @@ bobjc() {
|
||||
@@ -227,7 +192,7 @@ bobjc() {
|
||||
} && vecho "fresh $o"
|
||||
}
|
||||
|
||||
|
@ -74,7 +67,7 @@ index 1588011..72117d9 100755
|
|||
|
||||
cmd="(. $srcd/genconfstr.sh >$outd/confstruct.ml)"
|
||||
keycmd="digest $srcd/genconfstr.sh $outd/confstruct.ml"
|
||||
@@ -278,7 +245,7 @@ for m in ml_gl ml_glarray ml_raw; do
|
||||
@@ -281,7 +246,7 @@ for m in ml_gl ml_glarray ml_raw; do
|
||||
done
|
||||
|
||||
libs="str.cma unix.cma"
|
||||
|
@ -83,6 +76,3 @@ index 1588011..72117d9 100755
|
|||
if $darwin; then
|
||||
mcomp=$(ocamlc -config | grep bytecomp_c_co | { read _ c; echo $c; })
|
||||
clibs="$clibs -framework Cocoa -framework OpenGL"
|
||||
--
|
||||
2.19.2
|
||||
|
||||
|
|
|
@ -14,24 +14,17 @@ let
|
|||
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
version = "1.14.0";
|
||||
version = "1.16.1";
|
||||
pname = "mupdf";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://mupdf.com/downloads/archive/${pname}-${version}-source.tar.gz";
|
||||
sha256 = "093p7lv6pgyymagn28n58fs0np928r0i5p2az9cc4gwccwx4hhy4";
|
||||
sha256 = "0iz4ickj52fxjp8crg573kjrl4viq279g589isdpgpckslysf7g7";
|
||||
};
|
||||
|
||||
patches =
|
||||
# Use shared libraries to decrease size
|
||||
[( fetchpatch
|
||||
{
|
||||
name = "CVE-2018-18662";
|
||||
url = "http://git.ghostscript.com/?p=mupdf.git;a=patch;h=164ddc22ee0d5b63a81d5148f44c37dd132a9356";
|
||||
sha256 = "1jkzh20n3b854871h86cy5y7fvy0d5wyqy51b3fg6gj3a0jqpzzd";
|
||||
}
|
||||
)]
|
||||
++ stdenv.lib.optional (!stdenv.isDarwin) ./mupdf-1.14-shared_libs.patch
|
||||
stdenv.lib.optional (!stdenv.isDarwin) ./mupdf-1.14-shared_libs.patch
|
||||
++ stdenv.lib.optional stdenv.isDarwin ./darwin.patch
|
||||
;
|
||||
|
||||
|
|
|
@ -4,12 +4,12 @@ with stdenv.lib;
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "noice";
|
||||
version = "0.6";
|
||||
version = "0.8";
|
||||
|
||||
src = fetchgit {
|
||||
url = "git://git.2f30.org/noice.git";
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "03rwglcy47fh6rb630vws10m95bxpcfv47nxrlws2li2ljam8prw";
|
||||
sha256 = "0975j4m93s9a21pazwdzn4gqhkngwq7q6ghp0q8a75r6c4fb7aar";
|
||||
};
|
||||
|
||||
configFile = optionalString (conf!=null) (builtins.toFile "config.def.h" conf);
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{ stdenv, fetchurl, pkgconfig, neon, libusb, openssl, udev, avahi, freeipmi
|
||||
, libtool, makeWrapper }:
|
||||
, libtool, makeWrapper, nss }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "nut-2.7.4";
|
||||
|
@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "19r5dm07sfz495ckcgbfy0pasx0zy3faa0q7bih69lsjij8q43lq";
|
||||
};
|
||||
|
||||
buildInputs = [ neon libusb openssl udev avahi freeipmi libtool ];
|
||||
buildInputs = [ neon libusb openssl udev avahi freeipmi libtool nss ];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig makeWrapper ];
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "wtf";
|
||||
version = "0.21.0";
|
||||
version = "0.22.0";
|
||||
|
||||
overrideModAttrs = _oldAttrs : _oldAttrs // {
|
||||
preBuild = ''export GOPROXY="https://gocenter.io"'';
|
||||
|
@ -17,17 +17,18 @@ buildGoModule rec {
|
|||
owner = "wtfutil";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "0sd8vrx7nak0by4whdmd9jzr66zm48knv1w1aqi90709fv98brm9";
|
||||
};
|
||||
sha256 = "1d8lp94cw8rh9r9y64awxafhw9fmp33v3m761gzy500hrxal2rzb";
|
||||
};
|
||||
|
||||
modSha256 = "0jgq9ql27x0kdp59l5drisl5v7v7sx2wy3zqjbr3bqyh3vdx19ic";
|
||||
modSha256 = "0m180571j4564py5mzdcbyypk71fdlp2vkfdwi6q85nd2q94sx6h";
|
||||
|
||||
buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version}" ];
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
||||
postInstall = ''
|
||||
wrapProgram "$out/bin/wtf" --prefix PATH : "${ncurses.dev}/bin"
|
||||
mv "$out/bin/wtf" "$out/bin/wtfutil"
|
||||
wrapProgram "$out/bin/wtfutil" --prefix PATH : "${ncurses.dev}/bin"
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
, pkgconfig, zathura_core, cairo , gtk-mac-integration, girara, mupdf }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "0.3.4";
|
||||
version = "0.3.5";
|
||||
pname = "zathura-pdf-mupdf";
|
||||
|
||||
# pwmt.org server was down at the time of last update
|
||||
|
@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
|
|||
owner = "pwmt";
|
||||
repo = "zathura-pdf-mupdf";
|
||||
rev = version;
|
||||
sha256 = "1m4w4jrybpjmx6pi33a5saxzmfd8rrym2k13jpd1fv543s17d9dy";
|
||||
sha256 = "0wb46hllykbi30ir69s8s23mihivqn13mgfdzawbsn2a21p8y4zl";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ meson ninja pkgconfig ];
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ stdenv, mkChromiumDerivation, channel }:
|
||||
{ stdenv, mkChromiumDerivation, channel, enableWideVine }:
|
||||
|
||||
with stdenv.lib;
|
||||
|
||||
|
@ -18,11 +18,6 @@ mkChromiumDerivation (base: rec {
|
|||
cp -vLR "$buildPath/locales" "$buildPath/resources" "$libExecPath/"
|
||||
cp -v "$buildPath/chrome" "$libExecPath/$packageName"
|
||||
|
||||
if [ -e "$buildPath/libwidevinecdmadapter.so" ]; then
|
||||
cp -v "$buildPath/libwidevinecdmadapter.so" \
|
||||
"$libExecPath/libwidevinecdmadapter.so"
|
||||
fi
|
||||
|
||||
mkdir -p "$sandbox/bin"
|
||||
cp -v "$buildPath/chrome_sandbox" "$sandbox/bin/${sandboxExecutableName}"
|
||||
|
||||
|
@ -67,7 +62,7 @@ mkChromiumDerivation (base: rec {
|
|||
description = "An open source web browser from Google";
|
||||
homepage = http://www.chromium.org/;
|
||||
maintainers = with maintainers; [ bendlas ivan ];
|
||||
license = licenses.bsd3;
|
||||
license = if enableWideVine then licenses.unfree else licenses.bsd3;
|
||||
platforms = platforms.linux;
|
||||
hydraPlatforms = if channel == "stable" then ["aarch64-linux" "x86_64-linux"] else [];
|
||||
timeout = 172800; # 48 hours
|
||||
|
|
|
@ -24,7 +24,6 @@
|
|||
|
||||
# package customization
|
||||
, enableNaCl ? false
|
||||
, enableWideVine ? false
|
||||
, useVaapi ? false
|
||||
, gnomeSupport ? false, gnome ? null
|
||||
, gnomeKeyringSupport ? false, libgnome-keyring3 ? null
|
||||
|
@ -133,11 +132,12 @@ let
|
|||
++ optional pulseSupport libpulseaudio
|
||||
++ optional (versionAtLeast version "72") jdk.jre;
|
||||
|
||||
patches = optional enableWideVine ./patches/widevine.patch ++ [
|
||||
patches = [
|
||||
./patches/nix_plugin_paths_68.patch
|
||||
./patches/remove-webp-include-69.patch
|
||||
./patches/jumbo-sorted.patch
|
||||
./patches/no-build-timestamps.patch
|
||||
./patches/widevine.patch
|
||||
|
||||
# Unfortunately, chromium regularly breaks on major updates and
|
||||
# then needs various patches backported in order to be compiled with GCC.
|
||||
|
@ -235,7 +235,7 @@ let
|
|||
use_gnome_keyring = gnomeKeyringSupport;
|
||||
use_gio = gnomeSupport;
|
||||
enable_nacl = enableNaCl;
|
||||
enable_widevine = enableWideVine;
|
||||
enable_widevine = true;
|
||||
use_cups = cupsSupport;
|
||||
|
||||
treat_warnings_as_errors = false;
|
||||
|
|
|
@ -2,6 +2,8 @@
|
|||
, makeWrapper, ed
|
||||
, glib, gtk3, gnome3, gsettings-desktop-schemas
|
||||
, libva ? null
|
||||
, gcc, nspr, nss, patchelfUnstable, runCommand
|
||||
, lib
|
||||
|
||||
# package customization
|
||||
, channel ? "stable"
|
||||
|
@ -34,23 +36,76 @@ in let
|
|||
mkChromiumDerivation = callPackage ./common.nix {
|
||||
inherit enableNaCl gnomeSupport gnome
|
||||
gnomeKeyringSupport proprietaryCodecs cupsSupport pulseSupport
|
||||
useVaapi
|
||||
enableWideVine;
|
||||
useVaapi;
|
||||
};
|
||||
|
||||
browser = callPackage ./browser.nix { inherit channel; };
|
||||
browser = callPackage ./browser.nix { inherit channel enableWideVine; };
|
||||
|
||||
plugins = callPackage ./plugins.nix {
|
||||
inherit enablePepperFlash enableWideVine;
|
||||
inherit enablePepperFlash;
|
||||
};
|
||||
};
|
||||
|
||||
mkrpath = p: "${lib.makeSearchPathOutput "lib" "lib64" p}:${lib.makeLibraryPath p}";
|
||||
widevine = let upstream-info = chromium.upstream-info; in stdenv.mkDerivation {
|
||||
name = "chromium-binary-plugin-widevine";
|
||||
|
||||
src = upstream-info.binary;
|
||||
|
||||
nativeBuildInputs = [ patchelfUnstable ];
|
||||
|
||||
phases = [ "unpackPhase" "patchPhase" "installPhase" "checkPhase" ];
|
||||
|
||||
unpackCmd = let
|
||||
chan = if upstream-info.channel == "dev" then "chrome-unstable"
|
||||
else if upstream-info.channel == "stable" then "chrome"
|
||||
else if upstream-info.channel == "beta" then "chrome-beta"
|
||||
else throw "Unknown chromium channel.";
|
||||
in ''
|
||||
mkdir -p plugins
|
||||
ar p "$src" data.tar.xz | tar xJ -C plugins --strip-components=4 \
|
||||
./opt/google/${chan}/libwidevinecdm.so
|
||||
'';
|
||||
|
||||
doCheck = true;
|
||||
checkPhase = ''
|
||||
! find -iname '*.so' -exec ldd {} + | grep 'not found'
|
||||
'';
|
||||
|
||||
PATCH_RPATH = mkrpath [ gcc.cc glib nspr nss ];
|
||||
|
||||
patchPhase = ''
|
||||
patchelf --set-rpath "$PATCH_RPATH" libwidevinecdm.so
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
install -vD libwidevinecdm.so \
|
||||
"$out/lib/libwidevinecdm.so"
|
||||
'';
|
||||
|
||||
meta.platforms = lib.platforms.x86_64;
|
||||
};
|
||||
|
||||
suffix = if channel != "stable" then "-" + channel else "";
|
||||
|
||||
sandboxExecutableName = chromium.browser.passthru.sandboxExecutableName;
|
||||
|
||||
version = chromium.browser.version;
|
||||
|
||||
# This is here because we want to add the widevine shared object at the last
|
||||
# minute in order to avoid a full rebuild of chromium. Additionally, this
|
||||
# isn't in `browser.nix` so we can avoid having to re-expose attributes of
|
||||
# the chromium derivation (see above: we introspect `sandboxExecutableName`).
|
||||
chromiumWV = let browser = chromium.browser; in if enableWideVine then
|
||||
runCommand (browser.name + "-wv") { version = browser.version; }
|
||||
''
|
||||
mkdir -p $out
|
||||
cp -R ${browser}/* $out/
|
||||
chmod u+w $out/libexec/chromium*
|
||||
cp ${widevine}/lib/libwidevinecdm.so $out/libexec/chromium/
|
||||
# patchelf?
|
||||
''
|
||||
else browser;
|
||||
in stdenv.mkDerivation {
|
||||
name = "chromium${suffix}-${version}";
|
||||
inherit version;
|
||||
|
@ -68,7 +123,7 @@ in stdenv.mkDerivation {
|
|||
outputs = ["out" "sandbox"];
|
||||
|
||||
buildCommand = let
|
||||
browserBinary = "${chromium.browser}/libexec/chromium/chromium";
|
||||
browserBinary = "${chromiumWV}/libexec/chromium/chromium";
|
||||
getWrapperFlags = plugin: "$(< \"${plugin}/nix-support/wrapper-flags\")";
|
||||
libPath = stdenv.lib.makeLibraryPath ([]
|
||||
++ stdenv.lib.optional useVaapi libva
|
||||
|
@ -113,13 +168,7 @@ in stdenv.mkDerivation {
|
|||
'';
|
||||
|
||||
inherit (chromium.browser) packageName;
|
||||
meta = chromium.browser.meta // {
|
||||
broken = if enableWideVine then
|
||||
builtins.trace "WARNING: WideVine is not functional, please only use for testing"
|
||||
true
|
||||
else false;
|
||||
};
|
||||
|
||||
meta = chromium.browser.meta;
|
||||
passthru = {
|
||||
inherit (chromium) upstream-info browser;
|
||||
mkDerivation = chromium.mkChromiumDerivation;
|
||||
|
|
|
@ -1,16 +1,24 @@
|
|||
Minimal WideVine patch from Gentoo:
|
||||
Description: enable widevine and set its version string to "undefined"
|
||||
Author: Michael Gilbert <mgilbert@debian.org>
|
||||
Author: Olivier Tilloy <olivier.tilloy@canonical.com>
|
||||
|
||||
https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-widevine-r1.patch
|
||||
|
||||
BTS: https://bugs.gentoo.org/show_bug.cgi?id=547630
|
||||
|
||||
--- a/third_party/widevine/cdm/stub/widevine_cdm_version.h
|
||||
+++ b/third_party/widevine/cdm/stub/widevine_cdm_version.h
|
||||
@@ -10,6 +10,7 @@
|
||||
|
||||
#include "third_party/widevine/cdm/widevine_cdm_common.h"
|
||||
|
||||
+#define WIDEVINE_CDM_VERSION_STRING "unknown"
|
||||
#define WIDEVINE_CDM_AVAILABLE
|
||||
--- a/third_party/widevine/cdm/widevine_cdm_version.h
|
||||
+++ b/third_party/widevine/cdm/widevine_cdm_version.h
|
||||
@@ -11,5 +11,6 @@
|
||||
// If the Widevine CDM is available define the following:
|
||||
// - WIDEVINE_CDM_VERSION_STRING (with the version of the CDM that's available
|
||||
// as a string, e.g., "1.0.123.456").
|
||||
+#define WIDEVINE_CDM_VERSION_STRING "undefined"
|
||||
|
||||
#endif // WIDEVINE_CDM_VERSION_H_
|
||||
--- a/chrome/common/chrome_content_client.cc
|
||||
+++ b/chrome/common/chrome_content_client.cc
|
||||
@@ -99,7 +99,7 @@
|
||||
// Registers Widevine CDM if Widevine is enabled, the Widevine CDM is
|
||||
// bundled and not a component. When the Widevine CDM is a component, it is
|
||||
// registered in widevine_cdm_component_installer.cc.
|
||||
-#if BUILDFLAG(BUNDLE_WIDEVINE_CDM) && !BUILDFLAG(ENABLE_WIDEVINE_CDM_COMPONENT)
|
||||
+#if !BUILDFLAG(ENABLE_WIDEVINE_CDM_COMPONENT)
|
||||
#define REGISTER_BUNDLED_WIDEVINE_CDM
|
||||
#include "third_party/widevine/cdm/widevine_cdm_common.h" // nogncheck
|
||||
// TODO(crbug.com/663554): Needed for WIDEVINE_CDM_VERSION_STRING. Support
|
||||
|
|
|
@ -6,7 +6,6 @@
|
|||
, fetchzip
|
||||
, patchelfUnstable
|
||||
, enablePepperFlash ? false
|
||||
, enableWideVine ? false
|
||||
|
||||
, upstream-info
|
||||
}:
|
||||
|
@ -44,60 +43,6 @@ let
|
|||
echo ${toString quoted} > "''$${output}/nix-support/wrapper-flags"
|
||||
'';
|
||||
|
||||
widevine = stdenv.mkDerivation {
|
||||
name = "chromium-binary-plugin-widevine";
|
||||
|
||||
src = upstream-info.binary;
|
||||
|
||||
nativeBuildInputs = [ patchelfUnstable ];
|
||||
|
||||
phases = [ "unpackPhase" "patchPhase" "installPhase" "checkPhase" ];
|
||||
|
||||
unpackCmd = let
|
||||
chan = if upstream-info.channel == "dev" then "chrome-unstable"
|
||||
else if upstream-info.channel == "stable" then "chrome"
|
||||
else "chrome-${upstream-info.channel}";
|
||||
in ''
|
||||
mkdir -p plugins
|
||||
ar p "$src" data.tar.xz | tar xJ -C plugins --strip-components=4 \
|
||||
./opt/google/${chan}/libwidevinecdm.so \
|
||||
./opt/google/${chan}/libwidevinecdmadapter.so
|
||||
'';
|
||||
|
||||
doCheck = true;
|
||||
checkPhase = ''
|
||||
! find -iname '*.so' -exec ldd {} + | grep 'not found'
|
||||
'';
|
||||
|
||||
PATCH_RPATH = mkrpath [ gcc.cc glib nspr nss ];
|
||||
|
||||
patchPhase = ''
|
||||
chmod +x libwidevinecdm.so libwidevinecdmadapter.so
|
||||
patchelf --set-rpath "$PATCH_RPATH" libwidevinecdm.so
|
||||
patchelf --set-rpath "$out/lib:$PATCH_RPATH" libwidevinecdmadapter.so
|
||||
'';
|
||||
|
||||
installPhase = let
|
||||
wvName = "Widevine Content Decryption Module";
|
||||
wvDescription = "Playback of encrypted HTML audio/video content";
|
||||
wvMimeTypes = "application/x-ppapi-widevine-cdm";
|
||||
wvModule = "@out@/lib/libwidevinecdmadapter.so";
|
||||
wvInfo = "#${wvName}#${wvDescription};${wvMimeTypes}";
|
||||
in ''
|
||||
install -vD libwidevinecdm.so \
|
||||
"$out/lib/libwidevinecdm.so"
|
||||
install -vD libwidevinecdmadapter.so \
|
||||
"$out/lib/libwidevinecdmadapter.so"
|
||||
|
||||
${mkPluginInfo {
|
||||
flags = [ "--register-pepper-plugins=${wvModule}${wvInfo}" ];
|
||||
envVars.NIX_CHROMIUM_PLUGIN_PATH_WIDEVINE = "@out@/lib";
|
||||
}}
|
||||
'';
|
||||
|
||||
meta.platforms = platforms.x86_64;
|
||||
};
|
||||
|
||||
flash = stdenv.mkDerivation rec {
|
||||
pname = "flashplayer-ppapi";
|
||||
version = "32.0.0.255";
|
||||
|
@ -140,6 +85,5 @@ let
|
|||
};
|
||||
|
||||
in {
|
||||
enabled = optional enableWideVine widevine
|
||||
++ optional enablePepperFlash flash;
|
||||
enabled = optional enablePepperFlash flash;
|
||||
}
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
# This file is autogenerated from update.sh in the same directory.
|
||||
{
|
||||
beta = {
|
||||
sha256 = "0m7xdpi1f2a33csd7bsp91g5klz0hmr83ksfwsd2fki3iipvfs4w";
|
||||
sha256bin64 = "1b4cyf4v55sy52mxxl8d70abg5ck5k45jaqdjsjw7dvh3s2x4bwp";
|
||||
version = "77.0.3865.42";
|
||||
sha256 = "12cp24h93b48pwfywf5b6qvjdlhxrhp87qdaqbfcn6g787r2z5gb";
|
||||
sha256bin64 = "0d9w869qqwbmw3qjvxkfm37i7dvrgmrwm5y96sm1dg2jnxqj4bdz";
|
||||
version = "77.0.3865.75";
|
||||
};
|
||||
dev = {
|
||||
sha256 = "0x5r6xqwiggwyzbinm252xc1n3f9r7cmmzj6assi4v1nsispdh2k";
|
||||
|
@ -11,8 +11,8 @@
|
|||
version = "78.0.3887.7";
|
||||
};
|
||||
stable = {
|
||||
sha256 = "0hajwjf7swlgh1flpf8ljfrb2zhmcpzvrigvvxqd36g3nm04cknm";
|
||||
sha256bin64 = "0hdsla8i3q0zbczia64ghqsf420alcc31xdishx1sv48x3rlrxkk";
|
||||
version = "76.0.3809.132";
|
||||
sha256 = "12cp24h93b48pwfywf5b6qvjdlhxrhp87qdaqbfcn6g787r2z5gb";
|
||||
sha256bin64 = "1wp5g09czyslkkhw3nhbp39fxfcz0pprsgj8h0aggghpdbvzph3d";
|
||||
version = "77.0.3865.75";
|
||||
};
|
||||
}
|
||||
|
|
|
@ -70,11 +70,11 @@ rec {
|
|||
|
||||
firefox-esr-60 = common rec {
|
||||
pname = "firefox-esr";
|
||||
ffversion = "60.8.0esr";
|
||||
ffversion = "60.9.0esr";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz";
|
||||
sha512 = "0332b6049b97e488e55a3b9540baad3bd159e297084e9a625b8492497c73f86eb3e144219dabc5e9f2c2e4a27630d83d243c919cd4f86b7f59f47133ed3afc54";
|
||||
sha512 = "4baea5c9c4eff257834bbaee6d7786f69f7e6bacd24ca13c2705226f4a0d88315ab38c650b2c5e9c76b698f2debc7cea1e5a99cb4dc24e03c48a24df5143a3cf";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
|
|
@ -95,18 +95,12 @@ let
|
|||
|
||||
srcs = {
|
||||
x86_64-linux = fetchurl {
|
||||
urls = [
|
||||
"https://github.com/TheTorProject/gettorbrowser/releases/download/v${version}/tor-browser-linux64-${version}_${lang}.tar.xz"
|
||||
"https://dist.torproject.org/torbrowser/${version}/tor-browser-linux64-${version}_${lang}.tar.xz"
|
||||
];
|
||||
url = "https://dist.torproject.org/torbrowser/${version}/tor-browser-linux64-${version}_${lang}.tar.xz";
|
||||
sha256 = "00r5k9bbfpv3s6shxqypl13psr1zz51xiyz3vmm4flhr2qa4ycsz";
|
||||
};
|
||||
|
||||
i686-linux = fetchurl {
|
||||
urls = [
|
||||
"https://dist.torproject.org/torbrowser/${version}/tor-browser-linux32-${version}_${lang}.tar.xz"
|
||||
"https://github.com/TheTorProject/gettorbrowser/releases/download/v${version}/tor-browser-linux32-${version}_${lang}.tar.xz"
|
||||
];
|
||||
url = "https://github.com/TheTorProject/gettorbrowser/releases/download/v${version}/tor-browser-linux32-${version}_${lang}.tar.xz";
|
||||
sha256 = "1nxvw5kiggfr4n5an436ass84cvwjviaa894kfm72yf2ls149f29";
|
||||
};
|
||||
};
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{ lib, buildGoPackage, fetchFromGitHub, ... }:
|
||||
|
||||
let version = "0.12.0"; in
|
||||
let version = "0.12.5"; in
|
||||
|
||||
buildGoPackage {
|
||||
pname = "kubecfg";
|
||||
|
@ -10,7 +10,7 @@ buildGoPackage {
|
|||
owner = "bitnami";
|
||||
repo = "kubecfg";
|
||||
rev = "v${version}";
|
||||
sha256 = "118p1fy6cihswwz03vp62cz8395hgfqd82nmfkw88fx7av23rfhb";
|
||||
sha256 = "0pn37qkwn3kdsd0z3qxk95lqjn2zak7gkk0pwlqp26jmrx0vv18l";
|
||||
};
|
||||
|
||||
goPackagePath = "github.com/bitnami/kubecfg";
|
||||
|
|
58
pkgs/applications/networking/hpmyroom/default.nix
Normal file
58
pkgs/applications/networking/hpmyroom/default.nix
Normal file
|
@ -0,0 +1,58 @@
|
|||
{ mkDerivation, stdenv, lib, fetchurl, rpmextract, autoPatchelfHook , libuuid
|
||||
, libXtst, libXfixes, glib, gst_all_1, alsaLib, freetype, fontconfig , libXext
|
||||
, libGL, libpng, libXScrnSaver, libxcb, xorg, libpulseaudio, libdrm
|
||||
}:
|
||||
mkDerivation rec {
|
||||
pname = "hpmyroom";
|
||||
version = "11.1.0.0508";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://www.myroom.hpe.com/downloadfiles/${pname}-${version}.x86_64.rpm";
|
||||
sha256 = "1j7mzvf349yxb42m8syh73gpvil01hy1a2wrr0rdzb2ijfnkxyaa";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
rpmextract autoPatchelfHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
libuuid libXtst libXScrnSaver libXfixes alsaLib freetype fontconfig libXext
|
||||
libGL libpng libxcb libpulseaudio libdrm
|
||||
glib # For libgobject
|
||||
stdenv.cc.cc # For libstdc++
|
||||
xorg.libX11
|
||||
] ++ (with gst_all_1; [ gstreamer gst-plugins-base ]);
|
||||
|
||||
unpackPhase = ''
|
||||
rpmextract $src
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mv usr $out
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
qtWrapperArgs = [
|
||||
"--prefix QT_XKB_CONFIG_ROOT : '${xorg.xkeyboardconfig}/share/X11/xkb'"
|
||||
];
|
||||
|
||||
postFixup = ''
|
||||
substituteInPlace $out/share/applications/HP-myroom.desktop \
|
||||
--replace /usr/bin/hpmyroom hpmyroom \
|
||||
--replace Icon=/usr/share/hpmyroom/Resources/MyRoom.png Icon=$out/share/hpmyroom/Resources/MyRoom.png
|
||||
|
||||
ln -s ${libpng}/lib/libpng.so $out/lib/hpmyroom/libpng15.so.15
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Client for HPE's MyRoom web conferencing solution";
|
||||
maintainers = with lib.maintainers; [ johnazoidberg ];
|
||||
license = lib.licenses.unfree;
|
||||
homepage = "https://myroom.hpe.com";
|
||||
# TODO: A Darwin binary is available upstream
|
||||
platforms = [ "x86_64-linux" ];
|
||||
};
|
||||
}
|
|
@ -1,4 +1,4 @@
|
|||
{ stdenv, fetchurl, cmake, openssl, libedit, flex, bison, qt4, makeWrapper
|
||||
{ stdenv, fetchurl, fetchpatch, cmake, openssl, libedit, flex, bison, qt4, makeWrapper
|
||||
, gcc, nettools, iproute, linuxHeaders }:
|
||||
|
||||
# NOTE: use $out/etc/iked.conf as sample configuration and also set: dhcp_file "/etc/iked.dhcp";
|
||||
|
@ -8,14 +8,25 @@
|
|||
# so I'm sticking with 3.4
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "ike-2.2.1";
|
||||
pname = "ike";
|
||||
version = "2.2.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://www.shrew.net/download/ike/${name}-release.tgz";
|
||||
url = "https://www.shrew.net/download/ike/${pname}-${version}-release.tgz";
|
||||
sha256 = "0fhyr2psd93b0zf7yfb72q3nqnh65mymgq5jpjcsj9jv5kfr6l8y";
|
||||
};
|
||||
|
||||
buildInputs = [ cmake openssl libedit flex bison qt4 makeWrapper nettools iproute ];
|
||||
patches = [
|
||||
# required for openssl 1.1.x compatibility
|
||||
(fetchpatch {
|
||||
name = "openssl-1.1.0.patch";
|
||||
url = "https://aur.archlinux.org/cgit/aur.git/plain/openssl-1.1.0.patch?h=ike&id=3a56735ddc26f750df4720f4baba0728bb4cb458";
|
||||
sha256 = "1hw8q4xy858rivpjkq5288q3mc75d52bg4w3n30y99h05wik0h51";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ cmake flex bison makeWrapper ];
|
||||
buildInputs = [ openssl libedit qt4 nettools iproute ];
|
||||
|
||||
configurePhase = ''
|
||||
mkdir -p $out/{bin,sbin,lib}
|
||||
|
|
|
@ -15,13 +15,13 @@
|
|||
}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "dino-unstable-2019-03-07";
|
||||
name = "dino-unstable-2019-09-12";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "dino";
|
||||
repo = "dino";
|
||||
rev = "ff6caf241c4d57d3ef124a8b7c3144a09f320ea0";
|
||||
sha256 = "1gjxfnywlypi3slvxb91b2mycrsqjinmafnkkngahyikr7gmqgnf";
|
||||
rev = "c8f2b80978706c4c53deb7ddfb8188c751bcb291";
|
||||
sha256 = "17lc6xiarb174g1hgjfh1yjrr0l2nzc3kba8xp5niwakbx7qicqr";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
|
|
|
@ -3,13 +3,13 @@
|
|||
, gnome2, dbus, nss, nspr, alsaLib, cups, expat, udev, libnotify, xdg_utils }:
|
||||
|
||||
let
|
||||
version = "5.3.1";
|
||||
version = "5.3.2";
|
||||
in stdenv.mkDerivation {
|
||||
pname = "franz";
|
||||
inherit version;
|
||||
src = fetchurl {
|
||||
url = "https://github.com/meetfranz/franz/releases/download/v${version}/franz_${version}_amd64.deb";
|
||||
sha256 = "16ssg4cjjmq3cps8klyx3jxqma7f83cczwjnknlfqglrwwdpnb5d";
|
||||
sha256 = "19mfw0wgjdhq38p0xvixdxvk07j3rdwlw87p8gjh4yi1qv0paj4i";
|
||||
};
|
||||
|
||||
# don't remove runtime deps
|
||||
|
|
|
@ -1,13 +1,13 @@
|
|||
{ stdenv, fetchgit }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
rev = "779bf26f7d9754879fbc1e308fc35ee154fd4b97";
|
||||
version = "2019-09-07";
|
||||
rev = "f760176c6e133667ce73aeecba8b0c0eb8822941";
|
||||
version = "2019-09-11";
|
||||
pname = "slack-theme-black";
|
||||
|
||||
src = fetchgit { inherit rev;
|
||||
url = "https://github.com/laCour/slack-night-mode";
|
||||
sha256 = "0p3wjwwchb0zw10rf5qlx7ffxryb42hixfrji36c57g1853qhw0f";
|
||||
sha256 = "1kx8nx7mhrabs5wxqgvy86s5smy5hw49gv6yc95yxwx6ymwpgbzj";
|
||||
};
|
||||
|
||||
dontUnpack = true;
|
||||
|
|
|
@ -1,49 +1,40 @@
|
|||
{ stdenv, fetchgit
|
||||
, pkgconfig, makeWrapper
|
||||
, qmake, qtbase, qtquickcontrols2, qtmultimedia
|
||||
, pkgconfig, wrapQtAppsHook
|
||||
, cmake
|
||||
, qtbase, qttools, qtquickcontrols2, qtmultimedia, qtkeychain
|
||||
, libpulseaudio
|
||||
# Not mentioned but seems needed
|
||||
, qtgraphicaleffects
|
||||
, qtdeclarative
|
||||
, qtmacextras
|
||||
, olm, cmark
|
||||
}:
|
||||
|
||||
let
|
||||
# Following "borrowed" from yubikey-manager-qt
|
||||
qmlPath = qmlLib: "${qmlLib}/${qtbase.qtQmlPrefix}";
|
||||
|
||||
inherit (stdenv) lib;
|
||||
|
||||
qml2ImportPath = lib.concatMapStringsSep ":" qmlPath [
|
||||
qtbase.bin qtdeclarative.bin qtquickcontrols2.bin qtgraphicaleffects qtmultimedia
|
||||
];
|
||||
|
||||
let qtkeychain-qt5 = qtkeychain.override {
|
||||
inherit qtbase qttools;
|
||||
withQt5 = true;
|
||||
};
|
||||
in stdenv.mkDerivation {
|
||||
pname = "spectral";
|
||||
version = "2019-03-03";
|
||||
version = "unstable-2019-08-30";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://gitlab.com/b0/spectral.git";
|
||||
rev = "0473f25d38a064ee4e18203ec16eeae84fea4866";
|
||||
sha256 = "1n09ginw6g0p42xj3zgxm52dvyyvj5psllv70vx21i50lvkbh9rw";
|
||||
rev = "ee86c948aec5fe72979fc6df97f4a6ef711bdf94";
|
||||
sha256 = "1mqabdkvzq48wki92wm2r79kj8g8m7ganpl47sh60qfsk4bxa8b2";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
qmakeFlags = [ "CONFIG+=qtquickcompiler" "BUNDLE_FONT=true" ];
|
||||
#qmakeFlags = [ "CONFIG+=qtquickcompiler" "BUNDLE_FONT=true" ];
|
||||
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/spectral \
|
||||
--set QML2_IMPORT_PATH "${qml2ImportPath}"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ pkgconfig qmake makeWrapper ];
|
||||
buildInputs = [ qtbase qtquickcontrols2 qtmultimedia qtgraphicaleffects qtdeclarative ]
|
||||
nativeBuildInputs = [ pkgconfig cmake wrapQtAppsHook ];
|
||||
buildInputs = [ qtbase qtkeychain-qt5 qtquickcontrols2 qtmultimedia qtgraphicaleffects qtdeclarative olm cmark ]
|
||||
++ stdenv.lib.optional stdenv.hostPlatform.isLinux libpulseaudio
|
||||
++ stdenv.lib.optional stdenv.hostPlatform.isDarwin qtmacextras;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A glossy client for Matrix, written in QtQuick Controls 2 and C++";
|
||||
homepage = https://gitlab.com/b0/spectral;
|
||||
description = "A glossy cross-platform Matrix client.";
|
||||
homepage = "https://gitlab.com/b0/spectral";
|
||||
license = licenses.gpl3;
|
||||
platforms = with platforms; linux ++ darwin;
|
||||
maintainers = with maintainers; [ dtzWill ];
|
||||
|
|
|
@ -1,615 +1,615 @@
|
|||
{
|
||||
version = "68.0";
|
||||
version = "68.1.0";
|
||||
sources = [
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/ar/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/ar/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "ar";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "4fad3c7c4099f70253bfee450bcefe458bec61430720fcadde1fe8a1cbb2e62a18d9c55943f850c57f8d788c973774e24590823086cfacbbb2ccd8a99ce4faae";
|
||||
sha512 = "b9bb22bdbe013358c03e804e3c51ad387dca503b9e0074db70494eb3f331d72bd8679db929972e75b39f2464d384753bcab9947d1a843a69167d7b3706952c35";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/ast/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/ast/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "ast";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "aac850773381d7fdb4d50fafe670449301f073f7388f92a1ca38d9b7256ffcd244b63e9fc0ff2f8ef5ccd853b97016b7e05eb751be1bdc8df9623481f15d55e6";
|
||||
sha512 = "e00382241343bbd8a86e31dfcf5bbb060b46e5db6211cfa54c7192361353e2c4fe3d0ad3f4e0319ec1a0dc1f4590b7bc0271e5658bc468986d8e27a64d9924da";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/be/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/be/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "be";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "6521d818984bbfba195e847735c1228ff637d3079cff1f5a461ac20a079d325adfc1d7b2eca54f63e584a5cbd2007cef42a625597276a1810158931335f09cd9";
|
||||
sha512 = "f043c8aa5dac0d5e2f9da628d6659f654cc39726677424e4b5e5005e97bf202575f569ebdee346d37cc8d4d59da188e6cfe1bd6bf7df1acafe26b489242b4a9f";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/bg/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/bg/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "bg";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "a0a738b6877225a5b98691d53a8f4a4bf575472a0d5feb8b77a67cd1fc9951772f1ab507b7ba460c0b62b87ab476c5c94130cbe7275692e3a99e5d2ef0bd89bd";
|
||||
sha512 = "61fcf864145fb4fd4a05bff47bd23a7be8444f9d067eec246399c3a7ce48db8744ba4a9cb42e28a215a5bb1b336a57c51d1a32e6564f42c8b9fd4dba5f629d9f";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/br/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/br/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "br";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "58d21d9e55abed644eb16ba98a5fb3277e0a31b935d279b09745262952895c2c2aed31817e6157410137ff82fc5d242b64268f646c3b7b691c55c5f3ea36e0e6";
|
||||
sha512 = "1cdc9b2a8ee82bb087a51ac013644ff3da5f1e161fca23fb24feae8076cef6c5aff5316f83a8ecfa4f08c3a8642501a333d3ef95b46b8f899ce78b79d027af4c";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/ca/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/ca/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "ca";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "cd401259f2cc4ec71ff9d936a1f2f64a064afafed2e305bb359f79eddf1159cd6a7c84ce54cde6be94f6acd295dbedf54017d9f4592ee3637eea00496c7cfbf1";
|
||||
sha512 = "1b73ca87f3067ec2a84990c7c58060b11286dd653f4b8b4c18a44f5540ea195d25f995539de39b6e1de6cbbe54c890bf30f6d88157e000e30c69f4d32a4ae8f0";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/cak/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/cak/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "cak";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "45ea4af30ff93500d1671c6a0eeda993692b7204a7504a91ad30bfd5155add5af902205240fd62f80abe339224e686473f2d13f466ba96269347207ed3f628b5";
|
||||
sha512 = "1b2ec85786a842c7554f52b1ff72c4e5611a76bca94c4b8e9a79604d6b85d7f2deba906bbeca355dfd0c5a6c241d9bd397f4e0dfebd802cdb0c35162a02fd879";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/cs/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/cs/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "cs";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "9f81f92a3b1710d006cda79f1b92923c1ea637a24654bd622af9be1f53a0024c5daa77619443514c9e607cb62f96403f5b7f426b3692227c0b56d1b14f51ca97";
|
||||
sha512 = "69df6542c5037815d3a80be764eaa809dd351f75417e4362a258df5e17e36aef6d8f8653429f4218f196ff096252e0304c2cca1cccbf8693d119bc05f1072067";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/cy/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/cy/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "cy";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "c90467a78bc82667d974b1e94227b7d4185878654188967d97c11e419ec7a03e4e5e3636466a0b6d35beaa98b717a26341e3a652c3b21083ad8ad0b23f063ed1";
|
||||
sha512 = "5dc63d2746475f0045f7749e45bbc3f755b187521b0ca877ffab9386bb1bbe9b4fd66f9cc6bdac516ba591e71d71f02a75b5c965a610a3efbee3b59815d8deda";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/da/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/da/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "da";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "f49bd5689d2a4dd311b22a23da9f26559685f1c4663eb1e482b45b79544ab4401a17701f33b6ad083e7a8983185fcb16fca4c8026138f24be495c6cbb6401488";
|
||||
sha512 = "89427a2b66dbd71cdfbb299a14ce7ed61ab4836e473854ea8b2ec522de64870f8886f6ae86428c9b1c86733aaa4ac7c732a708fccdd70d3e112d2f651c0dc762";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/de/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/de/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "de";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "579d979cfa0bbe50fd0bbf0d15b38d90579bc065b488a2e9d4e3f18f505e71c50225d92185559578146097110760ed3807e1aefad4862d99e247447478d6bc42";
|
||||
sha512 = "34130ec994f6ee6a407313ccc61d43b0375046f59f75d4fb619776d5c880993802c16a3b8ec28dc7053b4ae89f91f1c2046da7d884d150aa7c3b65edd1650b21";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/dsb/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/dsb/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "dsb";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "8d16bf47d368a670cadb6a2655933d5b49a796272f7dafd948cac95a2ae541561a38fa418cd4ed0c4aa79ef63a441ee769eeb2a071734abf2cc1ba243d4f3ba5";
|
||||
sha512 = "0b9c02a1e31f8f3120fb9ed520c53505dc247440ba2e189cbc58569be5ce6e0c33de220ebda17754338aa680cf5c8aac3ad7f5da14e0cbefc29f32db2446618a";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/el/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/el/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "el";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "579b9114af9fda86e79e6812946da858945e2034ed2f00e4244724ecdd680b7db5601a4d573b530dc15207caac9245f6883343684eb43f3ae2abb64853c0b54f";
|
||||
sha512 = "1d8e2efc2c9a7375a2ce0f2137165756800a680209d18612420581963f13774fc7780ac0ccda24a485996531d1e82e027b42a671f1c8fce5e8ccf0887f72ac6f";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/en-GB/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/en-GB/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "en-GB";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "f7caed8c3b49714e4449ef971ed1a21e40f28625c84e9342f63e5f73743689ee2c0e9ed4845f6667bd22732c62bd707db425f22a5c074dff8622cc4536ba9c29";
|
||||
sha512 = "79684a833afe5d1025088d6f91e023c81832e9df83751926c5d9bc05fecb7f53d6efd096f55d65d45fa07309497cf5bed2e3b00cc4a80cc1e4ed2a0fe44d02a8";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/en-US/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/en-US/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "en-US";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "257528761f0eca38528ded4b31329886093418f562aa2fac73b3a5bedda51fe80b34758c10afae1735cf37b37a86413dcf08642aecb1e8bea1fb6b0b94ade5c7";
|
||||
sha512 = "7a29cf0a238e44a2051b53e5476bc8f622dffd088251b66d951ad6874fba5fba180f440c80c7d5ae154c688d3e29fcc6c889f0031d81a018b7fd1dfd53f112a5";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/es-AR/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/es-AR/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "es-AR";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "70a10e329b1031a2fd2ffb2b60459f0238ff3f5e5d80533f4be6cb22ae77692ec079ca3e146bd9a59edd09c266cec92d922a18ba45f8626a4bd44e290d3c0927";
|
||||
sha512 = "d9d62f94af40ba69240b792b3ef2d93efef20b01b4289e992f7d1192147029574f86fa21aed5ad54489d1e5ec1f3b80cd9601e71e2ba9c903582ccd7aed278a8";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/es-ES/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/es-ES/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "es-ES";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "a03098ad7d83b86cd316c56b69589370fb8bad041b93f90f61514b04e3d0e78385f779ed715c6e22e45597d1bf03676046cbc1eae7896bb2a309af3683c8bd1e";
|
||||
sha512 = "d720320494b2c8431004e0d1ac24ff8fef83bc0977f44653d0fdab99fbc9a1aee6d5aecd7cbf6002e3746d04156f47aeb57367f2b30f4690efba36c3297fbeb0";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/et/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/et/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "et";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "44efeaf030580dd7b55770627678808e34d689e85191852c2e5fcb223a0fdd0e5386f21f03524d0983aeded7f8ed99382ff2c372c8c5a1fdfe218bd5b10ccd80";
|
||||
sha512 = "8d9ba13604fab4eb9a3dec8894b04d52f9677d5f82695512680ff03740a66e96786f69476071741c8086a09070fd03786e8fae7f94bb3bec9075331fe4dc144b";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/eu/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/eu/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "eu";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "c670be5932d7e8bea28cffda7c119cfdfd5823f76b2c97251ec23ec16e420a8b7feb5f2251d89750b956d3bf3baff5d17393c05d8c265d0a98cc3faea8f85735";
|
||||
sha512 = "e40110a94b3d7fb42707287dc695ea09b082fa3262d05b39a0c09002c32722630711f1b0131441c919b23130ed133338239060726cfc9d6c0b49822558081313";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/fi/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/fi/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "fi";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "36aa0b47e9b5d91fbc812a3d63503924a8ca227d7b7084c1159419092b17da9c1b6e89fa046c636dbcff7776f9a1d8465e660b47f1753505f0d2eb85da9c3a7a";
|
||||
sha512 = "d8778ddba26f544a4721b9118ce5726b04fdf09758272b35ca16c14aea61d0b8271888344e742feb4d4e758182e97b01758acd53ad622a66117e3eb0d4a6d336";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/fr/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/fr/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "fr";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "b1e7d345d3dd38725227b5e09c4f3cfcf29ed3a98b0580fbf6ae1ecab4414d09e307423495b75769a8d2ee3ab4700cd6eba3d95ce05612e1d8290d3f5a3ba988";
|
||||
sha512 = "2cd546d40bedf09b58703b0b11a5c9349d702540ae714942e0152a19cbecee51f37c7e217fadfc719ecfebf914f9ffad6b3070bb6471d395e8f5ff8ada754551";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/fy-NL/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/fy-NL/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "fy-NL";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "4065a083f49006dacf64f084c1bf26c4c1b8d53bca7eba7a56d66bb035eaae2c4528687c5c1e2213f92adbba17ff92eb54f897d3b0ef6d27b8effbee66ca555b";
|
||||
sha512 = "03f52224f145917f64e8962b68bcf3810543b5bf0508dca7965c5a385c4f87bc7d236dac217594fdd2a10afe31da8aadc674eaf7b226e189b598011a8b9e223a";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/ga-IE/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/ga-IE/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "ga-IE";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "2ae9a0860513e90d1742e5c17220b2367e61273eba04738cd29e9ab497b86f9a1d78b38b21da84b1f214f3368ee114d376b05eabe0aac9a1ec07ca6a4b399070";
|
||||
sha512 = "931257466ce7134b9852c2627f34efebc031b3dfc9fb7b5e344665da7fa52ac1fcd12a8848fd9a264a900e98ee3383d3ee6c251de58c1432127a8ce8f1c100e1";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/gd/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/gd/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "gd";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "d2315aca9d8e5bb35b21cab46a48e51f09200b056da2682201c32eb4fd3d0379a24a6926ebcf11e9c70d70fd20152fc24d5197a78cdb3c8ea3cc2399d784b463";
|
||||
sha512 = "ee3573fe9af5fae39aa053061ef82207ae6669e6764637f6ddef5f8ee3cebf362dfecf5cf5e9e208392f3fe79a0c1a56aba28f372e2e279b33a1f1e3a58851f3";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/gl/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/gl/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "gl";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "52d9210e857c1b6cb665a2ffa71cfa5e67c3718b210e2b4b42839d8f25987170f1603fa55d324003a4be821ba74093ff92d632e688e44b87ebf51dafd02f69a2";
|
||||
sha512 = "73ba3965d522aac8f9d5af87856a7e2f71cb7ed850f240be56eab9426f91e5356810a12da7cb91bc223cb14eeae3ecb89a2afeca48641ce4debefdaed05aeed6";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/he/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/he/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "he";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "e7b5a16950be233fe8a49152184270a901bdb4bcc14769401d4b5a21fd2a3ab9d395ed8f6b61081330386723725252fceff09bf9fdde3a71135a98d8ae45089b";
|
||||
sha512 = "abd4f47d571037c4340dd3118a517f3421a3e3597efa1ad7ab14cf537d4b4e226144beb0a6c54a45ec272ab428ee8ed95083d31554ef2aa0022712dd832a1585";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/hr/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/hr/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "hr";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "1ed224dc0864009edc6389f9b3b063f56b15be982c2e2915f1a2f773bfc78e6b81ec0ab02e03f7ade08f47260be597003f8119116576f4fe5dd490e85cd3d4ab";
|
||||
sha512 = "32a18d8666fc2b7566807a010d94bf5503b375c5330687aa58efc2bc6464e4f910947ea513a6ebb6b7eadef0e552138a5349583e6894b3166ef6f8d53d5cf67b";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/hsb/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/hsb/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "hsb";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "f4bcd8a199bafd544687b1e890694dac2b598d4fd79818ab19441ae9be579a9928fd8c7fbae43e322fced15ff39314fbc88be94ce2fe12b5d2ec2ba003a219a3";
|
||||
sha512 = "58794aecdb5f3824e94f2bde4e4080d4922648bac632cfdffbc5304329af64f9e5ef01fc587c4e19e88f206004cc4254503513d7bfddecdb6778de89e4ca6bc5";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/hu/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/hu/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "hu";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "28223aec237fce2f07b0c3b454a8339bbd2f195d6e263c5a5723e04bd5df1128d58a6bc6c7275cdbeefd5161a405a2d6340303faa79d9330abd0e70de9facbfb";
|
||||
sha512 = "c7881770fc75a6b1eecc5c481e2de134a241b7a497e19ff2abf08aaecf65006f054090a53b028202becf7776d3939742fa71156e6761f981ff7a00ca0d1d7d3f";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/hy-AM/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/hy-AM/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "hy-AM";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "d7dea23905f8bc8dfde92082f90278b76477eb3036c7fc4abe656e37af9d389d37f3b166492df210eeab03750d85cbcaf1340aaa26ab723ca1b70299b4a64ab6";
|
||||
sha512 = "80f5fd19da8e07a6d40c19c645eb8fd6964f9904cd14df36374170c4d395146d168728953d1619965f04b3f2295df3d379650e97f8320587816ee088e2f17a9e";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/id/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/id/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "id";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "f55ad81a1dc80838a9ab045899e0f16bb077d05d73119705f820f6fe8c8c7a550e05cc68cb7ca0aa8861cbd70bc9f061ba51a4749db6c37d90e7e7bda5dcccdf";
|
||||
sha512 = "efffdd32086ca57e93b1ebcb40484a3c2243d6b088c70d7b20bcdb38925e7fb64be4446c98980a53738f54dadb54a2d17016adc69bd2a47a9719bb7bb982f729";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/is/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/is/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "is";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "503c236102a15428e41a21b458ecc29986abff4e434f4e26ec9741b2facf39a8fc2ae9dff5aeb32fe3c9ca0dcb6e914a2acf229ae9caecdc4f064380f126ecf7";
|
||||
sha512 = "277d1137675c6304b28f43273c5a3fbcdf0d2188cbaa38911d784df98b3429eb6d2667b818a292e4c3bd4019b2b682463c2d01faa0a034cb4fc1dd49ba8aab33";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/it/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/it/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "it";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "51a736932baa5c810a29de46eba64b0fcd2703da38ba9449b6b06a9412562e80853367416c5b4d6c6834eb7a2186f434e426099ede56d9342860e4f3561455eb";
|
||||
sha512 = "6932697d769f98dcd32f3dcda57dfa154314e29bfd2c1b11a2b9a8aeb8395f00fdb0d1c71b8e9d405d1540cde21547a910a55024b799e270759d8638a3d11512";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/ja/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/ja/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "ja";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "7a00080835155d301f65a35684d81f8e3a3be23d927d939da84a2a887057bca0b75d5b580a004b4f797af504a6812f71951bc3c75ccb24dad60b6cca770cc7a1";
|
||||
sha512 = "034021e89c471429367807f04d79dbe877d0ebc94f584fa6c0bec3a29f279f1d6dfc85f709b26e9d11c8ebcc1f42adb9a458137c032a73ae2b69f7238d31ce76";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/ka/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/ka/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "ka";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "eaf67c64275495fcb08aca63953406cd7815ec356ee0a1edca8a5e8dacd924a9c11e35dbe4ad17a1617199a5f66489bb553a7a5177eb629223b49a9adccff803";
|
||||
sha512 = "7af1caeda9babac2a4c9b456233e86be32bcd14b6dd81cc18a1874dafe86c5b80099d0ce388a70fe6e74bb7b0d00d3b7ce810ffcbae143eadf6d8c4367567c27";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/kab/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/kab/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "kab";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "9432bbba0965b6da04495b79ef4db3bdbe69476b20650b4d6407d921cf07d09950368f0c13211ea6743b621d486bf71dce0e60d8ceefd82b48a8f2581a3fd7ee";
|
||||
sha512 = "d8e7e7d423f36d40ce05cf1378278c47049fca0ba415466028dd821b12970fb78fbadfbb7b7390ec446aede490f07f979b94ef890a43a710e3a1f66a0c68937a";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/kk/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/kk/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "kk";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "9bfb99694bcf1227162607e2b674abb00343e4da3876999430d6014cbd4f4aa6c6e9ddca7c7f3b144d101c1a5a6d38772e3750f5feb41d1f304b89a8c1e6ec15";
|
||||
sha512 = "339c8e86693a34c8a2da5e47924e545f0fa55d5314db73c6bb23df3eabed29dd6cf47662a8c4e43c381ede5098aba72887739993b4e71db75e41de3d1d777c3a";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/ko/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/ko/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "ko";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "fd260740ccd74afae7af664775954acfd176b47176f48b5300f11bd77bc31205d0bbc2d06a701486e9742ffb38ad4aa2b253041b9d9518a4b9c7dbbe41aca264";
|
||||
sha512 = "ba80df01778f8fa95dd32bf0af55afe7fa828a489c4682e6a8891636281031170b9fff77ae4f2e4bbaae9124946b0429e55bbed741973d80da868d94e29991e8";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/lt/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/lt/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "lt";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "fb7a7b6d0c7d58d13b3ec20c8176ee793cac5c53bf849e3b3c4aaeff0f3e897cc35e61a9dfa4055c691fd56f280f7b31e04999922c29ecc89294ea6eeac16cd3";
|
||||
sha512 = "32e93ec3203b70c2dced59a376bf7379879b5361f55a396d533e1f10727482b357344c9890864279eff9aa6d75feb1b36a67f2293c51d3a3222183f62c51e477";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/ms/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/ms/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "ms";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "7490a8169079569143c63f85e7da299d28ea423fb95265e2e86ec724ff0da641e24a2e9ea612d180d523973522f40c250bfd56e66ee39b28cb9acf57f6be6831";
|
||||
sha512 = "29190352e1bbfe30b1e98d2a7fa20268488d82aefbdb4de1f8c2e197ed9f196be8256050f48d71ec6475b707d93d0570002fb175cd88fac89aca5e7140a7cbfe";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/nb-NO/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/nb-NO/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "nb-NO";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "7256820ea97851319e51616f6eb45617983e76e74b46ae62a02e22d13e2dd6abd590fd265aa6c88ac14b2f0276219580b6b9fbd956f1eaa38e6a93329b9c9621";
|
||||
sha512 = "8e076d0967b0b79ac2cc9ade63e1bea4d27db1c050f792f1d1da01758a576fad884fdda32a02d58d45cf4c615f38c44bebc80c6e864ee076212f280398602892";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/nl/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/nl/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "nl";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "00f32145c861abd8f151d7840d0f01eb9d4190df65e5a179f999f3149477f2de7f796782eb7ef912fcbec005d65c76974185d1c0105dea862cbc22c821bc906d";
|
||||
sha512 = "7bee338542f949d86700d9b67d26c059232ba96cba991e491e6380f1ef914e7ee2747c9c73907e393bcc83c7f05ec6e656d869980c2c03ba0a548ae120793030";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/nn-NO/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/nn-NO/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "nn-NO";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "3ac255b5bb4b352833fd56d5aceaba6d0ada571630a993729970ae99d5067f05ba22e6ef50fa7dd099c0eb5874f11aeed32718c56a80538e28b401ee6b7900a2";
|
||||
sha512 = "33b67ce4100a61461a238189e06b623a067e5f1b550fe5f20b5686f597408f3d7eaf45c92bbf5ffe58ff96c99fac9b9e282b024e40829d4d9d4422e54cb7293b";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/pl/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/pl/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "pl";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "19ab4bde9314dbed1bca7565698a7b1231767ef9cc792a49e7e9d679453ae8209e6f68c63ea0a24bd9e3a97328dceeedd109bfe28038108b52b9dad366f28787";
|
||||
sha512 = "860c606fffb3ae85193b4c919783c94ea1a84c2579316cef98adc247d7d595b01dc6c2e84662641c7285dfc65097f710d7d2605efd960847739ab4acfc296836";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/pt-BR/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/pt-BR/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "pt-BR";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "68e28b657b885e7823dca0d091f2609556d560a50b5e6c285cdf467ae2b09743406baa2e544f17997519c219e0d4e8911115d30e7b0c35f09b956e28b311f8d8";
|
||||
sha512 = "3093207072a79d9556c4e1ca2fa75d990a3952d583f0a4fe8c850a4911b1af19e3ac08a357d239d66b22c397f6722b8625fee03ca1f2b6a8f21dc61fca348541";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/pt-PT/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/pt-PT/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "pt-PT";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "41623568d2e78b821a89480836f8d8c739f6983b80ce26017d12fd9363016158fa6c629e030f63aba6e730e554b7717fd2ee58e0246aa82b46fe55d5d6be9933";
|
||||
sha512 = "5d29ed9a8e8c768a3749801dc191b27aecf7994a4afa02e70de823ed1eabe4e936bd7686830359aa48321681396aff29ead762ab28c7bda6f8aec36117e8cadc";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/rm/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/rm/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "rm";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "a2cabac0ff5e3bb4a8dde4e884ba4647792e0935ef0a61b56470c67d3ba9c2310a07c2d2da51f7b4cb5fc3e841dd385a2c64ff29d263333a91e2044a4ad3190e";
|
||||
sha512 = "cf342acfbb9ab92b7bf483ad3227730dc3923ee107ae42a0fb05c6070256e43a4d3c1647c1fa2c4dec7adbc8c018a185bd3d91e598d09eac43ec679d3c25063b";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/ro/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/ro/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "ro";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "2e9da10d1f88352687175fa48fb70f8a73cf3ab1d84958a79c4a46526b3640e264d98611806bb234f579d616fe7d1dbb2d4c6ba55a389363034f85a97283bb64";
|
||||
sha512 = "ae13fc229198a5c5327dd4d9d948f1a5eaf699877c48c1c961ca084e79075f479f4b270fed1c9ce22f420fecd4332a30594d4d2dc87bb114d1e3518e3a4a7071";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/ru/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/ru/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "ru";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "5f4bd3d3657479446ff070cfdb33e16a527c6f1615f37fb4c4e32c12b89c62d5649fa5c3d826723be47fa9795575bd33ccf37c2aebb555c218aba8f9d68ec3a9";
|
||||
sha512 = "f51b1f99c16af5f24702f0bfd433c71c7ae899ded5f101aea2dcdc16f1cc9e1b7b18f26a4fd0ca9296c5e9007067e35bd9cc322bddfe07f58795147547fc0c56";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/si/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/si/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "si";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "b47d2aea81327089445c9f57a1508406c534907c7b574006886828846e6deaab04e35de2781d55d882f05c0a89f65fa7c386547d6581064af4fc3bf4e879e379";
|
||||
sha512 = "26bc664b1623523d644ee231666a4489421ba31d1f0b52b5f4a4164343672333070c3781c577e370e7d97d42b61783077c74d1f38d37565776c752a2310c3a1c";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/sk/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/sk/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "sk";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "4295204bb89789704da6830d33e92a77df165737c291c74a94fa532309c89505fb796151e0855b4e0bad8658fecaadc9978580ac72e2a2f24a4022909bb64aa2";
|
||||
sha512 = "46470afe078d1ef2e48b3732fdc02ff3c9104a727b4d94cae1b9c54f6d2b4771e5784cfb3e6350ab8a205f8ba010a82a2b2fe92313eb351496a19a99df75179a";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/sl/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/sl/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "sl";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "598fe5bd04e04a73db04eb630e02dd7cc7af34d0381e6877626c8885bc4b879e1f35362afb8cfeb1bbafffc5b7ea14c8efe9b35b5e30056d04fa0126b8663679";
|
||||
sha512 = "9bb5b0c979fede4dfdaf8f4965bfed1ad78d14168efb797fc216ac2527434047c3e6b65eb9dd1e607f55b22f6f28e49b0ff58c272c0708cf5ae1f9ce96b2c796";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/sq/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/sq/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "sq";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "0b657daedc98db51179cebf547d5f278d2d632bdb552878b4af29427ab8fad62f8d6c1ab2c3a38cbd8e67b670d6d613bdb1d4f535a0c69d0d1ca607d0b10bd43";
|
||||
sha512 = "440870b75e47aa277c5453bd997709d2f9e59e0aa86e2fa7f5aa95ad39b139d8e9b7b8a7dd44765d8f8d5ec18c5ce6a284ab40d4aca01b251bcd9e2183be4976";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/sr/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/sr/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "sr";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "10efa11b9c9ba56142c8a321a25a7e875f3d02fd17f73bd3061ffc71823aeb1269f9a864aae88a4fc434d1c4a01d227c0be605ffa7f4ef6421db98c0141c839e";
|
||||
sha512 = "bced610dbc95e7cab982f40376fb7cce8e672f8533a66816f01667ba69d73dfcb00e95a80b42273c1ec7ada9cef8c14af1c426cda2f8425e3f77a3a0e393a611";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/sv-SE/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/sv-SE/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "sv-SE";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "c77d10b35edef7e59f4e6c48cd4352c4fb7d05b0140aba12be42b3e3a3df609ebc86f2f5a3993fa172ec0ac118726314bc9042335101241637481a2e1a4d1c00";
|
||||
sha512 = "af139912f563710b05c274d1b89012e27a3997b582d379e3561011fed7c77994447c3054433e0fd4b5db8417d5b43b63e840d313cef1fc7a8aa7baf0655982e1";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/tr/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/tr/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "tr";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "3d52693efb05379802d62fb9e40c4b1856b45ee948032634d4c4bde7bbae67327f963e0f1096fd5d7a15d4341af1ecf3d9ee96eed45146859d8e8e5d403d660a";
|
||||
sha512 = "50693e4638f8fea5a7f609924ef65c8d7ea4f4ffff79320651481e1a7f5cdf69edc2fd987137a0d655077959cbd8f32218d2f78fd55790084e2d46d3ecd70cf6";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/uk/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/uk/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "uk";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "c09734ab8e6428c6ed270887a0add934a7058d5e9c895864b1128e0fd39d57e13789bab38cafaf7cdbac1a71c8884407698c4bdfcf48aeec6604a457ed57c48d";
|
||||
sha512 = "c24943567c110ce8cff6da066d0bd0081621d8c397e6569c57b63eef3098963a55215083aa655fa9c98adf9babfcedecfd72204c1a68604c851e1a5c1a1b0102";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/uz/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/uz/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "uz";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "083a83ae3c6083934fbe49f1e65ceadc5b5459f0f29ae0df9901b6d9b29d0a105cbde94357c1ee0a9677ec923fd1d419c618db0e843cdf320c087108990b89ec";
|
||||
sha512 = "e02a86c848a013a84824246db3e29e889e1f5cc1b743a3a9b567b914a46100a808779fc13b897b04e8c698e14cf474fcea907e25e937e5c8b4ccb997f06d8e85";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/vi/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/vi/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "vi";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "6ba1573c9a170d1d827b6d17941c25e3852f7b66be2eaf7a3e9ab02278f19a38b801d7b9b0c266dc4f38f1190f9c83990eaa51f4734ddb38f43ea3e1bd23b72b";
|
||||
sha512 = "de6d6794796f5b60cfffa9eee92906237fd692b21ffc3925c7866ea9660d26366f5fd3c847b2dfecc418b631c6241dad4e509e58e391c414a37587c6185c2655";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/zh-CN/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/zh-CN/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "zh-CN";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "74ee429901cb520d07361a4b621c9be06253cf93300f0f91e3633d3b375e4e9a6a58823d4bbfed60519734ca5705f2cd0da4bdc7db0f578ec300f1d705e9b7b1";
|
||||
sha512 = "d5835538fe615544a07e93a2088b65eae6c3c36b75ca2b9f6605974d929a36dd226d848e2394611809538106f56c1703ebedb5c0776593e998935bd322a4e27d";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-x86_64/zh-TW/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-x86_64/zh-TW/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "zh-TW";
|
||||
arch = "linux-x86_64";
|
||||
sha512 = "d720029e0720fa972d694712a85bdae94b1ff51213c4e56b84dff6d293a2a9831f5cd4efeb44070010eba1486b9358929f64546ce7ebb7cee29a7bcd4a1cd650";
|
||||
sha512 = "9dfaa7dc83725fa795cf1b2e45e7af760dc6c38999b05a0968e46d4b5676a4b9f705ebb63ff400ec6600d83a6be26eb4c2638671a539b59b6ea37002ea9b97ac";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/ar/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/ar/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "ar";
|
||||
arch = "linux-i686";
|
||||
sha512 = "823b3cf50f8d23d1d0ba8583d2b10146e2eb0ff4a9401527557fae8e8db997ecc66d0bf5a091323bbd37dd6222bacb73fb9818de8740963b929a8893e4ec9391";
|
||||
sha512 = "17733249e5c2c33899fde89a5b2dea2592fe0414419c235f4d853917990a05664d52a05f1f1a290ece4bdb3646008b0aa0af1e495e5b8af0c08f5b9962bed5aa";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/ast/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/ast/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "ast";
|
||||
arch = "linux-i686";
|
||||
sha512 = "f0087ab3189e8fd194d2ef6d5d2f9c3e14d592d5217a8fea19ba5189e806f9d484332f9d342a15549651a75bcfa673f21cd7666265fc185ec58c814814902ec4";
|
||||
sha512 = "95b40d08b988146db7175232c9d9be92175cc3fdd73ba5e205e6543dbdb9e6e33579edeec73b6961a7ace574d3466c162d0665ffbd3705de15b7ea4cf6d7b77d";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/be/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/be/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "be";
|
||||
arch = "linux-i686";
|
||||
sha512 = "edb358214e93142d73c92ab3dcf6240cd08614c2d0e9ea506492023be46d7b7f6273dc767ae034762c052db3b0a093dd027187afb272b2a55fc3126b06ffb78a";
|
||||
sha512 = "d2f4ad38d81306c1637ae8612221bb462409373b3cfa70a08d0f2872aceccd8087835eccc014f4009680e9e36b6cfecc9bcb95328dcb8f6c9ef11c432e2d3c6f";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/bg/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/bg/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "bg";
|
||||
arch = "linux-i686";
|
||||
sha512 = "f3268fced7a81b5046332f975906ac79b8ab5ac888dc1c81085dd7cd1b1a414988208d426bd305f67cbd913c58de857c844809ae6e6ab5a2a520d7d6b149b731";
|
||||
sha512 = "f2c74a0609eff929202d13719fce167577b2ae0e1a0c98b75b359bfcddcb531907a466e184ece24d904bd592ab41654f2dcc2500defece0aede3be3826dcc8eb";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/br/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/br/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "br";
|
||||
arch = "linux-i686";
|
||||
sha512 = "c1be2ec4d4e64a2a9b32b974eecd182ad9d1fa23b775769e8535e742479ed6be2a222272d7c5b141393f0c752d4af704758912bbac1c17f445b3bf277c12eb9a";
|
||||
sha512 = "1f1ff89743c398443a18230ec0eadeb51a8d57633bb7c242f7003e472b0ea206dde50a9d20880ddfbc9ee36a3ca28135662ed21d6e8cb779627120c70f0aedea";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/ca/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/ca/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "ca";
|
||||
arch = "linux-i686";
|
||||
sha512 = "ac0c2508b89812ba63d0bb770adc2292127243fe31bf140a4ab88c953750fc2f699c5ed2afb9a400cec48dc14d927b08dc96d5b110e2f2d90e81d1532ba9d916";
|
||||
sha512 = "608232b5bc7a93cd786d84662e59e3b186bb1de51cbe0f720cf4e80e65a93e09a24f06abfba63785c0cdba997a6fa871497998f1953f57a98ea6b9e224235ffe";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/cak/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/cak/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "cak";
|
||||
arch = "linux-i686";
|
||||
sha512 = "4d73beb37469131b7e7747c85a73027e1eaf008100eee21e27d36b4736ffdb4cc3ca3606726e36033de64504f058ec9d4193797a09c2a591675636a5c00fc890";
|
||||
sha512 = "5e77fc07093e5b2cbb345f21b48415a5c7d987ab0a82540f398ef33c7051f1917fb448fe23401ec3683c87379aeecb287be5ffcf6a124df9a464401f242d1e3c";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/cs/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/cs/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "cs";
|
||||
arch = "linux-i686";
|
||||
sha512 = "635ec13ec9fd688ccb9c690ccb4d64228f1f47755ce24c4806f5f47655af1279b9ee758fe15c0fcbd43c830edf66383bfa3d84d35137209a4af41aa59565f554";
|
||||
sha512 = "036304985db3ecccbe50a9b3d8c19dcc269f7c6987c1101c9443ea5fb2d14e71390ccdf6f0000c972af631863398a02cba1c05566c6be4ab3e79396c049e0e16";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/cy/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/cy/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "cy";
|
||||
arch = "linux-i686";
|
||||
sha512 = "afb546562f92c93639a407598d9c6654b64776cb68db7ddb07c0d17f83d122d9e7bb974238ee5cdb90876bca3ea30356cc5eef28b11ccf082ef72c0343dc42d0";
|
||||
sha512 = "4de3a065234e921f9ae7250409ba24bc54230af61b4993c3686a77e1e165874995f7c60b45ab136c6b3f3047461e86c19207952b870019df06dd164054b65dc2";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/da/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/da/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "da";
|
||||
arch = "linux-i686";
|
||||
sha512 = "f7b7d183312d11d02200890afe4e81c793b658729119d9f81ac2ca58714244ece9d64d1b9d9f34c79f1d00b574e24192ce066debf873c4b740c35208cfaec16e";
|
||||
sha512 = "69e190f9263438c88b445821b56b93c052613fd67a1f1918b135c719e4358bea46d3a79bc135d50b254fa686d8cba013daf89d40ccc5212062cb177bdab4d667";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/de/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/de/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "de";
|
||||
arch = "linux-i686";
|
||||
sha512 = "e6b3ba227c8e84273e6dadcb59d6691187512666efcb63244740a56273c5b765c65d21607e4f07a508e5e63ed0812162ad767fcb1140b89b2c155da945586179";
|
||||
sha512 = "ce4cf8c1e11f4813ce173bd08ceed9ef26b2117771ca87ef16c001e1a49f5385a6a3ecf4bf7561d48aa6c7e63d307c2fbde77ef8a51fa0aa9b66f4f98386bff3";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/dsb/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/dsb/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "dsb";
|
||||
arch = "linux-i686";
|
||||
sha512 = "84d39965568de9c87c280beb43330aec4ba6cdebf59a9c4f566b6bc01fbe15cc3987e87d9c24a9e746283cc54ec1ebaaff99952de7ff0aa9b6f05f36b1295d09";
|
||||
sha512 = "9007c92825220ff9685c599b1c6e39fe3e96888621ce5dd15f5ef9d812c09a29ef72a6eb2f68cd8eab78b5519b6c26cc957ed04f3c9798ea0305fa4f5c8bb962";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/el/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/el/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "el";
|
||||
arch = "linux-i686";
|
||||
sha512 = "0942b5c8c7ee792d264824c6837d5857679feae9073fd2451b92dc0f31290360a24f7cd708e550955e798d2decb9f0c3a21dc8ba7bb5f226ba8ba9f502ef870f";
|
||||
sha512 = "e619576813260ec68a26226a83a540c58aea7e87d3b0ca35f6ae7bd9e0dcaaf54ab12f57cebf669060191e3affc42df1585a3ce4aa18f82f6afe469b85de495c";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/en-GB/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/en-GB/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "en-GB";
|
||||
arch = "linux-i686";
|
||||
sha512 = "12fb5086fd012d85f35a41125b7e5ebf37ec34e9215db9b2a4c67f924d3bfa738698ba15bfa2e51f8cbe0d81cdfe5de4bfecd54b0fe6cc7163c753444e56bb9e";
|
||||
sha512 = "0810f25326d8a08628aa55d5c15e6144f833454019087fa20f2c128bbaa4380f9f2a07714b0d8ac0f3fabb5b6065e7b2efe6e80975e5e47e81749da9f4e6be94";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/en-US/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/en-US/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "en-US";
|
||||
arch = "linux-i686";
|
||||
sha512 = "6004186b0b27165a4d54191a9c2daef34b580c2d97b1e0472e8d8d863e3df51ed56ef17abb7c6944f4da214772780b5c69785b9ad22ca26ba1a8f0390beedc19";
|
||||
sha512 = "adc1dddf36116435b3948810cd9d647febfc97d62443032100b0f2d722913aa051d44244f057c29cb8c6cf494fc67b3044b83ebfd5eacbc36b6cd9c88361078e";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/es-AR/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/es-AR/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "es-AR";
|
||||
arch = "linux-i686";
|
||||
sha512 = "6a547a1d0450de1089df18baae81100d3fb9934c963459ec83ae81504e7a1ec7abf595766c84fe8d321f901150a68b7e172888028f3b992b4b6b74ba98ca4efe";
|
||||
sha512 = "a9433a5de45477f432c6906b640909880650443e5e3a65a839e9c055d887befedc8c22c76675700886dc128ad190fa0ecdbbf2c5f18e650219b33a78105eac63";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/es-ES/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/es-ES/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "es-ES";
|
||||
arch = "linux-i686";
|
||||
sha512 = "e1256da3c8938776b11444790f20a68f056f7407f444f0884dfa1c52260309d4adfc64fe95168dd8263e4aea650362ab9fa08930559c7f0e97b3489c172c81fd";
|
||||
sha512 = "a128e46d7d2cce449a261f857a221232d2d89a7d999bc074ad5d1aec741f766516f3882cc2603d6284458208c2ed36dcb81e214039222c9c15450e96e73d0283";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/et/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/et/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "et";
|
||||
arch = "linux-i686";
|
||||
sha512 = "a5d7cd5e3171d44dbf91f067231301940e8a622a6729333512b49bc037022bc2058fa548c044a40b7ebea5d3199402276a34eeec5cb21b2070d7cfd96737def1";
|
||||
sha512 = "521d004b432fd27ed6b167263253b3a3c89aa22ee5e06a4a434da6948a8c2af4fe27e17a1ef962e7caedf7d15ab27b98384545069abfaaf41871cd5878fdbf72";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/eu/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/eu/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "eu";
|
||||
arch = "linux-i686";
|
||||
sha512 = "08047c83e28397d265712dbd5a533799b2bba97d90f83b93be8377a544226ea0dff22f5b5e2cd5314c24608825048f3e59c6fc348959d63e1acb81d10d687f46";
|
||||
sha512 = "df8afc11cddf0c06d05bee455833bc5d786789a709baeade7b64e8f815c42f399fca1442a8b64271fea7e45fed4408ee923293cec953e0406b093f0b94120861";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/fi/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/fi/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "fi";
|
||||
arch = "linux-i686";
|
||||
sha512 = "ae407ee0dde2be8a8f89979b5dcacebd13fcfa42fddce48773e8f26ffbb503acc6b17a90170a0d72d550400397c17a725f9bf6f65d842f0f281fc58eaf9dbc53";
|
||||
sha512 = "51e05f21e01dfa0fc3c5d0463d80e87a38e50dff612a7632f9a5cd440f037a438a555e3640cdddd794ebe04eb2cc15c549db7ac829c91ac488b73b66808496a9";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/fr/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/fr/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "fr";
|
||||
arch = "linux-i686";
|
||||
sha512 = "a776215a9ba91de0500cc7fda245afa19a49b51b60089c55444aa452c5aca06cf3b95e66448147cdbc3df063348c28bbde3f3c2a6e19deed26e1b33dec565b25";
|
||||
sha512 = "9448860f48fd93383a24fead6af1102af855270749e817f720e2afac152949e47fcc9ce6fd0d2c60d3dd958c855af47a54a38e85975acf05496a7f67d2af72fa";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/fy-NL/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/fy-NL/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "fy-NL";
|
||||
arch = "linux-i686";
|
||||
sha512 = "5302a5709fc4485eff607fd0b5e75f15bb600a14d20661cc4f7280b0bf5c156a40a51045182ff0d31c89d4009c5a516015843ec9fef1fb1134cfa80c511c05ad";
|
||||
sha512 = "e9a27da8b86e2ec3593056a19001dd656b8bde07edc918ec18f266de377c697eb0ea3a10fedb223e58db53ae5970d2b9753b46fa87db938e5568283ba136bd2b";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/ga-IE/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/ga-IE/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "ga-IE";
|
||||
arch = "linux-i686";
|
||||
sha512 = "4b9cfa317f8ae5accb2c96731bd7fcbaf2eebaaee76bc7383d247cac9db6708b7c4c03d2faf3a6e7e6620b3eb696e9bb3fd18c3dfd1f3ce12e4bc65bb86955ed";
|
||||
sha512 = "b346fe3863ab7944ac33a8204eea7a458a0131c879eae26be66928bed930aa29ba74a5b0e39aa939f0320fb8e5fb0a5e31599235daed526f920b92240763633f";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/gd/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/gd/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "gd";
|
||||
arch = "linux-i686";
|
||||
sha512 = "8738b93fd18972456158c28d4146ec8548e97339d7b4ff044ace814213d27940b02f9b889b5809525d5bba46a5b3ff4a570c14b3b9a5fe276b4aec515b62055b";
|
||||
sha512 = "e921a3c2720aad333febe7e1d69579eeda4f641fe32c1b6235fb6c01480ab7c87bcb47020b0dc2e4225746b277d8c6b288aaec86125ad48da9fbe3452f30e01a";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/gl/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/gl/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "gl";
|
||||
arch = "linux-i686";
|
||||
sha512 = "c556343f99d39f6ff41f0b05af606ada89e6b95938886f8d0b1ccd7b77f336ae40a8debb003d2bfc865548c5e9e055859d6d353e169a4f2ee7ada7cb8687cc47";
|
||||
sha512 = "dd581aab660e96d7b0283bacab74d5635610301fbf40e95bc85edb5e177492f2a9c786a4fa722024fd57e2f2158fa339c161fba605ae428b5c03fa983b70d176";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/he/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/he/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "he";
|
||||
arch = "linux-i686";
|
||||
sha512 = "b6eed03bdebfc334c8852a15989c024883b99f600b9aa58f8344976b63f1f9590aa9b78a2a27b081a1e5256443801f01c1f638f1e4f8c0c2a78e695a5e2f590a";
|
||||
sha512 = "2ab68acb57eadab585bedaef3f79369cd7a0c08030d24bc3361a0e08ff796f28f345cae15fbd78bd1fe2c275f8d4fb7058194ef44dcddd3e8f92b69f92482321";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/hr/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/hr/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "hr";
|
||||
arch = "linux-i686";
|
||||
sha512 = "aa4527614db13978d03cf07444109dbc63b7788a2cff924b5566c98d9316031f1c0fb74839b5be78030959f85147c1c1e50edca5605b5cbe2ad3bbbb257c24ad";
|
||||
sha512 = "975be725774e200f39b77cbb16ad364fb5d901ef46a85da9f297b61140e5be61cbf48de9f2ea0236d4580a27be97e87c195b92d9286133ac5aac2a35b1b7e5f7";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/hsb/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/hsb/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "hsb";
|
||||
arch = "linux-i686";
|
||||
sha512 = "92b1e17c825a60da17bc9942b689337246f301843637fe420284fe89aad4ab2f30101201330d5319a7e6a2bd87567bf7aa7b35bfbc13b1399ed54973afacf4ec";
|
||||
sha512 = "5d501e9b7a39a518da0a82c1a89f398adaa449753b4dadc6ff8fa610bfc152016e6f70c1a944cc85e72fcaea5aba21a04d5abea2f2e045ca1c9212a37d31c461";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/hu/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/hu/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "hu";
|
||||
arch = "linux-i686";
|
||||
sha512 = "5e0c03de66a9098e290fb93545cb46be41d7e91c865cb3fcff9dee7d141fa113cf7bfc14cbbf1e8f9e3979e6602116081958c22a83ea043015cc5adfb738e5ea";
|
||||
sha512 = "4cf2c82e4d965c3ff51e40823f876811834cf7602d9cca30011346c2bdb6e222b7d37f28db79b6507350cd833db312aaf30c13ae245c93a6b1118d9abb132571";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/hy-AM/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/hy-AM/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "hy-AM";
|
||||
arch = "linux-i686";
|
||||
sha512 = "3df1da5c3d18ee3705e5d5013a752920863fdcee8a1c021bfde28603862a7c56e60a65b46b98af5d66fc5066c1580ab5484d86dd278d64d5d800b3840361b812";
|
||||
sha512 = "d13d91b889903bdbbae1e12b96f07bfc6f5a6cb734a45fb87402ac44df9fcca703e067b1d1554a41c9b7e2e31703021eeeedd3ecd8b27536b548a3b2d89a1f27";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/id/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/id/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "id";
|
||||
arch = "linux-i686";
|
||||
sha512 = "786a5839f311df656fd4a0687819a47589f5a6ebac6f76e1f643136286d43b2f27744dfcc116341a8905b5e1da4ec0ad1f1eb4998e188d2e87ea487c6826fb32";
|
||||
sha512 = "7c199788cead727742dfebbcdf6ddfe4491be31a3f4dcc7ae05d25413101036cad7fae399f6b390002f55f60214ea66399d5bfdc515557351b309d174b83fa55";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/is/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/is/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "is";
|
||||
arch = "linux-i686";
|
||||
sha512 = "53e4f76d41e1f8af240ecec249bd3ef3c787c6ff69320694bc682a876a76be22ed59abf0bc83691c7ea96d1e16f5a4c859e2b62528c99261f562012dbd035a9f";
|
||||
sha512 = "33ac7dae65efc4792f92fed4eb0062302ef601f6bceef4d1eaa6b4a7fd75427607e8ebd7f6df70073bcbcc89f057b0689e365cea960428b5e57f9f1e810d6e48";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/it/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/it/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "it";
|
||||
arch = "linux-i686";
|
||||
sha512 = "8ecb5594e5252be84f97a55b37f5089220a3e5c1565686fe02f00d94a1418a9460e4c1f25724243c82b3c9442eb8cfbff3c3c9470971921469f2fd71aec66860";
|
||||
sha512 = "231acc8648e2e377a8ca6d22c273957506fd1c21f226ddd681fd3a91940cb151df4f0eb05885ec0325629bb0cfdd3ed500af6047970b43b898a37586e4612502";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/ja/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/ja/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "ja";
|
||||
arch = "linux-i686";
|
||||
sha512 = "7f9ed4fbdc0549c6ab704f80676218980a4b2609086437f57e22e9750e5a34d7506c1ee43ec48031a28322cdf4dcde6bd14c05fd032244acf33310fb6aa8e9a2";
|
||||
sha512 = "90b8ca0d72fef8fbeae34027c95e3391452d72b53b40ecd59b1d2d2b07c6ef2e4d787bb2e927bf3d4b7837ea4cf2f10a0d3ccb0a6c98992e6fd857717c8ab04a";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/ka/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/ka/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "ka";
|
||||
arch = "linux-i686";
|
||||
sha512 = "bab15aa28fc92850d374f76ae9898c9408176db9b9e19cbdb49f7b586172c20eed0cb358f3cd4b5fcc2a4740188c0f041cf617a63743a42648c7e33dd0fb79e8";
|
||||
sha512 = "271415dafa136d326b89ea3a58b852e2526c86f45d63f383fa250ace14f71b1b915dac3810a04507d9ca4437c640065520f9f3d9d032cb7eb84aad1f7b3517ba";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/kab/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/kab/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "kab";
|
||||
arch = "linux-i686";
|
||||
sha512 = "26b1055333e508666dd24706da824c5cf9d5f87d1d1cb1c4d42894b836412205a7cc7ff73f764d8f2a1852138923bb02a6b2a2c3c92d1fe9307529533b6360e9";
|
||||
sha512 = "c0b4fe65e9937bf897e7512ff6f267993c324c772232317e1314ce035a282f313b8385eee8c13e7b131eb0fabaa1b62345fbcd6289a5172d78aa3abf7f716bb2";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/kk/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/kk/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "kk";
|
||||
arch = "linux-i686";
|
||||
sha512 = "d946c82a8c35d82147812ef16e4573ae559dbfe65f4a6e5fc7dd107fb57fc6ba2a47f8a3655344e9e6172628692ad7815045830ee27bb10aab0d71483936d6ac";
|
||||
sha512 = "b8c7ddd098540ef8354eda1f2a3a06987d11cb7e0c4af4e170d507ec540e743a7d2527188c18e045df99576ed44990a800e7f7ce212042eb03b02339be9f86af";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/ko/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/ko/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "ko";
|
||||
arch = "linux-i686";
|
||||
sha512 = "3b9d9e70c097a1b7958c6854bc2da121f44921962d873e7f90fee85ce2214725223482aebcd503205e32501648c774199eced7ff34effb428dbc738f1ba4b963";
|
||||
sha512 = "a33dbf6ef3aef69644261ea1c1cf3986fcda5c9d0b28996c46e3d8e53d3d7f8e9e6b62f1b03f2816267b483a84295ad99e888cf76c5c192e9a9dbadd78ce7d8b";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/lt/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/lt/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "lt";
|
||||
arch = "linux-i686";
|
||||
sha512 = "0cf99a6aec58d2f56f6a52fc5fee17b9e1d5abd0ece53073cc392c71452e1415c94ad0af003dd0a97fc5c6744a1a2243aef69dc44b831be51108b769e5bff87d";
|
||||
sha512 = "3bf1cd599707a2728fbf46beadb7d8d1832c0c271e98647ac7d2de1be78b8c1b5d0af4ac246af01eaf4b2a57154f6068065fbbb2019346b663cafeb40edd5b71";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/ms/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/ms/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "ms";
|
||||
arch = "linux-i686";
|
||||
sha512 = "8b4697a312aafdd88a5ecdf898a796bddb91e80b4c8c9c342fce765ee0f4dd494114324a51d6379468756a44bc71cb6f46b8fabc7ca733d9d85d08069f18526d";
|
||||
sha512 = "563c413b21e2fda6f412a1826b1191097d4df1ade8d12e031522e122bedea6ae23a2d3b047e870030c9b4901a5869c9439107d8a7ebc6380c758bd741e0b4128";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/nb-NO/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/nb-NO/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "nb-NO";
|
||||
arch = "linux-i686";
|
||||
sha512 = "ad6275f8343dd36ed039524875b41ab9c8bafd2a1e54291b98c16b0ab35f9bea1bfee3fce86070317fad2f25d46d0aa9ef0824e4ad88e0879a33ae753c61ab2d";
|
||||
sha512 = "c9062949faf5cbfe8bde2b0f330f76b438e1606360364a90f0e35026fd52952d6aff7c6925fd1ce569b24f41409d0b63540dbeb0ae82260604d5faaee723bc2e";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/nl/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/nl/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "nl";
|
||||
arch = "linux-i686";
|
||||
sha512 = "49f586a62969e6ea5638eb95f812e7d4a891ef55f381633792ed0820ad098cc527dc9490c3a1ce52246526f0a8cf00eb16666c6a7f932a68c6d440e151b452cd";
|
||||
sha512 = "b8b385db8fd2385a88d12c1ba23bf812592beca14e44d9c33456ebad16a40db8e7d886779565a4d617fc56f7a6d651dc8da171b1c727481895d05777bc0eb3c1";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/nn-NO/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/nn-NO/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "nn-NO";
|
||||
arch = "linux-i686";
|
||||
sha512 = "1f04f2bf7a60472eff1b546608cfb26e41f31a273d1037e0d73530029a757dfcd95e2c1b85a6990b6f7eec28138835fe096266a00dd094b4db74007cd59ef00d";
|
||||
sha512 = "3c88ea8dffc71524402416d9222c859dafc5bd5799651a948bb318a7d2f91ca2c00fa4158e6019949f9a1d72a2d85a0c9d2a3c9a8caf052e8743fcb5dd0dccb6";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/pl/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/pl/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "pl";
|
||||
arch = "linux-i686";
|
||||
sha512 = "f232e4b6cfcea81ed70e56e9812b8e0783205f49b846d29338ad09457db9a18e4fbb35738bf5e9abce42855c13c1839605aa343cb7d33d0110b68d634183e697";
|
||||
sha512 = "c6ba1f98ebc44af63d8cd8052fd306d3a8920c33eb5b3be563c0fe203d5d07806bc5db7ff88847c3ee2d82c62d0811a086fa91e8253eec3a3977091569f40a20";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/pt-BR/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/pt-BR/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "pt-BR";
|
||||
arch = "linux-i686";
|
||||
sha512 = "2527ec08fc23d01712574e3c8419273ac82111c5f2b4b6040cd8f3292aeadb36021029b01bc319d8ca52177db39f1a446acd5537a6e8f42800eb22c3e2d7cb30";
|
||||
sha512 = "cbd4c0f1b14cb04b98ef6f2e4ce53d655b58ae9a11047eeb1959ac1c4ef4370507194dd1149372fd1dad4ceedf91c39f3bde4fdf07b5d925f27dc8eb5041be67";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/pt-PT/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/pt-PT/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "pt-PT";
|
||||
arch = "linux-i686";
|
||||
sha512 = "c91d9d0becade1508a3212693f5fcdeb917fe5df5d63b54de125b76786dc3787a7f5f220eb48add1dd1eee95f7eb120b1c1dc85dc0bd91688c883be9219f3d7d";
|
||||
sha512 = "ec08c628708a7bbcb00df2122e5fc463e1b0e1c031e9130369ddfee12db3cfe9219f7939756fc47abab8514c6cea642bb653ee420818ad625a33caada7005993";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/rm/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/rm/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "rm";
|
||||
arch = "linux-i686";
|
||||
sha512 = "45a4f608eb5e64f24ee385328a3a568aa2ad3284169019423c8b414790779cd079c2d73b290716f18227210ab5eff50625bd6688498bc027228b8fff51fda5b6";
|
||||
sha512 = "4520dfb1529220e40cf2e1aca44cbc2af750fcceee3639d7ef334e9488034b18bc6e73b5b7a37204346da53a44da099f4f7f65d5b3dbdeac6d6934918c02cca3";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/ro/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/ro/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "ro";
|
||||
arch = "linux-i686";
|
||||
sha512 = "e344d838e2f79dd8ff79cf2e7ff2a1d8f6c7e64f29cf870d8a6fad9b3dee31de6c0a80d3007dd498dffb816c00dc8429150bc6b49a5b6eb10b633a4e942ca725";
|
||||
sha512 = "49e54dd1cca8038ab6c34e9980b6b36117aa157b6555ba440f0d7c8c4d909253989b9a50d25c7c18529136fa26d0ff94474d17e43156afba171948c9c05e16a6";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/ru/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/ru/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "ru";
|
||||
arch = "linux-i686";
|
||||
sha512 = "8dbfd4f8969703623388a55e790b722933f2c1faf702ff5c7fdfe3cdab8f62fc4ea69f9303edf94a41a71be1b8c5a2ddfa5509d4c8abe260c91b7075349afe64";
|
||||
sha512 = "6d297592bcf0c9b97c40f1053a95385e6c2510aa0ddfafd25085bc6a954fb5460f59f18f65477d8c93af829cd2a053b389b5dcec35a7ac7766d72c29064e5687";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/si/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/si/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "si";
|
||||
arch = "linux-i686";
|
||||
sha512 = "f1808e9648caa00afab0609dac1cb564dbf6e5bef75446071997cc9913da8470e54cb254282fc6e8b839e88b003ef18426609a97cd1affb93659fcb519913a5c";
|
||||
sha512 = "f602557748517324943b5ff276f4efdeca1c5083662bc9f0b0bdba8c10510cee834b3883870a98d51d406f58e338a09d0589b3bc0891bfbd88b895cca02fd360";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/sk/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/sk/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "sk";
|
||||
arch = "linux-i686";
|
||||
sha512 = "7d5b480a44dae0d2f5348261ecad04348ebb7943a757fe83c0fb154da251b423ba21840c5d1fbf8d7979dd30c2d5e7b18e90d0ad033a1e96d6f6587407a24cc9";
|
||||
sha512 = "7b6980d2b5131bd9a43a29efa2f1e97c60e15410a63224d839548d777fd8b4c4d65ccfc7756227cf900f7420b12231c3d48f062133cb6f21bbdcdcdb179f2e47";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/sl/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/sl/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "sl";
|
||||
arch = "linux-i686";
|
||||
sha512 = "f76e1f01b8da8a2ba344dd3bedfa4301df03fabf9848fa189d522995cd48d81f8d00f11e01722868acb1993d4e79977122e04e3d208629b2e398c715777194e1";
|
||||
sha512 = "ecc38fb4fde66b7b213b1cfeb8ab170b3e685d0a28c7e071e19a85509ec74e79fb6eb61104c47f0eef1a77e1e1a52b292469a364747eeccc701c522452c58351";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/sq/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/sq/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "sq";
|
||||
arch = "linux-i686";
|
||||
sha512 = "cff32ee84324724dea5612e5b48b22adc63d8b9428c5937f84c94da83bcf5f2aadda6ab81c5f9bced6d693689bc38bf15c764d4ab4809cacec3bb54cd82745f7";
|
||||
sha512 = "3ff668c6ed28bdb2f3d388ab8ecb1bf3b2b38bb29046b8559f7b9f9c6fa32db226c4620f472ba5a982b473e3e3f4aee04aa3746e57738b512dcb37fdfd5ecfc5";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/sr/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/sr/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "sr";
|
||||
arch = "linux-i686";
|
||||
sha512 = "96d25f7d952e204751cd601932713418cd495d11364430a37ecfa36333113a6132209b8e8f0ec337799ed02b71b388f43e22a53fa168f17e4d15e7594170299a";
|
||||
sha512 = "4c71511375333802f903cb632963933054a969c02a3fb23f4416e0cb3c21e18147bbffb28572f8ac90aa5bc3c4138b25590c42610c20a14b5e8eddb1edf28c28";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/sv-SE/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/sv-SE/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "sv-SE";
|
||||
arch = "linux-i686";
|
||||
sha512 = "8bc790d7951469e2dfa2499622464cf55427a6bc93dec50b18f014ac079ec0579b91a11680e4104f7d6a38f60d467e9fb3c9ee7ab83b64f8dae2c1e979150bd3";
|
||||
sha512 = "5d7d569f4eb9ed738f54139a90e9a01e9e771a553af193357d45765bd54815a096ddc31ac69620d6f14516e8f41f1c0fb8f16a848e13273d0c18b9c047d85fb4";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/tr/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/tr/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "tr";
|
||||
arch = "linux-i686";
|
||||
sha512 = "2c40fa3e6ecfb68507897e669bed229ed98e1b4a3998b55b59523d3cec1fc5553cfacbd9be3d55f7a32b612ee662dfda7c8a21a4c26c750d48b87d31368a9942";
|
||||
sha512 = "fc8892f85032d9fcce76c3fa971531f4039b8bb9e1812776bb3e7c5b68474543b5db4007f79e81abc1685c74f0574201236aab8a2df05ac10fcaade7c57ca3c2";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/uk/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/uk/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "uk";
|
||||
arch = "linux-i686";
|
||||
sha512 = "5eee26a500c1d4bf71222987523cc3e5f144aca02c17c88a01d4b68f9ac5e1298407460c69504d0a7b1e5727755cb32e2ae523cd97766419848c1b6dc0a30bf0";
|
||||
sha512 = "80335f326bde31f4b1e269cd756b4b41ff3a632023f09447abf6d1964381f8f9657a4f47ed6af63a3eb0cd4e84e5bced595eec07cc0a9e30ad8d3cf3d08026df";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/uz/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/uz/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "uz";
|
||||
arch = "linux-i686";
|
||||
sha512 = "51a0fc8dc30cc82f7d3b222167aaa8ea0225b4136ebacee38687cdc1235c0720da14cd2a3e1875a4c4bfa3bb8fd9045541ca6df736115312ac49a2db2ef83639";
|
||||
sha512 = "2434a8a063b0d1019220579bc83160217d5c269b24ad83a9ed0969425a1fc9d9ed8b190c291d87c34379928aa6c2329d3b5ad287b44177dd61f680081cd7caf9";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/vi/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/vi/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "vi";
|
||||
arch = "linux-i686";
|
||||
sha512 = "bb02dd69a8c8d514666fedb9d7de520f6ea89740956ddcd9d7f90175bca6f7bcf79b573c6e5ecd6fdfcdd15aa2a35881e8877074fbb795019eccff52cb943a91";
|
||||
sha512 = "0e33f1a2f8cd67bdb523180af0b8afa5fbbb3628b0b9407f2a4ae609c7155b33fd85a1f23d9b74097fefb045fd0b437f58971cc4c4d5f391398d6ea7429b921e";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/zh-CN/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/zh-CN/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "zh-CN";
|
||||
arch = "linux-i686";
|
||||
sha512 = "408599229da40b2ce1a23ec1e5b12c7f4a24fb63524d792d50764cdfbcc6774dd7f651ba2dce46bccd94937e24b4b08d8bf37b6fb839c61540dfbf36f6d3e6b2";
|
||||
sha512 = "27d1d9b3c30ab1dd863362139f91b79ffb7e36e87ff1f7f07162ea3e86a58962136e43cca3212e4263908f63dfe3a3c53bb3db3085e5b4bf07e0ff88408822d8";
|
||||
}
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.0/linux-i686/zh-TW/thunderbird-68.0.tar.bz2";
|
||||
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/68.1.0/linux-i686/zh-TW/thunderbird-68.1.0.tar.bz2";
|
||||
locale = "zh-TW";
|
||||
arch = "linux-i686";
|
||||
sha512 = "d75c9bfc6234fa0ddc56b7c1dace76b789e29c0cb03ff17395eeba020a82431e457271e95117731963f2666295b94746d0370bf0e85f9c3646836830684bca45";
|
||||
sha512 = "2141f0ad5d11daf3a94f3a737801ec0234a7f2d869320d4859d771ab92a6e59bf13139b4048a7239640635051a9228e6cbf55746402ed35cb398d93a3d129439";
|
||||
}
|
||||
];
|
||||
}
|
||||
|
|
|
@ -25,11 +25,11 @@ let
|
|||
gcc = if stdenv.cc.isGNU then stdenv.cc.cc else stdenv.cc.cc.gcc;
|
||||
in stdenv.mkDerivation rec {
|
||||
pname = "thunderbird";
|
||||
version = "68.0";
|
||||
version = "68.1.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://mozilla/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.xz";
|
||||
sha512 = "2cz583rwfpj4z5cwg2vfy4ha0pz4xs9g7li078rmk6x19haiv8s9fwijd82xgxax0afn8wk80bq5kd8yz38l9432f6bar8xnwb21y4i";
|
||||
sha512 = "06036nawpm987q33567nhz55qybbcl55h5rdhjbhck5qmyj1qi383xqac5niwyk7c0gaq4ygwc5a24pysf85crjdway2zmqyjxp2apb";
|
||||
};
|
||||
|
||||
# from firefox, but without sound libraries
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ stdenv, fetchurl, fetchpatch, autoconf, automake, libtool, pkgconfig, python2
|
||||
{ stdenv, fetchFromGitHub, fetchpatch, autoconf, automake, libtool, pkgconfig, python2
|
||||
, boost, db, openssl, geoip, libiconv, miniupnpc
|
||||
, srcOnly, fetchgit
|
||||
}:
|
||||
|
@ -17,12 +17,13 @@ let
|
|||
|
||||
in stdenv.mkDerivation rec {
|
||||
pname = "twister";
|
||||
version = "0.9.34";
|
||||
version = "2019-08-19";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/miguelfreitas/twister-core/"
|
||||
+ "archive/v${version}.tar.gz";
|
||||
sha256 = "1bi8libivd9y2bn9fc7vbc5q0jnal0pykpzgri6anqaww22y58jq";
|
||||
src = fetchFromGitHub {
|
||||
owner = "miguelfreitas";
|
||||
repo = "twister-core";
|
||||
rev = "31faf3f63e461ea0a9b23081567a4a552cf06873";
|
||||
sha256 = "0xh1lgnl9nd86jr0mp7m8bkd7r5j4d6chd0y73h2xv4aq5sld0sp";
|
||||
};
|
||||
|
||||
configureFlags = [
|
||||
|
@ -40,12 +41,6 @@ in stdenv.mkDerivation rec {
|
|||
boostPython db openssl geoip miniupnpc libiconv
|
||||
];
|
||||
|
||||
patches = stdenv.lib.singleton (fetchpatch {
|
||||
url = "https://github.com/miguelfreitas/twister-core/commit/"
|
||||
+ "dd4f5a176958ea6ed855dc3fcef79680c1c0c92c.patch";
|
||||
sha256 = "06fgmqnjyl83civ3ixiq673k8zjgm8n2w4w46nsh810nprqim8s6";
|
||||
});
|
||||
|
||||
postPatch = ''
|
||||
sed -i -e '/-htmldir/s|(default: [^)]*)|(default: ${twisterHTML})|' \
|
||||
src/init.cpp
|
||||
|
|
|
@ -1,215 +0,0 @@
|
|||
{ stdenv
|
||||
, lib
|
||||
, fetchurl
|
||||
, requireFile
|
||||
, makeWrapper
|
||||
, libredirect
|
||||
, busybox
|
||||
, file
|
||||
, makeDesktopItem
|
||||
, tzdata
|
||||
, cacert
|
||||
, glib
|
||||
, gtk2
|
||||
, atk
|
||||
, gdk-pixbuf
|
||||
, cairo
|
||||
, pango
|
||||
, gnome3
|
||||
, xorg
|
||||
, libpng12
|
||||
, freetype
|
||||
, fontconfig
|
||||
, gtk_engines
|
||||
, alsaLib
|
||||
, libidn
|
||||
, zlib
|
||||
, version ? "13.10.0"
|
||||
}:
|
||||
|
||||
let
|
||||
# In 56e1bdc7f9c (libidn: 1.34 -> 1.35), libidn.so.11 became libidn.so.12.
|
||||
# Citrix looks for the former so we build version 1.34 to please the binary
|
||||
libidn_134 = libidn.overrideDerivation (_: rec {
|
||||
name = "libidn-1.34";
|
||||
src = fetchurl {
|
||||
url = "mirror://gnu/libidn/${name}.tar.gz";
|
||||
sha256 = "0g3fzypp0xjcgr90c5cyj57apx1cmy0c6y9lvw2qdcigbyby469p";
|
||||
};
|
||||
});
|
||||
|
||||
versionInfo = let
|
||||
supportedVersions = {
|
||||
"13.10.0" = {
|
||||
major = "13";
|
||||
minor = "10";
|
||||
patch = "0";
|
||||
x64hash = "7025688C7891374CDA11C92FC0BA2FA8151AEB4C4D31589AD18747FAE943F6EA";
|
||||
x86hash = "2DCA3C8EDED11C5D824D579BC3A6B7D531EAEDDCBFB16E91B5702C72CAE9DEE4";
|
||||
x64suffix = "20";
|
||||
x86suffix = "20";
|
||||
homepage = https://www.citrix.com/downloads/citrix-receiver/linux/receiver-for-linux-latest.html;
|
||||
};
|
||||
};
|
||||
|
||||
# break an evaluation for old Citrix versions rather than exiting with
|
||||
# an "attribute name not found" error to avoid confusion.
|
||||
deprecatedVersions = let
|
||||
versions = [ "13.8.0" "13.9.0" "13.9.1" ];
|
||||
in
|
||||
lib.listToAttrs
|
||||
(lib.forEach versions
|
||||
(v: lib.nameValuePair v (throw "Unsupported citrix_receiver version: ${v}")));
|
||||
in
|
||||
deprecatedVersions // supportedVersions;
|
||||
|
||||
citrixReceiverForVersion = { major, minor, patch, x86hash, x64hash, x86suffix, x64suffix, homepage }:
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "citrix-receiver";
|
||||
version = "${major}.${minor}.${patch}";
|
||||
inherit homepage;
|
||||
|
||||
prefixWithBitness = if stdenv.is64bit then "linuxx64" else "linuxx86";
|
||||
|
||||
src = requireFile rec {
|
||||
name = if stdenv.is64bit then "${prefixWithBitness}-${version}.${x64suffix}.tar.gz" else "${prefixWithBitness}-${version}.${x86suffix}.tar.gz";
|
||||
sha256 = if stdenv.is64bit then x64hash else x86hash;
|
||||
message = ''
|
||||
In order to use Citrix Receiver, you need to comply with the Citrix EULA and download
|
||||
the ${if stdenv.is64bit then "64-bit" else "32-bit"} binaries, .tar.gz from:
|
||||
|
||||
${homepage}
|
||||
|
||||
(if you do not find version ${version} there, try at
|
||||
https://www.citrix.com/downloads/citrix-receiver/legacy-receiver-for-linux/
|
||||
or at https://www.citrix.com/downloads/citrix-receiver/ under "Earlier Versions of Receiver for Linux")
|
||||
|
||||
Once you have downloaded the file, please use the following command and re-run the
|
||||
installation:
|
||||
|
||||
nix-prefetch-url file://\$PWD/${name}
|
||||
'';
|
||||
};
|
||||
|
||||
dontBuild = true;
|
||||
|
||||
sourceRoot = ".";
|
||||
|
||||
buildInputs = [
|
||||
makeWrapper
|
||||
busybox
|
||||
file
|
||||
gtk2
|
||||
gdk-pixbuf
|
||||
];
|
||||
|
||||
libPath = stdenv.lib.makeLibraryPath [
|
||||
glib
|
||||
gtk2
|
||||
atk
|
||||
gdk-pixbuf
|
||||
cairo
|
||||
pango
|
||||
gnome3.dconf
|
||||
xorg.libX11
|
||||
xorg.libXext
|
||||
xorg.libXrender
|
||||
xorg.libXinerama
|
||||
xorg.libXfixes
|
||||
libpng12
|
||||
libidn_134
|
||||
zlib
|
||||
gtk_engines
|
||||
freetype
|
||||
fontconfig
|
||||
alsaLib
|
||||
stdenv.cc.cc # Fixes: Can not load [..]/opt/citrix-icaclient/lib/ctxh264_fb.so:(null)
|
||||
];
|
||||
|
||||
desktopItem = makeDesktopItem {
|
||||
name = "wfica";
|
||||
desktopName = "Citrix Receiver";
|
||||
genericName = "Citrix Receiver";
|
||||
exec = "wfica";
|
||||
icon = "wfica";
|
||||
comment = "Connect to remote Citrix server";
|
||||
categories = "GTK;GNOME;X-GNOME-NetworkSettings;Network;";
|
||||
mimeType = "application/x-ica";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
export ICAInstDir="$out/opt/citrix-icaclient"
|
||||
|
||||
sed -i \
|
||||
-e 's,^main_install_menu$,install_ICA_client,g' \
|
||||
-e 's,^integrate_ICA_client(),alias integrate_ICA_client=true\nintegrate_ICA_client_old(),g' \
|
||||
-e 's,^ANSWER=""$,ANSWER="$INSTALLER_YES",' \
|
||||
-e 's,/bin/true,true,g' \
|
||||
./${prefixWithBitness}/hinst
|
||||
|
||||
# Run the installer...
|
||||
bash ./${prefixWithBitness}/hinst CDROM "`pwd`"
|
||||
|
||||
echo "Deleting broken links..."
|
||||
for link in `find $ICAInstDir -type l `
|
||||
do
|
||||
[ -f "$link" ] || rm -v "$link"
|
||||
done
|
||||
|
||||
echo "Expanding certificates..."
|
||||
# As explained in https://wiki.archlinux.org/index.php/Citrix#Security_Certificates
|
||||
pushd "$ICAInstDir/keystore/cacerts"
|
||||
awk 'BEGIN {c=0;} /BEGIN CERT/{c++} { print > "cert." c ".pem"}' < ${cacert}/etc/ssl/certs/ca-bundle.crt
|
||||
popd
|
||||
|
||||
echo "Patching executables..."
|
||||
find $ICAInstDir -type f -exec file {} \; |
|
||||
grep 'ELF.*executable' |
|
||||
cut -f 1 -d : |
|
||||
grep -vi '\(.dll\|.so\)$' | # added as a workaround to https://github.com/NixOS/nixpkgs/issues/41729
|
||||
while read f
|
||||
do
|
||||
echo "Patching ELF intrepreter and rpath for $f"
|
||||
chmod u+w "$f"
|
||||
patchelf \
|
||||
--set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \
|
||||
--set-rpath "$ICAInstDir:$libPath" "$f"
|
||||
done
|
||||
|
||||
echo "Wrapping wfica..."
|
||||
mkdir "$out/bin"
|
||||
|
||||
makeWrapper "$ICAInstDir/wfica" "$out/bin/wfica" \
|
||||
--add-flags "-icaroot $ICAInstDir" \
|
||||
--set ICAROOT "$ICAInstDir" \
|
||||
--set GTK_PATH "${gtk2.out}/lib/gtk-2.0:${gnome3.gnome-themes-extra}/lib/gtk-2.0" \
|
||||
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
|
||||
--set LD_PRELOAD "${libredirect}/lib/libredirect.so" \
|
||||
--set LD_LIBRARY_PATH "$libPath" \
|
||||
--set NIX_REDIRECTS "/usr/share/zoneinfo=${tzdata}/share/zoneinfo:/etc/zoneinfo=${tzdata}/share/zoneinfo:/etc/timezone=$ICAInstDir/timezone"
|
||||
|
||||
echo "We arbitrarily set the timezone to UTC. No known consequences at this point."
|
||||
echo UTC > "$ICAInstDir/timezone"
|
||||
|
||||
echo "Installing desktop item..."
|
||||
mkdir -p $out/share/applications
|
||||
cp ${desktopItem}/share/applications/* $out/share/applications
|
||||
|
||||
# We introduce a dependency on the source file so that it need not be redownloaded everytime
|
||||
echo $src >> "$out/share/nix_dependencies.pin"
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
license = stdenv.lib.licenses.unfree;
|
||||
inherit homepage;
|
||||
description = "Citrix Receiver";
|
||||
maintainers = with maintainers; [ obadz a1russell ma27 ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
};
|
||||
|
||||
in citrixReceiverForVersion (lib.getAttr version versionInfo)
|
|
@ -1,19 +0,0 @@
|
|||
{ citrix_receiver, extraCerts ? [], symlinkJoin }:
|
||||
|
||||
let
|
||||
|
||||
mkCertCopy = certPath:
|
||||
"cp ${certPath} $out/opt/citrix-icaclient/keystore/cacerts/";
|
||||
|
||||
in
|
||||
|
||||
if builtins.length extraCerts == 0 then citrix_receiver else symlinkJoin {
|
||||
name = "citrix-with-extra-certs-${citrix_receiver.version}";
|
||||
paths = [ citrix_receiver ];
|
||||
|
||||
postBuild = ''
|
||||
${builtins.concatStringsSep "\n" (map mkCertCopy extraCerts)}
|
||||
|
||||
sed -i -E "s,-icaroot (.+citrix-icaclient),-icaroot $out/opt/citrix-icaclient," $out/bin/wfica
|
||||
'';
|
||||
}
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "rclone";
|
||||
version = "1.49.1";
|
||||
version = "1.49.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = pname;
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "0mjwp1j70dqa8k3zxhcnw85ddhagkpr7c59mv8kradv6mqqzmq9c";
|
||||
sha256 = "1a90fr7cw78qhwdgkjwshap345jk1ipm3nnk7xf3nayiyibvk5dg";
|
||||
};
|
||||
|
||||
modSha256 = "158mpmy8q67dk1ks9p926n1670gsk7rhd0vpjh44f4g64ddnhk03";
|
||||
|
|
|
@ -57,6 +57,12 @@ let
|
|||
cp -r --no-preserve=mode $src/src/* $src/LICENSE $srcDir
|
||||
'';
|
||||
|
||||
postPatch = ''
|
||||
# django-cors-headers 3.x requires a scheme for allowed hosts
|
||||
substituteInPlace $out/share/paperless/paperless/settings.py \
|
||||
--replace "localhost:8080" "http://localhost:8080"
|
||||
'';
|
||||
|
||||
buildPhase = let
|
||||
# Paperless has explicit runtime checks that expect these binaries to be in PATH
|
||||
extraBin = lib.makeBinPath [ imagemagick7 ghostscript optipng tesseract unpaper ];
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{ lib, buildPythonPackage, fetchFromGitHub
|
||||
, pytest, pytest-django, django }:
|
||||
, pytest_4, pytest-django, django }:
|
||||
|
||||
buildPythonPackage {
|
||||
pname = "django-crispy-forms";
|
||||
|
@ -19,7 +19,7 @@ buildPythonPackage {
|
|||
export sourceRoot=source-
|
||||
'';
|
||||
|
||||
checkInputs = [ pytest pytest-django django ];
|
||||
checkInputs = [ pytest_4 pytest-django django ];
|
||||
|
||||
checkPhase = ''
|
||||
PYTHONPATH="$(pwd):$PYTHONPATH" \
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{ stdenv, fetchurl, mkDerivation, pkgconfig, cmake, qtbase, cairo, pixman,
|
||||
boost, cups, fontconfig, freetype, hunspell, libjpeg, libtiff, libxml2, lcms2,
|
||||
podofo, poppler, poppler_data, python2, harfbuzz, qtimageformats, qttools }:
|
||||
podofo, poppler, poppler_data, python2, harfbuzz, qtimageformats, qttools, harfbuzzFull }:
|
||||
|
||||
let
|
||||
pythonEnv = python2.withPackages(ps: [ps.tkinter ps.pillow]);
|
||||
|
@ -20,7 +20,7 @@ mkDerivation rec {
|
|||
buildInputs = [
|
||||
qtbase cairo pixman boost cups fontconfig
|
||||
freetype hunspell libjpeg libtiff libxml2 lcms2 podofo poppler
|
||||
poppler_data pythonEnv harfbuzz qtimageformats qttools
|
||||
poppler_data pythonEnv harfbuzz qtimageformats qttools harfbuzzFull
|
||||
];
|
||||
|
||||
meta = {
|
||||
|
|
42
pkgs/applications/office/softmaker/desktop_items.nix
Normal file
42
pkgs/applications/office/softmaker/desktop_items.nix
Normal file
|
@ -0,0 +1,42 @@
|
|||
{ makeDesktopItem, pname, suiteName }:
|
||||
|
||||
{
|
||||
planmaker = makeDesktopItem {
|
||||
name = "${pname}-planmaker";
|
||||
desktopName = "${suiteName} PlanMaker";
|
||||
icon = "${pname}-pml.png";
|
||||
categories = "Application;Office;SpreadSheet;";
|
||||
exec = "${pname}-planmaker %F";
|
||||
mimeType = "application/x-pmd;application/x-pmdx;application/x-pmv;application/excel;application/x-excel;application/x-ms-excel;application/x-msexcel;application/x-sylk;application/x-xls;application/xls;application/vnd.ms-excel;application/vnd.stardivision.calc;application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;application/vnd.openxmlformats-officedocument.spreadsheetml.template;application/vnd.ms-excel.sheet.macroenabled.12;application/vnd.openxmlformats-officedocument.spreadsheetml.template;application/vnd.ms-excel.template.macroEnabled.12;application/x-dif;text/spreadsheet;text/csv;application/x-prn;application/vnd.ms-excel.sheet.binary.macroenabled.12;";
|
||||
extraEntries = ''
|
||||
TryExec=${pname}-planmaker
|
||||
StartupWMClass=pm
|
||||
'';
|
||||
};
|
||||
|
||||
presentations = makeDesktopItem {
|
||||
name = "${pname}-presentations";
|
||||
desktopName = "${suiteName} Presentations";
|
||||
icon = "${pname}-prl.png";
|
||||
categories = "Application;Office;Presentation;";
|
||||
exec = "${pname}-presentations %F";
|
||||
mimeType = "application/x-prdx;application/x-prvx;application/x-prsx;application/x-prd;application/x-prv;application/x-prs;application/ppt;application/mspowerpoint;application/vnd.ms-powerpoint;application/vnd.openxmlformats-officedocument.presentationml.presentation;application/vnd.ms-powerpoint.presentation.macroenabled.12;application/vnd.openxmlformats-officedocument.presentationml.template;application/vnd.ms-powerpoint.template.macroEnabled.12;application/vnd.ms-powerpoint.slideshow.macroenabled.12;application/vnd.openxmlformats-officedocument.presentationml.slideshow;";
|
||||
extraEntries = ''
|
||||
TryExec=${pname}-presentations
|
||||
StartupWMClass=pr
|
||||
'';
|
||||
};
|
||||
|
||||
textmaker = makeDesktopItem {
|
||||
name = "${pname}-textmaker";
|
||||
desktopName = "${suiteName} TextMaker";
|
||||
icon = "${pname}-tml.png";
|
||||
categories = "Application;Office;WordProcessor;";
|
||||
exec = "${pname}-textmaker %F";
|
||||
mimeType = "application/x-tmdx;application/x-tmvx;application/x-tmd;application/x-tmv;application/msword;application/vnd.ms-word;application/x-doc;text/rtf;application/rtf;application/vnd.oasis.opendocument.text;application/vnd.oasis.opendocument.text-template;application/vnd.stardivision.writer;application/vnd.sun.xml.writer;application/vnd.sun.xml.writer.template;application/vnd.openxmlformats-officedocument.wordprocessingml.document;application/vnd.ms-word.document.macroenabled.12;application/vnd.openxmlformats-officedocument.wordprocessingml.template;application/vnd.ms-word.template.macroenabled.12;application/x-pocket-word;application/x-dbf;application/msword-template;";
|
||||
extraEntries = ''
|
||||
TryExec=${pname}-textmaker
|
||||
StartupWMClass=tm
|
||||
'';
|
||||
};
|
||||
}
|
15
pkgs/applications/office/softmaker/freeoffice.nix
Normal file
15
pkgs/applications/office/softmaker/freeoffice.nix
Normal file
|
@ -0,0 +1,15 @@
|
|||
{ callPackage, fetchurl, ... } @ args:
|
||||
|
||||
callPackage ./generic.nix (args // rec {
|
||||
pname = "freeoffice";
|
||||
version = "970";
|
||||
edition = "2018";
|
||||
suiteName = "FreeOffice";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://www.softmaker.net/down/softmaker-freeoffice-${version}-amd64.tgz";
|
||||
sha256 = "1maibr4x8mksb32ixvyy2rjn4x9f51191p5fcdj5qwz32pf8h2dr";
|
||||
};
|
||||
|
||||
archive = "freeoffice${edition}.tar.lzma";
|
||||
})
|
95
pkgs/applications/office/softmaker/generic.nix
Normal file
95
pkgs/applications/office/softmaker/generic.nix
Normal file
|
@ -0,0 +1,95 @@
|
|||
{ stdenv, fetchurl, autoPatchelfHook, makeDesktopItem, makeWrapper
|
||||
|
||||
# Dynamic Libraries
|
||||
, curl, libGL, libX11, libXext, libXmu, libXrandr, libXrender
|
||||
|
||||
, pname, version, edition, suiteName, src, archive
|
||||
|
||||
, ...
|
||||
}:
|
||||
|
||||
let
|
||||
desktopItems = import ./desktop_items.nix {
|
||||
inherit makeDesktopItem pname suiteName;
|
||||
};
|
||||
shortEdition = builtins.substring 2 2 edition;
|
||||
in stdenv.mkDerivation rec {
|
||||
inherit pname version edition shortEdition src;
|
||||
nativeBuildInputs = [
|
||||
autoPatchelfHook
|
||||
makeWrapper
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
curl
|
||||
libGL
|
||||
libX11
|
||||
libXext
|
||||
libXmu
|
||||
libXrandr
|
||||
libXrender
|
||||
stdenv.cc.cc.lib
|
||||
];
|
||||
|
||||
dontBuild = true;
|
||||
dontConfigure = true;
|
||||
|
||||
unpackPhase = ''
|
||||
runHook preUnpack
|
||||
|
||||
mkdir installer
|
||||
tar -C installer -xf ${src}
|
||||
mkdir ${pname}
|
||||
tar -C ${pname} -xf installer/${archive}
|
||||
|
||||
runHook postUnpack
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/share
|
||||
cp -r ${pname} $out/share/${pname}${edition}
|
||||
|
||||
# Wrap rather than symlinking, so that the programs can determine
|
||||
# their resource path.
|
||||
mkdir -p $out/bin
|
||||
makeWrapper $out/share/${pname}${edition}/planmaker $out/bin/${pname}-planmaker
|
||||
makeWrapper $out/share/${pname}${edition}/presentations $out/bin/${pname}-presentations
|
||||
makeWrapper $out/share/${pname}${edition}/textmaker $out/bin/${pname}-textmaker
|
||||
|
||||
for size in 16 32 48 64 96 128 256 512 1024; do
|
||||
mkdir -p $out/share/icons/hicolor/''${size}x''${size}/apps
|
||||
|
||||
for app in pml prl tml; do
|
||||
ln -s $out/share/${pname}${edition}/icons/''${app}_''${size}.png \
|
||||
$out/share/icons/hicolor/''${size}x''${size}/apps/${pname}-''${app}.png
|
||||
done
|
||||
|
||||
mkdir -p $out/share/icons/hicolor/''${size}x''${size}/mimetypes
|
||||
|
||||
for mimetype in pmd prd tmd; do
|
||||
ln -s $out/share/${pname}${edition}/icons/''${mimetype}_''${size}.png \
|
||||
$out/share/icons/hicolor/''${size}x''${size}/mimetypes/application-x-''${mimetype}.png
|
||||
done
|
||||
done
|
||||
|
||||
# Add desktop items
|
||||
${desktopItems.planmaker.buildCommand}
|
||||
${desktopItems.presentations.buildCommand}
|
||||
${desktopItems.textmaker.buildCommand}
|
||||
|
||||
# Add mime types
|
||||
install -D -t $out/share/mime/packages ${pname}/mime/softmaker-*office*${shortEdition}.xml
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "An office suite with a word processor, spreadsheet and presentation program";
|
||||
homepage = "https://www.softmaker.com/";
|
||||
license = licenses.unfree;
|
||||
maintainers = with maintainers; [ danieldk ];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
};
|
||||
}
|
15
pkgs/applications/office/softmaker/softmaker_office.nix
Normal file
15
pkgs/applications/office/softmaker/softmaker_office.nix
Normal file
|
@ -0,0 +1,15 @@
|
|||
{ callPackage, fetchurl, ... } @ args:
|
||||
|
||||
callPackage ./generic.nix (args // rec {
|
||||
pname = "softmaker-office";
|
||||
version = "970";
|
||||
edition = "2018";
|
||||
suiteName = "SoftMaker Office";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://www.softmaker.net/down/softmaker-office-${edition}-${version}-amd64.tgz";
|
||||
sha256 = "14f94p1jms41s2iz5sa770rcyfp4mv01r6jjjis9amx37zrc8yid";
|
||||
};
|
||||
|
||||
archive = "office${edition}.tar.lzma";
|
||||
})
|
|
@ -5,11 +5,11 @@ let
|
|||
in
|
||||
buildPythonApplication rec {
|
||||
pname = "todoman";
|
||||
version = "3.5.0";
|
||||
version = "3.6.0";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "051qjdpwif06x7qspnb4pfwdhb8nnmz99yqcp4kla5hv0n3jh0w9";
|
||||
sha256 = "1c0jh9bi2xfjc7w4kka68mygl00zkp2qxhffnipmfvvykfjmlhk0";
|
||||
};
|
||||
|
||||
LOCALE_ARCHIVE = stdenv.lib.optionalString stdenv.isLinux
|
||||
|
@ -19,7 +19,7 @@ buildPythonApplication rec {
|
|||
|
||||
buildInputs = [ glibcLocales ];
|
||||
propagatedBuildInputs = with python3.pkgs;
|
||||
[ atomicwrites click click-log configobj humanize icalendar parsedatetime
|
||||
[ atomicwrites click click-log click-repl configobj humanize icalendar parsedatetime
|
||||
python-dateutil pyxdg tabulate urwid ];
|
||||
|
||||
checkInputs = with python3.pkgs;
|
||||
|
|
|
@ -1,9 +1,8 @@
|
|||
{ stdenv, fetchFromGitHub, fetchpatch, cmake, makeWrapper, itk, vtk }:
|
||||
{ stdenv, fetchFromGitHub, fetchpatch, cmake, makeWrapper, itk4, vtk }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
_name = "ANTs";
|
||||
_version = "2.2.0";
|
||||
name = "${_name}-${_version}";
|
||||
pname = "ANTs";
|
||||
version = "2.2.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ANTsX";
|
||||
|
@ -21,7 +20,7 @@ stdenv.mkDerivation rec {
|
|||
];
|
||||
|
||||
nativeBuildInputs = [ cmake makeWrapper ];
|
||||
buildInputs = [ itk vtk ];
|
||||
buildInputs = [ itk4 vtk ];
|
||||
|
||||
cmakeFlags = [ "-DANTS_SUPERBUILD=FALSE" "-DUSE_VTK=TRUE" ];
|
||||
|
||||
|
@ -34,7 +33,7 @@ stdenv.mkDerivation rec {
|
|||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://github.com/ANTxS/ANTs;
|
||||
homepage = https://github.com/ANTsX/ANTs;
|
||||
description = "Advanced normalization toolkit for medical image registration and other processing";
|
||||
maintainers = with maintainers; [ bcdarwin ];
|
||||
platforms = platforms.unix;
|
||||
|
|
|
@ -32,6 +32,6 @@ stdenv.mkDerivation rec {
|
|||
license = licenses.mit;
|
||||
homepage = http://www.htslib.org/;
|
||||
platforms = platforms.unix;
|
||||
maintainers = [ maintainers.mimadrid ];
|
||||
maintainers = [ maintainers.mimame ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -28,6 +28,6 @@ stdenv.mkDerivation rec {
|
|||
description = "A visualization tool for interactive exploration of genomic datasets";
|
||||
license = licenses.lgpl21;
|
||||
platforms = platforms.unix;
|
||||
maintainers = [ maintainers.mimadrid ];
|
||||
maintainers = [ maintainers.mimame ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -29,6 +29,6 @@ stdenv.mkDerivation rec {
|
|||
license = licenses.mit;
|
||||
homepage = http://www.htslib.org/;
|
||||
platforms = platforms.unix;
|
||||
maintainers = [ maintainers.mimadrid ];
|
||||
maintainers = [ maintainers.mimame ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -28,7 +28,7 @@ let
|
|||
"8.8.2" = "1lip3xja924dm6qblisk1bk0x8ai24s5xxqxphbdxj6djglj68fd";
|
||||
"8.9.0" = "1dkgdjc4n1m15m1p724hhi5cyxpqbjw6rxc5na6fl3v4qjjfnizh";
|
||||
"8.9.1" = "1xrq6mkhpq994bncmnijf8jwmwn961kkpl4mwwlv7j3dgnysrcv2";
|
||||
"8.10+beta2" = "0jk7pwydhd17ab7ii69zvi4sgrr630q2lsxhckaj3sz55cpjlhal";
|
||||
"8.10+beta3" = "08c7q97jyblsf7dhk8jf1fx1cp9qr3dr5s42wigx10wh7i6j7pca";
|
||||
}.${version};
|
||||
coq-version = stdenv.lib.versions.majorMinor version;
|
||||
versionAtLeast = stdenv.lib.versionAtLeast coq-version;
|
||||
|
|
|
@ -104,9 +104,7 @@ stdenv.mkDerivation rec {
|
|||
description = "A free computer algebra system (CAS)";
|
||||
homepage = "https://www-fourier.ujf-grenoble.fr/~parisse/giac.html";
|
||||
license = licenses.gpl3Plus;
|
||||
## xcas is buildable on darwin but there are specific instructions I could
|
||||
## not test
|
||||
platforms = platforms.linux;
|
||||
platforms = platforms.unix;
|
||||
maintainers = [ maintainers.symphorien ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -35,6 +35,6 @@ stdenv.mkDerivation rec {
|
|||
homepage = http://math.rutgers.edu/~asbuch/lrcalc/;
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = with maintainers; [ timokau ];
|
||||
platforms = platforms.linux;
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
|
|||
description = ''Programs for computing automorphism groups of graphs and digraphs'';
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ raskin timokau ];
|
||||
platforms = platforms.linux;
|
||||
platforms = platforms.unix;
|
||||
homepage = http://pallini.di.uniroma1.it/;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -43,6 +43,6 @@ stdenv.mkDerivation rec {
|
|||
homepage = http://pynac.org;
|
||||
license = licenses.gpl3;
|
||||
maintainers = with maintainers; [ timokau ];
|
||||
platforms = platforms.linux;
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -110,7 +110,7 @@ stdenv.mkDerivation rec {
|
|||
description = "A CAS for polynomial computations";
|
||||
maintainers = with maintainers; [ raskin timokau ];
|
||||
# 32 bit x86 fails with some link error: `undefined reference to `__divmoddi4@GCC_7.0.0'`
|
||||
platforms = subtractLists platforms.i686 platforms.linux;
|
||||
platforms = subtractLists platforms.i686 platforms.unix;
|
||||
license = licenses.gpl3; # Or GPLv2 at your option - but not GPLv4
|
||||
homepage = http://www.singular.uni-kl.de;
|
||||
downloadPage = "http://www.mathematik.uni-kl.de/ftp/pub/Math/Singular/SOURCES/";
|
||||
|
|
|
@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
|
|||
homepage = http://www.cs.waikato.ac.nz/ml/weka/;
|
||||
description = "Collection of machine learning algorithms for data mining tasks";
|
||||
license = stdenv.lib.licenses.gpl2Plus;
|
||||
maintainers = [ stdenv.lib.maintainers.mimadrid ];
|
||||
maintainers = [ stdenv.lib.maintainers.mimame ];
|
||||
platforms = stdenv.lib.platforms.unix;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "cytoscape";
|
||||
version = "3.7.1";
|
||||
version = "3.7.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/cytoscape/cytoscape/releases/download/${version}/${pname}-${version}.tar.gz";
|
||||
sha256 = "1mhsngbwbgdwl70wj7850zg94534lasihwv2ryifardm35mkh48k";
|
||||
sha256 = "125vgr8vqbmy2nsm1yl0h0q8p49lxxqfw5cmxzbx1caklcn4rryc";
|
||||
};
|
||||
|
||||
buildInputs = [jre makeWrapper];
|
||||
|
@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
|
|||
homepage = http://www.cytoscape.org;
|
||||
description = "A general platform for complex network analysis and visualization";
|
||||
license = stdenv.lib.licenses.lgpl21;
|
||||
maintainers = [stdenv.lib.maintainers.mimadrid];
|
||||
maintainers = [stdenv.lib.maintainers.mimame];
|
||||
platforms = stdenv.lib.platforms.unix;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -13,11 +13,11 @@ let
|
|||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "gitkraken";
|
||||
version = "6.1.4";
|
||||
version = "6.2.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://release.axocdn.com/linux/GitKraken-v${version}.deb";
|
||||
sha256 = "10m6pwdwdxj6x64bc7mrvlvwkgqrd5prh9xx7xhvbz55q6gx4vdr";
|
||||
sha256 = "1kvp0fbixpynb0wh8px1qm6gnxwc5ml2q0vwsll0pa8zrjdz4q3k";
|
||||
};
|
||||
|
||||
libPath = makeLibraryPath [
|
||||
|
|
|
@ -60,6 +60,6 @@ python3.pkgs.buildPythonApplication rec {
|
|||
homepage = http://meldmerge.org/;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux ++ platforms.darwin;
|
||||
maintainers = with maintainers; [ jtojnar mimadrid ];
|
||||
maintainers = with maintainers; [ jtojnar mimame ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -2,10 +2,14 @@
|
|||
#
|
||||
# Derivation patches HandBrake to use Nix closure dependencies.
|
||||
#
|
||||
# NOTE: 2019-07-19: This derivation does not currently support the native macOS
|
||||
# GUI--it produces the "HandbrakeCLI" CLI version only. In the future it would
|
||||
# be nice to add the native GUI (and/or the GTK GUI) as an option too, but that
|
||||
# requires invoking the Xcode build system, which is non-trivial for now.
|
||||
|
||||
{ stdenv, lib, fetchurl,
|
||||
# Main build tools
|
||||
python2, pkgconfig, autoconf, automake, cmake, nasm, libtool, m4,
|
||||
python2, pkgconfig, autoconf, automake, cmake, nasm, libtool, m4, lzma,
|
||||
# Processing, video codecs, containers
|
||||
ffmpeg-full, nv-codec-headers, libogg, x264, x265, libvpx, libtheora,
|
||||
# Codecs, audio
|
||||
|
@ -14,20 +18,34 @@
|
|||
libiconv, fribidi, fontconfig, freetype, libass, jansson, libxml2, harfbuzz,
|
||||
# Optical media
|
||||
libdvdread, libdvdnav, libdvdcss, libbluray,
|
||||
useGtk ? true, wrapGAppsHook ? null,
|
||||
intltool ? null,
|
||||
glib ? null,
|
||||
gtk3 ? null,
|
||||
libappindicator-gtk3 ? null,
|
||||
libnotify ? null,
|
||||
gst_all_1 ? null,
|
||||
dbus-glib ? null,
|
||||
udev ? null,
|
||||
libgudev ? null,
|
||||
hicolor-icon-theme ? null,
|
||||
# Darwin-specific
|
||||
AudioToolbox ? null,
|
||||
Foundation ? null,
|
||||
libobjc ? null,
|
||||
VideoToolbox ? null,
|
||||
# GTK
|
||||
# NOTE: 2019-07-19: The gtk3 package has a transitive dependency on dbus,
|
||||
# which in turn depends on systemd. systemd is not supported on Darwin, so
|
||||
# for now we disable GTK GUI support on Darwin. (It may be possible to remove
|
||||
# this restriction later.)
|
||||
useGtk ? !stdenv.isDarwin, wrapGAppsHook ? null,
|
||||
intltool ? null,
|
||||
glib ? null,
|
||||
gtk3 ? null,
|
||||
libappindicator-gtk3 ? null,
|
||||
libnotify ? null,
|
||||
gst_all_1 ? null,
|
||||
dbus-glib ? null,
|
||||
udev ? null,
|
||||
libgudev ? null,
|
||||
hicolor-icon-theme ? null,
|
||||
# FDK
|
||||
useFdk ? false, fdk_aac ? null
|
||||
}:
|
||||
|
||||
assert stdenv.isDarwin -> AudioToolbox != null && Foundation != null
|
||||
&& libobjc != null && VideoToolbox != null;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "handbrake";
|
||||
version = "1.2.2";
|
||||
|
@ -45,12 +63,13 @@ stdenv.mkDerivation rec {
|
|||
ffmpeg-full libogg libtheora x264 x265 libvpx
|
||||
libopus lame libvorbis a52dec speex libsamplerate
|
||||
libiconv fribidi fontconfig freetype libass jansson libxml2 harfbuzz
|
||||
libdvdread libdvdnav libdvdcss libbluray
|
||||
libdvdread libdvdnav libdvdcss libbluray lzma
|
||||
] ++ lib.optionals useGtk [
|
||||
glib gtk3 libappindicator-gtk3 libnotify
|
||||
gst_all_1.gstreamer gst_all_1.gst-plugins-base dbus-glib udev
|
||||
libgudev hicolor-icon-theme
|
||||
] ++ lib.optional useFdk fdk_aac
|
||||
++ lib.optionals stdenv.isDarwin [ AudioToolbox Foundation libobjc VideoToolbox ]
|
||||
# NOTE: 2018-12-27: Handbrake supports nv-codec-headers for Linux only,
|
||||
# look at ./make/configure.py search "enable_nvenc"
|
||||
++ lib.optional stdenv.isLinux nv-codec-headers;
|
||||
|
@ -59,13 +78,16 @@ stdenv.mkDerivation rec {
|
|||
# (default distribution bundles&builds 3rd party libs),
|
||||
# don't trigger cmake build
|
||||
dontUseCmakeConfigure = true;
|
||||
enableParallelBuilding = true;
|
||||
# cp: cannot create regular file './internal_defaults.json': File exists
|
||||
enableParallelBuilding = false;
|
||||
|
||||
preConfigure = ''
|
||||
patchShebangs scripts
|
||||
|
||||
substituteInPlace libhb/module.defs \
|
||||
--replace /usr/include/libxml2 ${libxml2.dev}/include/libxml2
|
||||
substituteInPlace libhb/module.defs \
|
||||
--replace '$(CONTRIB.build/)include/libxml2' ${libxml2.dev}/include/libxml2
|
||||
|
||||
# Force using nixpkgs dependencies
|
||||
sed -i '/MODULES += contrib/d' make/include/main.defs
|
||||
|
@ -75,8 +97,9 @@ stdenv.mkDerivation rec {
|
|||
configureFlags = [
|
||||
"--disable-df-fetch"
|
||||
"--disable-df-verify"
|
||||
(if useGtk then "--disable-gtk-update-checks" else "--disable-gtk")
|
||||
(if useFdk then "--enable-fdk-aac" else "")
|
||||
(if useGtk then "--disable-gtk-update-checks" else "--disable-gtk")
|
||||
(if useFdk then "--enable-fdk-aac" else "")
|
||||
(if stdenv.isDarwin then "--disable-xcode" else "")
|
||||
];
|
||||
|
||||
# NOTE: 2018-12-27: Check NixOS HandBrake test if changing
|
||||
|
|
|
@ -7,13 +7,13 @@ assert stdenv.lib.versionAtLeast mlt.version "6.8.0";
|
|||
|
||||
mkDerivation rec {
|
||||
pname = "shotcut";
|
||||
version = "19.08.16";
|
||||
version = "19.09.14";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "mltframework";
|
||||
repo = "shotcut";
|
||||
rev = "v${version}";
|
||||
sha256 = "0alnnfgimfs8fjddkcfx4pzyijwz5dgnqic5qazaza6f4kf60801";
|
||||
sha256 = "1cl8ba1n0h450r4n5mfqmyjaxvczs3m19blwxslqskvmxy5my3cn";
|
||||
};
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
@ -36,7 +36,7 @@ mkDerivation rec {
|
|||
|
||||
qtWrapperArgs = [
|
||||
"--prefix FREI0R_PATH : ${frei0r}/lib/frei0r-1"
|
||||
"--prefix LD_LIBRARY_PATH : ${stdenv.lib.makeLibraryPath [jack1 SDL2 ]}"
|
||||
"--prefix LD_LIBRARY_PATH : ${stdenv.lib.makeLibraryPath [jack1 SDL2]}"
|
||||
"--prefix PATH : ${mlt}/bin"
|
||||
];
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
|
||||
buildGoPackage rec {
|
||||
project = "cri-o";
|
||||
version = "1.15.1";
|
||||
version = "1.15.2";
|
||||
name = "${project}-${version}${flavor}";
|
||||
|
||||
goPackagePath = "github.com/${project}/${project}";
|
||||
|
@ -26,7 +26,7 @@ buildGoPackage rec {
|
|||
owner = "cri-o";
|
||||
repo = "cri-o";
|
||||
rev = "v${version}";
|
||||
sha256 = "0yjj03qwwb6g05pzavimgj14p6805m3w8qqpl4fp4fpmbrsx4sb0";
|
||||
sha256 = "0fiizxwxdq87h943421ivgw49jndk23yjz3saf1rzmn7g3xh2pn4";
|
||||
};
|
||||
|
||||
outputs = [ "bin" "out" ];
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue