mirror of
https://github.com/SebastianStork/nixos-config.git
synced 2026-01-21 14:01:34 +01:00
Drop wrapper-manager
This commit is contained in:
parent
fa04b898a9
commit
758d78e737
24 changed files with 159 additions and 262 deletions
24
flake.lock
generated
24
flake.lock
generated
|
|
@ -291,8 +291,7 @@
|
|||
"nixpkgs": "nixpkgs",
|
||||
"nixpkgs-unstable": "nixpkgs-unstable",
|
||||
"sops-nix": "sops-nix",
|
||||
"treefmt-nix": "treefmt-nix",
|
||||
"wrapper-manager": "wrapper-manager"
|
||||
"treefmt-nix": "treefmt-nix"
|
||||
}
|
||||
},
|
||||
"sops-nix": {
|
||||
|
|
@ -382,27 +381,6 @@
|
|||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"wrapper-manager": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1707514093,
|
||||
"narHash": "sha256-vrESSBhoRgEnAglfr30Vd1lzuS4pX/xLjoSj78oQKOc=",
|
||||
"owner": "nrabulinski",
|
||||
"repo": "wrapper-manager",
|
||||
"rev": "01b80d8ea37839a7614177d59f06eb88fbe30fd2",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nrabulinski",
|
||||
"ref": "wrap-certain-programs",
|
||||
"repo": "wrapper-manager",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
|
|
|
|||
|
|
@ -18,12 +18,6 @@
|
|||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
wrapper-manager = {
|
||||
# Wrapper-manager fork with selective binary wrapping
|
||||
url = "github:nrabulinski/wrapper-manager/wrap-certain-programs";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
disko = {
|
||||
url = "github:nix-community/disko";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
|
|
@ -72,7 +66,6 @@
|
|||
imports = [
|
||||
./flake/hosts.nix
|
||||
./flake/modules.nix
|
||||
./flake/wrappers.nix
|
||||
./flake/dev-shells.nix
|
||||
./flake/formatter.nix
|
||||
./flake/checks.nix
|
||||
|
|
|
|||
|
|
@ -1,18 +0,0 @@
|
|||
{
|
||||
flake.wrappers.default =
|
||||
{
|
||||
inputs,
|
||||
self,
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
{
|
||||
_module.args.wrappers = lib.mapAttrs' (
|
||||
name: _:
|
||||
lib.nameValuePair (lib.removeSuffix ".nix" name) (
|
||||
import "${self}/wrappers/${name}" { inherit inputs pkgs lib; }
|
||||
)
|
||||
) (builtins.readDir "${self}/wrappers");
|
||||
};
|
||||
}
|
||||
|
|
@ -6,10 +6,7 @@
|
|||
...
|
||||
}:
|
||||
{
|
||||
imports = [
|
||||
self.nixosModules.default
|
||||
self.wrappers.default
|
||||
];
|
||||
imports = [ self.nixosModules.default ];
|
||||
|
||||
networking.domain = "stork-atlas.ts.net";
|
||||
|
||||
|
|
|
|||
|
|
@ -2,7 +2,6 @@
|
|||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
wrappers,
|
||||
...
|
||||
}:
|
||||
{
|
||||
|
|
@ -18,7 +17,6 @@
|
|||
"${lib.getExe config.services.cliphist.package} wipe";
|
||||
|
||||
home.packages = [
|
||||
(wrappers.rofi { inherit (config.myConfig.de) theme; })
|
||||
pkgs.wl-clipboard
|
||||
(pkgs.writeScriptBin "rofi-clipboard" "cliphist list | rofi -dmenu -display-columns 2 | cliphist decode | wl-copy")
|
||||
];
|
||||
|
|
|
|||
|
|
@ -2,17 +2,13 @@
|
|||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
wrappers,
|
||||
...
|
||||
}:
|
||||
{
|
||||
options.myConfig.de.hypridle.enable = lib.mkEnableOption "";
|
||||
|
||||
config = lib.mkIf config.myConfig.de.hypridle.enable {
|
||||
home.packages = [
|
||||
wrappers.hyprlock
|
||||
pkgs.brightnessctl
|
||||
];
|
||||
home.packages = [ pkgs.brightnessctl ];
|
||||
|
||||
services.hypridle = {
|
||||
enable = true;
|
||||
|
|
|
|||
|
|
@ -2,7 +2,6 @@
|
|||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
wrappers,
|
||||
...
|
||||
}@moduleArgs:
|
||||
{
|
||||
|
|
@ -14,7 +13,6 @@
|
|||
wayland.windowManager.hyprland.enable = true;
|
||||
|
||||
home.packages = [
|
||||
(wrappers.rofi { inherit (config.myConfig.de) theme; })
|
||||
pkgs.wl-clipboard
|
||||
pkgs.playerctl
|
||||
pkgs.brightnessctl
|
||||
|
|
@ -22,7 +20,9 @@
|
|||
];
|
||||
|
||||
myConfig.de = {
|
||||
rofi.enable = true;
|
||||
hyprpaper.enable = true;
|
||||
hyprlock.enable = true;
|
||||
hypridle.enable = true;
|
||||
waybar.enable = true;
|
||||
cliphist.enable = true;
|
||||
|
|
|
|||
21
modules/home/de/hyprlock.nix
Normal file
21
modules/home/de/hyprlock.nix
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
{ config, lib, ... }:
|
||||
{
|
||||
options.myConfig.de.hyprlock.enable = lib.mkEnableOption "";
|
||||
|
||||
config = lib.mkIf config.myConfig.de.hyprlock.enable {
|
||||
programs.hyprlock = {
|
||||
enable = true;
|
||||
|
||||
settings = {
|
||||
general.no_fade_in = true;
|
||||
background = {
|
||||
monitor = "";
|
||||
path = "~/Pictures/.wallpaper";
|
||||
blur_size = 4;
|
||||
blur_passes = 1;
|
||||
};
|
||||
input-field.monitor = "";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
27
modules/home/de/rofi/default.nix
Normal file
27
modules/home/de/rofi/default.nix
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
{
|
||||
options.myConfig.de.rofi.enable = lib.mkEnableOption "";
|
||||
|
||||
config = lib.mkIf config.myConfig.de.rofi.enable {
|
||||
home.packages = [ pkgs.rofi-wayland ];
|
||||
|
||||
xdg.configFile."rofi/config.rasi".source =
|
||||
let
|
||||
theming =
|
||||
{
|
||||
dark = ./dark-theme.rasi;
|
||||
light = ./light-theme.rasi;
|
||||
}
|
||||
.${config.myConfig.de.theme};
|
||||
in
|
||||
pkgs.concatText "rofi-config" [
|
||||
./config.rasi
|
||||
theming
|
||||
];
|
||||
};
|
||||
}
|
||||
65
modules/home/firefox.nix
Normal file
65
modules/home/firefox.nix
Normal file
|
|
@ -0,0 +1,65 @@
|
|||
{
|
||||
config,
|
||||
inputs,
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
{
|
||||
options.myConfig.firefox.enable = lib.mkEnableOption "";
|
||||
|
||||
config = lib.mkIf config.myConfig.firefox.enable {
|
||||
programs.firefox = {
|
||||
enable = true;
|
||||
|
||||
profiles.default = {
|
||||
settings =
|
||||
let
|
||||
uiState = ''{"placements":{"widget-overflow-fixed-list":[],"unified-extensions-area":["sponsorblocker_ajay_app-browser-action","_762f9885-5a13-4abd-9c77-433dcd38b8fd_-browser-action","_446900e4-71c2-419f-a6a7-df9c091e268b_-browser-action","_74145f27-f039-47ce-a470-a662b129930a_-browser-action","ublock0_raymondhill_net-browser-action"],"nav-bar":["back-button","forward-button","stop-reload-button","customizableui-special-spring1","urlbar-container","customizableui-special-spring2","save-to-pocket-button","downloads-button","fxa-toolbar-menu-button","unified-extensions-button","sidebar-button"],"toolbar-menubar":["menubar-items"],"TabsToolbar":["firefox-view-button","tabbrowser-tabs","new-tab-button","alltabs-button"],"PersonalToolbar":["personal-bookmarks"]},"seen":["developer-button","sponsorblocker_ajay_app-browser-action","_762f9885-5a13-4abd-9c77-433dcd38b8fd_-browser-action","_446900e4-71c2-419f-a6a7-df9c091e268b_-browser-action","_74145f27-f039-47ce-a470-a662b129930a_-browser-action","ublock0_raymondhill_net-browser-action"],"dirtyAreaCache":["nav-bar","unified-extensions-area","PersonalToolbar","TabsToolbar","toolbar-menubar"],"currentVersion":20,"newElementCount":5}'';
|
||||
in
|
||||
{
|
||||
"intl.accept_languages" = "en-us,en,de-de,de";
|
||||
"browser.uiCustomization.state" = uiState;
|
||||
"sidebar.position_start" = false;
|
||||
"browser.toolbars.bookmarks.visibility" = "always";
|
||||
"browser.bookmarks.restore_default_bookmarks" = false;
|
||||
"browser.bookmarks.file" = "";
|
||||
"media.videocontrols.picture-in-picture.video-toggle.enabled" = false;
|
||||
"general.autoScroll" = true;
|
||||
"middlemouse.paste" = false;
|
||||
"signon.rememberSignons" = false;
|
||||
"extensions.formautofill.creditCards.enabled" = false;
|
||||
"browser.tabs.loadBookmarksInBackground" = true;
|
||||
"browser.tabs.groups.enabled" = true;
|
||||
};
|
||||
|
||||
extraConfig = builtins.readFile "${inputs.betterfox}/user.js";
|
||||
};
|
||||
|
||||
policies.ExtensionSettings =
|
||||
let
|
||||
extension = shortId: uuid: {
|
||||
name = uuid;
|
||||
value = {
|
||||
install_url = "file:///${
|
||||
inputs.firefox-addons.packages.${pkgs.system}.${shortId}
|
||||
}/share/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}/${uuid}.xpi";
|
||||
installation_mode = "force_installed";
|
||||
default_area = "menupanel";
|
||||
};
|
||||
};
|
||||
in
|
||||
{
|
||||
"*".installation_mode = "blocked";
|
||||
}
|
||||
// lib.listToAttrs [
|
||||
(extension "dictionary-german" "de-DE@dictionaries.addons.mozilla.org")
|
||||
(extension "ublock-origin" "uBlock0@raymondhill.net")
|
||||
(extension "bitwarden" "{446900e4-71c2-419f-a6a7-df9c091e268b}")
|
||||
(extension "return-youtube-dislikes" "{762f9885-5a13-4abd-9c77-433dcd38b8fd}")
|
||||
(extension "sponsorblock" "sponsorBlocker@ajay.app")
|
||||
(extension "clearurls" "{74145f27-f039-47ce-a470-a662b129930a}")
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
34
modules/home/kitty.nix
Normal file
34
modules/home/kitty.nix
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
{
|
||||
options.myConfig.kitty.enable = lib.mkEnableOption "";
|
||||
|
||||
config = lib.mkIf config.myConfig.kitty.enable {
|
||||
programs.kitty = {
|
||||
enable = true;
|
||||
|
||||
settings =
|
||||
let
|
||||
theme-name =
|
||||
{
|
||||
dark = "default";
|
||||
light = "GitHub_Light";
|
||||
}
|
||||
.${config.myConfig.de.theme};
|
||||
in
|
||||
{
|
||||
include = "${pkgs.kitty-themes}/share/kitty-themes/themes/${theme-name}.conf";
|
||||
font_family = "JetBrainsMono Nerd Font";
|
||||
background_opacity = "0.85";
|
||||
cursor_shape = "beam";
|
||||
confirm_os_window_close = 0;
|
||||
enable_audio_bell = "no";
|
||||
update_check_interval = 0;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
@ -2,7 +2,6 @@
|
|||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
wrappers,
|
||||
...
|
||||
}:
|
||||
{
|
||||
|
|
@ -35,14 +34,12 @@
|
|||
cat = "bat --plain --theme=${theme}";
|
||||
};
|
||||
|
||||
kittyAlias = {
|
||||
kitty = lib.getExe (wrappers.kitty { inherit (config.myConfig.de) theme; });
|
||||
};
|
||||
bottomAlias.btm = "btm --group_processes";
|
||||
in
|
||||
lib.mkMerge [
|
||||
lsAliases
|
||||
catAlias
|
||||
kittyAlias
|
||||
bottomAlias
|
||||
];
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,9 +1,6 @@
|
|||
{ self, ... }:
|
||||
{
|
||||
imports = [
|
||||
self.homeManagerModules.default
|
||||
self.wrappers.default
|
||||
];
|
||||
imports = [ self.homeManagerModules.default ];
|
||||
|
||||
systemd.user.startServices = "sd-switch";
|
||||
|
||||
|
|
|
|||
|
|
@ -1,15 +1,12 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
wrappers,
|
||||
...
|
||||
}:
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
imports = [ ../common-home.nix ];
|
||||
|
||||
home.sessionVariables.FLAKE = "~/Projects/nixos-config";
|
||||
|
||||
myConfig = {
|
||||
kitty.enable = true;
|
||||
firefox.enable = true;
|
||||
sops.enable = true;
|
||||
shell.zsh.enable = true;
|
||||
git.enable = true;
|
||||
|
|
@ -19,11 +16,9 @@
|
|||
};
|
||||
|
||||
home.packages = [
|
||||
wrappers.bottom
|
||||
pkgs.bottom
|
||||
pkgs.fastfetch
|
||||
|
||||
(wrappers.kitty { inherit (config.myConfig.de) theme; })
|
||||
wrappers.firefox
|
||||
pkgs.nemo-with-extensions
|
||||
pkgs.celluloid
|
||||
pkgs.spotify
|
||||
|
|
|
|||
|
|
@ -1,12 +0,0 @@
|
|||
{ inputs, pkgs, ... }:
|
||||
(inputs.wrapper-manager.lib {
|
||||
inherit pkgs;
|
||||
modules = [
|
||||
{
|
||||
wrappers.bottom = {
|
||||
basePackage = pkgs.bottom;
|
||||
flags = [ "--group_processes" ];
|
||||
};
|
||||
}
|
||||
];
|
||||
}).config.wrappers.bottom.wrapped
|
||||
|
|
@ -1,19 +0,0 @@
|
|||
{
|
||||
inputs,
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
(inputs.wrapper-manager.lib {
|
||||
inherit pkgs;
|
||||
modules = [
|
||||
{
|
||||
wrappers.firefox = {
|
||||
basePackage = pkgs.wrapFirefox pkgs.firefox-unwrapped {
|
||||
extraPolicies.ExtensionSettings = import ./extensions.nix { inherit inputs pkgs lib; };
|
||||
extraPrefs = import ./preferences.nix { inherit inputs; };
|
||||
};
|
||||
};
|
||||
}
|
||||
];
|
||||
}).config.wrappers.firefox.wrapped
|
||||
|
|
@ -1,29 +0,0 @@
|
|||
{
|
||||
inputs,
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
let
|
||||
extension = shortId: uuid: {
|
||||
name = uuid;
|
||||
value = {
|
||||
install_url = "file:///${
|
||||
inputs.firefox-addons.packages.${pkgs.system}.${shortId}
|
||||
}/share/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}/${uuid}.xpi";
|
||||
installation_mode = "force_installed";
|
||||
default_area = "menupanel";
|
||||
};
|
||||
};
|
||||
in
|
||||
{
|
||||
"*".installation_mode = "blocked";
|
||||
}
|
||||
// lib.listToAttrs [
|
||||
(extension "dictionary-german" "de-DE@dictionaries.addons.mozilla.org")
|
||||
(extension "ublock-origin" "uBlock0@raymondhill.net")
|
||||
(extension "bitwarden" "{446900e4-71c2-419f-a6a7-df9c091e268b}")
|
||||
(extension "return-youtube-dislikes" "{762f9885-5a13-4abd-9c77-433dcd38b8fd}")
|
||||
(extension "sponsorblock" "sponsorBlocker@ajay.app")
|
||||
(extension "clearurls" "{74145f27-f039-47ce-a470-a662b129930a}")
|
||||
]
|
||||
|
|
@ -1,25 +0,0 @@
|
|||
{ inputs, ... }:
|
||||
let
|
||||
betterfox = builtins.replaceStrings [ "user_pref" ] [ "pref" ] (
|
||||
builtins.readFile "${inputs.betterfox}/user.js"
|
||||
);
|
||||
escapedUiState =
|
||||
builtins.replaceStrings [ ''"'' ] [ ''\"'' ]
|
||||
''{"placements":{"widget-overflow-fixed-list":[],"unified-extensions-area":["sponsorblocker_ajay_app-browser-action","_762f9885-5a13-4abd-9c77-433dcd38b8fd_-browser-action","_446900e4-71c2-419f-a6a7-df9c091e268b_-browser-action","_74145f27-f039-47ce-a470-a662b129930a_-browser-action","ublock0_raymondhill_net-browser-action"],"nav-bar":["back-button","forward-button","stop-reload-button","customizableui-special-spring1","urlbar-container","customizableui-special-spring2","save-to-pocket-button","downloads-button","fxa-toolbar-menu-button","unified-extensions-button","sidebar-button"],"toolbar-menubar":["menubar-items"],"TabsToolbar":["firefox-view-button","tabbrowser-tabs","new-tab-button","alltabs-button"],"PersonalToolbar":["personal-bookmarks"]},"seen":["developer-button","sponsorblocker_ajay_app-browser-action","_762f9885-5a13-4abd-9c77-433dcd38b8fd_-browser-action","_446900e4-71c2-419f-a6a7-df9c091e268b_-browser-action","_74145f27-f039-47ce-a470-a662b129930a_-browser-action","ublock0_raymondhill_net-browser-action"],"dirtyAreaCache":["nav-bar","unified-extensions-area","PersonalToolbar","TabsToolbar","toolbar-menubar"],"currentVersion":20,"newElementCount":5}'';
|
||||
in
|
||||
''
|
||||
${betterfox}
|
||||
pref("intl.accept_languages", "en-us,en,de-de,de");
|
||||
pref("browser.uiCustomization.state", "${escapedUiState}");
|
||||
pref("sidebar.position_start", false);
|
||||
pref("browser.toolbars.bookmarks.visibility", "always");
|
||||
pref("browser.bookmarks.restore_default_bookmarks", false);
|
||||
pref("browser.bookmarks.file", "");
|
||||
pref("media.videocontrols.picture-in-picture.video-toggle.enabled", false);
|
||||
pref("general.autoScroll", true);
|
||||
pref("middlemouse.paste", false);
|
||||
pref("signon.rememberSignons", false);
|
||||
pref("extensions.formautofill.creditCards.enabled", false);
|
||||
pref("browser.tabs.loadBookmarksInBackground", true);
|
||||
pref("browser.tabs.groups.enabled", true);
|
||||
''
|
||||
|
|
@ -1,32 +0,0 @@
|
|||
{ inputs, pkgs, ... }:
|
||||
(inputs.wrapper-manager.lib {
|
||||
inherit pkgs;
|
||||
modules = [
|
||||
{
|
||||
wrappers.hyprlock = {
|
||||
basePackage = pkgs.hyprlock;
|
||||
flags =
|
||||
let
|
||||
hyprlock-config = pkgs.writeText "hyprlock-config" ''
|
||||
general {
|
||||
no_fade_in = true
|
||||
}
|
||||
background {
|
||||
monitor =
|
||||
path = ~/Pictures/.wallpaper
|
||||
blur_size = 4
|
||||
blur_passes = 1
|
||||
}
|
||||
input-field {
|
||||
monitor =
|
||||
}
|
||||
'';
|
||||
in
|
||||
[
|
||||
"--config"
|
||||
hyprlock-config
|
||||
];
|
||||
};
|
||||
}
|
||||
];
|
||||
}).config.wrappers.hyprlock.wrapped
|
||||
|
|
@ -1,36 +0,0 @@
|
|||
{ inputs, pkgs, ... }:
|
||||
{
|
||||
theme ? "dark",
|
||||
}:
|
||||
(inputs.wrapper-manager.lib {
|
||||
inherit pkgs;
|
||||
modules = [
|
||||
{
|
||||
wrappers.kitty = {
|
||||
basePackage = pkgs.kitty;
|
||||
programs.kitty.prependFlags =
|
||||
let
|
||||
theme-name =
|
||||
{
|
||||
dark = "default";
|
||||
light = "GitHub_Light";
|
||||
}
|
||||
.${theme};
|
||||
kitty-config = pkgs.writeText "kitty-config" ''
|
||||
include ${pkgs.kitty-themes}/share/kitty-themes/themes/${theme-name}.conf
|
||||
font_family JetBrainsMono Nerd Font
|
||||
background_opacity 0.85
|
||||
cursor_shape beam
|
||||
confirm_os_window_close 0
|
||||
enable_audio_bell no
|
||||
update_check_interval 0
|
||||
'';
|
||||
in
|
||||
[
|
||||
"--config"
|
||||
kitty-config
|
||||
];
|
||||
};
|
||||
}
|
||||
];
|
||||
}).config.wrappers.kitty.wrapped
|
||||
|
|
@ -1,30 +0,0 @@
|
|||
{ inputs, pkgs, ... }:
|
||||
{
|
||||
theme ? "dark",
|
||||
}:
|
||||
(inputs.wrapper-manager.lib {
|
||||
inherit pkgs;
|
||||
modules = [
|
||||
{
|
||||
wrappers.rofi = {
|
||||
basePackage = pkgs.rofi-wayland;
|
||||
flags =
|
||||
let
|
||||
theming =
|
||||
{
|
||||
dark = ./dark-theme.rasi;
|
||||
light = ./light-theme.rasi;
|
||||
}
|
||||
.${theme};
|
||||
in
|
||||
[
|
||||
"-config"
|
||||
(pkgs.concatText "rofi-config" [
|
||||
./config.rasi
|
||||
theming
|
||||
])
|
||||
];
|
||||
};
|
||||
}
|
||||
];
|
||||
}).config.wrappers.rofi.wrapped
|
||||
Loading…
Add table
Add a link
Reference in a new issue