mastodon: 4.3.1 -> 4.3.2 (#361487)
[NixPkgs.git] / pkgs / desktops / pantheon / default.nix
blobcde3255eb46fc5813a03eac1c2ff9ea130a08ab6
1 { config, pkgs, lib, gnome }:
4 lib.makeScope pkgs.newScope (self: with self; {
6   switchboardPlugs = [
7     switchboard-plug-about
8     switchboard-plug-applications
9     switchboard-plug-bluetooth
10     switchboard-plug-datetime
11     switchboard-plug-display
12     switchboard-plug-keyboard
13     switchboard-plug-mouse-touchpad
14     switchboard-plug-network
15     switchboard-plug-notifications
16     switchboard-plug-onlineaccounts
17     switchboard-plug-pantheon-shell
18     switchboard-plug-power
19     switchboard-plug-printers
20     switchboard-plug-security-privacy
21     switchboard-plug-sharing
22     switchboard-plug-sound
23     switchboard-plug-wacom
24   ];
26   wingpanelIndicators = [
27     wingpanel-applications-menu
28     wingpanel-indicator-bluetooth
29     wingpanel-indicator-datetime
30     wingpanel-indicator-keyboard
31     wingpanel-indicator-network
32     wingpanel-indicator-nightlight
33     wingpanel-indicator-notifications
34     wingpanel-indicator-power
35     wingpanel-indicator-sound
36     wingpanel-quick-settings
37   ];
39   maintainers = lib.teams.pantheon.members;
41   mutter = pkgs.mutter43;
43   # Using 43 to match Mutter used in Pantheon
44   gnome-settings-daemon = pkgs.gnome-settings-daemon43;
46   elementary-gsettings-schemas = callPackage ./desktop/elementary-gsettings-schemas { };
48   touchegg = pkgs.touchegg.override { withPantheon = true; };
50   #### APPS
52   appcenter = callPackage ./apps/appcenter { };
54   elementary-calculator = callPackage ./apps/elementary-calculator { };
56   elementary-calendar = callPackage ./apps/elementary-calendar { };
58   elementary-camera = callPackage ./apps/elementary-camera { };
60   elementary-code = callPackage ./apps/elementary-code { };
62   elementary-dock = callPackage ./apps/elementary-dock { };
64   elementary-files = callPackage ./apps/elementary-files { };
66   elementary-feedback = callPackage ./apps/elementary-feedback { };
68   elementary-iconbrowser = callPackage ./apps/elementary-iconbrowser { };
70   elementary-mail = callPackage ./apps/elementary-mail { };
72   elementary-music = callPackage ./apps/elementary-music { };
74   elementary-photos = callPackage ./apps/elementary-photos { };
76   elementary-screenshot = callPackage ./apps/elementary-screenshot { };
78   elementary-tasks = callPackage ./apps/elementary-tasks { };
80   elementary-terminal = callPackage ./apps/elementary-terminal { };
82   elementary-videos = callPackage ./apps/elementary-videos { };
84   epiphany = pkgs.epiphany.override { withPantheon = true; };
86   sideload = callPackage ./apps/sideload { };
88   #### DESKTOP
90   elementary-default-settings = callPackage ./desktop/elementary-default-settings { };
92   elementary-greeter = callPackage ./desktop/elementary-greeter { };
94   elementary-onboarding = callPackage ./desktop/elementary-onboarding { };
96   elementary-print-shim = callPackage ./desktop/elementary-print-shim { };
98   elementary-session-settings = callPackage ./desktop/elementary-session-settings { };
100   elementary-shortcut-overlay = callPackage ./desktop/elementary-shortcut-overlay { };
102   file-roller-contract = callPackage ./desktop/file-roller-contract { };
104   gala = callPackage ./desktop/gala { };
106   wingpanel = callPackage ./desktop/wingpanel { };
108   wingpanel-with-indicators = callPackage ./desktop/wingpanel/wrapper.nix {
109     indicators = null;
110   };
112   #### LIBRARIES
114   granite = callPackage ./granite { };
116   granite7 = callPackage ./granite/7 { };
118   #### SERVICES
120   contractor = callPackage ./services/contractor { };
122   elementary-bluetooth-daemon = callPackage ./services/elementary-bluetooth-daemon { };
124   elementary-capnet-assist = callPackage ./services/elementary-capnet-assist { };
126   elementary-notifications = callPackage ./services/elementary-notifications { };
128   elementary-settings-daemon = callPackage ./services/elementary-settings-daemon { };
130   pantheon-agent-geoclue2 = callPackage ./services/pantheon-agent-geoclue2 { };
132   pantheon-agent-polkit = callPackage ./services/pantheon-agent-polkit { };
134   xdg-desktop-portal-pantheon = callPackage ./services/xdg-desktop-portal-pantheon { };
136   #### WINGPANEL INDICATORS
138   wingpanel-applications-menu = callPackage ./desktop/wingpanel-indicators/applications-menu { };
140   wingpanel-indicator-a11y = callPackage ./desktop/wingpanel-indicators/a11y { };
142   wingpanel-indicator-bluetooth = callPackage ./desktop/wingpanel-indicators/bluetooth { };
144   wingpanel-indicator-datetime = callPackage ./desktop/wingpanel-indicators/datetime { };
146   wingpanel-indicator-keyboard = callPackage ./desktop/wingpanel-indicators/keyboard { };
148   wingpanel-indicator-network = callPackage ./desktop/wingpanel-indicators/network { };
150   wingpanel-indicator-nightlight = callPackage ./desktop/wingpanel-indicators/nightlight { };
152   wingpanel-indicator-notifications = callPackage ./desktop/wingpanel-indicators/notifications { };
154   wingpanel-indicator-power = callPackage ./desktop/wingpanel-indicators/power { };
156   wingpanel-indicator-sound = callPackage ./desktop/wingpanel-indicators/sound { };
158   wingpanel-quick-settings = callPackage ./desktop/wingpanel-indicators/quick-settings { };
160   #### SWITCHBOARD
162   switchboard = callPackage ./apps/switchboard { };
164   switchboard-with-plugs = callPackage ./apps/switchboard/wrapper.nix {
165     plugs = null;
166   };
168   switchboard-plug-about = callPackage ./apps/switchboard-plugs/about { };
170   switchboard-plug-applications = callPackage ./apps/switchboard-plugs/applications { };
172   switchboard-plug-bluetooth = callPackage ./apps/switchboard-plugs/bluetooth { };
174   switchboard-plug-datetime = callPackage ./apps/switchboard-plugs/datetime { };
176   switchboard-plug-display = callPackage ./apps/switchboard-plugs/display { };
178   switchboard-plug-keyboard = callPackage ./apps/switchboard-plugs/keyboard { };
180   switchboard-plug-mouse-touchpad = callPackage ./apps/switchboard-plugs/mouse-touchpad { };
182   switchboard-plug-network = callPackage ./apps/switchboard-plugs/network { };
184   switchboard-plug-notifications = callPackage ./apps/switchboard-plugs/notifications { };
186   switchboard-plug-onlineaccounts = callPackage ./apps/switchboard-plugs/onlineaccounts { };
188   switchboard-plug-pantheon-shell = callPackage ./apps/switchboard-plugs/pantheon-shell { };
190   switchboard-plug-power = callPackage ./apps/switchboard-plugs/power { };
192   switchboard-plug-printers = callPackage ./apps/switchboard-plugs/printers { };
194   switchboard-plug-security-privacy = callPackage ./apps/switchboard-plugs/security-privacy { };
196   switchboard-plug-sharing = callPackage ./apps/switchboard-plugs/sharing { };
198   switchboard-plug-sound = callPackage ./apps/switchboard-plugs/sound { };
200   switchboard-plug-wacom = callPackage ./apps/switchboard-plugs/wacom { };
202   ### ARTWORK
204   elementary-gtk-theme = callPackage ./artwork/elementary-gtk-theme { };
206   elementary-icon-theme = callPackage ./artwork/elementary-icon-theme { };
208   elementary-redacted-script = callPackage ./artwork/elementary-redacted-script { };
210   elementary-sound-theme = callPackage ./artwork/elementary-sound-theme { };
212   elementary-wallpapers = callPackage ./artwork/elementary-wallpapers { };
214   ### THIRD-PARTY
216   # As suggested in https://github.com/NixOS/nixpkgs/issues/115222#issuecomment-906868654
217   # please avoid putting third-party packages in the `pantheon` scope.
219 }) // lib.optionalAttrs config.allowAliases {
221   ### ALIASES
223   # They need to be outside the scope or they will shadow the attributes from parent scope.
225   vala = throw "The ‘pantheon.vala’ alias was removed on 2022-02-02, please use ‘pkgs.vala’ directly."; # added 2019-10-10
227   cerbere = throw "Cerbere is now obsolete https://github.com/elementary/cerbere/releases/tag/2.5.1."; # added 2020-04-06
229   elementary-screenshot-tool = throw "The ‘pantheon.elementary-screenshot-tool’ alias was removed on 2022-02-02, please use ‘pantheon.elementary-screenshot’ directly."; # added 2021-07-21
231   evince = pkgs.evince; # added 2022-03-18
233   extra-elementary-contracts = throw "extra-elementary-contracts has been removed as all contracts have been upstreamed."; # added 2021-12-01
235   file-roller = pkgs.file-roller; # added 2022-03-12
237   gnome-bluetooth-contract = throw "pantheon.gnome-bluetooth-contract has been removed, abandoned by upstream."; # added 2022-06-30
239   notes-up = throw "The ‘pantheon.notes-up’ alias was removed on 2022-02-02, please use ‘pkgs.notes-up’ directly."; # added 2021-12-18
241   switchboard-plug-a11y = throw "pantheon.switchboard-plug-a11y has been removed, abandoned by upstream."; # added 2024-08-23
243   wingpanel-indicator-session = throw "pantheon.wingpanel-indicator-session has been removed, abandoned by upstream."; # added 2024-08-23