Compare commits
5 commits
c55c2c1ee8
...
ab64591da8
Author | SHA1 | Date | |
---|---|---|---|
ab64591da8 |
|||
2cf1b03685 |
|||
c0aa4f2f8f |
|||
adc4bd9f3c |
|||
059c40e6a2 |
5 changed files with 106 additions and 6 deletions
37
modules/programs/gui/brave/module.nix
Normal file
37
modules/programs/gui/brave/module.nix
Normal file
|
@ -0,0 +1,37 @@
|
|||
{pkgs, ...}: {
|
||||
programs.chromium = {
|
||||
enable = true;
|
||||
extraOpts = {
|
||||
BraveRewardsDisabled = true;
|
||||
BraveWalletDisabled = true;
|
||||
PromotionsEnabled = false;
|
||||
TorDisabled = true;
|
||||
BraveVPNDisabled = true;
|
||||
BraveAIChatEnabled = false;
|
||||
BraveSyncUrl = "";
|
||||
PrivacySandboxFingerprintingProtectionEnabled = true;
|
||||
PrivacySandboxIpProtectionEnabled = true;
|
||||
DefaultSearchProviderEnabled = true;
|
||||
DefaultSearchProviderName = "Kagi";
|
||||
DefaultSearchProviderSearchURL = "https://kagi.com/search?q={searchTerms}";
|
||||
DefaultSearchProviderNewTabURL = "https://kagi.com";
|
||||
SearchSuggestEnabled = true;
|
||||
DefaultSearchProviderSuggestURL = "https://kagi.com/api/autosuggest?q={searchTerms}";
|
||||
PasswordManagerEnabled = false;
|
||||
BlockThirdPartyCookies = true;
|
||||
};
|
||||
extensions = [
|
||||
# NoScript
|
||||
"doojmbjmlfjjnbmnoijecmcbfeoakpjm"
|
||||
# KeePassXC-Browser
|
||||
"oboonakemofpalcgghocfoadofidjkkk"
|
||||
# Catppuccin Mocha
|
||||
"bkkmolkhemgaeaeggcmfbghljjjoofoh"
|
||||
# Dark Reader
|
||||
"eimadpbcbfnmbkopoojfekhnkhdbieeh"
|
||||
];
|
||||
};
|
||||
environment.systemPackages = [
|
||||
(pkgs.brave.override {vulkanSupport = true;})
|
||||
];
|
||||
}
|
|
@ -28,7 +28,13 @@ in {
|
|||
after = ["graphical-session.target"];
|
||||
|
||||
serviceConfig = {
|
||||
ExecStart = "${getExe custom-wayneko} --layer top --type striped";
|
||||
ExecStart = ''
|
||||
${getExe custom-wayneko}\
|
||||
--layer top\
|
||||
--type striped\
|
||||
--background-colour 0xb4befe\
|
||||
--outline-colour 0x1e1e2e
|
||||
'';
|
||||
Restart = "on-failure";
|
||||
RestartSec = 1;
|
||||
TimeoutStopSec = 10;
|
||||
|
|
|
@ -23,6 +23,7 @@ in {
|
|||
extraPortals =
|
||||
[
|
||||
pkgs.xdg-desktop-portal-gtk
|
||||
pkgs.kdePackages.xdg-desktop-portal-kde
|
||||
]
|
||||
++ (
|
||||
optional config.programs.niri.enable
|
||||
|
@ -33,10 +34,22 @@ in {
|
|||
pkgs.xdg-desktop-portal-hyprland
|
||||
);
|
||||
config = {
|
||||
common.default = mkIf config.programs.hyprland.enable ["*"];
|
||||
hyprland.default = mkIf config.programs.hyprland.enable ["*"];
|
||||
niri = {
|
||||
default = [
|
||||
"gnome"
|
||||
"gtk"
|
||||
"kde"
|
||||
];
|
||||
# Portal API reference:
|
||||
# https://docs.flatpak.org/en/latest/portal-api-reference.html
|
||||
# "org.freedesktop.impl.portal.Access" = ["kde"];
|
||||
# "org.freedesktop.impl.portal.Notification" = ["kde"];
|
||||
"org.freedesktop.impl.portal.FileChooser" = ["kde"];
|
||||
};
|
||||
};
|
||||
configPackages = [
|
||||
pkgs.niri
|
||||
# pkgs.niri
|
||||
];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -115,6 +115,32 @@ window-rule {
|
|||
block-out-from "screen-capture"
|
||||
open-on-workspace "keepassxc"
|
||||
}
|
||||
window-rule {
|
||||
match app-id="unset"
|
||||
open-floating true
|
||||
}
|
||||
window-rule {
|
||||
match app-id="org.gnome.Nautilus"
|
||||
open-floating true
|
||||
}
|
||||
window-rule {
|
||||
match app-id="org.freedesktop.impl.portal.desktop.kde"
|
||||
open-floating true
|
||||
}
|
||||
|
||||
// Fix discord screencasting
|
||||
debug {
|
||||
wait-for-frame-completion-in-pipewire
|
||||
}
|
||||
// Always focus the KeePassXC-Browser unlock dialog.
|
||||
//
|
||||
// This dialog opens parented to the KeePassXC window rather than the browser,
|
||||
// so it doesn't get auto-focused by default.
|
||||
window-rule {
|
||||
match app-id="^org\\.keepassxc\\.KeePassXC$" title="^KeePassXC - Browser Access Request$"
|
||||
match app-id="^org\\.keepassxc\\.KeePassXC$" title="^Unlock Database - KeePassXC$"
|
||||
open-focused true
|
||||
}
|
||||
hotkey-overlay {
|
||||
skip-at-startup
|
||||
}
|
||||
|
|
|
@ -21,8 +21,8 @@
|
|||
new-swww = (pkgs.swww.override {inherit rustPlatform;}).overrideAttrs (prev: {
|
||||
src = pkgs.fetchFromGitHub {
|
||||
inherit (prev.src) owner repo;
|
||||
rev = "398a4048e389341dfd55285c53518a8ea3930ec4";
|
||||
hash = "sha256-ZAC5TbkshztW2IeDorhaxUmVCHf2tJCSGIGHSNl91Ns";
|
||||
rev = "805a355da574fed46e664606660e2499f02e2174";
|
||||
hash = "sha256-+sdV7NFueCeBLrsl7lrqzlG5tPNqDe/zlcIb8TYxQl8=";
|
||||
};
|
||||
doInstallCheck = false;
|
||||
|
||||
|
@ -31,6 +31,24 @@
|
|||
hash = "sha256-YH2gcy/8EtUmTHzwt38bBOFX3saN1wHIGQ5/eWqvSeM=";
|
||||
};
|
||||
});
|
||||
|
||||
patched-niri = pkgs.niri.overrideAttrs (prev: {
|
||||
src = pkgs.fetchFromGitHub {
|
||||
inherit (prev.src) owner repo;
|
||||
rev = "37458d94b288945f6cfbd3c5c233f634d59f246c";
|
||||
hash = "sha256-F5iVU/hjoSHSSe0gllxm0PcAaseEtGNanYK5Ha3k2Tg=";
|
||||
};
|
||||
cargoDeps = pkgs.rustPlatform.fetchCargoVendor {
|
||||
inherit (patched-niri) src;
|
||||
hash = "sha256-fT0L/OTlQ9BnKHnckKsLi+tN+oevEU+eJWrh1INqQhA=";
|
||||
};
|
||||
patches = [
|
||||
(pkgs.fetchpatch {
|
||||
url = "https://github.com/YaLTeR/niri/commit/ab71a6c553f9c53ea484ec6dedc5dcede708929f.diff";
|
||||
hash = "sha256-C3TJIK5/YTAcmdSP6NyOwX+1oA36u6nrMuJuVYIvAHQ=";
|
||||
})
|
||||
];
|
||||
});
|
||||
in {
|
||||
options.modules.desktops.niri.enable = mkEnableOption "Niri, a scolling tiling wayland compositor";
|
||||
|
||||
|
@ -40,7 +58,7 @@ in {
|
|||
{
|
||||
programs.niri = {
|
||||
enable = true;
|
||||
package = pkgs.niri;
|
||||
package = patched-niri;
|
||||
};
|
||||
# The niri module auto enables the gnome keyring,
|
||||
# which is something I direly want to avoid.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue