Compare commits
5 commits
50564f6eb2
...
8552070665
Author | SHA1 | Date | |
---|---|---|---|
8552070665 | |||
28ea3fd3e8 | |||
cb47a9aeda | |||
a26f773f01 | |||
c6f08ef074 |
9 changed files with 26 additions and 75 deletions
|
@ -51,11 +51,12 @@
|
||||||
overlays = [ nixgl.overlay ];
|
overlays = [ nixgl.overlay ];
|
||||||
};
|
};
|
||||||
extraSpecialArgs = {
|
extraSpecialArgs = {
|
||||||
inherit stateVersion inputs;
|
inherit stateVersion inputs nixgl;
|
||||||
hostname = hostname;
|
hostname = hostname;
|
||||||
username = username;
|
username = username;
|
||||||
};
|
};
|
||||||
modules = [
|
modules = [
|
||||||
|
{ nixpkgs.overlays = [ nixgl.overlay ];}
|
||||||
./home-manager/default.nix
|
./home-manager/default.nix
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{ inputs, lib, stateVersion, username, hostname, ... }:
|
{ inputs, lib, stateVersion, username, hostname, nixgl, ... }:
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
inputs.sops-nix.homeManagerModules.sops
|
inputs.sops-nix.homeManagerModules.sops
|
||||||
|
@ -12,7 +12,9 @@
|
||||||
nixpkgs.config.allowUnfree = true;
|
nixpkgs.config.allowUnfree = true;
|
||||||
programs.home-manager.enable = true;
|
programs.home-manager.enable = true;
|
||||||
fonts.fontconfig.enable = true;
|
fonts.fontconfig.enable = true;
|
||||||
|
nixGL.packages = nixgl.packages;
|
||||||
|
nixGL.defaultWrapper = "mesa";
|
||||||
|
nixGL.installScripts = ["mesa"];
|
||||||
home = {
|
home = {
|
||||||
inherit stateVersion username;
|
inherit stateVersion username;
|
||||||
homeDirectory = "/home/${username}";
|
homeDirectory = "/home/${username}";
|
||||||
|
|
|
@ -24,14 +24,8 @@
|
||||||
kdenlive.enable = false;
|
kdenlive.enable = false;
|
||||||
mpv.enable = false;
|
mpv.enable = false;
|
||||||
};
|
};
|
||||||
web.firefox = {
|
web.firefox.enable = true;
|
||||||
enable = true;
|
web.qutebrowser.enable = true;
|
||||||
enableNixGL = true;
|
|
||||||
};
|
|
||||||
web.qutebrowser = {
|
|
||||||
enable = true;
|
|
||||||
enableNixGL = true;
|
|
||||||
};
|
|
||||||
web.webcord.enable = false;
|
web.webcord.enable = false;
|
||||||
gaming.lutris.enable = false;
|
gaming.lutris.enable = false;
|
||||||
desktop.sway = {
|
desktop.sway = {
|
||||||
|
|
|
@ -35,7 +35,6 @@
|
||||||
};
|
};
|
||||||
web.firefox = {
|
web.firefox = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableNixGL = true;
|
|
||||||
optionalExtensions = with pkgs.nur.repos.rycee.firefox-addons; [
|
optionalExtensions = with pkgs.nur.repos.rycee.firefox-addons; [
|
||||||
okta-browser-plugin
|
okta-browser-plugin
|
||||||
];
|
];
|
||||||
|
|
|
@ -158,6 +158,20 @@ in
|
||||||
desktop = "${config.home.homeDirectory}/documents";
|
desktop = "${config.home.homeDirectory}/documents";
|
||||||
publicShare = "${config.home.homeDirectory}/tmp/public";
|
publicShare = "${config.home.homeDirectory}/tmp/public";
|
||||||
};
|
};
|
||||||
|
portal = {
|
||||||
|
enable = true;
|
||||||
|
extraPortals = with pkgs; [
|
||||||
|
xdg-desktop-portal-wlr
|
||||||
|
xdg-desktop-portal-gtk
|
||||||
|
];
|
||||||
|
xdgOpenUsePortal = true;
|
||||||
|
config = {
|
||||||
|
sway.default = [
|
||||||
|
"wlr"
|
||||||
|
"gtk"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,6 +6,7 @@ in
|
||||||
{
|
{
|
||||||
config = mkIf config.modules.desktop.sway.enable {
|
config = mkIf config.modules.desktop.sway.enable {
|
||||||
wayland.windowManager.sway = {
|
wayland.windowManager.sway = {
|
||||||
|
package = config.lib.nixGL.wrap pkgs.sway;
|
||||||
enable = true;
|
enable = true;
|
||||||
wrapperFeatures.gtk = true;
|
wrapperFeatures.gtk = true;
|
||||||
systemd.enable = true;
|
systemd.enable = true;
|
||||||
|
|
|
@ -29,11 +29,6 @@ in
|
||||||
description = "Optional Firefox Plugins to install";
|
description = "Optional Firefox Plugins to install";
|
||||||
};
|
};
|
||||||
|
|
||||||
enableNixGL = mkOption {
|
|
||||||
type = types.bool;
|
|
||||||
default = false;
|
|
||||||
description = "Use NixGL to start Firefox";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
programs.browserpass = {
|
programs.browserpass = {
|
||||||
|
@ -47,24 +42,6 @@ in
|
||||||
"x-scheme-handler/about" = "firefox.desktop";
|
"x-scheme-handler/about" = "firefox.desktop";
|
||||||
"x-scheme-handler/unknown" = "firefox.desktop";
|
"x-scheme-handler/unknown" = "firefox.desktop";
|
||||||
};
|
};
|
||||||
xdg.desktopEntries."firefox" = mkIf cfg.enableNixGL {
|
|
||||||
name = "Firefox NixGL Powered";
|
|
||||||
exec = "${pkgs.nixgl.nixGLMesa}/bin/nixGLMesa firefox %U";
|
|
||||||
icon = "firefox";
|
|
||||||
terminal = false;
|
|
||||||
type = "Application";
|
|
||||||
startupNotify = true;
|
|
||||||
actions = {
|
|
||||||
"new-private-window" = {
|
|
||||||
exec = "${pkgs.nixgl.nixGLMesa}/bin/nixGLMesa firefox --private-window %U";
|
|
||||||
name = "New Private Window";
|
|
||||||
};
|
|
||||||
"new-window" = {
|
|
||||||
exec = "${pkgs.nixgl.nixGLMesa}/bin/nixGLMesa firefox --new-window %U";
|
|
||||||
name = "New Window";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
xdg.configFile."tridactyl/tridactylrc".text = ''
|
xdg.configFile."tridactyl/tridactylrc".text = ''
|
||||||
sanitize tridactyllocal tridactylsync
|
sanitize tridactyllocal tridactylsync
|
||||||
|
@ -93,13 +70,13 @@ in
|
||||||
allExtensions = cfg.baseExtensions ++ cfg.optionalExtensions;
|
allExtensions = cfg.baseExtensions ++ cfg.optionalExtensions;
|
||||||
in {
|
in {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs.wrapFirefox pkgs.firefox-unwrapped {
|
package = config.lib.nixGL.wrap ( pkgs.wrapFirefox pkgs.firefox-unwrapped {
|
||||||
nativeMessagingHosts = [
|
nativeMessagingHosts = [
|
||||||
# Tridactyl native connector
|
# Tridactyl native connector
|
||||||
pkgs.tridactyl-native
|
pkgs.tridactyl-native
|
||||||
pkgs.browserpass
|
pkgs.browserpass
|
||||||
];
|
];
|
||||||
};
|
});
|
||||||
profiles.ephase = {
|
profiles.ephase = {
|
||||||
id = 0;
|
id = 0;
|
||||||
name = "ephase";
|
name = "ephase";
|
||||||
|
|
|
@ -6,35 +6,13 @@ in
|
||||||
{
|
{
|
||||||
options.modules.web.qutebrowser = {
|
options.modules.web.qutebrowser = {
|
||||||
enable = mkEnableOption "enable Qutebrowser web browser";
|
enable = mkEnableOption "enable Qutebrowser web browser";
|
||||||
|
|
||||||
enableNixGL = mkOption {
|
|
||||||
type = types.bool;
|
|
||||||
default = false;
|
|
||||||
description = "Use NixGL to start Qutebrowser";
|
|
||||||
};
|
|
||||||
|
|
||||||
};
|
};
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
xdg.desktopEntries."org.qutebrowser.qutebrowser" = mkIf cfg.enableNixGL {
|
|
||||||
name = "QuteBrowser NixGL Powered";
|
|
||||||
|
|
||||||
exec = "${pkgs.nixgl.nixGLMesa}/bin/nixGLMesa qutebrowser %u";
|
|
||||||
icon = "qutebrowser";
|
|
||||||
terminal = false;
|
|
||||||
type = "Application";
|
|
||||||
startupNotify = true;
|
|
||||||
actions = {
|
|
||||||
"preference" = {
|
|
||||||
exec = "${pkgs.nixgl.nixGLMesa}/bin/nixGLMesa qutebrowser \"qute://settings\"";
|
|
||||||
name = "Preferences";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
programs.qutebrowser = {
|
programs.qutebrowser = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
package = config.lib.nixGL.wrap pkgs.qutebrowser;
|
||||||
loadAutoconfig = true;
|
loadAutoconfig = true;
|
||||||
settings = {
|
settings = {
|
||||||
|
|
||||||
qt.args = [
|
qt.args = [
|
||||||
"autoplay-policy=user-gesture-required"
|
"autoplay-policy=user-gesture-required"
|
||||||
"ignore-gpu-blocklist"
|
"ignore-gpu-blocklist"
|
||||||
|
|
|
@ -16,20 +16,5 @@ in
|
||||||
alsa.support32Bit = true;
|
alsa.support32Bit = true;
|
||||||
pulse.enable = true;
|
pulse.enable = true;
|
||||||
};
|
};
|
||||||
xdg.portal = {
|
|
||||||
enable = true;
|
|
||||||
wlr.enable = true;
|
|
||||||
# gtk portal needed to make gtk apps happy
|
|
||||||
extraPortals = [ pkgs.xdg-desktop-portal-gtk ];
|
|
||||||
config = {
|
|
||||||
common = {
|
|
||||||
default = [
|
|
||||||
"gtk"
|
|
||||||
];
|
|
||||||
"org.freedesktop.impl.portal.ScreenCast" = "wlr";
|
|
||||||
"org.freedesktop.impl.portal.Screenshot" = "wlr";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue