nix/lib/modules/home/firefox.nix

71 lines
1.7 KiB
Nix
Raw Normal View History

2025-02-14 15:40:53 -06:00
{
2025-02-16 09:12:42 -06:00
lib,
config,
pkgs,
...
}:
{
config = lib.mkIf config.programs.firefox.enable {
home = {
sessionVariables = {
MOZ_ENABLE_WAYLAND = "1";
};
2025-02-14 15:40:53 -06:00
};
2025-02-16 09:12:42 -06:00
programs.firefox = {
# enable = true;
profileVersion = null;
2025-02-16 22:44:54 -06:00
package = pkgs.firefox.override {
nativeMessagingHosts = with pkgs; [ bitwarden ];
};
2025-02-16 09:12:42 -06:00
/*
TODO: this should be able to work on macos, no?
TODO: enable color scheme/theme by default
TODO: extensions and their config/sync?
*/
profiles = {
daniel = {
id = 0;
settings = {
"alerts.useSystemBackend" = true;
"widget.gtk.rounded-bottom-corners.enabled" = true;
"general.smoothScroll" = true;
"browser.zoom.siteSpecific" = true;
};
2025-02-14 15:40:53 -06:00
2025-02-16 09:12:42 -06:00
extraConfig = ''
user_pref("toolkit.legacyUserProfileCustomizations.stylesheets", true);
// user_pref("full-screen-api.ignore-widgets", true);
user_pref("media.ffmpeg.vaapi.enabled", true);
user_pref("media.rdd-vpx.enabled", true);
'';
2025-02-14 15:40:53 -06:00
2025-02-16 09:12:42 -06:00
userChrome = ''
#TabsToolbar {
visibility: collapse;
}
2025-02-14 15:40:53 -06:00
2025-02-16 09:12:42 -06:00
#main-window[tabsintitlebar="true"]:not([extradragspace="true"]) #TabsToolbar>.toolbar-items {
opacity: 0;
pointer-events: none;
}
2025-02-14 15:40:53 -06:00
2025-02-16 09:12:42 -06:00
#main-window:not([tabsintitlebar="true"]) #TabsToolbar {
visibility: collapse !important;
}
2025-02-14 15:40:53 -06:00
2025-02-16 09:12:42 -06:00
#webrtcIndicator {
display: none;
}
2025-02-14 15:40:53 -06:00
'';
2025-02-16 09:12:42 -06:00
/*
userContent = ''
'';
*/
};
2025-02-14 15:40:53 -06:00
};
};
};
}