flare-signal-nixified: init at 0.10.0 (deps build; flare itself does not)

This commit is contained in:
Colin 2023-10-30 08:04:07 +00:00
parent 55680b68b2
commit 1c483992da
5 changed files with 15836 additions and 0 deletions

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,13 @@
{
"blurhash 0.1.1 (git+https://github.com/marc0x1/blurhash-rs?branch=pixbuf-patch#c07c0cbcd29b2277e8c1d0f6ae07b2e0fad1ed52)": "082jv82hsyjpng4idwn120hd7hcyln92n47m056fl2pn6b6nrfj8",
"curve25519-dalek 3.2.1 (git+https://github.com/Schmiddiii/curve25519-dalek?rev=1b9f81352bb659999a46af961f069d635ca432d3#1b9f81352bb659999a46af961f069d635ca432d3)": "0bdwcgski8gv1qig2qqpfcq572qdg8lk96cflv0x5lkngy3524fj",
"libsignal-protocol 0.1.0 (git+https://github.com/signalapp/libsignal?tag=v0.28.1#86b2fcc427bf32530866f4e30b18707c1f3682f7)": "1las4cjr94ghvwyif7sk4l7g7mk237h9a6czwv5517jr6ccjn32m",
"libsignal-service 0.1.0 (git+https://github.com/whisperfish/libsignal-service-rs?rev=8789920#87899201123b8095cd0f30317620a6d5b7fd652b)": "0cc1wz9j39faqz92brdydi4lv7dhds4j5fn0nrv1c6mgyhhg9rnn",
"libsignal-service-hyper 0.1.0 (git+https://github.com/whisperfish/libsignal-service-rs?rev=8789920#87899201123b8095cd0f30317620a6d5b7fd652b)": "0cc1wz9j39faqz92brdydi4lv7dhds4j5fn0nrv1c6mgyhhg9rnn",
"poksho 0.7.0 (git+https://github.com/signalapp/libsignal?tag=v0.28.1#86b2fcc427bf32530866f4e30b18707c1f3682f7)": "1las4cjr94ghvwyif7sk4l7g7mk237h9a6czwv5517jr6ccjn32m",
"presage 0.6.0-dev (git+https://github.com/MarcusGrass/presage?rev=d6d8fff#d6d8fff5f5e6429e6fe9d3c6d388323d094fdab6)": "029n526y3i7vz3nlwwcycrkdxyrb1csha6y6c807mj7qgw30laz2",
"presage-store-sled 0.6.0-dev (git+https://github.com/MarcusGrass/presage?rev=d6d8fff#d6d8fff5f5e6429e6fe9d3c6d388323d094fdab6)": "029n526y3i7vz3nlwwcycrkdxyrb1csha6y6c807mj7qgw30laz2",
"signal-crypto 0.1.0 (git+https://github.com/signalapp/libsignal?tag=v0.28.1#86b2fcc427bf32530866f4e30b18707c1f3682f7)": "1las4cjr94ghvwyif7sk4l7g7mk237h9a6czwv5517jr6ccjn32m",
"zkcredential 0.1.0 (git+https://github.com/signalapp/libsignal?tag=v0.28.1#86b2fcc427bf32530866f4e30b18707c1f3682f7)": "1las4cjr94ghvwyif7sk4l7g7mk237h9a6czwv5517jr6ccjn32m",
"zkgroup 0.9.0 (git+https://github.com/signalapp/libsignal?tag=v0.28.1#86b2fcc427bf32530866f4e30b18707c1f3682f7)": "1las4cjr94ghvwyif7sk4l7g7mk237h9a6czwv5517jr6ccjn32m"
}

View File

@ -0,0 +1,101 @@
# Cargo.nix and crate-hashes.json were created with:
# - `nix run '.#crate2nix' -- generate -f ~/ref/repos/schmiddi-on-mobile/flare/Cargo.toml`
# - `sed -i 's/target."curve25519_dalek_backend"/target."curve25519_dalek_backend" or ""/g' Cargo.nix`
#
# the generated Cargo.nix points to an impure source (~/ref/...), but that's resolved by overriding `src` below
{ pkgs
, fetchFromGitLab
, flare-signal
, gdk-pixbuf
, glib
, gtk4
, gtksourceview5
, libadwaita
, pkg-config
}:
let
cargoNix = import ./Cargo.nix {
inherit pkgs;
defaultCrateOverrides = pkgs.defaultCrateOverrides // {
flare = attrs: attrs // {
# inherit (flare-signal) src;
src = fetchFromGitLab {
domain = "gitlab.com";
owner = "schmiddi-on-mobile";
repo = "flare";
# flare/Cargo.nix version compatibility:
# - flare tip (49060eee): same errors as 0.10.1-beta.2
# - flare 0.10.1-beta.2: requires gtk 4.11, not yet in nixpkgs
# - <https://github.com/NixOS/nixpkgs/pull/247766>
# - specifically, that's because of gdk4-sys 0.7.2.
# - after 0.10.1-beta.1, there's a translations update, then immediately "ui(): Port to GTK 4.12 and Libadwaita 1.4"
# so 0.10.1-beta.1 is effectively the last gtk 4.10 compatible version
# - flare 0.10.1-beta.1: uses a variant of serde_derive which doesn't cross compile in nixpkgs
# - after serde_derive downgraded => 1.0.171:
# ```
# > 424 | .send(manager.sync_contacts().await)
# > | ^^^^^^^^^^^^^ private method
# > --> /presage-d6d8fff/presage/src/manager.rs:650:5
# > = note: private method defined here
# ```
# - flare 0.10.0: uses a version of serde_derive which doesn't cross compile in nixpkgs
# - same error as 0.9.0 once serde_derive is downgraded to 1.0.171
# - flare 0.9.3: uses a version of serde_derive which doesn't cross compile in nixpkgs
# - same error as 0.9.0 once serde_derive is downgraded to 1.0.171
# - flare 0.9.2: uses a version of serde_derive which doesn't cross compile in nixpkgs
# - same error as 0.9.0 once serde_derive is downgraded to 1.0.171
# - flare 0.9.1: uses a version of serde_derive (1.0.175) which doesn't cross compile in nixpkgs
# - flare 16acc70ceb6e80eb2d87a92e72e2727e8b98b4db (last rev before serde_derive 1.0.175): same error as 0.9.0
# - flare 0.9.0: deps build but crate itself fails because `mod config` is unknown (i.e. we didn't invoke meson and let it generate config.rs)
# rev = "49060eee61e26b622150179cece4918c1707db6a";
# hash = "sha256-/xP4AC0ZkVsNIFiTxyTsF0sJWIj53OIiXlSLU0LhBRM=";
# rev = "0.10.1-beta.2";
# hash = "sha256-xkTM8Jeyb89ZUo2lFKNm8HlTe8BTlO/flZmENRfDEm4=";
# rev = "0.10.1-beta.1";
# hash = "sha256-nUR3jnbjMJvI3XbguFLz5yQL3SAXzLkdVwXyhcMeZoc=";
rev = "0.10.0";
hash = "sha256-+9zpYW9xjLe78c2GRL6raFDR5g+R/JWxQzU/ZS+5JtY=";
# rev = "0.9.3";
# hash = "sha256-bTR3Jzzy8dVdBJ4Mo2PYstEnNzBVwiWE8hRBnJ7pJSs=";
# rev = "0.9.2";
# hash = "sha256-70OqHCe+NZ0dn1sjpkke5MtXU3bFgpwkm0TYlbXOUl8=";
# rev = "16acc70ceb6e80eb2d87a92e72e2727e8b98b4db";
# hash = "sha256-Lz7h5JUrqBUsvRICW3QacuO8rkeGBY9yroq/Gtb7nMw=";
# rev = "0.9.0";
# hash = "sha256-6p9uuK71fJvJs0U14jJEVb2mfpZWrCZZFE3eoZe9eVo=";
};
};
gdk-pixbuf-sys = attrs: attrs // {
nativeBuildInputs = [ pkg-config ];
buildInputs = [ gdk-pixbuf ];
};
gdk4-x11-sys = attrs: attrs // {
nativeBuildInputs = [ pkg-config ];
buildInputs = [ gtk4 ]; # depends on "gtk4_x11"
};
gdk4-wayland-sys = attrs: attrs // {
nativeBuildInputs = [ pkg-config ];
buildInputs = [ gtk4 ]; # depends on "gtk4_wayland"
};
gio-sys = attrs: attrs // {
nativeBuildInputs = [ pkg-config ];
buildInputs = [ glib ];
};
gobject-sys = attrs: attrs // {
nativeBuildInputs = [ pkg-config ];
buildInputs = [ glib ];
};
libadwaita-sys = attrs: attrs // {
nativeBuildInputs = [ pkg-config ];
buildInputs = [ libadwaita ];
};
sourceview5-sys = attrs: attrs // {
nativeBuildInputs = [ pkg-config ];
buildInputs = [ gtksourceview5 ];
};
};
};
in cargoNix.workspaceMembers.flare.build

View File

@ -168,6 +168,8 @@ let
installPhase = "ninjaInstallPhase";
};
# TODO: upstream these into `pkgs/build-support/rust/default-crate-overrides.nix`
clang-sys = attrs: attrs // {
LIBCLANG_PATH = "${buildPackages.llvmPackages.libclang.lib}/lib";
};

View File

@ -30,6 +30,7 @@ let
eg25-control = callPackage ./additional/eg25-control { };
eg25-manager = callPackage ./additional/eg25-manager { };
feeds = lib.recurseIntoAttrs (callPackage ./additional/feeds { });
flare-signal-nixified = callPackage ./additional/flare-signal-nixified { };
lemoa = callPackage ./additional/lemoa { };
jellyfin-media-player-qt6 = callPackage ./additional/jellyfin-media-player-qt6 { };
firefox-extensions = lib.recurseIntoAttrs (callPackage ./additional/firefox-extensions { });