Add Helium AppImage and replace Chromium webapps
- Add Helium browser as an AppImage and include it in system packages. - Rename fluxer package into the appimages module and update imports. - Add `SUPER+H` keybinding to launch Helium and `SUPER+CONTROL+T` for tsukimi. - Change web‑app desktop entries to use Helium instead of Chromium. - Disable ungoogled‑chromium and ChatGPT modules on the laptop host. - Fix a minor typo in a comment within hardware.nix.
This commit is contained in:
@@ -58,7 +58,7 @@
|
|||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
# Enables DHCP on each ethernet and wireless inter.. In case of scripted networking
|
||||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||||
# still possible to use this option, but it's recommended to use it in conjunction
|
# still possible to use this option, but it's recommended to use it in conjunction
|
||||||
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ _: {
|
|||||||
Web browsers
|
Web browsers
|
||||||
*/
|
*/
|
||||||
librewolf.enable = true; # Librewolf: a privacy-focused Firefox fork
|
librewolf.enable = true; # Librewolf: a privacy-focused Firefox fork
|
||||||
ungoogled-chromium.enable = true; # Ungoogled Chromium: a privacy-focused Chromium fork
|
ungoogled-chromium.enable = false; # Ungoogled Chromium: a privacy-focused Chromium fork
|
||||||
|
|
||||||
/*
|
/*
|
||||||
System utilities
|
System utilities
|
||||||
@@ -58,7 +58,7 @@ _: {
|
|||||||
messenger.enable = true; # Messenger: Facebook Messenger
|
messenger.enable = true; # Messenger: Facebook Messenger
|
||||||
mastodon.enable = true; # Mastodon: a decentralized social network
|
mastodon.enable = true; # Mastodon: a decentralized social network
|
||||||
garandcloud.enable = true; # GarandCloud: my Nextcloud instance
|
garandcloud.enable = true; # GarandCloud: my Nextcloud instance
|
||||||
chatgpt.enable = true; # ChatGPT: a large language model
|
chatgpt.enable = false; # ChatGPT: a large language model
|
||||||
claude.enable = true; # Claude: a large language model
|
claude.enable = true; # Claude: a large language model
|
||||||
glance.enable = true; # Glance: my home server dashboard
|
glance.enable = true; # Glance: my home server dashboard
|
||||||
jellyfinClient.enable = true; # Jellyfin: My Jellyfin
|
jellyfinClient.enable = true; # Jellyfin: My Jellyfin
|
||||||
|
|||||||
@@ -0,0 +1,6 @@
|
|||||||
|
{pkgs, ...}: let
|
||||||
|
fluxer = pkgs.callPackage ./fluxer.nix {};
|
||||||
|
helium = pkgs.callPackage ./helium.nix {};
|
||||||
|
in {
|
||||||
|
environment.systemPackages = [fluxer helium];
|
||||||
|
}
|
||||||
@@ -0,0 +1,37 @@
|
|||||||
|
{
|
||||||
|
lib,
|
||||||
|
appimageTools,
|
||||||
|
fetchurl,
|
||||||
|
}: let
|
||||||
|
pname = "helium";
|
||||||
|
version = "0.11.7.1";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "https://github.com/imputnet/helium-linux/releases/download/0.11.7.1/helium-0.11.7.1-x86_64.AppImage";
|
||||||
|
sha256 = "sha256-qzc135IP5F2btxtOMUGMz+0azJhYL9KI0lcPG2KjcxU=";
|
||||||
|
};
|
||||||
|
appimageContents = appimageTools.extract {inherit pname version src;};
|
||||||
|
in
|
||||||
|
appimageTools.wrapType2 {
|
||||||
|
inherit pname version src;
|
||||||
|
|
||||||
|
extraInstallCommands = ''
|
||||||
|
# mv $out/bin/${pname}-${version} $out/bin/${pname}
|
||||||
|
install -m 444 -D ${appimageContents}/${pname}.desktop $out/share/applications/${pname}.desktop
|
||||||
|
install -m 444 -D ${appimageContents}/usr/share/icons/hicolor/256x256/apps/${pname}.png \
|
||||||
|
$out/share/icons/hicolor/256x256/apps/${pname}.png
|
||||||
|
# substituteInPlace $out/share/applications/${pname}.desktop \
|
||||||
|
# --replace-fail 'Exec=AppRun' 'Exec=${pname}'
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Helium browser";
|
||||||
|
homepage = "https://github.com/imputnet/helium";
|
||||||
|
license = licenses.agpl3Plus;
|
||||||
|
platforms = ["x86_64-linux"];
|
||||||
|
sourceProvenance = with lib.sourceTypes; [binaryNativeCode];
|
||||||
|
maintainers = with lib.maintainers; [garand_plg];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
# https://github.com/imputnet/helium-linux/releases/download/0.11.7.1/helium-0.11.7.1-x86_64.AppImage
|
||||||
|
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
_: {
|
_: {
|
||||||
nixpkgs.config.allowUnfree = true;
|
nixpkgs.config.allowUnfree = true;
|
||||||
imports = [
|
imports = [
|
||||||
./fluxer
|
./appimages
|
||||||
./essentials.nix
|
./essentials.nix
|
||||||
./packages.nix
|
./packages.nix
|
||||||
./programs.nix
|
./programs.nix
|
||||||
|
|||||||
@@ -1,6 +0,0 @@
|
|||||||
{pkgs, ...}: let
|
|
||||||
fluxer =
|
|
||||||
pkgs.callPackage ./fluxer-package.nix {};
|
|
||||||
in {
|
|
||||||
environment.systemPackages = [fluxer];
|
|
||||||
}
|
|
||||||
@@ -13,6 +13,7 @@
|
|||||||
"SUPER, E, exec, noctalia-shell ipc call launcher emoji #\"Emoji picker\""
|
"SUPER, E, exec, noctalia-shell ipc call launcher emoji #\"Emoji picker\""
|
||||||
"SUPER, Escape, exec, noctalia-shell ipc call lockScreen lock #\"Lock the screen\""
|
"SUPER, Escape, exec, noctalia-shell ipc call lockScreen lock #\"Lock the screen\""
|
||||||
"SUPER, G, exec, affinity-v3 #\"Graphics editor\""
|
"SUPER, G, exec, affinity-v3 #\"Graphics editor\""
|
||||||
|
"SUPER, H, exec, helium #\"Helium web browser\""
|
||||||
"SUPER, I, exec, iotas #\"Note-taking app\""
|
"SUPER, I, exec, iotas #\"Note-taking app\""
|
||||||
"SUPER, J, exec, Jan #\"Local AI chat interface\""
|
"SUPER, J, exec, Jan #\"Local AI chat interface\""
|
||||||
"SUPER, K, exec, gnome-calculator #\"Scientific calculator\""
|
"SUPER, K, exec, gnome-calculator #\"Scientific calculator\""
|
||||||
@@ -32,10 +33,10 @@
|
|||||||
|
|
||||||
shiftBinds = [
|
shiftBinds = [
|
||||||
"SUPER SHIFT, C, exec, dex ${desktopEntriesPath}/claude.desktop #\"Claude AI chat\""
|
"SUPER SHIFT, C, exec, dex ${desktopEntriesPath}/claude.desktop #\"Claude AI chat\""
|
||||||
"SUPER SHIFT, D, exec, jellyfin-desktop #\"Jellyfin media client\""
|
|
||||||
"SUPER SHIFT, E, exec, evolution #\"Personal information management application\""
|
"SUPER SHIFT, E, exec, evolution #\"Personal information management application\""
|
||||||
"SUPER SHIFT, Escape, exec, noctalia-shell ipc call sessionMenu toggle #\"Open Session Menu\""
|
"SUPER SHIFT, Escape, exec, noctalia-shell ipc call sessionMenu toggle #\"Open Session Menu\""
|
||||||
"SUPER SHIFT, G, exec, dex ${desktopEntriesPath}/chatgpt.desktop #\"ChatGPT AI chat\""
|
"SUPER SHIFT, G, exec, dex ${desktopEntriesPath}/chatgpt.desktop #\"ChatGPT AI chat\""
|
||||||
|
"SUPER SHIFT, J, exec, ${desktopEntriesPath}/jellyfinClient.desktop #\"Jellyfin PWA\""
|
||||||
"SUPER SHIFT, K, exec, noctalia-shell ipc call plugin:keybind-cheatsheet toggle #\"Toggle keybind cheatsheet\""
|
"SUPER SHIFT, K, exec, noctalia-shell ipc call plugin:keybind-cheatsheet toggle #\"Toggle keybind cheatsheet\""
|
||||||
"SUPER SHIFT, M, exec, plexamp #\"Music player for Plex\""
|
"SUPER SHIFT, M, exec, plexamp #\"Music player for Plex\""
|
||||||
"SUPER SHIFT, N, exec, nextcloud #\"Nextcloud desktop sync client\""
|
"SUPER SHIFT, N, exec, nextcloud #\"Nextcloud desktop sync client\""
|
||||||
@@ -65,6 +66,7 @@
|
|||||||
"SUPER CONTROL, G, exec, gimp #\"GNU Image Manipulation Program\""
|
"SUPER CONTROL, G, exec, gimp #\"GNU Image Manipulation Program\""
|
||||||
"SUPER CONTROL, M, exec, mattermost-desktop #\"Mattermost team chat client\""
|
"SUPER CONTROL, M, exec, mattermost-desktop #\"Mattermost team chat client\""
|
||||||
"SUPER CONTROL, S, exec, signal-desktop #\"Signal encrypted messaging\""
|
"SUPER CONTROL, S, exec, signal-desktop #\"Signal encrypted messaging\""
|
||||||
|
"SUPER CONTROL, T, exec, tsukimi #\"A simple Emby/Jellyfin Client\""
|
||||||
"SUPER CONTROL, P, exec, hyprpicker -a #\"Pick color from screen\""
|
"SUPER CONTROL, P, exec, hyprpicker -a #\"Pick color from screen\""
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|||||||
@@ -12,7 +12,7 @@
|
|||||||
makeEntry = app: {
|
makeEntry = app: {
|
||||||
name = app.displayName;
|
name = app.displayName;
|
||||||
genericName = app.genericName or app.displayName;
|
genericName = app.genericName or app.displayName;
|
||||||
exec = "chromium --profile-directory=Default --app=${app.url}";
|
exec = "helium --profile-directory=Default --app=${app.url}";
|
||||||
icon = "${fetchIcon app.iconUrl app.iconSha}";
|
icon = "${fetchIcon app.iconUrl app.iconSha}";
|
||||||
terminal = false;
|
terminal = false;
|
||||||
type = "Application";
|
type = "Application";
|
||||||
|
|||||||
Reference in New Issue
Block a user