nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 stdenv,
4 fetchFromGitLab,
5 meson,
6 ninja,
7 pkg-config,
8 cargo,
9 rustc,
10 rustPlatform,
11 blueprint-compiler,
12 glib,
13 gtk4,
14 libadwaita,
15 gtksourceview5,
16 wrapGAppsHook4,
17 desktop-file-utils,
18 nix-update-script,
19}:
20
21stdenv.mkDerivation (finalAttrs: {
22 pname = "textpieces";
23 version = "4.3.1";
24
25 src = fetchFromGitLab {
26 owner = "liferooter";
27 repo = "textpieces";
28 tag = finalAttrs.version;
29 hash = "sha256-BUhcPnvi6cuhaYYNZV9pvOLH/cIV3t7ncpG55fBjqwo=";
30 };
31
32 cargoDeps = rustPlatform.fetchCargoVendor {
33 inherit (finalAttrs) pname version src;
34 hash = "sha256-bJKhakxHBhhqvgrFwEgaSNDI7cDaYQ+2SW/gSZzRvK0=";
35 };
36
37 nativeBuildInputs = [
38 meson
39 ninja
40 pkg-config
41 cargo
42 rustc
43 rustPlatform.cargoSetupHook
44 blueprint-compiler
45 wrapGAppsHook4
46 desktop-file-utils
47 ];
48
49 buildInputs = [
50 glib
51 gtk4
52 libadwaita
53 gtksourceview5
54 ];
55
56 passthru = {
57 updateScript = nix-update-script { };
58 };
59
60 meta = {
61 description = "Swiss knife of text processing";
62 longDescription = ''
63 A small tool for quick text transformations such as
64 checksums, encoding, decoding and so on.
65 '';
66 homepage = "https://gitlab.com/liferooter/textpieces";
67 mainProgram = "textpieces";
68 license = with lib.licenses; [
69 gpl3Plus
70 # and
71 cc0
72 ];
73 platforms = lib.platforms.linux;
74 maintainers = with lib.maintainers; [
75 zendo
76 liferooter
77 ];
78 teams = [ lib.teams.gnome-circle ];
79 };
80})