chromium,chromedriver: 129.0.6668.91 -> 129.0.6668.100
[NixPkgs.git] / pkgs / by-name / on / onedrive / package.nix
blobae59c1c10ac95bce82fe40af7b8ca43492d8555c
2   lib,
3   autoreconfHook,
4   curl,
5   fetchFromGitHub,
6   installShellFiles,
7   ldc,
8   libnotify,
9   pkg-config,
10   sqlite,
11   stdenv,
12   systemd,
13   testers,
14   # Boolean flags
15   withSystemd ? lib.meta.availableOn stdenv.hostPlatform systemd,
18 stdenv.mkDerivation (finalAttrs: {
19   pname = "onedrive";
20   version = "2.5.2";
22   src = fetchFromGitHub {
23     owner = "abraunegg";
24     repo = "onedrive";
25     rev = "v${finalAttrs.version}";
26     hash = "sha256-neJi5lIx45GsuwZPzzwwEm1bfrL2DFSysVkxa4fCBww";
27   };
29   outputs = [
30     "out"
31     "doc"
32     "man"
33   ];
35   nativeBuildInputs = [
36     autoreconfHook
37     installShellFiles
38     ldc
39     pkg-config
40   ];
42   buildInputs = [
43     curl
44     libnotify
45     sqlite
46   ] ++ lib.optionals withSystemd [ systemd ];
48   configureFlags = [
49     (lib.enableFeature true "notifications")
50     (lib.withFeatureAs withSystemd "systemdsystemunitdir" "${placeholder "out"}/lib/systemd/system")
51     (lib.withFeatureAs withSystemd "systemduserunitdir" "${placeholder "out"}/lib/systemd/user")
52   ];
54   # we could also pass --enable-completions to configure but we would then have to
55   # figure out the paths manually and pass those along.
56   postInstall = ''
57     installShellCompletion --bash --name onedrive contrib/completions/complete.bash
58     installShellCompletion --fish --name onedrive contrib/completions/complete.fish
59     installShellCompletion --zsh --name _onedrive contrib/completions/complete.zsh
60   '';
62   passthru = {
63     tests.version = testers.testVersion {
64       package = finalAttrs.finalPackage;
65       version = "v${finalAttrs.version}";
66     };
67   };
69   meta = {
70     homepage = "https://github.com/abraunegg/onedrive";
71     description = "Complete tool to interact with OneDrive on Linux";
72     license = lib.licenses.gpl3Only;
73     mainProgram = "onedrive";
74     maintainers = with lib.maintainers; [
75       AndersonTorres
76       peterhoeg
77       bertof
78     ];
79     platforms = lib.platforms.linux;
80   };