mirror of
https://github.com/SebastianStork/nixos-config.git
synced 2026-01-21 15:11:34 +01:00
Drop wrapper-manager
This commit is contained in:
parent
fa04b898a9
commit
758d78e737
24 changed files with 159 additions and 262 deletions
|
|
@ -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 = "";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
301
modules/home/de/rofi/config.rasi
Normal file
301
modules/home/de/rofi/config.rasi
Normal file
|
|
@ -0,0 +1,301 @@
|
|||
/*****----- Configuration -----*****/
|
||||
configuration {
|
||||
modi: "drun,run,filebrowser,window";
|
||||
show-icons: true;
|
||||
display-drun: "";
|
||||
display-run: "";
|
||||
display-filebrowser: "";
|
||||
display-window: "";
|
||||
drun-display-format: "{name}";
|
||||
window-format: "{w} · {c} · {t}";
|
||||
}
|
||||
|
||||
/*****----- Global Properties -----*****/
|
||||
* {
|
||||
font: "Open Sans 12, Symbols Nerd Font Mono 12";
|
||||
}
|
||||
|
||||
* {
|
||||
border-colour: var(selected);
|
||||
handle-colour: var(selected);
|
||||
background-colour: var(background);
|
||||
foreground-colour: var(foreground);
|
||||
alternate-background: var(background-alt);
|
||||
normal-background: var(background);
|
||||
normal-foreground: var(foreground);
|
||||
urgent-background: var(urgent);
|
||||
urgent-foreground: var(background);
|
||||
active-background: var(active);
|
||||
active-foreground: var(background);
|
||||
selected-normal-background: var(selected);
|
||||
selected-normal-foreground: var(background);
|
||||
selected-urgent-background: var(active);
|
||||
selected-urgent-foreground: var(background);
|
||||
selected-active-background: var(urgent);
|
||||
selected-active-foreground: var(background);
|
||||
alternate-normal-background: var(background);
|
||||
alternate-normal-foreground: var(foreground);
|
||||
alternate-urgent-background: var(urgent);
|
||||
alternate-urgent-foreground: var(background);
|
||||
alternate-active-background: var(active);
|
||||
alternate-active-foreground: var(background);
|
||||
}
|
||||
|
||||
/*****----- Main Window -----*****/
|
||||
window {
|
||||
/* properties for window widget */
|
||||
transparency: "real";
|
||||
location: center;
|
||||
anchor: center;
|
||||
fullscreen: false;
|
||||
width: 600px;
|
||||
x-offset: 0px;
|
||||
y-offset: 0px;
|
||||
|
||||
/* properties for all widgets */
|
||||
enabled: true;
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
border: 0px solid;
|
||||
border-radius: 10px;
|
||||
border-color: @border-colour;
|
||||
cursor: "default";
|
||||
/* Backgroud Colors */
|
||||
background-color: @background-colour;
|
||||
/* Backgroud Image */
|
||||
//background-image: url("/path/to/image.png", none);
|
||||
/* Simple Linear Gradient */
|
||||
//background-image: linear-gradient(red, orange, pink, purple);
|
||||
/* Directional Linear Gradient */
|
||||
//background-image: linear-gradient(to bottom, pink, yellow, magenta);
|
||||
/* Angle Linear Gradient */
|
||||
//background-image: linear-gradient(45, cyan, purple, indigo);
|
||||
}
|
||||
|
||||
/*****----- Main Box -----*****/
|
||||
mainbox {
|
||||
enabled: true;
|
||||
spacing: 10px;
|
||||
margin: 0px;
|
||||
padding: 30px;
|
||||
border: 0px solid;
|
||||
border-radius: 0px 0px 0px 0px;
|
||||
border-color: @border-colour;
|
||||
background-color: transparent;
|
||||
children: [ "inputbar", "message", "listview" ];
|
||||
}
|
||||
|
||||
/*****----- Inputbar -----*****/
|
||||
inputbar {
|
||||
enabled: true;
|
||||
spacing: 10px;
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
border: 0px solid;
|
||||
border-radius: 0px;
|
||||
border-color: @border-colour;
|
||||
background-color: transparent;
|
||||
text-color: @foreground-colour;
|
||||
children: [ "textbox-prompt-colon", "entry", "mode-switcher" ];
|
||||
}
|
||||
|
||||
prompt {
|
||||
enabled: true;
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
}
|
||||
textbox-prompt-colon {
|
||||
enabled: true;
|
||||
padding: 5px 0px;
|
||||
expand: false;
|
||||
str: "";
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
}
|
||||
entry {
|
||||
enabled: true;
|
||||
padding: 5px 0px;
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
cursor: text;
|
||||
placeholder: "Search...";
|
||||
placeholder-color: inherit;
|
||||
}
|
||||
num-filtered-rows {
|
||||
enabled: true;
|
||||
expand: false;
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
}
|
||||
textbox-num-sep {
|
||||
enabled: true;
|
||||
expand: false;
|
||||
str: "/";
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
}
|
||||
num-rows {
|
||||
enabled: true;
|
||||
expand: false;
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
}
|
||||
case-indicator {
|
||||
enabled: true;
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
}
|
||||
|
||||
/*****----- Listview -----*****/
|
||||
listview {
|
||||
enabled: true;
|
||||
columns: 1;
|
||||
lines: 8;
|
||||
cycle: true;
|
||||
dynamic: true;
|
||||
scrollbar: true;
|
||||
layout: vertical;
|
||||
reverse: false;
|
||||
fixed-height: true;
|
||||
fixed-columns: true;
|
||||
|
||||
spacing: 5px;
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
border: 0px solid;
|
||||
border-radius: 0px;
|
||||
border-color: @border-colour;
|
||||
background-color: transparent;
|
||||
text-color: @foreground-colour;
|
||||
cursor: "default";
|
||||
}
|
||||
scrollbar {
|
||||
handle-width: 5px ;
|
||||
handle-color: @handle-colour;
|
||||
border-radius: 10px;
|
||||
background-color: @alternate-background;
|
||||
}
|
||||
|
||||
/*****----- Elements -----*****/
|
||||
element {
|
||||
enabled: true;
|
||||
spacing: 10px;
|
||||
margin: 0px;
|
||||
padding: 5px 10px;
|
||||
border: 0px solid;
|
||||
border-radius: 10px;
|
||||
border-color: @border-colour;
|
||||
background-color: transparent;
|
||||
text-color: @foreground-colour;
|
||||
cursor: pointer;
|
||||
}
|
||||
element normal.normal {
|
||||
background-color: var(normal-background);
|
||||
text-color: var(normal-foreground);
|
||||
}
|
||||
element normal.urgent {
|
||||
background-color: var(urgent-background);
|
||||
text-color: var(urgent-foreground);
|
||||
}
|
||||
element normal.active {
|
||||
background-color: var(active-background);
|
||||
text-color: var(active-foreground);
|
||||
}
|
||||
element selected.normal {
|
||||
background-color: var(selected-normal-background);
|
||||
text-color: var(selected-normal-foreground);
|
||||
}
|
||||
element selected.urgent {
|
||||
background-color: var(selected-urgent-background);
|
||||
text-color: var(selected-urgent-foreground);
|
||||
}
|
||||
element selected.active {
|
||||
background-color: var(selected-active-background);
|
||||
text-color: var(selected-active-foreground);
|
||||
}
|
||||
element alternate.normal {
|
||||
background-color: var(alternate-normal-background);
|
||||
text-color: var(alternate-normal-foreground);
|
||||
}
|
||||
element alternate.urgent {
|
||||
background-color: var(alternate-urgent-background);
|
||||
text-color: var(alternate-urgent-foreground);
|
||||
}
|
||||
element alternate.active {
|
||||
background-color: var(alternate-active-background);
|
||||
text-color: var(alternate-active-foreground);
|
||||
}
|
||||
element-icon {
|
||||
background-color: transparent;
|
||||
text-color: inherit;
|
||||
size: 24px;
|
||||
cursor: inherit;
|
||||
}
|
||||
element-text {
|
||||
background-color: transparent;
|
||||
text-color: inherit;
|
||||
highlight: inherit;
|
||||
cursor: inherit;
|
||||
vertical-align: 0.5;
|
||||
horizontal-align: 0.0;
|
||||
}
|
||||
|
||||
/*****----- Mode Switcher -----*****/
|
||||
mode-switcher{
|
||||
enabled: true;
|
||||
spacing: 10px;
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
border: 0px solid;
|
||||
border-radius: 0px;
|
||||
border-color: @border-colour;
|
||||
background-color: transparent;
|
||||
text-color: @foreground-colour;
|
||||
}
|
||||
button {
|
||||
padding: 5px 10px;
|
||||
border: 0px solid;
|
||||
border-radius: 10px;
|
||||
border-color: @border-colour;
|
||||
background-color: @alternate-background;
|
||||
text-color: inherit;
|
||||
cursor: pointer;
|
||||
}
|
||||
button selected {
|
||||
background-color: var(selected-normal-background);
|
||||
text-color: var(selected-normal-foreground);
|
||||
}
|
||||
|
||||
/*****----- Message -----*****/
|
||||
message {
|
||||
enabled: true;
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
border: 0px solid;
|
||||
border-radius: 0px 0px 0px 0px;
|
||||
border-color: @border-colour;
|
||||
background-color: transparent;
|
||||
text-color: @foreground-colour;
|
||||
}
|
||||
textbox {
|
||||
padding: 8px 10px;
|
||||
border: 0px solid;
|
||||
border-radius: 10px;
|
||||
border-color: @border-colour;
|
||||
background-color: @alternate-background;
|
||||
text-color: @foreground-colour;
|
||||
vertical-align: 0.5;
|
||||
horizontal-align: 0.0;
|
||||
highlight: none;
|
||||
placeholder-color: @foreground-colour;
|
||||
blink: true;
|
||||
markup: true;
|
||||
}
|
||||
error-message {
|
||||
padding: 10px;
|
||||
border: 2px solid;
|
||||
border-radius: 10px;
|
||||
border-color: @border-colour;
|
||||
background-color: @background-colour;
|
||||
text-color: @foreground-colour;
|
||||
}
|
||||
8
modules/home/de/rofi/dark-theme.rasi
Normal file
8
modules/home/de/rofi/dark-theme.rasi
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
* {
|
||||
background: #1E2127FF;
|
||||
background-alt: #282B31FF;
|
||||
foreground: #FFFFFFFF;
|
||||
selected: #61AFEFFF;
|
||||
active: #98C379FF;
|
||||
urgent: #E06C75FF;
|
||||
}
|
||||
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
|
||||
];
|
||||
};
|
||||
}
|
||||
8
modules/home/de/rofi/light-theme.rasi
Normal file
8
modules/home/de/rofi/light-theme.rasi
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
* {
|
||||
background: #F1F1F1FF;
|
||||
background-alt: #E0E0E0FF;
|
||||
foreground: #252525FF;
|
||||
selected: #008EC4FF;
|
||||
active: #10A778FF;
|
||||
urgent: #C30771FF;
|
||||
}
|
||||
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
|
||||
];
|
||||
};
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue