Merge pull request #268619 from tweag/lib-descriptions
[NixPkgs.git] / pkgs / applications / maui / default.nix
blobb64a3d8455eb81fc23aefc819bc6fa9129701582
1 /*
3 # New packages
5 READ THIS FIRST
7 This module is for the MauiKit framework and official Maui applications. All
8 available packages are listed in `callPackage ./srcs.nix`, although some are not yet
9 packaged in Nixpkgs.
11 IF YOUR PACKAGE IS NOT LISTED IN `callPackage ./srcs.nix`, IT DOES NOT GO HERE.
13 See also `pkgs/applications/kde` as this is what this is based on.
15 # Updates
17 1. Update the URL in `./fetch.sh`.
18 2. Run `callPackage ./maintainers/scripts/fetch-kde-qt.sh pkgs/applications/maui`
19    from the top of the Nixpkgs tree.
20 3. Use `nixpkgs-review wip` to check that everything builds.
21 4. Commit the changes and open a pull request.
25 { lib
26 , libsForQt5
27 , fetchurl
30 let
31   mirror = "mirror://kde";
32   srcs = import ./srcs.nix { inherit fetchurl mirror; };
34   mkDerivation = args:
35     let
36       inherit (args) pname;
37       inherit (srcs.${pname}) src version;
38       mkDerivation =
39         libsForQt5.callPackage ({ mkDerivation }: mkDerivation) {};
40     in
41       mkDerivation (args // {
42         inherit pname version src;
44         outputs = args.outputs or [ "out" ];
46         meta =
47           let meta = args.meta or {}; in
48           meta // {
49             homepage = meta.homepage or "https://mauikit.org/";
50             platforms = meta.platforms or lib.platforms.linux;
51           };
52       });
54   packages = self:
55     let
56       callPackage = self.newScope {
57         inherit mkDerivation;
58       };
59     in {
60       # libraries
61       mauikit = callPackage ./mauikit.nix { };
62       mauikit-accounts = callPackage ./mauikit-accounts.nix { };
63       mauikit-calendar = callPackage ./mauikit-calendar { };
64       mauikit-documents = callPackage ./mauikit-documents.nix { };
65       mauikit-filebrowsing = callPackage ./mauikit-filebrowsing.nix { };
66       mauikit-imagetools = callPackage ./mauikit-imagetools.nix { };
67       mauikit-terminal = callPackage ./mauikit-terminal.nix { };
68       mauikit-texteditor = callPackage ./mauikit-texteditor.nix { };
69       mauiman = callPackage ./mauiman.nix { };
71       # applications
72       booth = callPackage ./booth.nix { };
73       buho = callPackage ./buho.nix { };
74       clip = callPackage ./clip.nix { };
75       communicator = callPackage ./communicator.nix { };
76       index = callPackage ./index.nix { };
77       nota = callPackage ./nota.nix { };
78       pix = callPackage ./pix.nix { };
79       shelf = callPackage ./shelf.nix { };
80       station = callPackage ./station.nix { };
81       vvave = callPackage ./vvave.nix { };
82     };
84 in lib.makeScope libsForQt5.newScope packages