nixpkgs/pkgs/applications/office/bookworm/default.nix
worldofpeace bdb851ee2d pantheon: use latest vala
elementary OS's ecosystem is curated around Ubuntu's LTS releases.
This means the development platform for their curated applications
always includes a LTS version of vala (in 18.04 it's 0.40).
Because of how vala development works it suspect some of these
applications to have serious issues if complied with the latest vala.
However in the past year or so, for Pantheon at least, I don't think
their applications will have much issues with latest vala, and if there
is I don't think they'd be difficult to fix. In this single regard they've
become more responsive since their preferred language is vala.

As for the curated applications I have less of this confidence in.
So I'd have to be accept less applications, but that's something
I'm willing to compromise on. And this is easily reversible or
could be done on a per-application basis. And nix already makes
this trivial.
2019-10-09 22:47:37 -04:00

68 lines
1.7 KiB
Nix

{ stdenv, fetchFromGitHub, pantheon, vala, python3, python2, pkgconfig, libxml2, meson, ninja, gtk3, gnome3, glib, webkitgtk
, gobject-introspection, sqlite, poppler, poppler_utils, html2text, curl, gnugrep, coreutils, bash, unzip, unar, wrapGAppsHook }:
stdenv.mkDerivation rec {
pname = "bookworm";
version = "unstable-2018-11-19";
src = fetchFromGitHub {
owner = "babluboy";
repo = pname;
rev = "4c3061784ff42151cac77d12bf2a28bf831fdfc5";
sha256 = "0yrqxa60xlvz249kx966z5krx8i7h17ac0hjgq9p8f0irzy5yp0n";
};
nativeBuildInputs = [
bash
gobject-introspection
libxml2
meson
ninja
pkgconfig
python3
vala
wrapGAppsHook
];
buildInputs = [
pantheon.elementary-icon-theme
pantheon.granite
glib
gnome3.libgee
gtk3
html2text
poppler
python2
sqlite
webkitgtk
];
postPatch = ''
chmod +x meson/post_install.py
patchShebangs meson/post_install.py
'';
# These programs are expected in PATH from the source code and scripts
preFixup = ''
gappsWrapperArgs+=(
--prefix PATH : "${stdenv.lib.makeBinPath [ unzip unar poppler_utils html2text coreutils curl gnugrep ]}"
--prefix PATH : $out/bin
)
'';
postFixup = ''
patchShebangs $out/share/bookworm/scripts/mobi_lib/*.py
patchShebangs $out/share/bookworm/scripts/tasks/*.sh
'';
meta = with stdenv.lib; {
description = "A simple, focused eBook reader";
longDescription = ''
Read the books you love without having to worry about different format complexities like epub, pdf, mobi, cbr, etc.
'';
homepage = https://babluboy.github.io/bookworm/;
license = licenses.gpl3Plus;
platforms = platforms.linux;
};
}