python3Packages.orjson: Disable failing tests on 32 bit
[NixPkgs.git] / pkgs / applications / office / karlender / default.nix
blob4c3735f77d5c39cee70fedac118d3216349c50b6
1 { lib
2 , rustPlatform
3 , fetchFromGitLab
4 , pkg-config
5 , gtk4
6 , libadwaita
7 , wrapGAppsHook4
8 , glib
9 , tzdata
12 rustPlatform.buildRustPackage rec {
13   pname = "karlender";
14   version = "0.7.1";
16   src = fetchFromGitLab {
17     owner = "floers";
18     repo = pname;
19     rev = "v${version}";
20     hash = "sha256-dgxhXxtwQvaWMLCh8ac67L+R6jnJQdFzoyWKyrboPTk=";
21   };
23   cargoHash = "sha256-DsayK3wk2BVG2tqijWWQqUv5uPb/lcZXmwy8pbmd430=";
25   nativeBuildInputs = [
26     pkg-config
27     wrapGAppsHook4
28     glib
29   ];
31   buildInputs = [
32     gtk4
33     libadwaita
34   ];
36   postPatch = ''
37     substituteInPlace src/domain/time.rs --replace "/usr/share/zoneinfo" "${tzdata}/share/zoneinfo"
38   '';
40   postInstall = ''
41     substituteInPlace target/gra-gen/data/codes.loers.Karlender.desktop \
42       --replace "Exec=codes.loers.Karlender" "Exec=karlender"
43     substituteInPlace target/gra-gen/data/codes.loers.Karlender.appdata.xml \
44       --replace "<binary>codes.loers.Karlender</binary>" "<binary>karlender</binary>"
45     install -Dm444 target/gra-gen/codes.loers.Karlender.gschema.xml -t $out/share/gsettings-schemas/$name/glib-2.0/schemas/
46     glib-compile-schemas $out/share/gsettings-schemas/$name/glib-2.0/schemas/
47     install -Dm444 target/gra-gen/data/codes.loers.Karlender.svg -t $out/share/icons/hicolor/scalable/apps/
48     install -Dm444 target/gra-gen/data/codes.loers.Karlender.64.png -T $out/share/icons/hicolor/64x64/apps/codes.loers.Karlender.png
49     install -Dm444 target/gra-gen/data/codes.loers.Karlender.128.png -T $out/share/icons/hicolor/128x128/apps/codes.loers.Karlender.png
50     install -Dm444 target/gra-gen/data/codes.loers.Karlender.desktop -t $out/share/applications/
51     install -Dm444 target/gra-gen/data/codes.loers.Karlender.appdata.xml -t $out/share/metainfo/
52   '';
54   meta = with lib; {
55     description = "Mobile-friendly GTK calendar application";
56     homepage = "https://gitlab.com/floers/karlender";
57     license = licenses.gpl3Plus;
58     maintainers = with maintainers; [ chuangzhu ];
59     platforms = platforms.linux;
60   };