tangled
alpha
login
or
join now
tjh.dev
/
nixpkgs
Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
0
fork
atom
overview
issues
pulls
pipelines
timeshift: format expressions
Yueh-Shun Li
1 year ago
c6a09301
5c8a2cab
+68
-51
4 changed files
expand all
collapse all
unified
split
pkgs
applications
backup
timeshift
default.nix
minimal.nix
unwrapped.nix
wrapper.nix
+23
-19
pkgs/applications/backup/timeshift/default.nix
···
1
-
{ callPackage
2
-
, timeshift-unwrapped
3
-
, rsync
4
-
, coreutils
5
-
, mount
6
-
, umount
7
-
, psmisc
8
-
, cron
9
-
, btrfs-progs
10
-
, grubPackage
0
11
}:
12
let
13
timeshift-wrapper = callPackage ./wrapper.nix { };
···
21
cron
22
btrfs-progs
23
grubPackage
24
-
])).overrideAttrs (oldAttrs: {
25
-
meta = oldAttrs.meta // {
26
-
description = oldAttrs.meta.description;
27
-
longDescription = oldAttrs.meta.longDescription + ''
28
-
This package comes with runtime dependencies of command utilities provided by rsync, coreutils, mount, umount, psmisc, cron and btrfs.
29
-
If you want to use the commands provided by the system, use timeshift-minimal instead.
30
-
'';
31
-
};
32
-
})
0
0
0
···
1
+
{
2
+
callPackage,
3
+
timeshift-unwrapped,
4
+
rsync,
5
+
coreutils,
6
+
mount,
7
+
umount,
8
+
psmisc,
9
+
cron,
10
+
btrfs-progs,
11
+
grubPackage,
12
}:
13
let
14
timeshift-wrapper = callPackage ./wrapper.nix { };
···
22
cron
23
btrfs-progs
24
grubPackage
25
+
])).overrideAttrs
26
+
(oldAttrs: {
27
+
meta = oldAttrs.meta // {
28
+
description = oldAttrs.meta.description;
29
+
longDescription =
30
+
oldAttrs.meta.longDescription
31
+
+ ''
32
+
This package comes with runtime dependencies of command utilities provided by rsync, coreutils, mount, umount, psmisc, cron and btrfs.
33
+
If you want to use the commands provided by the system, use timeshift-minimal instead.
34
+
'';
35
+
};
36
+
})
+9
-6
pkgs/applications/backup/timeshift/minimal.nix
···
1
-
{ callPackage
2
-
, timeshift-unwrapped
0
3
}:
4
let
5
timeshift-wrapper = callPackage ./wrapper.nix { };
···
7
(timeshift-wrapper timeshift-unwrapped [ ]).overrideAttrs (oldAttrs: {
8
meta = oldAttrs.meta // {
9
description = oldAttrs.meta.description + " (without runtime dependencies)";
10
-
longDescription = oldAttrs.meta.longDescription + ''
11
-
This package is a wrapped version of timeshift-unwrapped
12
-
without runtime dependencies of command utilities.
13
-
'';
0
0
14
};
15
})
···
1
+
{
2
+
callPackage,
3
+
timeshift-unwrapped,
4
}:
5
let
6
timeshift-wrapper = callPackage ./wrapper.nix { };
···
8
(timeshift-wrapper timeshift-unwrapped [ ]).overrideAttrs (oldAttrs: {
9
meta = oldAttrs.meta // {
10
description = oldAttrs.meta.description + " (without runtime dependencies)";
11
+
longDescription =
12
+
oldAttrs.meta.longDescription
13
+
+ ''
14
+
This package is a wrapped version of timeshift-unwrapped
15
+
without runtime dependencies of command utilities.
16
+
'';
17
};
18
})
+20
-16
pkgs/applications/backup/timeshift/unwrapped.nix
···
1
-
{ lib
2
-
, stdenv
3
-
, fetchFromGitHub
4
-
, gettext
5
-
, help2man
6
-
, meson
7
-
, ninja
8
-
, pkg-config
9
-
, vala
10
-
, gtk3
11
-
, json-glib
12
-
, libgee
13
-
, util-linux
14
-
, vte
15
-
, xapp
0
16
}:
17
18
stdenv.mkDerivation rec {
···
65
homepage = "https://github.com/linuxmint/timeshift";
66
license = licenses.gpl2Plus;
67
platforms = platforms.linux;
68
-
maintainers = with maintainers; [ ShamrockLee bobby285271 ];
0
0
0
69
};
70
}
···
1
+
{
2
+
lib,
3
+
stdenv,
4
+
fetchFromGitHub,
5
+
gettext,
6
+
help2man,
7
+
meson,
8
+
ninja,
9
+
pkg-config,
10
+
vala,
11
+
gtk3,
12
+
json-glib,
13
+
libgee,
14
+
util-linux,
15
+
vte,
16
+
xapp,
17
}:
18
19
stdenv.mkDerivation rec {
···
66
homepage = "https://github.com/linuxmint/timeshift";
67
license = licenses.gpl2Plus;
68
platforms = platforms.linux;
69
+
maintainers = with maintainers; [
70
+
ShamrockLee
71
+
bobby285271
72
+
];
73
};
74
}
+16
-10
pkgs/applications/backup/timeshift/wrapper.nix
···
1
-
{ stdenvNoCC
2
-
, lib
3
-
, wrapGAppsHook3
4
-
, gdk-pixbuf
5
-
, librsvg
6
-
, xorg
7
-
, shared-mime-info
0
8
}:
9
10
-
timeshift-unwrapped:
11
-
runtimeDeps:
12
stdenvNoCC.mkDerivation {
13
inherit (timeshift-unwrapped) pname version;
14
···
34
)
35
gappsWrapperArgs+=(
36
# Thumbnailers
37
-
--prefix XDG_DATA_DIRS : "${lib.makeSearchPath "share" [ gdk-pixbuf librsvg shared-mime-info ]}"
0
0
0
0
0
0
38
"''${makeWrapperArgs[@]}"
39
)
40
wrapProgram "$out/bin/timeshift" "''${makeWrapperArgs[@]}"
···
1
+
{
2
+
stdenvNoCC,
3
+
lib,
4
+
wrapGAppsHook3,
5
+
gdk-pixbuf,
6
+
librsvg,
7
+
xorg,
8
+
shared-mime-info,
9
}:
10
11
+
timeshift-unwrapped: runtimeDeps:
0
12
stdenvNoCC.mkDerivation {
13
inherit (timeshift-unwrapped) pname version;
14
···
34
)
35
gappsWrapperArgs+=(
36
# Thumbnailers
37
+
--prefix XDG_DATA_DIRS : "${
38
+
lib.makeSearchPath "share" [
39
+
gdk-pixbuf
40
+
librsvg
41
+
shared-mime-info
42
+
]
43
+
}"
44
"''${makeWrapperArgs[@]}"
45
)
46
wrapProgram "$out/bin/timeshift" "''${makeWrapperArgs[@]}"