uboot: (firmwareOdroidC2/C4) don't invoke patch tool, use patches = [] instead

https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh#L948
this can do it nicely.

Signed-off-by: Anton Arapov <anton@deadbeef.mx>
This commit is contained in:
Anton Arapov 2021-04-03 12:58:10 +02:00 committed by Alan Daniels
commit 56de2bcd43
30691 changed files with 3076956 additions and 0 deletions

View file

@ -0,0 +1,73 @@
{ lib
, buildGoModule
, fetchFromSourcehut
, ncurses
, notmuch
, scdoc
, python3
, w3m
, dante
}:
buildGoModule rec {
pname = "aerc";
version = "0.10.0";
src = fetchFromSourcehut {
owner = "~rjarry";
repo = pname;
rev = version;
sha256 = "sha256-v1+12UCgBbH/2PxZ9QdDN30LmyzVcfGlYiVNVPYO3zs=";
};
proxyVendor = true;
vendorSha256 = "sha256-fGQ15i3mWNmmfypRt5A7SAVYSEg9m4so4FYlUY+7mW8=";
doCheck = false;
nativeBuildInputs = [
scdoc
python3.pkgs.wrapPython
];
patches = [
./runtime-sharedir.patch
];
postPatch = ''
substituteAllInPlace config/aerc.conf
substituteAllInPlace config/config.go
substituteAllInPlace doc/aerc-config.5.scd
'';
makeFlags = [ "PREFIX=${placeholder "out"}" ];
pythonPath = [
python3.pkgs.colorama
];
buildInputs = [ python3 notmuch ];
installPhase = ''
runHook preInstall
make $makeFlags GOFLAGS="$GOFLAGS -tags=notmuch" install
runHook postInstall
'';
postFixup = ''
wrapProgram $out/bin/aerc --prefix PATH ":" \
"$out/share/aerc/filters:${lib.makeBinPath [ ncurses ]}"
wrapProgram $out/share/aerc/filters/html --prefix PATH ":" \
${lib.makeBinPath [ w3m dante ]}
'';
meta = with lib; {
description = "An email client for your terminal";
homepage = "https://aerc-mail.org/";
maintainers = with maintainers; [ tadeokondrak ];
license = licenses.mit;
platforms = platforms.unix;
};
}

View file

@ -0,0 +1,90 @@
diff --git a/config/aerc.conf b/config/aerc.conf
index fbbf587..ede1a03 100644
--- a/config/aerc.conf
+++ b/config/aerc.conf
@@ -107,8 +107,7 @@ next-message-on-delete=true
#
# ${XDG_CONFIG_HOME:-~/.config}/aerc/stylesets
# ${XDG_DATA_HOME:-~/.local/share}/aerc/stylesets
-# /usr/local/share/aerc/stylesets
-# /usr/share/aerc/stylesets
+# @out@/share/aerc/stylesets
#
# default: ""
stylesets-dirs=
@@ -254,8 +253,7 @@ new-email=
#
# ${XDG_CONFIG_HOME:-~/.config}/aerc/templates
# ${XDG_DATA_HOME:-~/.local/share}/aerc/templates
-# /usr/local/share/aerc/templates
-# /usr/share/aerc/templates
+# @out@/share/aerc/templates
#
# default: ""
template-dirs=
diff --git a/config/config.go b/config/config.go
index 2120310..92b7655 100644
--- a/config/config.go
+++ b/config/config.go
@@ -331,8 +331,8 @@ func buildDefaultDirs() []string {
}
// Add fixed fallback locations
- defaultDirs = append(defaultDirs, "/usr/local/share/aerc")
- defaultDirs = append(defaultDirs, "/usr/share/aerc")
+ defaultDirs = append(defaultDirs, "@out@/local/share/aerc")
+ defaultDirs = append(defaultDirs, "@out@/share/aerc")
return defaultDirs
}
diff --git a/doc/aerc-config.5.scd b/doc/aerc-config.5.scd
index 885c4f8..77a853e 100644
--- a/doc/aerc-config.5.scd
+++ b/doc/aerc-config.5.scd
@@ -12,7 +12,7 @@ account credentials. We look for these files in your XDG config home plus
"aerc", which defaults to ~/.config/aerc.
Examples of these config files are typically included with your installation of
-aerc and are usually installed in /usr/share/aerc.
+aerc and are usually installed in @out@/share/aerc.
Each file uses the _ini_ format, and consists of sections with keys and values.
A line beginning with # is considered a comment and ignored, as are empty lines.
@@ -221,8 +221,7 @@ These options are configured in the *[ui]* section of aerc.conf.
```
${XDG_CONFIG_HOME:-~/.config}/aerc/stylesets
${XDG_DATA_HOME:-~/.local/share}/aerc/stylesets
- /usr/local/share/aerc/stylesets
- /usr/share/aerc/stylesets
+ @out@/share/aerc/stylesets
```
Default: ""
@@ -381,7 +380,7 @@ against (non-case-sensitive) and a comma, e.g. subject,text will match a
subject which contains "text". Use header,~regex to match against a regex.
aerc ships with some default filters installed in the share directory (usually
-_/usr/share/aerc/filters_). Note that these may have additional dependencies
+_@out@/share/aerc/filters_). Note that these may have additional dependencies
that aerc does not have alone.
## TRIGGERS
@@ -407,7 +406,7 @@ and forward commands can be called with the -T flag with the name of the
template name.
aerc ships with some default templates installed in the share directory (usually
-_/usr/share/aerc/templates_).
+_@out@/share/aerc/templates_).
These options are configured in the *[templates]* section of aerc.conf.
@@ -419,8 +418,7 @@ These options are configured in the *[templates]* section of aerc.conf.
```
${XDG_CONFIG_HOME:-~/.config}/aerc/templates
${XDG_DATA_HOME:-~/.local/share}/aerc/templates
- /usr/local/share/aerc/templates
- /usr/share/aerc/templates
+ @out@/share/aerc/templates
```
Default: ""

View file

@ -0,0 +1,45 @@
{ lib, python3Packages, notmuch }:
python3Packages.buildPythonApplication rec {
pname = "afew";
version = "3.0.1";
src = python3Packages.fetchPypi {
inherit pname version;
sha256 = "0wpfqbqjlfb9z0hafvdhkm7qw56cr9kfy6n8vb0q42dwlghpz1ff";
};
nativeBuildInputs = with python3Packages; [ sphinx setuptools-scm ];
propagatedBuildInputs = with python3Packages; [
python3Packages.setuptools python3Packages.notmuch chardet dkimpy
];
checkInputs = with python3Packages; [
freezegun notmuch
];
makeWrapperArgs = [
''--prefix PATH ':' "${notmuch}/bin"''
];
outputs = [ "out" "doc" ];
postBuild = ''
${python3Packages.python.interpreter} setup.py build_sphinx -b html,man
'';
postInstall = ''
install -D -v -t $out/share/man/man1 build/sphinx/man/*
mkdir -p $out/share/doc/afew
cp -R build/sphinx/html/* $out/share/doc/afew
'';
meta = with lib; {
homepage = "https://github.com/afewmail/afew";
description = "An initial tagging script for notmuch mail";
license = licenses.isc;
maintainers = with maintainers; [ flokli ];
};
}

View file

@ -0,0 +1,97 @@
{ lib
, python3
, fetchFromGitHub
, file
, gnupg
, gawk
, notmuch
, procps
, withManpage ? false
}:
with python3.pkgs; buildPythonApplication rec {
pname = "alot";
version = "0.10";
outputs = [
"out"
] ++ lib.optional withManpage [
"man"
];
disabled = !isPy3k;
src = fetchFromGitHub {
owner = "pazz";
repo = "alot";
rev = version;
sha256 = "sha256-1reAq8X9VwaaZDY5UfvcFzHDKd71J88CqJgH3+ANjis=";
};
postPatch = ''
substituteInPlace alot/settings/manager.py \
--replace /usr/share "$out/share"
'';
nativeBuildInputs = lib.optional withManpage sphinx;
propagatedBuildInputs = [
configobj
file
gpgme
notmuch2
python-magic
service-identity
twisted
urwid
urwidtrees
];
checkInputs = [
future
gawk
gnupg
mock
procps
pytestCheckHook
];
postBuild = lib.optionalString withManpage [
"make -C docs man"
];
disabledTests = [
# Some twisted tests need internet access
"test_env_set"
"test_no_spawn_no_stdin_attached"
# DatabaseLockedError
"test_save_named_query"
];
postInstall =
let
completionPython = python.withPackages (ps: [ ps.configobj ]);
in
lib.optionalString withManpage ''
mkdir -p $out/man
cp -r docs/build/man $out/man
''
+ ''
mkdir -p $out/share/{applications,alot}
cp -r extra/themes $out/share/alot
substituteInPlace extra/completion/alot-completion.zsh \
--replace "python3" "${completionPython.interpreter}"
install -D extra/completion/alot-completion.zsh $out/share/zsh/site-functions/_alot
sed "s,/usr/bin,$out/bin,g" extra/alot.desktop > $out/share/applications/alot.desktop
'';
meta = with lib; {
homepage = "https://github.com/pazz/alot";
description = "Terminal MUA using notmuch mail";
license = licenses.gpl3Plus;
platforms = platforms.linux;
maintainers = with maintainers; [ milibopp ];
};
}

View file

@ -0,0 +1,33 @@
{lib, stdenv, fetchurl, ncurses, tcl, openssl, pam, libkrb5
, openldap
}:
stdenv.mkDerivation rec {
pname = "alpine";
version = "2.25";
src = fetchurl {
url = "http://alpine.x10host.com/alpine/release/src/${pname}-${version}.tar.xz";
sha256 = "0xppxhcbafq9qa1rns5zl0n238gai08xhvcf2as0nx7nh84ib2k5";
};
buildInputs = [
ncurses tcl openssl pam libkrb5 openldap
];
hardeningDisable = [ "format" ];
configureFlags = [
"--with-ssl-include-dir=${openssl.dev}/include/openssl"
"--with-passfile=.pine-passfile"
"--with-c-client-target=slx"
];
meta = with lib; {
description = "Console mail reader";
license = licenses.asl20;
maintainers = with maintainers; [ raskin ];
platforms = platforms.linux;
homepage = "http://alpine.x10host.com/";
};
}

View file

@ -0,0 +1,56 @@
{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, gnome, gmime3, webkitgtk, ronn
, libsass, notmuch, boost, wrapGAppsHook, glib-networking, protobuf
, gtkmm3, libpeas, gsettings-desktop-schemas, gobject-introspection, python3
# vim to be used, should support the GUI mode.
, vim
# additional python3 packages to be available within plugins
, extraPythonPackages ? []
}:
stdenv.mkDerivation rec {
pname = "astroid";
version = "0.16";
src = fetchFromGitHub {
owner = "astroidmail";
repo = "astroid";
rev = "v${version}";
sha256 = "sha256-6xQniOLNUk8tDkooDN3Tp6sb43GqoynO6+fN9yhNqZ4=";
};
nativeBuildInputs = [
cmake ronn pkg-config wrapGAppsHook gobject-introspection
python3 python3.pkgs.wrapPython
];
buildInputs = [
gtkmm3 gmime3 webkitgtk libsass libpeas
python3
notmuch boost gsettings-desktop-schemas gnome.adwaita-icon-theme
glib-networking protobuf
vim
];
postPatch = ''
sed -i "s~gvim ~${vim}/bin/vim -g ~g" src/config.cc
sed -i "s~ -geom 10x10~~g" src/config.cc
'';
pythonPath = with python3.pkgs; requiredPythonModules [ pygobject3 ] ++ extraPythonPackages;
preFixup = ''
buildPythonPath "$out $pythonPath"
gappsWrapperArgs+=(
--prefix PYTHONPATH : "$program_PYTHONPATH"
)
'';
meta = with lib; {
homepage = "https://astroidmail.github.io/";
description = "GTK frontend to the notmuch mail system";
maintainers = with maintainers; [ bdimcheff SuprDewd ];
license = licenses.gpl3Plus;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,77 @@
{ lib, stdenv
, fetchurl
, glib
, gmime3
, gnutls
, gobject-introspection
, gpgme
, gtk3
, gtksourceview
, gtkspell3
, intltool
, libcanberra-gtk3
, libesmtp
, libical
, libnotify
, libsecret
, openssl
, pkg-config
, webkitgtk
, wrapGAppsHook
}:
stdenv.mkDerivation rec {
pname = "balsa";
version = "2.6.1";
src = fetchurl {
url = "https://pawsa.fedorapeople.org/balsa/${pname}-${version}.tar.bz2";
sha256 = "1xkxx801p7sbfkn0bh3cz85wra4xf1z1zhjqqc80z1z1nln7fhb4";
};
nativeBuildInputs = [
pkg-config
intltool
gobject-introspection
wrapGAppsHook
];
buildInputs = [
glib
gmime3
gnutls
gpgme
gtk3
gtksourceview
gtkspell3
libcanberra-gtk3
libesmtp
libical
libnotify
libsecret
openssl
webkitgtk
];
configureFlags = [
"--with-canberra"
"--with-gtksourceview"
"--with-libsecret"
"--with-ssl"
"--with-unique"
"--without-gnome"
"--with-spell-checker=gtkspell"
];
NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0";
enableParallelBuilding = true;
meta = with lib; {
homepage = "http://pawsa.fedorapeople.org/balsa/";
description = "An e-mail client for GNOME";
license = licenses.gpl2Plus;
platforms = platforms.unix;
maintainers = [ maintainers.romildo ];
};
}

View file

@ -0,0 +1,76 @@
{ lib
, fetchFromGitLab
, gettext
, gtk3
, python3Packages
, gdk-pixbuf
, libnotify
, gst_all_1
, libsecret
, wrapGAppsHook
, gsettings-desktop-schemas
, gnome-online-accounts
, glib
, gobject-introspection
, folks
}:
python3Packages.buildPythonApplication rec {
pname = "bubblemail";
version = "1.4";
src = fetchFromGitLab {
domain = "framagit.org";
owner = "razer";
repo = "bubblemail";
rev = "v${version}";
sha256 = "sha256-MPl4pXvdhwCFWTepn/Mxp8ZMs+HCzXC59qdKZp3mHdw=";
};
buildInputs = [
gtk3
gdk-pixbuf
glib
libnotify
gst_all_1.gstreamer
gst_all_1.gst-plugins-base
gst_all_1.gst-plugins-good
gst_all_1.gst-plugins-bad
libsecret
gnome-online-accounts
folks
];
nativeBuildInputs = [
gettext
wrapGAppsHook
python3Packages.pillow
# For setup-hook
gobject-introspection
];
propagatedBuildInputs = with python3Packages; [
gsettings-desktop-schemas
pygobject3
dbus-python
pyxdg
];
# See https://nixos.org/nixpkgs/manual/#ssec-gnome-common-issues-double-wrapped
dontWrapGApps = true;
# https://github.com/NixOS/nixpkgs/issues/56943
strictDeps = false;
preFixup = ''
makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
'';
meta = with lib; {
description = "An extensible mail notification service.";
homepage = "http://bubblemail.free.fr/";
license = licenses.gpl2Plus;
platforms = platforms.linux;
maintainers = with maintainers; [ doronbehar ];
};
}

View file

@ -0,0 +1,164 @@
{ stdenv, lib, fetchgit, wrapGAppsHook, autoreconfHook, bison, flex
, curl, gtk3, pkg-config, python3, shared-mime-info
, glib-networking, gsettings-desktop-schemas
# Package compatibility: old parameters whose name were not directly derived
, enablePgp ? true
, enablePluginNotificationDialogs ? true
, enablePluginNotificationSounds ? true
, enablePluginPdf ? true
, enablePluginRavatar ? true
, enableSpellcheck ? true
# Arguments to include external libraries
, enableLibSM ? true, libSM
, enableGnuTLS ? true, gnutls
, enableEnchant ? enableSpellcheck, enchant
, enableDbus ? true, dbus, dbus-glib
, enableLdap ? true, openldap
, enableNetworkManager ? true, networkmanager
, enableLibetpan ? true, libetpan
, enableValgrind ? !stdenv.isDarwin && lib.meta.availableOn stdenv.hostPlatform valgrind, valgrind
, enableSvg ? true, librsvg
# Configure claws-mail's plugins
, enablePluginAcpiNotifier ? true
, enablePluginAddressKeeper ? true
, enablePluginArchive ? true, libarchive
, enablePluginAttRemover ? true
, enablePluginAttachWarner ? true
, enablePluginBogofilter ? true
, enablePluginBsfilter ? true
, enablePluginClamd ? true
, enablePluginDillo ? true
, enablePluginFancy ? true, libsoup, webkitgtk
, enablePluginFetchInfo ? true
, enablePluginKeywordWarner ? true
, enablePluginLibravatar ? enablePluginRavatar
, enablePluginLitehtmlViewer ? true, gumbo
, enablePluginMailmbox ? true
, enablePluginManageSieve ? true
, enablePluginNewMail ? true
, enablePluginNotification ? (enablePluginNotificationDialogs || enablePluginNotificationSounds), libcanberra-gtk3, libnotify
, enablePluginPdfViewer ? enablePluginPdf, poppler
, enablePluginPerl ? true, perl
, enablePluginPython ? true
, enablePluginPgp ? enablePgp, gnupg, gpgme
, enablePluginRssyl ? true, libxml2
, enablePluginSmime ? true
, enablePluginSpamassassin ? true
, enablePluginSpamReport ? true
, enablePluginTnefParse ? true, libytnef
, enablePluginVcalendar ? true, libical
}:
with lib;
let
pythonPkgs = with python3.pkgs; [ python3 wrapPython pygobject3 ];
features = [
{ flags = [ "acpi_notifier-plugin" ]; enabled = enablePluginAcpiNotifier; }
{ flags = [ "address_keeper-plugin" ]; enabled = enablePluginAddressKeeper; }
{ flags = [ "archive-plugin" ]; enabled = enablePluginArchive; deps = [ libarchive ]; }
{ flags = [ "att_remover-plugin" ]; enabled = enablePluginAttRemover; }
{ flags = [ "attachwarner-plugin" ]; enabled = enablePluginAttachWarner; }
{ flags = [ "bogofilter-plugin" ]; enabled = enablePluginBogofilter; }
{ flags = [ "bsfilter-plugin" ]; enabled = enablePluginBsfilter; }
{ flags = [ "clamd-plugin" ]; enabled = enablePluginClamd; }
{ flags = [ "dbus" ]; enabled = enableDbus; deps = [ dbus dbus-glib ]; }
{ flags = [ "dillo-plugin" ]; enabled = enablePluginDillo; }
{ flags = [ "enchant" ]; enabled = enableEnchant; deps = [ enchant ]; }
{ flags = [ "fancy-plugin" ]; enabled = enablePluginFancy; deps = [ libsoup webkitgtk ]; }
{ flags = [ "fetchinfo-plugin" ]; enabled = enablePluginFetchInfo; }
{ flags = [ "keyword_warner-plugin" ]; enabled = enablePluginKeywordWarner; }
{ flags = [ "gnutls" ]; enabled = enableGnuTLS; deps = [ gnutls ]; }
{ flags = [ "ldap" ]; enabled = enableLdap; deps = [ openldap ]; }
{ flags = [ "libetpan" ]; enabled = enableLibetpan; deps = [ libetpan ]; }
{ flags = [ "libravatar-plugin" ]; enabled = enablePluginLibravatar; }
{ flags = [ "libsm" ]; enabled = enableLibSM; deps = [ libSM ]; }
{ flags = [ "litehtml_viewer-plugin" ]; enabled = enablePluginLitehtmlViewer; deps = [ gumbo ]; }
{ flags = [ "mailmbox-plugin" ]; enabled = enablePluginMailmbox; }
{ flags = [ "managesieve-plugin" ]; enabled = enablePluginManageSieve; }
{ flags = [ "networkmanager" ]; enabled = enableNetworkManager; deps = [ networkmanager ]; }
{ flags = [ "newmail-plugin" ]; enabled = enablePluginNewMail; }
{ flags = [ "notification-plugin" ]; enabled = enablePluginNotification; deps = [ libnotify ] ++ [libcanberra-gtk3]; }
{ flags = [ "pdf_viewer-plugin" ]; enabled = enablePluginPdfViewer; deps = [ poppler ]; }
{ flags = [ "perl-plugin" ]; enabled = enablePluginPerl; deps = [ perl ]; }
{ flags = [ "pgpcore-plugin" "pgpinline-plugin" "pgpmime-plugin" ]; enabled = enablePluginPgp; deps = [ gnupg gpgme ]; }
{ flags = [ "python-plugin" ]; enabled = enablePluginPython; }
{ flags = [ "rssyl-plugin" ]; enabled = enablePluginRssyl; deps = [ libxml2 ]; }
{ flags = [ "smime-plugin" ]; enabled = enablePluginSmime; }
{ flags = [ "spam_report-plugin" ]; enabled = enablePluginSpamReport; }
{ flags = [ "spamassassin-plugin" ]; enabled = enablePluginSpamassassin; }
{ flags = [ "svg" ]; enabled = enableSvg; deps = [ librsvg ]; }
{ flags = [ "tnef_parse-plugin" ]; enabled = enablePluginTnefParse; deps = [ libytnef ]; }
{ flags = [ "valgrind" ]; enabled = enableValgrind; deps = [ valgrind ]; }
{ flags = [ "vcalendar-plugin" ]; enabled = enablePluginVcalendar; deps = [ libical ]; }
];
in stdenv.mkDerivation rec {
pname = "claws-mail";
version = "4.1.0";
src = fetchgit {
rev = version;
url = "git://git.claws-mail.org/claws.git";
sha256 = "1pgl7z87qs3ksh1pazq9cml3h0vb7kr9b97gkkrzgsgfg1vbx390";
};
outputs = [ "out" "dev" ];
patches = [
./mime.patch
];
preConfigure = ''
# autotools check tries to dlopen libpython as a requirement for the python plugin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}${python3}/lib
# generate version without .git
[ -e version ] || echo "echo ${version}" > version
'';
postPatch = ''
substituteInPlace src/procmime.c \
--subst-var-by MIMEROOTDIR ${shared-mime-info}/share
'';
nativeBuildInputs = [ autoreconfHook pkg-config bison flex wrapGAppsHook ];
propagatedBuildInputs = pythonPkgs;
buildInputs =
[ curl gsettings-desktop-schemas glib-networking gtk3 ]
++ concatMap (f: optionals f.enabled f.deps) (filter (f: f ? deps) features)
;
configureFlags =
[
"--disable-manual" # Missing docbook-tools, e.g., docbook2html
"--disable-compface" # Missing compface library
"--disable-jpilot" # Missing jpilot library
"--disable-gdata-plugin" # Complains about missing libgdata, even when provided
] ++
(map (feature: map (flag: strings.enableFeature feature.enabled flag) feature.flags) features);
enableParallelBuilding = true;
preFixup = ''
buildPythonPath "$out $pythonPkgs"
gappsWrapperArgs+=(--prefix XDG_DATA_DIRS : "${shared-mime-info}/share" --prefix PYTHONPATH : "$program_PYTHONPATH")
'';
postInstall = ''
mkdir -p $out/share/applications
cp claws-mail.desktop $out/share/applications
'';
meta = {
description = "The user-friendly, lightweight, and fast email client";
homepage = "https://www.claws-mail.org/";
license = licenses.gpl3Plus;
platforms = platforms.linux;
maintainers = with maintainers; [ fpletz globin orivej oxzi ajs124 ];
};
}

View file

@ -0,0 +1,28 @@
diff --git a/src/procmime.c b/src/procmime.c
index bd3239e..06a3b26 100644
--- a/src/procmime.c
+++ b/src/procmime.c
@@ -1144,20 +1144,16 @@ GList *procmime_get_mime_type_list(void)
MimeType *mime_type;
gboolean fp_is_glob_file = TRUE;
if (mime_type_list)
return mime_type_list;
-
-#if defined(__NetBSD__) || defined(__OpenBSD__) || defined(__FreeBSD__)
- if ((fp = claws_fopen(DATAROOTDIR "/mime/globs", "rb")) == NULL)
-#else
- if ((fp = claws_fopen("/usr/share/mime/globs", "rb")) == NULL)
-#endif
+
+ if ((fp = claws_fopen("@MIMEROOTDIR@/mime/globs", "rb")) == NULL)
{
fp_is_glob_file = FALSE;
if ((fp = claws_fopen("/etc/mime.types", "rb")) == NULL) {
if ((fp = claws_fopen(SYSCONFDIR "/mime.types", "rb"))
== NULL) {
FILE_OP_ERROR(SYSCONFDIR "/mime.types",
"claws_fopen");
return NULL;
}

View file

@ -0,0 +1,36 @@
{ appimageTools, lib, fetchurl, libsecret }:
let
pname = "electron-mail";
version = "4.12.7";
name = "ElectronMail-${version}";
src = fetchurl {
url = "https://github.com/vladimiry/ElectronMail/releases/download/v${version}/electron-mail-${version}-linux-x86_64.AppImage";
sha256 = "42d0b49a2feba628f4845940ffd9607739bd5fcdbe6ba37e15f993c511d21e46";
};
appimageContents = appimageTools.extract { inherit name src; };
in appimageTools.wrapType2 {
inherit name src;
extraInstallCommands = ''
mv $out/bin/${name} $out/bin/${pname}
install -m 444 -D ${appimageContents}/${pname}.desktop -t $out/share/applications
substituteInPlace $out/share/applications/${pname}.desktop \
--replace 'Exec=AppRun' 'Exec=${pname}'
cp -r ${appimageContents}/usr/share/icons $out/share
'';
extraPkgs = pkgs: with pkgs; [
libsecret
];
meta = with lib; {
description = "ElectronMail is an Electron-based unofficial desktop client for ProtonMail";
homepage = "https://github.com/vladimiry/ElectronMail";
license = licenses.mit;
maintainers = [ maintainers.princemachiavelli ];
platforms = [ "x86_64-linux" ];
};
}

View file

@ -0,0 +1,43 @@
{ lib, stdenv, fetchurl, gnome, cmake, gettext, intltool, pkg-config, evolution-data-server, evolution
, sqlite, gtk3, webkitgtk, libgdata, libmspack }:
stdenv.mkDerivation rec {
pname = "evolution-ews";
version = "3.44.2";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "xXPzlxA8FybyS+Tz+f0gzrvJtEW6CysOt8lI/YQVBho=";
};
nativeBuildInputs = [ cmake gettext intltool pkg-config ];
buildInputs = [
evolution-data-server evolution
sqlite libgdata
gtk3 webkitgtk
libmspack
];
cmakeFlags = [
# Building with libmspack as recommended: https://wiki.gnome.org/Apps/Evolution/Building#Build_evolution-ews
"-DWITH_MSPACK=ON"
# don't try to install into ${evolution}
"-DFORCE_INSTALL_PREFIX=ON"
];
passthru = {
updateScript = gnome.updateScript {
packageName = "evolution-ews";
versionPolicy = "odd-unstable";
};
};
meta = with lib; {
description = "Evolution connector for Microsoft Exchange Server protocols";
homepage = "https://gitlab.gnome.org/GNOME/evolution-ews";
license = licenses.lgpl21Plus; # https://gitlab.gnome.org/GNOME/evolution-ews/issues/111
maintainers = [ maintainers.dasj19 ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,140 @@
{ lib
, stdenv
, cmake
, ninja
, intltool
, fetchurl
, libxml2
, webkitgtk
, highlight
, pkg-config
, gtk3
, glib
, libnotify
, libpst
, gspell
, evolution-data-server
, libgdata
, libgweather
, glib-networking
, gsettings-desktop-schemas
, wrapGAppsHook
, itstool
, shared-mime-info
, libical
, db
, gcr
, sqlite
, gnome
, gnome-desktop
, librsvg
, gdk-pixbuf
, libsecret
, nss
, nspr
, icu
, libcanberra-gtk3
, geocode-glib
, cmark
, bogofilter
, gst_all_1
, procps
, p11-kit
, openldap
, spamassassin
}:
stdenv.mkDerivation rec {
pname = "evolution";
version = "3.44.2";
src = fetchurl {
url = "mirror://gnome/sources/evolution/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "+scGznpXP42WdzfxWtDr66Q6h/48p1f4VBID2ZG+BjM=";
};
nativeBuildInputs = [
cmake
intltool
itstool
libxml2
ninja
pkg-config
wrapGAppsHook
];
buildInputs = [
gnome.adwaita-icon-theme
bogofilter
db
evolution-data-server
gcr
gdk-pixbuf
glib
glib-networking
gnome-desktop
gsettings-desktop-schemas
gst_all_1.gst-plugins-base
gst_all_1.gstreamer
gtk3
gspell
highlight
icu
libcanberra-gtk3
geocode-glib
cmark
libgdata
libgweather
libical
libnotify
libpst
librsvg
libsecret
nspr
nss
openldap
p11-kit
procps
shared-mime-info
sqlite
webkitgtk
];
propagatedUserEnvPkgs = [
evolution-data-server
];
cmakeFlags = [
"-DENABLE_AUTOAR=OFF"
"-DENABLE_LIBCRYPTUI=OFF"
"-DENABLE_YTNEF=OFF"
"-DWITH_SPAMASSASSIN=${spamassassin}/bin/spamassassin"
"-DWITH_SA_LEARN=${spamassassin}/bin/sa-learn"
"-DWITH_BOGOFILTER=${bogofilter}/bin/bogofilter"
"-DWITH_OPENLDAP=${openldap}"
"-DWITH_GWEATHER4=ON"
];
requiredSystemFeatures = [
"big-parallel"
];
doCheck = true;
passthru = {
updateScript = gnome.updateScript {
packageName = "evolution";
versionPolicy = "odd-unstable";
};
};
PKG_CONFIG_LIBEDATASERVERUI_1_2_UIMODULEDIR = "${placeholder "out"}/lib/evolution-data-server/ui-modules";
meta = with lib; {
homepage = "https://wiki.gnome.org/Apps/Evolution";
description = "Personal information management application that provides integrated mail, calendaring and address book functionality";
maintainers = teams.gnome.members;
license = licenses.lgpl2Plus;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,35 @@
{ lib, makeWrapper, symlinkJoin, gnome, plugins }:
symlinkJoin {
name = "evolution-with-plugins";
paths = [ gnome.evolution-data-server ] ++ plugins;
nativeBuildInputs = [ makeWrapper ];
postBuild = ''
for i in $out/bin/* $out/libexec/**; do
if [ ! -d $i ]; then
echo wrapping $i
wrapProgram $i --set EDS_EXTRA_PREFIXES "${lib.concatStringsSep ":" plugins}"
fi
done
fixSymlink () {
local link=$1
local target=$(readlink $link);
local newtarget=$(sed "s@/nix/store/[^/]*/@$out/@" <<< "$target")
if [[ $target != $newtarget ]] && [[ -d $newtarget ]]; then
echo fixing link to point to $newtarget instead of $target
rm $link
ln -s $newtarget $link
fi
}
fixSymlink $out/share/dbus-1/service
fixSymlink $out/lib/systemd/user
for i in $out/share/dbus-1/services/*.service $out/lib/systemd/user/*.service; do
echo fixing service file $i to point to $out
sed -i "s@/nix/store/[^/]*/@$out/@" $i
done
'';
}

View file

@ -0,0 +1,42 @@
{ lib
, buildGoModule
, fetchFromGitHub
, pkg-config
, gobject-introspection
, pango
, cairo
, gtk2
}:
buildGoModule rec {
pname = "hasmail-unstable";
version = "2019-08-24";
src = fetchFromGitHub {
owner = "jonhoo";
repo = "hasmail";
rev = "eb52536d26815383bfe5990cd5ace8bb9d036c8d";
sha256 = "1p6kwa5xk1mb1fkkxz1b5rcyp5kb4zc8nfif1gk6fab6wbdj9ia1";
};
vendorSha256 = "129hvr8qh5mxj6mzg7793p5jsi4jmsm96f63j7r8wn544yq8sqci";
doCheck = false;
nativeBuildInputs = [
pkg-config
];
buildInputs = [
pango
cairo
gtk2
];
meta = with lib; {
description = "Simple tray icon for detecting new email on IMAP servers";
homepage = "https://github.com/jonhoo/hasmail";
license = licenses.unlicense;
maintainers = with maintainers; [ doronbehar ];
};
}

View file

@ -0,0 +1,56 @@
{ lib
, rustPlatform
, fetchFromGitHub
, stdenv
, enableCompletions ? stdenv.hostPlatform == stdenv.buildPlatform
, installShellFiles
, pkg-config
, Security
, libiconv
, openssl
}:
rustPlatform.buildRustPackage rec {
pname = "himalaya";
version = "0.5.10";
src = fetchFromGitHub {
owner = "soywod";
repo = pname;
rev = "v${version}";
sha256 = "sha256-CXchZbXX7NH2ZXeAoPph3qxxdcAdDVZLBmOMwxFu+Yo=";
};
cargoSha256 = "sha256-sSQX7DHDgh1eO1Dwn1f0m51Bl2ZG1daRtrnYvsvPOkg=";
nativeBuildInputs = lib.optionals enableCompletions [ installShellFiles ]
++ lib.optionals (!stdenv.hostPlatform.isDarwin) [ pkg-config ];
buildInputs =
if stdenv.hostPlatform.isDarwin then [
Security
libiconv
] else [
openssl
];
# flag added because without end-to-end testing is ran which requires
# additional tooling and servers to test
cargoTestFlags = [ "--lib" ];
postInstall = lib.optionalString enableCompletions ''
# Install shell function
installShellCompletion --cmd himalaya \
--bash <($out/bin/himalaya completion bash) \
--fish <($out/bin/himalaya completion fish) \
--zsh <($out/bin/himalaya completion zsh)
'';
meta = with lib; {
description = "Command-line interface for email management";
homepage = "https://github.com/soywod/himalaya";
changelog = "https://github.com/soywod/himalaya/blob/v${version}/CHANGELOG.md";
license = licenses.bsdOriginal;
maintainers = with maintainers; [ toastal yanganto ];
};
}

View file

@ -0,0 +1,27 @@
{ lib, stdenv, fetchFromGitHub, openssl, lua, pcre2 }:
stdenv.mkDerivation rec {
pname = "imapfilter";
version = "2.7.5";
src = fetchFromGitHub {
owner = "lefcha";
repo = "imapfilter";
rev = "v${version}";
sha256 = "nbVwbPkNbJz4GHhvOp+QVgiBqKA/HR34p4x3NXJB7ig=";
};
makeFlags = [
"SSLCAFILE=/etc/ssl/certs/ca-bundle.crt"
"PREFIX=$(out)"
];
buildInputs = [ openssl pcre2 lua ];
meta = {
homepage = "https://github.com/lefcha/imapfilter";
description = "Mail filtering utility";
license = lib.licenses.mit;
platforms = lib.platforms.unix;
maintainers = with lib.maintainers; [ doronbehar ];
};
}

View file

@ -0,0 +1,82 @@
{ lib, stdenv, fetchurl, pkg-config, lua, file, ncurses, gmime, pcre-cpp
, perl, perlPackages, makeWrapper
, debugBuild ? false
, alternativeGlobalConfigFilePath ? null
}:
let
version = "3.1";
binaryName = if debugBuild then "lumail2-debug" else "lumail2";
alternativeConfig = builtins.toFile "lumail2.lua"
(builtins.readFile alternativeGlobalConfigFilePath);
globalConfig = if alternativeGlobalConfigFilePath == null then ''
mkdir -p $out/etc/lumail2
cp global.config.lua $out/etc/lumail2.lua
for n in ./lib/*.lua; do
cp "$n" $out/etc/lumail2/
done
'' else ''
ln -s ${alternativeConfig} $out/etc/lumail2.lua
'';
getPath = type : "${lua}/lib/?.${type};";
luaPath = getPath "lua";
luaCPath = getPath "so";
in
stdenv.mkDerivation {
pname = "lumail";
inherit version;
src = fetchurl {
url = "https://lumail.org/download/lumail-${version}.tar.gz";
sha256 = "0vj7p7f02m3w8wb74ilajcwznc4ai4h2ikkz9ildy0c00aqsi5w4";
};
enableParallelBuilding = true;
nativeBuildInputs = [ pkg-config makeWrapper ];
buildInputs = [
lua file ncurses gmime pcre-cpp
perl perlPackages.JSON perlPackages.NetIMAPClient
];
preConfigure = ''
sed -e 's|"/etc/lumail2|LUMAIL_LUAPATH"/..|' -i src/lumail2.cc src/imap_proxy.cc
perlFlags=
for i in $(IFS=:; echo $PERL5LIB); do
perlFlags="$perlFlags -I$i"
done
sed -e "s|^#\!\(.*/perl.*\)$|#\!\1$perlFlags|" -i perl.d/imap-proxy
'';
buildFlags = lib.optional debugBuild "lumail2-debug";
installPhase = ''
mkdir -p $out/bin || true
install -m755 ${binaryName} $out/bin/
''
+ globalConfig
+ ''
wrapProgram $out/bin/${binaryName} \
--prefix LUA_PATH : "${luaPath}" \
--prefix LUA_CPATH : "${luaCPath}"
'';
makeFlags = [
"LVER=lua"
"PREFIX=$(out)"
"SYSCONFDIR=$(out)/etc"
"LUMAIL_LIBS=$(out)/etc/lumail2"
];
meta = with lib; {
description = "Console-based email client";
homepage = "https://lumail.org/";
license = licenses.gpl2;
platforms = platforms.linux;
maintainers = with maintainers; [orivej];
};
}

View file

@ -0,0 +1,25 @@
{ lib, stdenv, fetchurl }:
stdenv.mkDerivation rec {
pname = "mailcheck";
version = "1.91.2";
patches = [ ./mailcheck-Makefile.patch ];
src = fetchurl {
url = "mirror://sourceforge/mailcheck/mailcheck_${version}.tar.gz";
sha256 = "0p0azaxsnjvjbg41ycicc1i0kzw6jiynq8k49cfkdhlckxfdm9kc";
};
meta = {
description = "Simple command line tool to check for new messages";
homepage = "http://mailcheck.sourceforge.net/";
license = lib.licenses.gpl2;
maintainers = with lib.maintainers; [ kovirobi ];
platforms = lib.platforms.linux;
longDescription = ''
A simple command line tool to check for new mail in local mbox and
maildir and remote POP3 and IMAP mailboxes.
'';
};
}

View file

@ -0,0 +1,22 @@
diff -u a/Makefile b/Makefile
--- a/Makefile 2015-04-05 19:31:41.871227295 +0100
+++ b/Makefile 2015-04-05 19:42:49.743517508 +0100
@@ -1,3 +1,5 @@
+prefix=$(out)
+
all: mailcheck
debug: mailcheck.c netrc.c netrc.h socket.c
@@ -7,8 +9,10 @@
$(CC) -Wall -O2 mailcheck.c netrc.c socket.c -s -o mailcheck
install: mailcheck
- install mailcheck $(prefix)/usr/bin
- install -m 644 mailcheckrc $(prefix)/etc
+ [ -d $(prefix)/bin ] || mkdir $(prefix)/bin
+ [ -d $(prefix)/etc ] || mkdir $(prefix)/etc
+ install mailcheck $(prefix)/bin/
+ install -m 644 mailcheckrc $(prefix)/etc/
distclean: clean

View file

@ -0,0 +1,107 @@
{ lib
, fetchFromGitHub
, gettext
, xorg # for lndir
, gtk3
, python3Packages
, gdk-pixbuf
, libnotify
, gst_all_1
, libsecret
, wrapGAppsHook
, gsettings-desktop-schemas
, glib
, gobject-introspection
# Available plugins (can be overriden)
, availablePlugins
# Used in the withPlugins interface at passthru, can be overrided directly, or
# prefarably via e.g: `mailnag.withPlugins([mailnag.availablePlugins.goa])`
, mailnag
, userPlugins ? [ ]
, pluginsDeps ? [ ]
}:
python3Packages.buildPythonApplication rec {
pname = "mailnag";
version = "2.2.0";
src = fetchFromGitHub {
owner = "pulb";
repo = "mailnag";
rev = "v${version}";
sha256 = "0m1cyzwzm7z4p2v31dx098a1iar7dbilwyjcxiqnjx05nlmiqvgf";
};
buildInputs = [
gtk3
gdk-pixbuf
glib
libnotify
gst_all_1.gstreamer
gst_all_1.gst-plugins-base
gst_all_1.gst-plugins-good
gst_all_1.gst-plugins-bad
gobject-introspection
libsecret
] ++ pluginsDeps;
nativeBuildInputs = [
gettext
wrapGAppsHook
# To later add plugins to
xorg.lndir
];
propagatedBuildInputs = with python3Packages; [
gsettings-desktop-schemas
pygobject3
dbus-python
pyxdg
];
passthru = {
inherit availablePlugins;
withPlugins =
plugs:
let
# goa plugin requires gio's gnome-online-accounts which requires making sure
# mailnag runs with GI_TYPELIB_PATH containing the path to Goa-1.0.typelib.
# This is handled best by adding the plugins' deps to buildInputs and let
# wrapGAppsHook handle that.
pluginsDeps = lib.flatten (lib.catAttrs "buildInputs" plugs);
self = mailnag;
in
self.override {
userPlugins = plugs;
inherit pluginsDeps;
};
};
# See https://nixos.org/nixpkgs/manual/#ssec-gnome-common-issues-double-wrapped
dontWrapGApps = true;
preFixup = ''
substituteInPlace $out/${python3Packages.python.sitePackages}/Mailnag/common/dist_cfg.py \
--replace "/usr/" $out/
for desktop_file in $out/share/applications/*.desktop; do
substituteInPlace "$desktop_file" \
--replace "/usr/bin" $out/bin
done
makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
'';
# Actually install plugins
postInstall = ''
for plug in ${builtins.toString userPlugins}; do
lndir $plug/${python3Packages.python.sitePackages} $out/${python3Packages.python.sitePackages}
done
'';
meta = with lib; {
description = "An extensible mail notification daemon";
homepage = "https://github.com/pulb/mailnag";
license = licenses.gpl2;
platforms = platforms.linux;
maintainers = with maintainers; [ doronbehar ];
};
}

View file

@ -0,0 +1,31 @@
{ lib
, fetchFromGitHub
, python3Packages
, gobject-introspection
, gnome-online-accounts
}:
python3Packages.buildPythonPackage rec {
pname = "mailnag-goa-plugin";
version = "2.0.0";
src = fetchFromGitHub {
owner = "pulb";
repo = "mailnag-goa-plugin";
rev = "v${version}";
sha256 = "0bij6cy96nhq7xzslx0fnhmiac629h0x4wgy67k4i4npwqw10680";
};
buildInputs = [
gobject-introspection
gnome-online-accounts
];
meta = with lib; {
description = "Mailnag GNOME Online Accounts plugin.";
homepage = "https://github.com/pulb/mailnag-goa-plugin";
license = licenses.gpl2;
platforms = platforms.linux;
maintainers = with maintainers; [ doronbehar ];
};
}

View file

@ -0,0 +1,100 @@
{ stdenv
, lib
, fetchurl
, autoPatchelfHook
, alsa-lib
, coreutils
, db
, dpkg
, glib
, gtk3
, wrapGAppsHook
, libkrb5
, libsecret
, nss
, openssl
, udev
, xorg
, mesa
, libdrm
}:
stdenv.mkDerivation rec {
pname = "mailspring";
version = "1.10.3";
src = fetchurl {
url = "https://github.com/Foundry376/Mailspring/releases/download/${version}/mailspring-${version}-amd64.deb";
sha256 = "sha256-+H2KeaRBApveUG6Vz+Z8LWpmNpZ4lwyeX1LK0AKx/bw=";
};
nativeBuildInputs = [
autoPatchelfHook
dpkg
wrapGAppsHook
];
buildInputs = [
alsa-lib
db
glib
gtk3
libkrb5
libsecret
nss
xorg.libxkbfile
xorg.libXdamage
xorg.libXScrnSaver
xorg.libXtst
xorg.libxshmfence
mesa
libdrm
];
runtimeDependencies = [
coreutils
openssl
(lib.getLib udev)
];
unpackPhase = ''
runHook preUnpack
dpkg -x $src .
runHook postUnpack
'';
installPhase = ''
runHook preInstall
mkdir -p $out/{bin,lib}
cp -ar ./usr/share $out
substituteInPlace $out/share/mailspring/resources/app.asar.unpacked/mailsync \
--replace dirname ${coreutils}/bin/dirname
ln -s $out/share/mailspring/mailspring $out/bin/mailspring
ln -s ${lib.getLib openssl}/lib/libcrypto.so $out/lib/libcrypto.so.1.0.0
runHook postInstall
'';
postFixup = /* sh */ ''
substituteInPlace $out/share/applications/Mailspring.desktop \
--replace Exec=mailspring Exec=$out/bin/mailspring
'';
meta = with lib; {
description = "A beautiful, fast and maintained fork of Nylas Mail by one of the original authors";
longDescription = ''
Mailspring is an open-source mail client forked from Nylas Mail and built with Electron.
Mailspring's sync engine runs locally, but its source is not open.
'';
license = licenses.gpl3Plus;
maintainers = with maintainers; [ toschmidt doronbehar ];
homepage = "https://getmailspring.com";
downloadPage = "https://github.com/Foundry376/Mailspring";
platforms = [ "x86_64-linux" ];
};
}

View file

@ -0,0 +1,54 @@
{ coreutils, fetchFromGitHub, fetchpatch, file, gawk, gnugrep, gnused
, installShellFiles, less, lib, libiconv, makeWrapper, nano, stdenv, ruby
}:
stdenv.mkDerivation rec {
pname = "mblaze";
version = "1.2";
nativeBuildInputs = [ installShellFiles makeWrapper ];
buildInputs = [ ruby ] ++ lib.optionals stdenv.isDarwin [ libiconv ];
src = fetchFromGitHub {
owner = "leahneukirchen";
repo = "mblaze";
rev = "v${version}";
sha256 = "sha256-LCyw3xGsYjsbExueRHVRqoJYluji9MmZq5zGclvSSDk=";
};
makeFlags = [ "PREFIX=$(out)" ];
enableParallelBuilding = true;
postInstall = ''
installShellCompletion contrib/_mblaze
'' + lib.optionalString (ruby != null) ''
install -Dt $out/bin contrib/msuck contrib/mblow
# The following wrappings are used to preserve the executable
# names (the value of $0 in a script). The script mcom is
# designed to be run directly or via symlinks such as mrep. Using
# symlinks changes the value of $0 in the script, and makes it
# behave differently. When using the wrapProgram tool, the resulting
# wrapper breaks this behaviour. The following wrappers preserve it.
mkdir -p $out/wrapped
for x in mcom mbnc mfwd mrep; do
mv $out/bin/$x $out/wrapped
makeWrapper $out/wrapped/$x $out/bin/$x \
--argv0 $out/bin/$x \
--prefix PATH : $out/bin \
--prefix PATH : ${lib.makeBinPath [
coreutils file gawk gnugrep gnused
]}
done
'';
meta = with lib; {
homepage = "https://github.com/leahneukirchen/mblaze";
description = "Unix utilities for processing and interacting with mail messages which are stored in maildir folders";
license = licenses.cc0;
platforms = platforms.all;
maintainers = [ maintainers.ajgrf ];
};
}

View file

@ -0,0 +1,59 @@
{ stdenv
, lib
, fetchgit
, rustPlatform
, pkg-config
, openssl
, dbus
, sqlite
, file
, makeWrapper
, notmuch
# Build with support for notmuch backend
, withNotmuch ? true
}:
rustPlatform.buildRustPackage rec {
pname = "meli";
version = "alpha-0.7.2";
src = fetchgit {
url = "https://git.meli.delivery/meli/meli.git";
rev = version;
sha256 = "sha256-cbigEJhX6vL+gHa40cxplmPsDhsqujkzQxe0Dr6+SK0=";
};
cargoSha256 = "sha256-ZE653OtXyZ9454bKPApmuL2kVko/hGBWEAya1L1KIoc=";
nativeBuildInputs = [ pkg-config makeWrapper ];
buildInputs = [ openssl dbus sqlite ] ++ lib.optional withNotmuch notmuch;
checkInputs = [ file ];
buildFeatures = lib.optional withNotmuch [ "notmuch" ];
postInstall = ''
mkdir -p $out/share/man/man1
gzip < docs/meli.1 > $out/share/man/man1/meli.1.gz
mkdir -p $out/share/man/man5
gzip < docs/meli.conf.5 > $out/share/man/man5/meli.conf.5.gz
gzip < docs/meli-themes.5 > $out/share/man/man5/meli-themes.5.gz
'' + lib.optionalString withNotmuch ''
# Fixes this runtime error when meli is started with notmuch configured:
# $ meli
# libnotmuch5 was not found in your system. Make sure it is installed and
# in the library paths.
# notmuch is not a valid mail backend
wrapProgram $out/bin/meli --set LD_LIBRARY_PATH ${notmuch}/lib
'';
meta = with lib; {
broken = (stdenv.isLinux && stdenv.isAarch64);
description = "Experimental terminal mail client aiming for configurability and extensibility with sane defaults";
homepage = "https://meli.delivery";
license = licenses.gpl3;
maintainers = with maintainers; [ _0x4A6F matthiasbeyer erictapen ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,28 @@
{ lib, python3, notmuch }:
python3.pkgs.buildPythonApplication rec {
pname = "mlarchive2maildir";
version = "0.0.9";
src = python3.pkgs.fetchPypi {
inherit pname version;
sha256 = "02zjwa7zbcbqj76l0qmg7bbf3fqli60pl2apby3j4zwzcrrryczs";
};
nativeBuildInputs = with python3.pkgs; [ setuptools-scm ];
propagatedBuildInputs = with python3.pkgs; [
beautifulsoup4
click
click-log
requests
six
];
meta = with lib; {
homepage = "https://github.com/flokli/mlarchive2maildir";
description = "Imports mail from (pipermail) archives into a maildir";
license = licenses.mit;
maintainers = with maintainers; [ flokli ];
};
}

View file

@ -0,0 +1,29 @@
{ lib, stdenv, fetchurl, fetchpatch, ncurses, autoreconfHook, flex }:
let rev = "b17ea39dc17e5514f33b3f5c34ede92bd16e208c";
in stdenv.mkDerivation rec {
pname = "mmh";
version = "unstable-2020-08-21";
src = fetchurl {
url = "http://git.marmaro.de/?p=mmh;a=snapshot;h=${rev};sf=tgz";
name = "mmh-${rev}.tgz";
sha256 = "1bqfxafw4l2y46pnsxgy4ji1xlyifzw01k1ykbsjj9p61q3nv6l6";
};
postPatch = ''
substituteInPlace sbr/Makefile.in \
--replace "ar " "${stdenv.cc.targetPrefix}ar "
'';
buildInputs = [ ncurses ];
nativeBuildInputs = [ autoreconfHook flex ];
meta = with lib; {
description = "Set of electronic mail handling programs";
homepage = "http://marmaro.de/prog/mmh";
license = licenses.bsd3;
platforms = platforms.unix;
broken = stdenv.isDarwin;
maintainers = with maintainers; [ kaction ];
};
}

View file

@ -0,0 +1,36 @@
{ lib, stdenv, fetchurl, makeWrapper, unzip, jre, runtimeShell }:
stdenv.mkDerivation rec {
version = "1.9";
pname = "msgviewer";
uname = "MSGViewer";
src = fetchurl {
url = "mirror://sourceforge/msgviewer/${uname}-${version}/${uname}-${version}.zip";
sha256 = "0igmr8c0757xsc94xlv2470zv2mz57zaj52dwr9wj8agmj23jbjz";
};
buildCommand = ''
dir=$out/lib/msgviewer
mkdir -p $out/bin $dir
unzip $src -d $dir
mv $dir/${uname}-${version}/* $dir
rmdir $dir/${uname}-${version}
cat <<_EOF > $out/bin/msgviewer
#!${runtimeShell} -eu
exec ${lib.getBin jre}/bin/java -jar $dir/MSGViewer.jar "\$@"
_EOF
chmod 755 $out/bin/msgviewer
'';
nativeBuildInputs = [ makeWrapper unzip ];
meta = with lib; {
description = "Viewer for .msg files (MS Outlook)";
homepage = "https://www.washington.edu/alpine/";
sourceProvenance = with sourceTypes; [ binaryBytecode ];
license = licenses.asl20;
maintainers = with maintainers; [ peterhoeg ];
platforms = platforms.all;
};
}

View file

@ -0,0 +1,97 @@
{ lib, stdenv, fetchurl, fetchpatch, ncurses, which, perl
, gdbm ? null
, openssl ? null
, cyrus_sasl ? null
, gnupg ? null
, gpgme ? null
, libkrb5 ? null
, headerCache ? true
, sslSupport ? true
, saslSupport ? true
, smimeSupport ? false
, gpgSupport ? false
, gpgmeSupport ? true
, imapSupport ? true
, withSidebar ? true
, gssSupport ? true
}:
assert headerCache -> gdbm != null;
assert sslSupport -> openssl != null;
assert saslSupport -> cyrus_sasl != null;
assert smimeSupport -> openssl != null;
assert gpgSupport -> gnupg != null;
assert gpgmeSupport -> gpgme != null && openssl != null;
with lib;
stdenv.mkDerivation rec {
pname = "mutt";
version = "2.2.4";
outputs = [ "out" "doc" "info" ];
src = fetchurl {
url = "http://ftp.mutt.org/pub/mutt/${pname}-${version}.tar.gz";
sha256 = "0q70qrsjvmkfns1qxc0il2rlmfjwzbmfg89zlch0iqghpyz7c9xq";
};
patches = optional smimeSupport (fetchpatch {
url = "https://salsa.debian.org/mutt-team/mutt/raw/debian/1.10.1-2/debian/patches/misc/smime.rc.patch";
sha256 = "0b4i00chvx6zj9pcb06x2jysmrcb2znn831lcy32cgfds6gr3nsi";
});
buildInputs =
[ ncurses which perl ]
++ optional headerCache gdbm
++ optional sslSupport openssl
++ optional gssSupport libkrb5
++ optional saslSupport cyrus_sasl
++ optional gpgmeSupport gpgme;
configureFlags = [
(enableFeature headerCache "hcache")
(enableFeature gpgmeSupport "gpgme")
(enableFeature imapSupport "imap")
(enableFeature withSidebar "sidebar")
"--enable-smtp"
"--enable-pop"
"--with-mailpath="
# Look in $PATH at runtime, instead of hardcoding /usr/bin/sendmail
"ac_cv_path_SENDMAIL=sendmail"
# This allows calls with "-d N", that output debug info into ~/.muttdebug*
"--enable-debug"
# The next allows building mutt without having anything setgid
# set by the installer, and removing the need for the group 'mail'
# I set the value 'mailbox' because it is a default in the configure script
"--with-homespool=mailbox"
] ++ optional sslSupport "--with-ssl"
++ optional gssSupport "--with-gss"
++ optional saslSupport "--with-sasl";
postPatch = optionalString (smimeSupport || gpgmeSupport) ''
sed -i 's#/usr/bin/openssl#${openssl}/bin/openssl#' smime_keys.pl
'';
postInstall = optionalString smimeSupport ''
# S/MIME setup
cp contrib/smime.rc $out/etc/smime.rc
sed -i 's#openssl#${openssl}/bin/openssl#' $out/etc/smime.rc
echo "source $out/etc/smime.rc" >> $out/etc/Muttrc
'' + optionalString gpgSupport ''
# GnuPG setup
cp contrib/gpg.rc $out/etc/gpg.rc
sed -i 's#\(command="\)gpg #\1${gnupg}/bin/gpg #' $out/etc/gpg.rc
echo "source $out/etc/gpg.rc" >> $out/etc/Muttrc
'';
meta = {
description = "A small but very powerful text-based mail client";
homepage = "http://www.mutt.org";
license = licenses.gpl2Plus;
platforms = platforms.unix;
maintainers = with maintainers; [ rnhmjoj ];
};
}

View file

@ -0,0 +1,102 @@
{ lib, stdenv, fetchFromGitHub, gettext, makeWrapper, tcl, which
, ncurses, perl , cyrus_sasl, gss, gpgme, libkrb5, libidn, libxml2, notmuch, openssl
, lmdb, libxslt, docbook_xsl, docbook_xml_dtd_42, w3m, mailcap, sqlite, zlib
}:
stdenv.mkDerivation rec {
version = "20220429";
pname = "neomutt";
src = fetchFromGitHub {
owner = "neomutt";
repo = "neomutt";
rev = version;
sha256 = "sha256-LBY7WtmEMg/PcMS/Tc5XEYunIWjoI4IQfUJURKgy1YA=";
};
buildInputs = [
cyrus_sasl gss gpgme libkrb5 libidn ncurses
notmuch openssl perl lmdb
mailcap sqlite
];
nativeBuildInputs = [
docbook_xsl docbook_xml_dtd_42 gettext libxml2 libxslt.bin makeWrapper tcl which zlib w3m
];
enableParallelBuilding = true;
postPatch = ''
substituteInPlace contrib/smime_keys \
--replace /usr/bin/openssl ${openssl}/bin/openssl
for f in doc/*.{xml,xsl}* ; do
substituteInPlace $f \
--replace http://docbook.sourceforge.net/release/xsl/current ${docbook_xsl}/share/xml/docbook-xsl \
--replace http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd ${docbook_xml_dtd_42}/xml/dtd/docbook/docbookx.dtd
done
# allow neomutt to map attachments to their proper mime.types if specified wrongly
# and use a far more comprehensive list than the one shipped with neomutt
substituteInPlace send/sendlib.c \
--replace /etc/mime.types ${mailcap}/etc/mime.types
'';
preBuild = ''
export HOME=$(mktemp -d)
'';
configureFlags = [
"--enable-autocrypt"
"--gpgme"
"--gss"
"--lmdb"
"--notmuch"
"--ssl"
"--sasl"
"--with-homespool=mailbox"
"--with-mailpath="
# To make it not reference .dev outputs. See:
# https://github.com/neomutt/neomutt/pull/2367
"--disable-include-path-in-cflags"
# Look in $PATH at runtime, instead of hardcoding /usr/bin/sendmail
"ac_cv_path_SENDMAIL=sendmail"
"--zlib"
];
# Fix missing libidn in mutt;
# this fix is ugly since it links all binaries in mutt against libidn
# like pgpring, pgpewrap, ...
NIX_LDFLAGS = "-lidn";
postInstall = ''
wrapProgram "$out/bin/neomutt" --prefix PATH : "$out/libexec/neomutt"
'';
doCheck = true;
preCheck = ''
cp -r ${fetchFromGitHub {
owner = "neomutt";
repo = "neomutt-test-files";
rev = "8629adab700a75c54e8e28bf05ad092503a98f75";
sha256 = "1ci04nqkab9mh60zzm66sd6mhsr6lya8wp92njpbvafc86vvwdlr";
}} $(pwd)/test-files
chmod -R +w test-files
(cd test-files && ./setup.sh)
export NEOMUTT_TEST_DIR=$(pwd)/test-files
'';
checkTarget = "test";
postCheck = "unset NEOMUTT_TEST_DIR";
meta = with lib; {
description = "A small but very powerful text-based mail client";
homepage = "http://www.neomutt.org";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ cstrahan erikryb jfrankenau vrthra ma27 ];
platforms = platforms.unix;
};
}

View file

@ -0,0 +1,29 @@
{ lib, stdenv, fetchFromGitHub, pkg-config, glib, notmuch }:
let
version = "9";
in
stdenv.mkDerivation {
pname = "notmuch-addrlookup";
inherit version;
src = fetchFromGitHub {
owner = "aperezdc";
repo = "notmuch-addrlookup-c";
rev ="v${version}";
sha256 = "1j3zdx161i1x4w0nic14ix5i8hd501rb31daf8api0k8855sx4rc";
};
nativeBuildInputs = [ pkg-config ];
buildInputs = [ glib notmuch ];
installPhase = "install -D notmuch-addrlookup $out/bin/notmuch-addrlookup";
meta = with lib; {
description = "Address lookup tool for Notmuch in C";
homepage = "https://github.com/aperezdc/notmuch-addrlookup-c";
maintainers = with maintainers; [ mog ];
platforms = platforms.unix;
license = licenses.mit;
};
}

View file

@ -0,0 +1,38 @@
{ lib, stdenv, fetchFromGitHub, mercury, pandoc, ncurses, gpgme }:
stdenv.mkDerivation rec {
pname = "notmuch-bower";
version = "0.13";
src = fetchFromGitHub {
owner = "wangp";
repo = "bower";
rev = version;
sha256 = "0r5s16pc3ym5nd33lv9ljv1p1gpb7yysrdni4g7w7yvjrnwk35l6";
};
nativeBuildInputs = [ mercury pandoc ];
buildInputs = [ ncurses gpgme ];
makeFlags = [ "PARALLEL=-j$(NIX_BUILD_CORES)" "bower" "man" ];
installPhase = ''
runHook preInstall
mkdir -p $out/bin
mv bower $out/bin/
mkdir -p $out/share/man/man1
mv bower.1 $out/share/man/man1/
runHook postInstall
'';
enableParallelBuilding = true;
meta = with lib; {
homepage = "https://github.com/wangp/bower";
description = "A curses terminal client for the Notmuch email system";
maintainers = with maintainers; [ jgart ];
license = licenses.gpl3Plus;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,116 @@
{ fetchurl, lib, stdenv
, pkg-config, gnupg
, xapian, gmime, talloc, zlib
, doxygen, perl, texinfo
, notmuch
, pythonPackages
, emacs
, ruby
, testers
, which, dtach, openssl, bash, gdb, man
, withEmacs ? true
, withRuby ? true
}:
stdenv.mkDerivation rec {
pname = "notmuch";
version = "0.36";
src = fetchurl {
url = "https://notmuchmail.org/releases/notmuch-${version}.tar.xz";
sha256 = "0h6f6mh9m9vrijm638x5sbsl321b74a25cdasbxhx67x62w320hk";
};
nativeBuildInputs = [
pkg-config
doxygen # (optional) api docs
pythonPackages.sphinx # (optional) documentation -> doc/INSTALL
texinfo # (optional) documentation -> doc/INSTALL
pythonPackages.cffi
] ++ lib.optional withEmacs emacs
++ lib.optional withRuby ruby;
buildInputs = [
gnupg # undefined dependencies
xapian gmime talloc zlib # dependencies described in INSTALL
perl
pythonPackages.python
] ++ lib.optional withRuby ruby;
postPatch = ''
patchShebangs configure test/
substituteInPlace lib/Makefile.local \
--replace '-install_name $(libdir)' "-install_name $out/lib"
'' + lib.optionalString withEmacs ''
substituteInPlace emacs/notmuch-emacs-mua \
--replace 'EMACS:-emacs' 'EMACS:-${emacs}/bin/emacs' \
--replace 'EMACSCLIENT:-emacsclient' 'EMACSCLIENT:-${emacs}/bin/emacsclient'
'';
configureFlags = [
"--zshcompletiondir=${placeholder "out"}/share/zsh/site-functions"
"--bashcompletiondir=${placeholder "out"}/share/bash-completion/completions"
"--infodir=${placeholder "info"}/share/info"
] ++ lib.optional (!withEmacs) "--without-emacs"
++ lib.optional withEmacs "--emacslispdir=${placeholder "emacs"}/share/emacs/site-lisp"
++ lib.optional (!withRuby) "--without-ruby";
# Notmuch doesn't use autoconf and consequently doesn't tag --bindir and
# friends
setOutputFlags = false;
enableParallelBuilding = true;
makeFlags = [ "V=1" ];
postConfigure = ''
mkdir ${placeholder "bindingconfig"}
cp bindings/python-cffi/_notmuch_config.py ${placeholder "bindingconfig"}/
'';
outputs = [ "out" "man" "info" "bindingconfig" ]
++ lib.optional withEmacs "emacs"
++ lib.optional withRuby "ruby";
preCheck = let
test-database = fetchurl {
url = "https://notmuchmail.org/releases/test-databases/database-v1.tar.xz";
sha256 = "1lk91s00y4qy4pjh8638b5lfkgwyl282g1m27srsf7qfn58y16a2";
};
in ''
mkdir -p test/test-databases
ln -s ${test-database} test/test-databases/database-v1.tar.xz
'';
doCheck = !stdenv.hostPlatform.isDarwin && (lib.versionAtLeast gmime.version "3.0.3");
checkTarget = "test";
checkInputs = [
which dtach openssl bash
gdb man emacs
];
installTargets = [ "install" "install-man" "install-info" ];
postInstall = lib.optionalString withEmacs ''
moveToOutput bin/notmuch-emacs-mua $emacs
'' + lib.optionalString withRuby ''
make -C bindings/ruby install \
vendordir=$ruby/lib/ruby \
SHELL=$SHELL \
$makeFlags "''${makeFlagsArray[@]}" \
$installFlags "''${installFlagsArray[@]}"
'';
passthru = {
pythonSourceRoot = "notmuch-${version}/bindings/python";
tests.version = testers.testVersion { package = notmuch; };
inherit version;
};
meta = with lib; {
description = "Mail indexer";
homepage = "https://notmuchmail.org/";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ flokli puckipedia ];
platforms = platforms.unix;
};
}

View file

@ -0,0 +1,23 @@
{ lib, stdenv, fetchurl
, notmuch, openssl, pkg-config, sqlite, xapian, zlib
}:
stdenv.mkDerivation rec {
version = "5";
pname = "muchsync";
passthru = {
inherit version;
};
src = fetchurl {
url = "http://www.muchsync.org/src/${pname}-${version}.tar.gz";
sha256 = "1k2m44pj5i6vfhp9icdqs42chsp208llanc666p3d9nww8ngq2lb";
};
nativeBuildInputs = [ pkg-config ];
buildInputs = [ notmuch openssl sqlite xapian zlib ];
meta = {
description = "Synchronize maildirs and notmuch databases";
homepage = "http://www.muchsync.org/";
platforms = lib.platforms.unix;
maintainers = with lib.maintainers; [];
license = lib.licenses.gpl2Plus;
};
}

View file

@ -0,0 +1,46 @@
{ stdenv, lib, perl, perlPackages, makeWrapper, coreutils, notmuch }:
stdenv.mkDerivation rec {
pname = "notmuch-mutt";
version = notmuch.version;
outputs = [ "out" ];
dontStrip = true;
buildInputs = [
perl
makeWrapper
] ++ (with perlPackages; [
FileRemove
DigestSHA1
Later
MailBox
MailMaildir
MailTools
StringShellQuote
TermReadLineGnu
]);
src = notmuch.src;
dontConfigure = true;
dontBuild = true;
installPhase = ''
${coreutils}/bin/install -Dm755 \
./contrib/notmuch-mutt/notmuch-mutt \
$out/bin/notmuch-mutt
wrapProgram $out/bin/notmuch-mutt \
--prefix PERL5LIB : $PERL5LIB
'';
meta = with lib; {
description = "Mutt support for notmuch";
homepage = "https://notmuchmail.org/";
license = with licenses; gpl3;
maintainers = with maintainers; [ peterhoeg ];
platforms = platforms.unix;
};
}

View file

@ -0,0 +1,45 @@
{ lib, stdenv, fetchurl, pkg-config, gtk2, openssl ? null, gpgme ? null
, gpgSupport ? true, sslSupport ? true, fetchpatch }:
assert gpgSupport -> gpgme != null;
assert sslSupport -> openssl != null;
with lib;
stdenv.mkDerivation rec {
pname = "sylpheed";
version = "3.7.0";
src = fetchurl {
url = "https://sylpheed.sraoss.jp/sylpheed/v3.7/${pname}-${version}.tar.xz";
sha256 = "0j9y5vdzch251s264diw9clrn88dn20bqqkwfmis9l7m8vmwasqd";
};
patches = [
(fetchpatch {
# patch upstream bug https://sylpheed.sraoss.jp/redmine/issues/306
name = "patch-libsylph_ssl_c.patch";
url = "https://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/ports/mail/sylpheed/patches/patch-libsylph_ssl_c?rev=1.4&content-type=text/plain";
sha256 = "sha256-k9OwPtHrEjaxXdH0trNqXgJMhR8kjgtei9pi6OFvILk=";
})
];
patchFlags = [ "-p0" ];
nativeBuildInputs = [ pkg-config ];
buildInputs = [ gtk2 ]
++ optionals gpgSupport [ gpgme ]
++ optionals sslSupport [ openssl ];
configureFlags = optional gpgSupport "--enable-gpgme"
++ optional sslSupport "--enable-ssl";
meta = {
homepage = "https://sylpheed.sraoss.jp/en/";
description = "Lightweight and user-friendly e-mail client";
maintainers = with maintainers; [ eelco ];
platforms = platforms.linux ++ platforms.darwin;
license = licenses.gpl2;
};
}

View file

@ -0,0 +1,214 @@
# Update instructions:
#
# To update `thunderbird-bin`'s `release_sources.nix`, run from the nixpkgs root:
#
# nix-shell maintainers/scripts/update.nix --argstr package pkgs.thunderbird-bin-unwrapped
{ lib, stdenv, fetchurl, config, wrapGAppsHook
, alsa-lib
, atk
, cairo
, curl
, cups
, dbus-glib
, dbus
, fontconfig
, freetype
, gdk-pixbuf
, glib
, glibc
, gtk2
, gtk3
, libkrb5
, libX11
, libXScrnSaver
, libxcb
, libXcomposite
, libXcursor
, libXdamage
, libXext
, libXfixes
, libXi
, libXinerama
, libXrender
, libXrandr
, libXt
, libXtst
, libcanberra
, libnotify
, adwaita-icon-theme
, libGLU, libGL
, nspr
, nss_latest
, pango
, pipewire
, pciutils
, libheimdal
, libpulseaudio
, systemd
, writeScript
, writeText
, xidel
, coreutils
, gnused
, gnugrep
, gnupg
, ffmpeg
, runtimeShell
, mesa # thunderbird wants gbm for drm+dmabuf
, systemLocale ? config.i18n.defaultLocale or "en_US"
}:
let
inherit (import ./release_sources.nix) version sources;
mozillaPlatforms = {
i686-linux = "linux-i686";
x86_64-linux = "linux-x86_64";
};
arch = mozillaPlatforms.${stdenv.hostPlatform.system};
isPrefixOf = prefix: string:
builtins.substring 0 (builtins.stringLength prefix) string == prefix;
sourceMatches = locale: source:
(isPrefixOf source.locale locale) && source.arch == arch;
policies = { DisableAppUpdate = true; } // config.thunderbird.policies or { };
policiesJson = writeText "thunderbird-policies.json" (builtins.toJSON { inherit policies; });
defaultSource = lib.findFirst (sourceMatches "en-US") {} sources;
mozLocale =
if systemLocale == "ca_ES@valencia"
then "ca-valencia"
else lib.replaceStrings ["_"] ["-"] systemLocale;
source = lib.findFirst (sourceMatches mozLocale) defaultSource sources;
in
stdenv.mkDerivation {
pname = "thunderbird-bin";
inherit version;
src = fetchurl {
url = "https://download-installer.cdn.mozilla.net/pub/thunderbird/releases/${version}/${source.arch}/${source.locale}/thunderbird-${version}.tar.bz2";
inherit (source) sha256;
};
libPath = lib.makeLibraryPath
[ stdenv.cc.cc
alsa-lib
atk
cairo
curl
cups
dbus-glib
dbus
fontconfig
freetype
gdk-pixbuf
glib
glibc
gtk2
gtk3
libkrb5
mesa
libX11
libXScrnSaver
libXcomposite
libXcursor
libxcb
libXdamage
libXext
libXfixes
libXi
libXinerama
libXrender
libXrandr
libXt
libXtst
libcanberra
libnotify
libGLU libGL
nspr
nss_latest
pango
pipewire
pciutils
libheimdal
libpulseaudio
systemd
ffmpeg
] + ":" + lib.makeSearchPathOutput "lib" "lib64" [
stdenv.cc.cc
];
inherit gtk3;
nativeBuildInputs = [ wrapGAppsHook ];
buildInputs = [ gtk3 adwaita-icon-theme ];
# "strip" after "patchelf" may break binaries.
# See: https://github.com/NixOS/patchelf/issues/10
dontStrip = true;
dontPatchELF = true;
patchPhase = ''
# Don't download updates from Mozilla directly
echo 'pref("app.update.auto", "false");' >> defaults/pref/channel-prefs.js
'';
# See "Note on GPG support" in `../thunderbird/default.nix` for explanations
# on adding `gnupg` and `gpgme` into PATH/LD_LIBRARY_PATH.
installPhase =
''
mkdir -p "$prefix/usr/lib/thunderbird-bin-${version}"
cp -r * "$prefix/usr/lib/thunderbird-bin-${version}"
mkdir -p "$out/bin"
ln -s "$prefix/usr/lib/thunderbird-bin-${version}/thunderbird" "$out/bin/"
for executable in \
thunderbird thunderbird-bin plugin-container \
updater crashreporter webapprt-stub
do
if [ -e "$out/usr/lib/thunderbird-bin-${version}/$executable" ]; then
patchelf --interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
"$out/usr/lib/thunderbird-bin-${version}/$executable"
fi
done
find . -executable -type f -exec \
patchelf --set-rpath "$libPath" \
"$out/usr/lib/thunderbird-bin-${version}/{}" \;
# wrapThunderbird expects "$out/lib" instead of "$out/usr/lib"
ln -s "$out/usr/lib" "$out/lib"
gappsWrapperArgs+=(--argv0 "$out/bin/.thunderbird-wrapped")
# See: https://github.com/mozilla/policy-templates/blob/master/README.md
mkdir -p "$out/lib/thunderbird-bin-${version}/distribution";
ln -s ${policiesJson} "$out/lib/thunderbird-bin-${version}/distribution/policies.json";
'';
passthru.updateScript = import ./../../browsers/firefox-bin/update.nix {
inherit writeScript xidel coreutils gnused gnugrep curl gnupg runtimeShell;
pname = "thunderbird-bin";
baseName = "thunderbird";
channel = "release";
basePath = "pkgs/applications/networking/mailreaders/thunderbird-bin";
baseUrl = "http://archive.mozilla.org/pub/thunderbird/releases/";
};
meta = with lib; {
description = "Mozilla Thunderbird, a full-featured email client (binary package)";
homepage = "http://www.mozilla.org/thunderbird/";
license = licenses.mpl20;
maintainers = with lib.maintainers; [ lovesegfault ];
platforms = builtins.attrNames mozillaPlatforms;
hydraPlatforms = [ ];
};
}

View file

@ -0,0 +1,655 @@
{
version = "91.9.1";
sources = [
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/af/thunderbird-91.9.1.tar.bz2";
locale = "af";
arch = "linux-x86_64";
sha256 = "f06c5e87bc9dcbb0d4aa374e262a8bd4b7bb94d5b2aa71e1ba5a61794a07af4d";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/ar/thunderbird-91.9.1.tar.bz2";
locale = "ar";
arch = "linux-x86_64";
sha256 = "67178dac2f315ba13806c8056f041f083952b4ebab1054a8eb66d97b4d1c5fd2";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/ast/thunderbird-91.9.1.tar.bz2";
locale = "ast";
arch = "linux-x86_64";
sha256 = "2858ddc2d594d12a1def62c05bb23c3f91633a866004a9a184b4ad06e294c761";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/be/thunderbird-91.9.1.tar.bz2";
locale = "be";
arch = "linux-x86_64";
sha256 = "e5fbb0bcc2066dabf1a6d1dcfbf92d1ad4af606aaddce00c2820d84b2bb2005b";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/bg/thunderbird-91.9.1.tar.bz2";
locale = "bg";
arch = "linux-x86_64";
sha256 = "de456b442aac187d49573572c45609b0e0b5f17e9e30a253ff803f9691c4fcc8";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/br/thunderbird-91.9.1.tar.bz2";
locale = "br";
arch = "linux-x86_64";
sha256 = "9139317b57b529a3151571274aa37c72790b68c2e310c302b87a490f6e6a2512";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/ca/thunderbird-91.9.1.tar.bz2";
locale = "ca";
arch = "linux-x86_64";
sha256 = "bfdef191af0ab0622847a751be29449e3ed5b3ad5abd801aa466370a621fa457";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/cak/thunderbird-91.9.1.tar.bz2";
locale = "cak";
arch = "linux-x86_64";
sha256 = "59fbda2666b1fca61f222fc5394742ce1b712390a6452bd6bd4317254a83ee90";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/cs/thunderbird-91.9.1.tar.bz2";
locale = "cs";
arch = "linux-x86_64";
sha256 = "cec215709a2ebc17b25658a640c119a3475409ab4c89d1eae92f24d612bfd07c";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/cy/thunderbird-91.9.1.tar.bz2";
locale = "cy";
arch = "linux-x86_64";
sha256 = "7685a6e54ec1b9f79c92230da7c6f9b102fda697e833d465c212fe53008c20e3";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/da/thunderbird-91.9.1.tar.bz2";
locale = "da";
arch = "linux-x86_64";
sha256 = "dc8ebeb29651025c19ae876b3a500ccd35e137b0ddc862467ba667bac2417426";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/de/thunderbird-91.9.1.tar.bz2";
locale = "de";
arch = "linux-x86_64";
sha256 = "3750041376f16133da7c8452427acd8d4414eab1f0af84b7349dd2341f679493";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/dsb/thunderbird-91.9.1.tar.bz2";
locale = "dsb";
arch = "linux-x86_64";
sha256 = "b052464be29215c315ade6793233b2f16bb5874f34890e0a93002c0dc389a677";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/el/thunderbird-91.9.1.tar.bz2";
locale = "el";
arch = "linux-x86_64";
sha256 = "cd7a84a8d8c3f11d121abe46174fc5c49328007a27397b945549bf942a54fdce";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/en-CA/thunderbird-91.9.1.tar.bz2";
locale = "en-CA";
arch = "linux-x86_64";
sha256 = "087fa8164027256f86f162205292004e9e4f15dc87f35e49d23876e8b8ce23ad";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/en-GB/thunderbird-91.9.1.tar.bz2";
locale = "en-GB";
arch = "linux-x86_64";
sha256 = "83bf95ac23c269e00dcbd5f4322bdf9adcb2b83bb4ab10e18e4bae435f36878d";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/en-US/thunderbird-91.9.1.tar.bz2";
locale = "en-US";
arch = "linux-x86_64";
sha256 = "de2fa8b336e485205f578442fb64fa37c45e6f7d6263648b9dea1556de696df8";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/es-AR/thunderbird-91.9.1.tar.bz2";
locale = "es-AR";
arch = "linux-x86_64";
sha256 = "178bf7bafe1f1f2056a5d301107bad4f69fb6e82417544d6ac4afaa541c6b6ac";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/es-ES/thunderbird-91.9.1.tar.bz2";
locale = "es-ES";
arch = "linux-x86_64";
sha256 = "269fe6cde594cb429c69e8a7209874b973259feb954856b30193fab0eb6b9cbf";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/et/thunderbird-91.9.1.tar.bz2";
locale = "et";
arch = "linux-x86_64";
sha256 = "05bc8d02b11bafa75dffb15e14636bd8ec7080be71b0e94d1106bc2802cc571d";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/eu/thunderbird-91.9.1.tar.bz2";
locale = "eu";
arch = "linux-x86_64";
sha256 = "b6e26cf5fa4b02f6559f1e631b88118a422fd6d957742e2a29269a6a7c5a439a";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/fi/thunderbird-91.9.1.tar.bz2";
locale = "fi";
arch = "linux-x86_64";
sha256 = "b4e63104dacef2de6bb1e3fd81765aab27d2c14c0f22a6fa25e7566251fe2a86";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/fr/thunderbird-91.9.1.tar.bz2";
locale = "fr";
arch = "linux-x86_64";
sha256 = "60aa0128fcd364f1c2aa9b5523a47a97fbdd0786dd530ae47a1c2524e105e2f4";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/fy-NL/thunderbird-91.9.1.tar.bz2";
locale = "fy-NL";
arch = "linux-x86_64";
sha256 = "fe0e864e069dd2a3839bd57aa12fe6bdede11413d0c6d3427682b778d656384a";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/ga-IE/thunderbird-91.9.1.tar.bz2";
locale = "ga-IE";
arch = "linux-x86_64";
sha256 = "f7732439d4f11dc6b04a8b6c49677cb00b02cb1d5ee3029d494b101f8d8854c5";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/gd/thunderbird-91.9.1.tar.bz2";
locale = "gd";
arch = "linux-x86_64";
sha256 = "e7350fe4363bc840bf2cb782838951eb26809fbfce1ff7d79bf62e5b227b6229";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/gl/thunderbird-91.9.1.tar.bz2";
locale = "gl";
arch = "linux-x86_64";
sha256 = "e17f22daf65a19fa89e98f6af699339deb3f908c475e15c6dfc20bc23d6054d8";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/he/thunderbird-91.9.1.tar.bz2";
locale = "he";
arch = "linux-x86_64";
sha256 = "1a3896d479ff72a68af9a03349bf34bd4fec68e643888f5546c87406e4939d74";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/hr/thunderbird-91.9.1.tar.bz2";
locale = "hr";
arch = "linux-x86_64";
sha256 = "8bcd244d7d51495b794d65617be5dfb372c7736f484aa3172465d2c88d670b48";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/hsb/thunderbird-91.9.1.tar.bz2";
locale = "hsb";
arch = "linux-x86_64";
sha256 = "d79b7265f0f43116f716d0e0038fee6260179edd9c3dc638ba749a719958c876";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/hu/thunderbird-91.9.1.tar.bz2";
locale = "hu";
arch = "linux-x86_64";
sha256 = "c7834d0c25dc031b5e6fdda930779eeb022c048f66982c1fc389f5857da2d16e";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/hy-AM/thunderbird-91.9.1.tar.bz2";
locale = "hy-AM";
arch = "linux-x86_64";
sha256 = "4b40f15014d95cf48ec88a9023d9b265b3b8718cbaebff19fc502d79219e2511";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/id/thunderbird-91.9.1.tar.bz2";
locale = "id";
arch = "linux-x86_64";
sha256 = "71d5a4f1f97f99b3d6237bec1fe1d22506e30322b9afed3f0a57a285c93ce0f6";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/is/thunderbird-91.9.1.tar.bz2";
locale = "is";
arch = "linux-x86_64";
sha256 = "dd041da805c3ad9b64ac99a18170b48b2cbee88eeafc4317f3675732699193a5";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/it/thunderbird-91.9.1.tar.bz2";
locale = "it";
arch = "linux-x86_64";
sha256 = "2d7ec87d3cc0bb5a37d989c54770d7faeeb3c142bc108c86e222b2e61883be88";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/ja/thunderbird-91.9.1.tar.bz2";
locale = "ja";
arch = "linux-x86_64";
sha256 = "06fa0ec26eee35b483e056e94f851f052ebec7b8bce7768ced573a4e74c19032";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/ka/thunderbird-91.9.1.tar.bz2";
locale = "ka";
arch = "linux-x86_64";
sha256 = "af56172d4f9cab608e286e5955a6faeda694a9bb27206c527dd07e3ce0f0c1ff";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/kab/thunderbird-91.9.1.tar.bz2";
locale = "kab";
arch = "linux-x86_64";
sha256 = "98ab11719e9830691fb258174b73bfb3ef496f7654ab87115718326b451187f3";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/kk/thunderbird-91.9.1.tar.bz2";
locale = "kk";
arch = "linux-x86_64";
sha256 = "75b98581fdbbb0d5292e1d9658b84652702d973d57fd0aa262a60741a60b489d";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/ko/thunderbird-91.9.1.tar.bz2";
locale = "ko";
arch = "linux-x86_64";
sha256 = "79a7d5557420e452e605283766aebb1c474e171f8890c1606a94364f422bff2f";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/lt/thunderbird-91.9.1.tar.bz2";
locale = "lt";
arch = "linux-x86_64";
sha256 = "e8b544082d722ed2913264d7f19508e3ba4cf4f3af801fea74f75e790e558d9c";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/lv/thunderbird-91.9.1.tar.bz2";
locale = "lv";
arch = "linux-x86_64";
sha256 = "210ac6d6a4cc603aad294a81821c160051b81cf5078e1db637c908f4b1d326a8";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/ms/thunderbird-91.9.1.tar.bz2";
locale = "ms";
arch = "linux-x86_64";
sha256 = "8f068734975c03df942cf9d77e9e6479ab8a4e05f1520fcd377eb7579fec9e3d";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/nb-NO/thunderbird-91.9.1.tar.bz2";
locale = "nb-NO";
arch = "linux-x86_64";
sha256 = "d8dd4e72ace1ec1ee377e845a51d6621da8f79ba231c8de9c1b5c0adc2f00e8c";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/nl/thunderbird-91.9.1.tar.bz2";
locale = "nl";
arch = "linux-x86_64";
sha256 = "e31679930f2e74c70d9d474481976f6d633dba8265c368bb1bcea9cbdfa2a674";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/nn-NO/thunderbird-91.9.1.tar.bz2";
locale = "nn-NO";
arch = "linux-x86_64";
sha256 = "cfcaf1584954c3c8b97c8a18905129273c6dd028fffb168f9f614bc519d724d7";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/pa-IN/thunderbird-91.9.1.tar.bz2";
locale = "pa-IN";
arch = "linux-x86_64";
sha256 = "b5ebabb96c4cc6df5f7804b62540b9a823089c65e13f3475e16e2e75582dbfe4";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/pl/thunderbird-91.9.1.tar.bz2";
locale = "pl";
arch = "linux-x86_64";
sha256 = "d8ec7636ade35f3128e5076d95a49ff194fe749d8eb8705669894fa91c3743ca";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/pt-BR/thunderbird-91.9.1.tar.bz2";
locale = "pt-BR";
arch = "linux-x86_64";
sha256 = "92ed3cd78c2845116dc04d06a4bb1b5f3eb41c01256fdbbe0db83ad51c3fe617";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/pt-PT/thunderbird-91.9.1.tar.bz2";
locale = "pt-PT";
arch = "linux-x86_64";
sha256 = "010cd55542a6564e7df0d720deb1f3fea2094ca6cb0a202448145b25c166b2e7";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/rm/thunderbird-91.9.1.tar.bz2";
locale = "rm";
arch = "linux-x86_64";
sha256 = "c4e6c659a9668c88f049cbe2c47bf9f70604a23ad40f4b6b52d6b8891ad09a2c";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/ro/thunderbird-91.9.1.tar.bz2";
locale = "ro";
arch = "linux-x86_64";
sha256 = "09a9a803b6a25dc429bef4f9f1e81cc7500b8493307c8462b855c0045fd32ef1";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/ru/thunderbird-91.9.1.tar.bz2";
locale = "ru";
arch = "linux-x86_64";
sha256 = "332ee8695f3fa74ae952ce55a4d91e26c789e8f95d13d05a5eadfff149d2e36c";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/sk/thunderbird-91.9.1.tar.bz2";
locale = "sk";
arch = "linux-x86_64";
sha256 = "788a802d157cba9957b6724431143e69519b7d02ef1537c89b9a32220a35045c";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/sl/thunderbird-91.9.1.tar.bz2";
locale = "sl";
arch = "linux-x86_64";
sha256 = "4a2d9398e4944cb658d2b5ef16b4521123e6a0146b5eb70ebd45c20edb53edfc";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/sq/thunderbird-91.9.1.tar.bz2";
locale = "sq";
arch = "linux-x86_64";
sha256 = "a587c265f6ccde0e1acfef1f196a1a0a81041c9ef58dd829f189508af167727c";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/sr/thunderbird-91.9.1.tar.bz2";
locale = "sr";
arch = "linux-x86_64";
sha256 = "e9f7dd607472504762f568d544b6a34a0e1ffe58c012f7116214fcdeb9c350e6";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/sv-SE/thunderbird-91.9.1.tar.bz2";
locale = "sv-SE";
arch = "linux-x86_64";
sha256 = "c8fe1447f93e4eed8c3da48efc53de313b86558b4fe6f83f8fc49a87da15385a";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/th/thunderbird-91.9.1.tar.bz2";
locale = "th";
arch = "linux-x86_64";
sha256 = "cde4dfc3593003fb4c2e10bb9b8b532079766a19b21598f48be55c1e374b12bd";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/tr/thunderbird-91.9.1.tar.bz2";
locale = "tr";
arch = "linux-x86_64";
sha256 = "f8279a10c110e85f2ad5da42a0fb7597261137fffe1a6b3fc885cd7b9b4fb7f9";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/uk/thunderbird-91.9.1.tar.bz2";
locale = "uk";
arch = "linux-x86_64";
sha256 = "13f6d38d8e12d031988e01affc8bacff6e9b747ea0b84c7b3cecff0a981f2d25";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/uz/thunderbird-91.9.1.tar.bz2";
locale = "uz";
arch = "linux-x86_64";
sha256 = "c0f39cf07b4f7ba6c327a1d00d28c2f67d7b84311ee8e7d95f9c69c7040e9b7f";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/vi/thunderbird-91.9.1.tar.bz2";
locale = "vi";
arch = "linux-x86_64";
sha256 = "faf7e817bcea9415b7e4ab90d0db710c83524db188dd61e46c8d9698fd2b66ad";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/zh-CN/thunderbird-91.9.1.tar.bz2";
locale = "zh-CN";
arch = "linux-x86_64";
sha256 = "0ac8f96c7f47c64019e2b3df1c0eadfbc91e4ad118bf758498918225638a8563";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-x86_64/zh-TW/thunderbird-91.9.1.tar.bz2";
locale = "zh-TW";
arch = "linux-x86_64";
sha256 = "9a91601a9dd0bae489dd8f8654413cdc2cbd5655ed19bb7f8c73082ea00274ff";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/af/thunderbird-91.9.1.tar.bz2";
locale = "af";
arch = "linux-i686";
sha256 = "bb9fdc595c8744910d5f15a1a15b5428adf33b50ccccb60286267497b435bbdf";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/ar/thunderbird-91.9.1.tar.bz2";
locale = "ar";
arch = "linux-i686";
sha256 = "3e368cd81a31f381c1297ee795589a0965b411b7244342f77a528defa68aa38d";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/ast/thunderbird-91.9.1.tar.bz2";
locale = "ast";
arch = "linux-i686";
sha256 = "475b32d53927258e065fde96aba88eda57f5a24c55fa1ed5b5a95e3f8cad0fbe";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/be/thunderbird-91.9.1.tar.bz2";
locale = "be";
arch = "linux-i686";
sha256 = "7b5e4571043d3118147f52db032d123be071528e80742bf2b8ce55879df83e9c";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/bg/thunderbird-91.9.1.tar.bz2";
locale = "bg";
arch = "linux-i686";
sha256 = "2b6ac5a76ff80a09a7888150c9a99e2844c5b88bcace220a0422799774e90bab";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/br/thunderbird-91.9.1.tar.bz2";
locale = "br";
arch = "linux-i686";
sha256 = "16ed5fbe1963ce35d8c81e47509cc57b8ca9dae57203bc951563e1b56d8ff50a";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/ca/thunderbird-91.9.1.tar.bz2";
locale = "ca";
arch = "linux-i686";
sha256 = "e9e3dea7f36ceb031f0cc3aa200c1dd5c0ef1794b52744ab67ba620b1b547d8b";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/cak/thunderbird-91.9.1.tar.bz2";
locale = "cak";
arch = "linux-i686";
sha256 = "c149d046e0170c81a206664117fe3c6b80c33a8f1197077fc7509f14abc9cfb4";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/cs/thunderbird-91.9.1.tar.bz2";
locale = "cs";
arch = "linux-i686";
sha256 = "459cc60f8154379365f5cf5c7404bbc05336fe896306c4449a96867f4a75632d";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/cy/thunderbird-91.9.1.tar.bz2";
locale = "cy";
arch = "linux-i686";
sha256 = "275c63bb06a93328b5463c57d1c58d58bf6c44b8b8eccac6721a16151081862f";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/da/thunderbird-91.9.1.tar.bz2";
locale = "da";
arch = "linux-i686";
sha256 = "81ed21119de61e828bfec4edebfb01033d650710318bb06f82d873c647a1f692";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/de/thunderbird-91.9.1.tar.bz2";
locale = "de";
arch = "linux-i686";
sha256 = "9bd615839704aade1dc694d83884ef5b30ba55245bb2d3a4be6117684652da95";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/dsb/thunderbird-91.9.1.tar.bz2";
locale = "dsb";
arch = "linux-i686";
sha256 = "a308bfba61442aa857dbe118e202fba0b8087af7835e61b8913ad31dce53d9db";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/el/thunderbird-91.9.1.tar.bz2";
locale = "el";
arch = "linux-i686";
sha256 = "052c90e718185132c939453e397344b6e3c096cca136d12e8b2d9f93055ca8f2";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/en-CA/thunderbird-91.9.1.tar.bz2";
locale = "en-CA";
arch = "linux-i686";
sha256 = "000b5958418f22cf0daf32b67842f8a0f05ba679e502b4b8df2dba08cbe51319";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/en-GB/thunderbird-91.9.1.tar.bz2";
locale = "en-GB";
arch = "linux-i686";
sha256 = "c39adcf0ad4eb94d95b703b1fd369ee0d6d0037492c0ad9441b2c07190ce6bec";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/en-US/thunderbird-91.9.1.tar.bz2";
locale = "en-US";
arch = "linux-i686";
sha256 = "7f7658da73a125074822bf560bbc17220adc7d5e0f636e55f62aab48332bdc64";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/es-AR/thunderbird-91.9.1.tar.bz2";
locale = "es-AR";
arch = "linux-i686";
sha256 = "f4ce57dc193ceca6b5b37686e1b2584555b9a9ebb44ac9120434fc424ea7e94f";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/es-ES/thunderbird-91.9.1.tar.bz2";
locale = "es-ES";
arch = "linux-i686";
sha256 = "bcf930f5a54abd8b0776bfdf435ec7ed680c15ecce5196eea22abdbdb80db88e";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/et/thunderbird-91.9.1.tar.bz2";
locale = "et";
arch = "linux-i686";
sha256 = "f1ea30df791704f46ccbac71eba1c78004ad7e2a334bfd730519f046b3a5d7cb";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/eu/thunderbird-91.9.1.tar.bz2";
locale = "eu";
arch = "linux-i686";
sha256 = "e97be105f43e7489ba439a8b32c0e27756270a6a2b8cb1961fc153050163b76e";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/fi/thunderbird-91.9.1.tar.bz2";
locale = "fi";
arch = "linux-i686";
sha256 = "ddaaee356e7ae031f6727eba22b3d5d2773133a5e5bdac18a4bcc98277a2b729";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/fr/thunderbird-91.9.1.tar.bz2";
locale = "fr";
arch = "linux-i686";
sha256 = "ff68f1262723449204431790abbc287112457aa44c5cd7eb8364c067fdc74f60";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/fy-NL/thunderbird-91.9.1.tar.bz2";
locale = "fy-NL";
arch = "linux-i686";
sha256 = "01cabd0e2f9d342781104d7621f8d40ee66abe1c6f1068c47af6cc8915a39c69";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/ga-IE/thunderbird-91.9.1.tar.bz2";
locale = "ga-IE";
arch = "linux-i686";
sha256 = "c456e890575932351e0a62279c3e4bf512968963251ed653569db42d6ef1db88";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/gd/thunderbird-91.9.1.tar.bz2";
locale = "gd";
arch = "linux-i686";
sha256 = "eedc9c0f3787504e93e0c38527f47784ee088bc2d9fcc7ed804b52138bc3d774";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/gl/thunderbird-91.9.1.tar.bz2";
locale = "gl";
arch = "linux-i686";
sha256 = "ce75d1222c1050820c7a43c930c58a71cc8bf8123a5868fb6dd438f23eb1a9a7";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/he/thunderbird-91.9.1.tar.bz2";
locale = "he";
arch = "linux-i686";
sha256 = "645cd8cd584a2c3d610ca2659a1ae320352d296f2cfe55fd8d612cbeb38abe9a";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/hr/thunderbird-91.9.1.tar.bz2";
locale = "hr";
arch = "linux-i686";
sha256 = "17191b00917692eba111da1a01284c52e28cfe22690f6632616b8e304db81e5a";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/hsb/thunderbird-91.9.1.tar.bz2";
locale = "hsb";
arch = "linux-i686";
sha256 = "f402328a7e331760de91f1eb7acaa7a445cbc50e7f5e00b6c0f02497fc571e4d";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/hu/thunderbird-91.9.1.tar.bz2";
locale = "hu";
arch = "linux-i686";
sha256 = "ce8b189d0afd1f9a1276cdc1c54b4ff0fbaf0ea14645538a39a40eb6c5a26baa";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/hy-AM/thunderbird-91.9.1.tar.bz2";
locale = "hy-AM";
arch = "linux-i686";
sha256 = "3dba03a75431f7f054a46a610337518e93a7cfb9a8bde7bfe0f3c2aef0df46fe";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/id/thunderbird-91.9.1.tar.bz2";
locale = "id";
arch = "linux-i686";
sha256 = "e3269270781a76ff3ccb013d40e4b18f22a733048016ca9dfd7b82bd6e98e39d";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/is/thunderbird-91.9.1.tar.bz2";
locale = "is";
arch = "linux-i686";
sha256 = "0db05ecd5d192868743fdc534f76b3d96e1484bf4d196ee459ba2d53fd5ac4a3";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/it/thunderbird-91.9.1.tar.bz2";
locale = "it";
arch = "linux-i686";
sha256 = "99acc3cd6a1c81885a565ea09c6668aea1a946b0fced9db475655fba7d0473c4";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/ja/thunderbird-91.9.1.tar.bz2";
locale = "ja";
arch = "linux-i686";
sha256 = "5ca41905a895b8ad236fc667a5bb01d1ddde37381a65374feb2549f2f21f501d";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/ka/thunderbird-91.9.1.tar.bz2";
locale = "ka";
arch = "linux-i686";
sha256 = "460434b2096ddbcd58abccdde445a8e06963e5bddc45bb88442781fbcd7b92ae";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/kab/thunderbird-91.9.1.tar.bz2";
locale = "kab";
arch = "linux-i686";
sha256 = "8d3877852ebbf78bf637dccc29c9e075757376cc0f0eac8109d0909a7a84531b";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/kk/thunderbird-91.9.1.tar.bz2";
locale = "kk";
arch = "linux-i686";
sha256 = "7d51c30a43e3b56ae467fb81704323902d852e2ec98d0551aec500ddfe79829a";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/ko/thunderbird-91.9.1.tar.bz2";
locale = "ko";
arch = "linux-i686";
sha256 = "a61eaaeb6fab5a40b7a3ec25c9aef82364c3de7b6132bf1a0201afca7279ff79";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/lt/thunderbird-91.9.1.tar.bz2";
locale = "lt";
arch = "linux-i686";
sha256 = "c09b1b265f0c214eaaa864e09584c8b18270b3e1c22101dfaaf8ff0bca930f04";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/lv/thunderbird-91.9.1.tar.bz2";
locale = "lv";
arch = "linux-i686";
sha256 = "7579ec4f5a58f716bc94eb3333672350361d1a3ac11e2434eb7a2026f13d90e5";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/ms/thunderbird-91.9.1.tar.bz2";
locale = "ms";
arch = "linux-i686";
sha256 = "e5dc0ae6d2d0c99a14fa811030b11b90b5b53b6b9b329d6d642d5c4ab18e550a";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/nb-NO/thunderbird-91.9.1.tar.bz2";
locale = "nb-NO";
arch = "linux-i686";
sha256 = "dc4838ccdfe5c59ac7438fbeea01ff675801b14c216c6f1342206f7826bfa846";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/nl/thunderbird-91.9.1.tar.bz2";
locale = "nl";
arch = "linux-i686";
sha256 = "d82604da582c5d3980eda14c488575810ccf20713024e0e0845dbf224cc6e61b";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/nn-NO/thunderbird-91.9.1.tar.bz2";
locale = "nn-NO";
arch = "linux-i686";
sha256 = "d47e71a9c2ee42d9f379aa44100a403d89929c1b668a286aa189a5a087898f58";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/pa-IN/thunderbird-91.9.1.tar.bz2";
locale = "pa-IN";
arch = "linux-i686";
sha256 = "5aa634d92d4937f628e50ab796ffb65123db63b2392918481eb8a63d14ca5bc5";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/pl/thunderbird-91.9.1.tar.bz2";
locale = "pl";
arch = "linux-i686";
sha256 = "56b80fc669ed97371706a1eb13e151362f0b312df531d9832835fb12611e9310";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/pt-BR/thunderbird-91.9.1.tar.bz2";
locale = "pt-BR";
arch = "linux-i686";
sha256 = "801d998fc5544c1cdf68b5b7269638dcd8cf0a7c2d4c8e9fc2cd5f78fa19a9b1";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/pt-PT/thunderbird-91.9.1.tar.bz2";
locale = "pt-PT";
arch = "linux-i686";
sha256 = "35839a406cb8656ed4625f74e9711419ac91c76952975892fab99b8d175dd768";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/rm/thunderbird-91.9.1.tar.bz2";
locale = "rm";
arch = "linux-i686";
sha256 = "86fc3237284821f4f9ca16b7d8aeca3b843b5c9269e42422dd451e39cec6ceef";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/ro/thunderbird-91.9.1.tar.bz2";
locale = "ro";
arch = "linux-i686";
sha256 = "ad3dcceec9d00c964b6b5529eb049c8130fdc8c945eced774e6cbf49c6cd2702";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/ru/thunderbird-91.9.1.tar.bz2";
locale = "ru";
arch = "linux-i686";
sha256 = "21d61b1b417263236134a8c666103dd1a0dbcf9db23af2ca0fede2710541fc30";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/sk/thunderbird-91.9.1.tar.bz2";
locale = "sk";
arch = "linux-i686";
sha256 = "c0c9ce86af798fa0693a382b9df0c3b5d9067c917af16afc46c7e85ee8e96a24";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/sl/thunderbird-91.9.1.tar.bz2";
locale = "sl";
arch = "linux-i686";
sha256 = "df974a11f9b1cbcec5252443c53cc653080b1ed5dec80e76461585ee355302de";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/sq/thunderbird-91.9.1.tar.bz2";
locale = "sq";
arch = "linux-i686";
sha256 = "9c837fec2ad71217761eaa90ab009230eb32a45f8e7eda46a98df57dc623e4f8";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/sr/thunderbird-91.9.1.tar.bz2";
locale = "sr";
arch = "linux-i686";
sha256 = "9c952da9ffed908873231c34048eac64f1213cbf7ba322da7cff3dddc33d8859";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/sv-SE/thunderbird-91.9.1.tar.bz2";
locale = "sv-SE";
arch = "linux-i686";
sha256 = "3ebdbe94b678e306e84967d6ab627eb0a5256dd4eb0b80b0c1ead10663679c7a";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/th/thunderbird-91.9.1.tar.bz2";
locale = "th";
arch = "linux-i686";
sha256 = "96651e467785e0a56662b98aff11b08db1a1ff4ac93af52b797e2617b286db06";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/tr/thunderbird-91.9.1.tar.bz2";
locale = "tr";
arch = "linux-i686";
sha256 = "5b5df531ca83c13f317ec88a1cdb643c915dc5d14ef5e7b03c7dd68c1f21ad0d";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/uk/thunderbird-91.9.1.tar.bz2";
locale = "uk";
arch = "linux-i686";
sha256 = "058fc28badd07216bc892c3318c021871d8d7937e2bda126a3f390a7ddca7bb0";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/uz/thunderbird-91.9.1.tar.bz2";
locale = "uz";
arch = "linux-i686";
sha256 = "0bb4706398f75ec0704da00c0a9d8e0cff6e7d8105927799898d04b2a7d3b53f";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/vi/thunderbird-91.9.1.tar.bz2";
locale = "vi";
arch = "linux-i686";
sha256 = "8e10bd3577f736c41823203fbbb7738c2f1c9849ba0437a3bf58c06c168abc52";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/zh-CN/thunderbird-91.9.1.tar.bz2";
locale = "zh-CN";
arch = "linux-i686";
sha256 = "94c9f500b85b9276057cfa24bf9f3650b461c002d083e87b5ab0b567cf7a292e";
}
{ url = "http://archive.mozilla.org/pub/thunderbird/releases/91.9.1/linux-i686/zh-TW/thunderbird-91.9.1.tar.bz2";
locale = "zh-TW";
arch = "linux-i686";
sha256 = "1d5e6bd0689e51af1a162d4a599d560631df32f867d34ea451e39348b89ec4cd";
}
];
}

View file

@ -0,0 +1,13 @@
Remove about:buildconfig. If used as-is, it would add unnecessary runtime dependencies.
--- a/comm/mail/base/jar.mn
+++ b/comm/mail/base/jar.mn
@@ -119,9 +119,6 @@ messenger.jar:
% override chrome://mozapps/content/profile/profileDowngrade.js chrome://messenger/content/profileDowngrade.js
% override chrome://mozapps/content/profile/profileDowngrade.xhtml chrome://messenger/content/profileDowngrade.xhtml
-* content/messenger/buildconfig.html (content/buildconfig.html)
-% override chrome://global/content/buildconfig.html chrome://messenger/content/buildconfig.html
-
# L10n resources and overrides.
% override chrome://mozapps/locale/profile/profileDowngrade.dtd chrome://messenger/locale/profileDowngrade.dtd
% override chrome://global/locale/netError.dtd chrome://messenger/locale/netError.dtd

View file

@ -0,0 +1,38 @@
{ stdenv, lib, buildMozillaMach, callPackage, fetchurl, fetchpatch, nixosTests }:
rec {
thunderbird = (buildMozillaMach rec {
pname = "thunderbird";
version = "91.9.1";
application = "comm/mail";
applicationName = "Mozilla Thunderbird";
binaryName = pname;
src = fetchurl {
url = "mirror://mozilla/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.xz";
sha512 = "997751056ad44367a128aef13ddd55f80798f262644253f814e6e607b3bfc3e33070ed072fa7062586378234cabc7ad106efa26befc3ecb843c5dd02c1498f0f";
};
extraPatches = [
# The file to be patched is different from firefox's `no-buildconfig-ffx90.patch`.
./no-buildconfig.patch
];
meta = with lib; {
description = "A full-featured e-mail client";
homepage = "https://thunderbird.net/";
maintainers = with maintainers; [ eelco lovesegfault pierron vcunat ];
platforms = platforms.unix;
badPlatforms = platforms.darwin;
broken = stdenv.buildPlatform.is32bit; # since Firefox 60, build on 32-bit platforms fails with "out of memory".
# not in `badPlatforms` because cross-compilation on 64-bit machine might work.
license = licenses.mpl20;
};
updateScript = callPackage ./update.nix {
attrPath = "thunderbird-unwrapped";
};
}).override {
geolocationSupport = false;
webrtcSupport = false;
pgoSupport = false; # console.warn: feeds: "downloadFeed: network connection unavailable"
};
}

View file

@ -0,0 +1,7 @@
{ callPackage
, ...
}@args:
callPackage ../../browsers/firefox/update.nix ({
baseUrl = "http://archive.mozilla.org/pub/thunderbird/releases/";
} // (builtins.removeAttrs args ["callPackage"]))

View file

@ -0,0 +1,23 @@
{ lib, wrapFirefox, gpgme, gnupg }:
browser:
args:
(wrapFirefox browser ({
libName = "thunderbird";
} // args))
.overrideAttrs (old: {
# Thunderbird's native GPG support does not yet support smartcards.
# The official upstream recommendation is to configure fall back to gnupg
# using the Thunderbird config `mail.openpgp.allow_external_gnupg`
# and GPG keys set up; instructions with pictures at:
# https://anweshadas.in/how-to-use-yubikey-or-any-gpg-smartcard-in-thunderbird-78/
# For that to work out of the box, it requires `gnupg` on PATH and
# `gpgme` in `LD_LIBRARY_PATH`; we do this below.
buildCommand = old.buildCommand + ''
wrapProgram $out/bin/thunderbird \
--prefix LD_LIBRARY_PATH ':' "${lib.makeLibraryPath [ gpgme ]}" \
--prefix PATH ':' "${lib.makeBinPath [ gnupg ]}"
'';
})

View file

@ -0,0 +1,83 @@
{ akonadi-contacts
, cmake
, fetchgit
, fetchsvn
, gnupg
, gpgme
, kcontacts
, kf5gpgmepp
, lib
, libsecret
, mimetic
, mkDerivation
, pkg-config
, qgpgme
, qtbase
, qtkeychain
, qttools
, qtwebkit
, qttranslations
, substituteAll
, withI18n ? false
}:
let
l10n = fetchsvn {
url = "svn://anonsvn.kde.org/home/kde/trunk/l10n-kf5";
rev = "1566642";
sha256 = "0y45fjib153za085la3hqpryycx33dkj3cz8kwzn2w31kvldfl1q";
};
in mkDerivation rec {
pname = "trojita";
version = "unstable-2020-07-06";
src = fetchgit {
url = "https://anongit.kde.org/trojita.git";
rev = "e973a5169f18ca862ceb8ad749c93cd621d86e14";
sha256 = "0r8nmlqwgsqkk0k8xh32fkwvv6iylj35xq2h8b7l3g03yc342kbn";
};
patches = (substituteAll {
# See https://github.com/NixOS/nixpkgs/issues/86054
src = ./fix-qttranslations-path.patch;
inherit qttranslations;
});
buildInputs = [
akonadi-contacts
gpgme
kcontacts
libsecret
mimetic
qgpgme
qtbase
qtkeychain
qtwebkit
mimetic
kf5gpgmepp
];
nativeBuildInputs = [
cmake
pkg-config
qttools
gnupg
];
postPatch = "echo ${version} > src/trojita-version"
+ lib.optionalString withI18n ''
mkdir -p po
for f in `find ${l10n} -name "trojita_common.po"`; do
cp $f po/trojita_common_$(echo $f | cut -d/ -f5).po
done
'';
meta = with lib; {
description = "A Qt IMAP e-mail client";
homepage = "http://trojita.flaska.net/";
license = with licenses; [ gpl2 gpl3 ];
maintainers = with maintainers; [ ehmry ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,13 @@
diff --git i/src/Gui/main.cpp w/src/Gui/main.cpp
index 851db4f1..e997f46e 100644
--- i/src/Gui/main.cpp
+++ w/src/Gui/main.cpp
@@ -52,7 +52,7 @@ int main(int argc, char **argv)
QTranslator qtTranslator;
qtTranslator.load(QLatin1String("qt_") + QLocale::system().name(),
- QLibraryInfo::location(QLibraryInfo::TranslationsPath));
+ QLatin1String("@qttranslations@/translations"));
app.installTranslator(&qtTranslator);
QLatin1String localeSuffix("/locale");

View file

@ -0,0 +1,61 @@
{ stdenv, lib, fetchurl, makeDesktopItem, copyDesktopItems, makeWrapper,
electron, libsecret }:
stdenv.mkDerivation rec {
pname = "tutanota-desktop";
version = "3.95.4";
src = fetchurl {
url = "https://github.com/tutao/tutanota/releases/download/tutanota-desktop-release-${version}/${pname}-${version}-unpacked-linux.tar.gz";
name = "tutanota-desktop-${version}.tar.gz";
sha256 = "0kkkp0nw4fby4663w7g0k2y1sg89pm336slzii1s3n70h8cak3dx";
};
nativeBuildInputs = [
copyDesktopItems
makeWrapper
];
dontConfigure = true;
dontBuild = true;
desktopItems = makeDesktopItem {
name = pname;
exec = "tutanota-desktop";
icon = "tutanota-desktop";
comment = meta.description;
desktopName = "Tutanota Desktop";
genericName = "Email Reader";
};
installPhase = ''
runHook preInstall
mkdir -p $out/bin $out/opt/tutanota-desktop $out/share/tutanota-desktop
cp -r ./ $out/opt/tutanota-desktop
mv $out/opt/tutanota-desktop/{locales,resources} $out/share/tutanota-desktop
for icon_size in 64 512; do
icon=resources/icons/icon/$icon_size.png
path=$out/share/icons/hicolor/$icon_size'x'$icon_size/apps/tutanota-desktop.png
install -Dm644 $icon $path
done
makeWrapper ${electron}/bin/electron \
$out/bin/tutanota-desktop \
--add-flags $out/share/tutanota-desktop/resources/app.asar \
--run "mkdir /tmp/tutanota" \
--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ libsecret ]}
runHook postInstall
'';
meta = with lib; {
description = "Tutanota official desktop client";
homepage = "https://tutanota.com/";
license = licenses.gpl3Only;
maintainers = with maintainers; [ wolfangaukang ];
platforms = [ "x86_64-linux" ];
};
}