Use flatpacked vivaldi, flake update
This commit is contained in:
25
modules/hm/flatpak.nix
Normal file
25
modules/hm/flatpak.nix
Normal file
@@ -0,0 +1,25 @@
|
||||
{
|
||||
osConfig,
|
||||
config,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
{
|
||||
services.flatpak = lib.mkIf (osConfig.services.flatpak.enable) {
|
||||
enable = true;
|
||||
uninstallUnmanaged = true;
|
||||
|
||||
remotes = [
|
||||
{
|
||||
name = "flathub";
|
||||
location = "https://flathub.org/repo/flathub.flatpakrepo";
|
||||
}
|
||||
];
|
||||
packages = lib.mkIf (config.programs.vivaldi.flatpak) [
|
||||
{
|
||||
appId = "com.vivaldi.Vivaldi";
|
||||
origin = "flathub";
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
||||
@@ -7,14 +7,20 @@
|
||||
}:
|
||||
let
|
||||
conf = config.programs.vivaldi;
|
||||
vivaldiCMD = if conf.flatpak then "flatpak run com.vivaldi.Vivaldi" else "vivaldi";
|
||||
vivaldiIcon = if conf.flatpak then "com.vivaldi.Vivaldi" else "vivaldi";
|
||||
in
|
||||
{
|
||||
config = lib.mkIf conf.enable {
|
||||
options = {
|
||||
programs.vivaldi.flatpak = lib.mkEnableOption "Use flatpak verion of Vivaldi";
|
||||
};
|
||||
|
||||
config = lib.mkIf (conf.enable || conf.flatpak) {
|
||||
home.file.vivaldiKDEScript = {
|
||||
target = ".local/bin/vivaldi-kde.sh";
|
||||
text = ''
|
||||
#!/bin/sh
|
||||
vivaldi --profile-directory=$(qdbus org.kde.ActivityManager /ActivityManager/Activities org.kde.ActivityManager.Activities.ActivityName $(qdbus org.kde.ActivityManager /ActivityManager/Activities org.kde.ActivityManager.Activities.CurrentActivity)) "$@"
|
||||
${vivaldiCMD} --profile-directory=$(qdbus org.kde.ActivityManager /ActivityManager/Activities org.kde.ActivityManager.Activities.ActivityName $(qdbus org.kde.ActivityManager /ActivityManager/Activities org.kde.ActivityManager.Activities.CurrentActivity)) "$@"
|
||||
'';
|
||||
executable = true;
|
||||
};
|
||||
@@ -46,7 +52,7 @@ in
|
||||
exec = "${config.home.file.vivaldiKDEScript.source} --new-window";
|
||||
};
|
||||
};
|
||||
icon = "vivaldi";
|
||||
icon = "${vivaldiIcon}";
|
||||
startupNotify = true;
|
||||
categories = [
|
||||
"Application"
|
||||
|
||||
Reference in New Issue
Block a user