mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-12-12 16:53:21 +00:00
6c799bae33
* Include required frameworks; and * Use gettext from nixpkgs (required for building with newer clangs).
79 lines
1.6 KiB
Nix
79 lines
1.6 KiB
Nix
{ lib
|
|
, stdenv
|
|
, fetchFromGitLab
|
|
, cargo
|
|
, desktop-file-utils
|
|
, meson
|
|
, ninja
|
|
, pkg-config
|
|
, rustPlatform
|
|
, rustc
|
|
, wrapGAppsHook4
|
|
, cairo
|
|
, gdk-pixbuf
|
|
, glib
|
|
, gtk4
|
|
, libadwaita
|
|
, pango
|
|
, gettext
|
|
, darwin
|
|
}:
|
|
|
|
stdenv.mkDerivation rec {
|
|
pname = "diebahn";
|
|
version = "1.5.0";
|
|
|
|
src = fetchFromGitLab {
|
|
owner = "schmiddi-on-mobile";
|
|
repo = "diebahn";
|
|
rev = version;
|
|
hash = "sha256-WEjMtRXRmcbgCIQNJRlGYGQhem9W8nb/lsjft0oWxAk=";
|
|
};
|
|
|
|
cargoDeps = rustPlatform.importCargoLock {
|
|
lockFile = ./Cargo.lock;
|
|
outputHashes = {
|
|
"hafas-rs-0.1.0" = "sha256-9YmWiief8Nux1ZkPTZjzer/qKAa5hORVn8HngMtKDxM=";
|
|
};
|
|
};
|
|
|
|
nativeBuildInputs = [
|
|
cargo
|
|
desktop-file-utils
|
|
meson
|
|
ninja
|
|
pkg-config
|
|
rustPlatform.cargoSetupHook
|
|
rustc
|
|
wrapGAppsHook4
|
|
];
|
|
|
|
buildInputs = [
|
|
cairo
|
|
gdk-pixbuf
|
|
glib
|
|
gtk4
|
|
libadwaita
|
|
pango
|
|
] ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
|
|
CoreFoundation
|
|
Foundation
|
|
Security
|
|
]);
|
|
|
|
# Darwin needs to link against gettext from nixpkgs instead of the one vendored by gettext-sys
|
|
# because the vendored copy does not build with newer versions of clang.
|
|
env = lib.optionalAttrs stdenv.isDarwin {
|
|
GETTEXT_BIN_DIR = "${lib.getBin gettext}/bin";
|
|
GETTEXT_INCLUDE_DIR = "${lib.getDev gettext}/include";
|
|
GETTEXT_LIB_DIR = "${lib.getLib gettext}/lib";
|
|
};
|
|
|
|
meta = {
|
|
description = "GTK4 frontend for the travel information of the german railway";
|
|
homepage = "https://gitlab.com/schmiddi-on-mobile/diebahn";
|
|
license = lib.licenses.gpl3Plus;
|
|
maintainers = with lib.maintainers; [ dotlambda ];
|
|
};
|
|
}
|