uboot: (firmwareOdroidC2/C4) don't invoke patch tool, use patches = [] instead

https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh#L948
this can do it nicely.

Signed-off-by: Anton Arapov <anton@deadbeef.mx>
This commit is contained in:
Anton Arapov 2021-04-03 12:58:10 +02:00 committed by Alan Daniels
commit 56de2bcd43
30691 changed files with 3076956 additions and 0 deletions

View file

@ -0,0 +1,57 @@
# at-spi2-core daemon.
{ config, lib, pkgs, ... }:
with lib;
{
meta = {
maintainers = teams.gnome.members;
};
###### interface
# Added 2021-05-07
imports = [
(mkRenamedOptionModule
[ "services" "gnome3" "at-spi2-core" "enable" ]
[ "services" "gnome" "at-spi2-core" "enable" ]
)
];
options = {
services.gnome.at-spi2-core = {
enable = mkOption {
type = types.bool;
default = false;
description = ''
Whether to enable at-spi2-core, a service for the Assistive Technologies
available on the GNOME platform.
Enable this if you get the error or warning
<literal>The name org.a11y.Bus was not provided by any .service files</literal>.
'';
};
};
};
###### implementation
config = mkMerge [
(mkIf config.services.gnome.at-spi2-core.enable {
environment.systemPackages = [ pkgs.at-spi2-core ];
services.dbus.packages = [ pkgs.at-spi2-core ];
systemd.packages = [ pkgs.at-spi2-core ];
})
(mkIf (!config.services.gnome.at-spi2-core.enable) {
environment.variables.NO_AT_BRIDGE = "1";
})
];
}

View file

@ -0,0 +1,41 @@
# Chrome GNOME Shell native host connector.
{ config, lib, pkgs, ... }:
with lib;
{
meta = {
maintainers = teams.gnome.members;
};
# Added 2021-05-07
imports = [
(mkRenamedOptionModule
[ "services" "gnome3" "chrome-gnome-shell" "enable" ]
[ "services" "gnome" "chrome-gnome-shell" "enable" ]
)
];
###### interface
options = {
services.gnome.chrome-gnome-shell.enable = mkEnableOption ''
Chrome GNOME Shell native host connector, a DBus service
allowing to install GNOME Shell extensions from a web browser.
'';
};
###### implementation
config = mkIf config.services.gnome.chrome-gnome-shell.enable {
environment.etc = {
"chromium/native-messaging-hosts/org.gnome.chrome_gnome_shell.json".source = "${pkgs.chrome-gnome-shell}/etc/chromium/native-messaging-hosts/org.gnome.chrome_gnome_shell.json";
"opt/chrome/native-messaging-hosts/org.gnome.chrome_gnome_shell.json".source = "${pkgs.chrome-gnome-shell}/etc/opt/chrome/native-messaging-hosts/org.gnome.chrome_gnome_shell.json";
};
environment.systemPackages = [ pkgs.chrome-gnome-shell ];
services.dbus.packages = [ pkgs.chrome-gnome-shell ];
nixpkgs.config.firefox.enableGnomeExtensions = true;
};
}

View file

@ -0,0 +1,71 @@
# Evolution Data Server daemon.
{ config, lib, pkgs, ... }:
with lib;
{
meta = {
maintainers = teams.gnome.members;
};
# Added 2021-05-07
imports = [
(mkRenamedOptionModule
[ "services" "gnome3" "evolution-data-server" "enable" ]
[ "services" "gnome" "evolution-data-server" "enable" ]
)
(mkRenamedOptionModule
[ "services" "gnome3" "evolution-data-server" "plugins" ]
[ "services" "gnome" "evolution-data-server" "plugins" ]
)
];
###### interface
options = {
services.gnome.evolution-data-server = {
enable = mkEnableOption "Evolution Data Server, a collection of services for storing addressbooks and calendars.";
plugins = mkOption {
type = types.listOf types.package;
default = [ ];
description = "Plugins for Evolution Data Server.";
};
};
programs.evolution = {
enable = mkEnableOption "Evolution, a Personal information management application that provides integrated mail, calendaring and address book functionality.";
plugins = mkOption {
type = types.listOf types.package;
default = [ ];
example = literalExpression "[ pkgs.evolution-ews ]";
description = "Plugins for Evolution.";
};
};
};
###### implementation
config =
let
bundle = pkgs.evolutionWithPlugins.override { inherit (config.services.gnome.evolution-data-server) plugins; };
in
mkMerge [
(mkIf config.services.gnome.evolution-data-server.enable {
environment.systemPackages = [ bundle ];
services.dbus.packages = [ bundle ];
systemd.packages = [ bundle ];
})
(mkIf config.programs.evolution.enable {
services.gnome.evolution-data-server = {
enable = true;
plugins = [ pkgs.evolution ] ++ config.programs.evolution.plugins;
};
services.gnome.gnome-keyring.enable = true;
})
];
}

View file

@ -0,0 +1,45 @@
# GLib Networking
{ config, pkgs, lib, ... }:
with lib;
{
meta = {
maintainers = teams.gnome.members;
};
# Added 2021-05-07
imports = [
(mkRenamedOptionModule
[ "services" "gnome3" "glib-networking" "enable" ]
[ "services" "gnome" "glib-networking" "enable" ]
)
];
###### interface
options = {
services.gnome.glib-networking = {
enable = mkEnableOption "network extensions for GLib";
};
};
###### implementation
config = mkIf config.services.gnome.glib-networking.enable {
services.dbus.packages = [ pkgs.glib-networking ];
systemd.packages = [ pkgs.glib-networking ];
environment.sessionVariables.GIO_EXTRA_MODULES = [ "${pkgs.glib-networking.out}/lib/gio/modules" ];
};
}

View file

@ -0,0 +1,98 @@
# GNOME Initial Setup.
{ config, pkgs, lib, ... }:
with lib;
let
# GNOME initial setup's run is conditioned on whether
# the gnome-initial-setup-done file exists in XDG_CONFIG_HOME
# Because of this, every existing user will have initial setup
# running because they never ran it before.
#
# To prevent this we create the file if the users stateVersion
# is older than 20.03 (the release we added this module).
script = pkgs.writeScript "create-gis-stamp-files" ''
#!${pkgs.runtimeShell}
setup_done=$HOME/.config/gnome-initial-setup-done
echo "Creating g-i-s stamp file $setup_done ..."
cat - > $setup_done <<- EOF
yes
EOF
'';
createGisStampFilesAutostart = pkgs.writeTextFile rec {
name = "create-g-i-s-stamp-files";
destination = "/etc/xdg/autostart/${name}.desktop";
text = ''
[Desktop Entry]
Type=Application
Name=Create GNOME Initial Setup stamp files
Exec=${script}
StartupNotify=false
NoDisplay=true
OnlyShowIn=GNOME;
AutostartCondition=unless-exists gnome-initial-setup-done
X-GNOME-Autostart-Phase=EarlyInitialization
'';
};
in
{
meta = {
maintainers = teams.gnome.members;
};
# Added 2021-05-07
imports = [
(mkRenamedOptionModule
[ "services" "gnome3" "gnome-initial-setup" "enable" ]
[ "services" "gnome" "gnome-initial-setup" "enable" ]
)
];
###### interface
options = {
services.gnome.gnome-initial-setup = {
enable = mkEnableOption "GNOME Initial Setup, a Simple, easy, and safe way to prepare a new system";
};
};
###### implementation
config = mkIf config.services.gnome.gnome-initial-setup.enable {
environment.systemPackages = [
pkgs.gnome.gnome-initial-setup
]
++ optional (versionOlder config.system.stateVersion "20.03") createGisStampFilesAutostart
;
systemd.packages = [
pkgs.gnome.gnome-initial-setup
];
systemd.user.targets."gnome-session".wants = [
"gnome-initial-setup-copy-worker.service"
"gnome-initial-setup-first-login.service"
"gnome-welcome-tour.service"
];
systemd.user.targets."gnome-session@gnome-initial-setup".wants = [
"gnome-initial-setup.service"
];
};
}

View file

@ -0,0 +1,63 @@
# GNOME Keyring daemon.
{ config, pkgs, lib, ... }:
with lib;
{
meta = {
maintainers = teams.gnome.members;
};
# Added 2021-05-07
imports = [
(mkRenamedOptionModule
[ "services" "gnome3" "gnome-keyring" "enable" ]
[ "services" "gnome" "gnome-keyring" "enable" ]
)
];
###### interface
options = {
services.gnome.gnome-keyring = {
enable = mkOption {
type = types.bool;
default = false;
description = ''
Whether to enable GNOME Keyring daemon, a service designed to
take care of the user's security credentials,
such as user names and passwords.
'';
};
};
};
###### implementation
config = mkIf config.services.gnome.gnome-keyring.enable {
environment.systemPackages = [ pkgs.gnome.gnome-keyring ];
services.dbus.packages = [ pkgs.gnome.gnome-keyring pkgs.gcr ];
xdg.portal.extraPortals = [ pkgs.gnome.gnome-keyring ];
security.pam.services.login.enableGnomeKeyring = true;
security.wrappers.gnome-keyring-daemon = {
owner = "root";
group = "root";
capabilities = "cap_ipc_lock=ep";
source = "${pkgs.gnome.gnome-keyring}/bin/gnome-keyring-daemon";
};
};
}

View file

@ -0,0 +1,51 @@
# GNOME Online Accounts daemon.
{ config, pkgs, lib, ... }:
with lib;
{
meta = {
maintainers = teams.gnome.members;
};
# Added 2021-05-07
imports = [
(mkRenamedOptionModule
[ "services" "gnome3" "gnome-online-accounts" "enable" ]
[ "services" "gnome" "gnome-online-accounts" "enable" ]
)
];
###### interface
options = {
services.gnome.gnome-online-accounts = {
enable = mkOption {
type = types.bool;
default = false;
description = ''
Whether to enable GNOME Online Accounts daemon, a service that provides
a single sign-on framework for the GNOME desktop.
'';
};
};
};
###### implementation
config = mkIf config.services.gnome.gnome-online-accounts.enable {
environment.systemPackages = [ pkgs.gnome-online-accounts ];
services.dbus.packages = [ pkgs.gnome-online-accounts ];
};
}

View file

@ -0,0 +1,51 @@
# GNOME Online Miners daemon.
{ config, pkgs, lib, ... }:
with lib;
{
meta = {
maintainers = teams.gnome.members;
};
# Added 2021-05-07
imports = [
(mkRenamedOptionModule
[ "services" "gnome3" "gnome-online-miners" "enable" ]
[ "services" "gnome" "gnome-online-miners" "enable" ]
)
];
###### interface
options = {
services.gnome.gnome-online-miners = {
enable = mkOption {
type = types.bool;
default = false;
description = ''
Whether to enable GNOME Online Miners, a service that
crawls through your online content.
'';
};
};
};
###### implementation
config = mkIf config.services.gnome.gnome-online-miners.enable {
environment.systemPackages = [ pkgs.gnome.gnome-online-miners ];
services.dbus.packages = [ pkgs.gnome.gnome-online-miners ];
};
}

View file

@ -0,0 +1,32 @@
# Remote desktop daemon using Pipewire.
{ config, lib, pkgs, ... }:
with lib;
{
meta = {
maintainers = teams.gnome.members;
};
# Added 2021-05-07
imports = [
(mkRenamedOptionModule
[ "services" "gnome3" "gnome-remote-desktop" "enable" ]
[ "services" "gnome" "gnome-remote-desktop" "enable" ]
)
];
###### interface
options = {
services.gnome.gnome-remote-desktop = {
enable = mkEnableOption "Remote Desktop support using Pipewire";
};
};
###### implementation
config = mkIf config.services.gnome.gnome-remote-desktop.enable {
services.pipewire.enable = true;
systemd.packages = [ pkgs.gnome.gnome-remote-desktop ];
};
}

View file

@ -0,0 +1,70 @@
# GNOME Settings Daemon
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.services.gnome.gnome-settings-daemon;
in
{
meta = {
maintainers = teams.gnome.members;
};
imports = [
(mkRemovedOptionModule
["services" "gnome3" "gnome-settings-daemon" "package"]
"")
# Added 2021-05-07
(mkRenamedOptionModule
[ "services" "gnome3" "gnome-settings-daemon" "enable" ]
[ "services" "gnome" "gnome-settings-daemon" "enable" ]
)
];
###### interface
options = {
services.gnome.gnome-settings-daemon = {
enable = mkEnableOption "GNOME Settings Daemon";
};
};
###### implementation
config = mkIf cfg.enable {
environment.systemPackages = [
pkgs.gnome.gnome-settings-daemon
];
services.udev.packages = [
pkgs.gnome.gnome-settings-daemon
];
systemd.packages = [
pkgs.gnome.gnome-settings-daemon
];
systemd.user.targets."gnome-session-x11-services".wants = [
"org.gnome.SettingsDaemon.XSettings.service"
];
systemd.user.targets."gnome-session-x11-services-ready".wants = [
"org.gnome.SettingsDaemon.XSettings.service"
];
};
}

View file

@ -0,0 +1,48 @@
# GNOME User Share daemon.
{ config, pkgs, lib, ... }:
with lib;
{
meta = {
maintainers = teams.gnome.members;
};
imports = [
# Added 2021-05-07
(mkRenamedOptionModule
[ "services" "gnome3" "gnome-user-share" "enable" ]
[ "services" "gnome" "gnome-user-share" "enable" ]
)
];
###### interface
options = {
services.gnome.gnome-user-share = {
enable = mkEnableOption "GNOME User Share, a user-level file sharing service for GNOME";
};
};
###### implementation
config = mkIf config.services.gnome.gnome-user-share.enable {
environment.systemPackages = [
pkgs.gnome.gnome-user-share
];
systemd.packages = [
pkgs.gnome.gnome-user-share
];
};
}

View file

@ -0,0 +1,44 @@
# rygel service.
{ config, lib, pkgs, ... }:
with lib;
{
meta = {
maintainers = teams.gnome.members;
};
imports = [
# Added 2021-05-07
(mkRenamedOptionModule
[ "services" "gnome3" "rygel" "enable" ]
[ "services" "gnome" "rygel" "enable" ]
)
];
###### interface
options = {
services.gnome.rygel = {
enable = mkOption {
default = false;
description = ''
Whether to enable Rygel UPnP Mediaserver.
You will need to also allow UPnP connections in firewall, see the following <link xlink:href="https://github.com/NixOS/nixpkgs/pull/45045#issuecomment-416030795">comment</link>.
'';
type = types.bool;
};
};
};
###### implementation
config = mkIf config.services.gnome.rygel.enable {
environment.systemPackages = [ pkgs.gnome.rygel ];
services.dbus.packages = [ pkgs.gnome.rygel ];
systemd.packages = [ pkgs.gnome.rygel ];
environment.etc."rygel.conf".source = "${pkgs.gnome.rygel}/etc/rygel.conf";
};
}

View file

@ -0,0 +1,50 @@
# GNOME Sushi daemon.
{ config, lib, pkgs, ... }:
with lib;
{
meta = {
maintainers = teams.gnome.members;
};
imports = [
# Added 2021-05-07
(mkRenamedOptionModule
[ "services" "gnome3" "sushi" "enable" ]
[ "services" "gnome" "sushi" "enable" ]
)
];
###### interface
options = {
services.gnome.sushi = {
enable = mkOption {
type = types.bool;
default = false;
description = ''
Whether to enable Sushi, a quick previewer for nautilus.
'';
};
};
};
###### implementation
config = mkIf config.services.gnome.sushi.enable {
environment.systemPackages = [ pkgs.gnome.sushi ];
services.dbus.packages = [ pkgs.gnome.sushi ];
};
}

View file

@ -0,0 +1,54 @@
# Tracker Miners daemons.
{ config, pkgs, lib, ... }:
with lib;
{
meta = {
maintainers = teams.gnome.members;
};
imports = [
# Added 2021-05-07
(mkRenamedOptionModule
[ "services" "gnome3" "tracker-miners" "enable" ]
[ "services" "gnome" "tracker-miners" "enable" ]
)
];
###### interface
options = {
services.gnome.tracker-miners = {
enable = mkOption {
type = types.bool;
default = false;
description = ''
Whether to enable Tracker miners, indexing services for Tracker
search engine and metadata storage system.
'';
};
};
};
###### implementation
config = mkIf config.services.gnome.tracker-miners.enable {
environment.systemPackages = [ pkgs.tracker-miners ];
services.dbus.packages = [ pkgs.tracker-miners ];
systemd.packages = [ pkgs.tracker-miners ];
services.gnome.tracker.subcommandPackages = [ pkgs.tracker-miners ];
};
}

View file

@ -0,0 +1,76 @@
# Tracker daemon.
{ config, pkgs, lib, ... }:
with lib;
let
cfg = config.services.gnome.tracker;
in
{
meta = {
maintainers = teams.gnome.members;
};
imports = [
# Added 2021-05-07
(mkRenamedOptionModule
[ "services" "gnome3" "tracker" "enable" ]
[ "services" "gnome" "tracker" "enable" ]
)
];
###### interface
options = {
services.gnome.tracker = {
enable = mkOption {
type = types.bool;
default = false;
description = ''
Whether to enable Tracker services, a search engine,
search tool and metadata storage system.
'';
};
subcommandPackages = mkOption {
type = types.listOf types.package;
default = [ ];
internal = true;
description = ''
List of packages containing tracker3 subcommands.
'';
};
};
};
###### implementation
config = mkIf cfg.enable {
environment.systemPackages = [ pkgs.tracker ];
services.dbus.packages = [ pkgs.tracker ];
systemd.packages = [ pkgs.tracker ];
environment.variables = {
TRACKER_CLI_SUBCOMMANDS_DIR =
let
subcommandPackagesTree = pkgs.symlinkJoin {
name = "tracker-with-subcommands-${pkgs.tracker.version}";
paths = [ pkgs.tracker ] ++ cfg.subcommandPackages;
};
in
"${subcommandPackagesTree}/libexec/tracker3";
};
};
}