1
0
Fork 0

Build tasktree with carnix

This commit is contained in:
Malte Brandy 2018-06-30 04:16:03 +02:00
parent f17a3be347
commit 0c94ccae4d
No known key found for this signature in database
GPG key ID: 226A2D41EF5378C9
2 changed files with 50 additions and 40 deletions

View file

@ -1,4 +1,4 @@
# Generated by carnix 0.6.6: carnix -o deps.nix /home/maralorn/code/tasktree/Cargo.lock # Generated by carnix 0.7.2: carnix nix --src .
{ lib, buildPlatform, buildRustCrate, fetchgit }: { lib, buildPlatform, buildRustCrate, fetchgit }:
let kernel = buildPlatform.parsed.kernel.name; let kernel = buildPlatform.parsed.kernel.name;
abi = buildPlatform.parsed.abi.name; abi = buildPlatform.parsed.abi.name;
@ -19,6 +19,7 @@ let kernel = buildPlatform.parsed.kernel.name;
in in
rec { rec {
tasktree = f: tasktree_0_1_0 { features = tasktree_0_1_0_features { tasktree_0_1_0 = f; }; }; tasktree = f: tasktree_0_1_0 { features = tasktree_0_1_0_features { tasktree_0_1_0 = f; }; };
__all = [ (tasktree {}) ];
aho_corasick_0_6_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate { aho_corasick_0_6_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
crateName = "aho-corasick"; crateName = "aho-corasick";
version = "0.6.3"; version = "0.6.3";
@ -362,7 +363,7 @@ rec {
crateName = "tasktree"; crateName = "tasktree";
version = "0.1.0"; version = "0.1.0";
authors = [ "Malte Brandy <malte.brandy@maralorn.de>" ]; authors = [ "Malte Brandy <malte.brandy@maralorn.de>" ];
src = /home/maralorn/code/tasktree; src = ./.;
inherit dependencies buildDependencies features; inherit dependencies buildDependencies features;
}; };
thread_local_0_3_4_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate { thread_local_0_3_4_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
@ -1692,7 +1693,7 @@ rec {
gdk_0_5_3.default = (f.gdk_0_5_3.default or false); gdk_0_5_3.default = (f.gdk_0_5_3.default or false);
glib_0_1_3.default = (f.glib_0_1_3.default or false); glib_0_1_3.default = (f.glib_0_1_3.default or false);
gtk_0_1_3.default = (f.gtk_0_1_3.default or false); gtk_0_1_3.default = (f.gtk_0_1_3.default or false);
gtk_0_1_3.v3_22 = true; gtk_0_1_3.v3_18 = true;
lazy_static_0_2_2.default = true; lazy_static_0_2_2.default = true;
regex_0_2_2.default = true; regex_0_2_2.default = true;
serde_0_9_15.default = true; serde_0_9_15.default = true;

View file

@ -1,39 +1,48 @@
{ rustPlatform, gnome3, atk, cairo, gdk_pixbuf, glib, pango, makeDesktopItem, fetchFromGitHub }: { pkgs, defaultCrateOverrides, makeDesktopItem, atk , pango, gnome3, cairo, gdk_pixbuf, glib, ... }:
let ((pkgs.callPackage ./Cargo.nix {}).tasktree_0_1_0 {}).override {
desktopItem = makeDesktopItem { crateOverrides = defaultCrateOverrides // {
name = "Tasktree"; atk-sys = attr: { buildInputs = [ atk ]; };
exec = "tasktree"; pango-sys = attr: { buildInputs = [ pango glib ]; };
icon = "tasktree"; gio = attr: { buildInputs = [ glib ]; };
comment = "A taskwarrior UI"; gdk-sys = attr: { buildInputs = [ gdk_pixbuf glib cairo pango ]; };
desktopName = "Tasktree"; gtk-sys = attr: { buildInputs = [ gdk_pixbuf glib cairo pango atk gnome3.gtk ]; };
genericName = "Tasktree"; gdk = attr: { buildInputs = [ cairo gnome3.gtk gdk_pixbuf pango ]; };
categories = "Office;"; gtk = attr: { buildInputs = [ cairo atk gnome3.gtk gdk_pixbuf pango ]; };
}; tasktree = attrs:
in let
with rustPlatform; buildRustPackage rec { desktopItem = makeDesktopItem {
name = "tasktree"; name = "Tasktree";
version = "abb312f"; exec = "tasktree";
src = fetchFromGitHub { icon = "tasktree";
rev = version; comment = "A taskwarrior UI";
owner = "maralorn"; desktopName = "Tasktree";
repo = "tasktree"; genericName = "Tasktree";
sha256 = "139xjvi7b62k3075b4md9hdkb1xafhhiyz2yhbb96d73j1gkqs77"; categories = "Office;";
}; };
depsSha256 = "14acvigygrrqyvxra2n01vpadc3mcf8981jrggpvwfbz58jrsa7h"; in {
cargoSha256 = "14acvigygrrqyvxra2n01vpadc3mcf8981jrggpvwfbz58jrsa7h";
propagatedBuildInputs = [ gnome3.gtk atk cairo gdk_pixbuf glib pango ]; postInstall = ''
postInstall = '' mkdir -p $out/share/applications
function installIcon () { ln -s ${desktopItem}/share/applications/* $out/share/applications/
mkdir -p $out/share/icons/hicolor/$1/apps/ rm $out/lib/link
cp icons/$1.png $out/share/icons/hicolor/$1/apps/tasktree.png '';
} };
installIcon "16x16" };
installIcon "32x32"
installIcon "64x64"
mkdir -p $out/share/applications
ln -s ${desktopItem}/share/applications/* $out/share/applications/
'';
doCheck = false;
} }
#propagatedBuildInputs = [ gnome3.gtk atk cairo gdk_pixbuf glib pango ];
#postInstall = ''
#function installIcon () {
#mkdir -p $out/share/icons/hicolor/$1/apps/
#cp icons/$1.png $out/share/icons/hicolor/$1/apps/tasktree.png
#}
#installIcon "16x16"
#installIcon "32x32"
#installIcon "64x64"
#mkdir -p $out/share/applications
#ln -s ${desktopItem}/share/applications/* $out/share/applications/
#'';
#doCheck = false;
#}