move pika backup to gnome only
This commit is contained in:
parent
0fa68032eb
commit
d9bcb76ed1
2 changed files with 42 additions and 32 deletions
|
@ -54,7 +54,6 @@
|
||||||
system = {
|
system = {
|
||||||
motd.networkInterfaces = [ "wlp1s0" ];
|
motd.networkInterfaces = [ "wlp1s0" ];
|
||||||
fingerprint-reader-on-laptop-lid.enable = true;
|
fingerprint-reader-on-laptop-lid.enable = true;
|
||||||
borg.pika-backup.enable = true;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
framework_wifi_swap.enable = true;
|
framework_wifi_swap.enable = true;
|
||||||
|
|
|
@ -1,18 +1,28 @@
|
||||||
{ lib, config, pkgs, ... }:
|
{
|
||||||
with lib;
|
lib,
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
let
|
let
|
||||||
cfg = config.mySystem.de.gnome;
|
cfg = config.mySystem.de.gnome;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
options = {
|
options = {
|
||||||
mySystem.de.gnome = {
|
mySystem.de.gnome = {
|
||||||
enable = mkEnableOption "GNOME" // { default = false; };
|
enable = lib.mkEnableOption "GNOME" // {
|
||||||
systrayicons = mkEnableOption "Enable systray icons" // { default = true; };
|
default = false;
|
||||||
gsconnect = mkEnableOption "Enable gsconnect (KDEConnect for GNOME)" // { default = true; };
|
};
|
||||||
|
systrayicons = lib.mkEnableOption "Enable systray icons" // {
|
||||||
|
default = true;
|
||||||
|
};
|
||||||
|
gsconnect = lib.mkEnableOption "Enable gsconnect (KDEConnect for GNOME)" // {
|
||||||
|
default = true;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = lib.mkIf cfg.enable {
|
||||||
# Ref: https://nixos.wiki/wiki/GNOME
|
# Ref: https://nixos.wiki/wiki/GNOME
|
||||||
|
|
||||||
# GNOME plz
|
# GNOME plz
|
||||||
|
@ -38,41 +48,44 @@ in
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
udev.packages = optionals cfg.systrayicons [ pkgs.gnome.gnome-settings-daemon ]; # support appindicator
|
udev.packages = lib.optionals cfg.systrayicons [ pkgs.gnome.gnome-settings-daemon ]; # support appindicator
|
||||||
};
|
};
|
||||||
|
|
||||||
# systyray icons
|
# systyray icons
|
||||||
# extra pkgs and extensions
|
# extra pkgs and extensions
|
||||||
environment = {
|
environment = {
|
||||||
systemPackages = with pkgs; [
|
systemPackages =
|
||||||
wl-clipboard # ls ~/Downloads | wl-copy or wl-paste > clipboard.txt
|
with pkgs;
|
||||||
playerctl # gsconnect play/pause command
|
[
|
||||||
pamixer # gcsconnect volume control
|
wl-clipboard # ls ~/Downloads | wl-copy or wl-paste > clipboard.txt
|
||||||
gnome.gnome-tweaks
|
playerctl # gsconnect play/pause command
|
||||||
gnome.dconf-editor
|
pamixer # gcsconnect volume control
|
||||||
|
gnome.gnome-tweaks
|
||||||
|
gnome.dconf-editor
|
||||||
|
|
||||||
# This installs the extension packages, but
|
# This installs the extension packages, but
|
||||||
# dont forget to enable them per-user in dconf settings -> "org/gnome/shell"
|
# dont forget to enable them per-user in dconf settings -> "org/gnome/shell"
|
||||||
gnomeExtensions.vitals
|
gnomeExtensions.vitals
|
||||||
gnomeExtensions.caffeine
|
gnomeExtensions.caffeine
|
||||||
gnomeExtensions.dash-to-dock
|
gnomeExtensions.dash-to-dock
|
||||||
]
|
]
|
||||||
++ optionals cfg.systrayicons [ pkgs.gnomeExtensions.appindicator ];
|
++ optionals cfg.systrayicons [ pkgs.gnomeExtensions.appindicator ];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# enable pika backup
|
||||||
|
mySystem.borg.pika-backup.enable = true;
|
||||||
|
|
||||||
# enable gsconnect
|
# enable gsconnect
|
||||||
# this method also opens the firewall ports required when enable = true
|
# this method also opens the firewall ports required when enable = true
|
||||||
programs.kdeconnect = mkIf
|
programs.kdeconnect = lib.mkIf cfg.gsconnect {
|
||||||
cfg.gsconnect
|
enable = true;
|
||||||
{
|
package = pkgs.gnomeExtensions.gsconnect;
|
||||||
enable = true;
|
};
|
||||||
package = pkgs.gnomeExtensions.gsconnect;
|
|
||||||
};
|
|
||||||
|
|
||||||
# GNOME connection to browsers - requires flag on browser as well
|
# GNOME connection to browsers - requires flag on browser as well
|
||||||
services.gnome.gnome-browser-connector.enable = lib.any
|
services.gnome.gnome-browser-connector.enable = lib.any (user: user.programs.firefox.enable) (
|
||||||
(user: user.programs.firefox.enable)
|
lib.attrValues config.home-manager.users
|
||||||
(lib.attrValues config.home-manager.users);
|
);
|
||||||
|
|
||||||
# And dconf
|
# And dconf
|
||||||
programs.dconf.enable = true;
|
programs.dconf.enable = true;
|
||||||
|
@ -99,6 +112,4 @@ in
|
||||||
atomix # puzzle game
|
atomix # puzzle game
|
||||||
]);
|
]);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue