Merge branch 'master' of ssh://ssh.nx2.site:50022/nx2/dotfiles into nod
This commit is contained in:
@@ -27,7 +27,7 @@
|
||||
"custom/caldav_event" = {
|
||||
execute = "caldav_event";
|
||||
label = " {}";
|
||||
interval = 1000;
|
||||
interval = 60000;
|
||||
hideOnEmpty = false;
|
||||
actions = {};
|
||||
};
|
||||
@@ -51,12 +51,12 @@
|
||||
# "bluetooth"
|
||||
"network"
|
||||
"windowtitle"
|
||||
"media"
|
||||
];
|
||||
"middle" = [ "workspaces" ];
|
||||
"right" = [
|
||||
"submap"
|
||||
"custom/caldav_event"
|
||||
"media"
|
||||
"custom/cclock"
|
||||
"notifications"
|
||||
"systray"
|
||||
|
||||
@@ -47,6 +47,13 @@
|
||||
read-only = true;
|
||||
type = "ics";
|
||||
}
|
||||
{
|
||||
name = "Worlds";
|
||||
url = "https://zlypher.github.io/lol-events/cal/league-of-legends-world-championship.ical";
|
||||
color = "#7b99a6";
|
||||
read-only = true;
|
||||
type = "ics";
|
||||
}
|
||||
{
|
||||
name = "Feiertage Hessen";
|
||||
url = "https://ics.tools/Feiertage/hessen.ics";
|
||||
@@ -54,13 +61,6 @@
|
||||
read-only = true;
|
||||
type = "ics";
|
||||
}
|
||||
# {
|
||||
# name = "Handball Männer";
|
||||
# url = "http://i.cal.to/ical/108/dhb/handball-nationalmannschaft/c687e97f.bc7c3eb6-11a0e356.ics";
|
||||
# color = "#880023";
|
||||
# read-only = true;
|
||||
# type = "ics";
|
||||
# }
|
||||
];
|
||||
default_set = {
|
||||
# name =
|
||||
|
||||
@@ -6,7 +6,7 @@ let
|
||||
# "asmongold"
|
||||
# "Caedrel"
|
||||
# "EintrachtSpandau"
|
||||
"GamesDoneQuick"
|
||||
# "GamesDoneQuick"
|
||||
"Odoamne"
|
||||
"iwdominate"
|
||||
"imls"
|
||||
@@ -20,13 +20,13 @@ let
|
||||
"lol_nemesis"
|
||||
# "NASA"
|
||||
"NoWay4u_Sir"
|
||||
"OfficialMikeShinoda"
|
||||
# "OfficialMikeShinoda"
|
||||
"Rekkles"
|
||||
"riotgames"
|
||||
"thebausffs"
|
||||
"ThePrimeagen"
|
||||
"Tolkin"
|
||||
# "TSM_ImperialHal"
|
||||
"imperialhal__"
|
||||
"velja_lol"
|
||||
# "Xisuma"
|
||||
"zackrawrr"
|
||||
@@ -46,7 +46,7 @@ let
|
||||
};
|
||||
};
|
||||
in {
|
||||
sops.secrets."streamlink/twitch-oauth" = { path = "%r/secrets/streamlink/twich-oauth"; };
|
||||
# sops.secrets."streamlink/twitch-oauth" = { path = "%r/secrets/streamlink/twich-oauth"; };
|
||||
|
||||
home = {
|
||||
packages = with pkgs; [
|
||||
@@ -207,7 +207,7 @@ in {
|
||||
"external": {
|
||||
"streamlink": {
|
||||
"quality": "",
|
||||
"options": "--config ${hyper.home}.config/streamlink/config"
|
||||
"options": "--config ${hyper.home}/.config/streamlink/config"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,20 +3,30 @@
|
||||
home.file.".config/color-pallete.html".text = with rice.color; let
|
||||
cb = color-set: color-name: size: /* html */ ''
|
||||
<div class="color-container" style="border-color: ${color-set.base}">
|
||||
<div class="color-box" style="background: ${color-set.darker}; height: ${builtins.toString size}px;">
|
||||
<p style="color: ${color-set.bright}"> ${color-name}.darker </p>
|
||||
<p sktyle="color: ${color-set.bright}"> ${color-set.darker} </p>
|
||||
</div>
|
||||
<div class="color-box" style="background: ${color-set.dark}; height: ${builtins.toString size}px;">
|
||||
<p style="color: ${color-set.bright}"> ${color-name}.dark </p>
|
||||
<p style="color: ${color-set.bright}"> ${color-set.dark} </p>
|
||||
<p style="color: ${color-set.brighter}"> ${color-name}.dark </p>
|
||||
<p style="color: ${color-set.brighter}"> ${color-set.dark} </p>
|
||||
</div>
|
||||
<div class="color-box" style="background: ${color-set.base}; height: ${builtins.toString size}px;">
|
||||
<p class="dynamic-text"> ${color-name}.base </p>
|
||||
<p class="dynamic-text"> ${color-set.base} </p>
|
||||
</div>
|
||||
<div class="color-box" style="background: ${color-set.bright}; height: ${builtins.toString size}px;">
|
||||
<p style="color: ${color-set.dark}"> ${color-name}.bright </p>
|
||||
<p style="color: ${color-set.dark}"> ${color-set.bright} </p>
|
||||
<p style="color: ${color-set.darker}"> ${color-name}.bright </p>
|
||||
<p style="color: ${color-set.darker}"> ${color-set.bright} </p>
|
||||
</div>
|
||||
<div class="color-box" style="background: ${color-set.brighter}; height: ${builtins.toString size}px;">
|
||||
<p style="color: ${color-set.dark}"> ${color-name}.brighter </p>
|
||||
<p style="color: ${color-set.dark}"> ${color-set.brighter} </p>
|
||||
</div>
|
||||
</div>
|
||||
'';
|
||||
rgb = rice.lib.hex-to-rgb-comma-string;
|
||||
s = builtins.toString;
|
||||
in /* html */ ''
|
||||
<!DOCTYPE html>
|
||||
<head>
|
||||
@@ -30,27 +40,26 @@
|
||||
padding: 0px;
|
||||
}
|
||||
html {
|
||||
background: rgba(${rice.lib.hex-to-rgb-comma-string background},${builtins.toString rice.transparency});
|
||||
padding: auto;
|
||||
background: transparent;
|
||||
}
|
||||
body {
|
||||
font-family: ${rice.font.base.name};
|
||||
color: ${foreground};
|
||||
width: fit-content;
|
||||
margin: 10px auto 10px auto;
|
||||
background: rgba(${rice.lib.hex-to-rgb-comma-string background},${builtins.toString rice.transparency});
|
||||
border: ${builtins.toString rice.border-width}px solid ${border};
|
||||
border-radius: ${builtins.toString rice.rounding}px;
|
||||
padding: ${builtins.toString rice.gap-size}px;
|
||||
background: rgba(${rgb background},${s rice.transparency});
|
||||
border: ${s rice.border-width}px solid ${border};
|
||||
border-radius: ${s rice.rounding}px;
|
||||
padding: ${s rice.gap-size}px;
|
||||
}
|
||||
h1 {
|
||||
margin: ${builtins.toString rice.gap-size}px;
|
||||
margin: ${s rice.gap-size}px;
|
||||
}
|
||||
.color-container {
|
||||
font-family: ${rice.font.code.name};
|
||||
display: flex;
|
||||
gap: ${builtins.toString rice.gap-size}px;
|
||||
margin: ${builtins.toString rice.gap-size}px;
|
||||
gap: ${s rice.gap-size}px;
|
||||
margin: ${s rice.gap-size}px;
|
||||
}
|
||||
.color-box {
|
||||
width: 200px;
|
||||
@@ -58,7 +67,7 @@
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
border-radius: ${builtins.toString rice.rounding}px;
|
||||
border-radius: ${s rice.rounding}px;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
@@ -67,8 +76,9 @@
|
||||
${cb accent "accent" 100}
|
||||
${cb secondary "secondary" 100}
|
||||
${cb tertiary "tertiary" 100}
|
||||
${cb weird "weird" 100}
|
||||
${cb special "special" 100}
|
||||
${cb weird "weird" 80}
|
||||
${cb special "special" 80}
|
||||
${cb subtle "subtle" 80}
|
||||
<br>
|
||||
${cb positive "positive" 70}
|
||||
${cb negative "negative" 70}
|
||||
|
||||
@@ -1,7 +1,4 @@
|
||||
{ pkgs, ... }@all: with all;
|
||||
# browser.tabs.allow_transparent_browser
|
||||
# https://www.reddit.com/r/FirefoxCSS/comments/1dqws4b/firefox_128_will_allow_the_main_browser_content/
|
||||
{
|
||||
{ pkgs, ... }@all: with all; {
|
||||
programs.firefox.profiles."{hyper.user}".settings = {
|
||||
"widget.use-xdg-desktop-portal.file-picker" = 1;
|
||||
};
|
||||
@@ -9,272 +6,11 @@
|
||||
packages = with pkgs; [
|
||||
firefox
|
||||
];
|
||||
file = with rice.color; let
|
||||
blur = builtins.toString 20;
|
||||
in {
|
||||
".mozilla/firefox/${hyper.user}/chrome/userChrome.css".text = /* css */ ''
|
||||
:root{
|
||||
/* Popup panels */
|
||||
--arrowpanel-background : rgba(${rice.lib.hex-to-rgb-comma-string background}, ${builtins.toString rice.transparency}) !important;
|
||||
--arrowpanel-border-color : ${border} !important;
|
||||
--arrowpanel-color : ${secondary.base} !important;
|
||||
--arrowpanel-dimmed : rgba(${rice.lib.hex-to-rgb-comma-string background},0.4) !important;
|
||||
--arrowpanel-dimmed-further : rgba(${rice.lib.hex-to-rgb-comma-string background},0.6) !important;
|
||||
--arrowpanel-dimmed-even-further : rgba(${rice.lib.hex-to-rgb-comma-string background},0.8) !important;
|
||||
|
||||
/* Autocomplete */
|
||||
--autocomplete-popup-background : rgba(${rice.lib.hex-to-rgb-comma-string background}, ${builtins.toString rice.transparency}) !important;
|
||||
--autocomplete-popup-color : ${foreground} !important;
|
||||
--autocomplete-popup-highlight-background: ${accent.base} !important;
|
||||
--autocomplete-popup-highlight-color : ${foreground} !important;
|
||||
|
||||
/* Toolbar background */
|
||||
--toolbar-bgcolor : rgba(${rice.lib.hex-to-rgb-comma-string background},0.4) !important;
|
||||
--toolbar-non-lwt-bgcolor : rgba(${rice.lib.hex-to-rgb-comma-string background}, ${builtins.toString rice.transparency}) !important;
|
||||
--toolbar-non-lwt-bgimage : none !important;
|
||||
--toolbar-color : ${foreground} !important;
|
||||
|
||||
/* Tabs */
|
||||
--tab-selected-bgcolor : ${accent.base} !important;
|
||||
--tabs-border-color : ${border} !important;
|
||||
--tab-line-color : ${accent.base} !important;
|
||||
--tab-loader-size : 16px !important;
|
||||
|
||||
/* Sidebar */
|
||||
--lwt-sidebar-background-color : rgba(${rice.lib.hex-to-rgb-comma-string background}, ${builtins.toString rice.transparency}) !important;
|
||||
--lwt-sidebar-text-color : ${foreground} !important;
|
||||
--sidebar-background-color : rgba(${rice.lib.hex-to-rgb-comma-string background}, ${builtins.toString rice.transparency}) !important;
|
||||
--sidebar-text-color : ${foreground} !important;
|
||||
--sidebar-border-color : ${border} !important;
|
||||
|
||||
/* URL bar */
|
||||
--urlbar-popup-url-color : ${foreground} !important;
|
||||
--urlbar-popup-action-color : ${secondary.base} !important;
|
||||
--toolbar-field-background-color : rgba(${rice.lib.hex-to-rgb-comma-string background}, ${builtins.toString rice.transparency}) !important;
|
||||
--toolbar-field-focus-background-color : rgba(${rice.lib.hex-to-rgb-comma-string background}, ${builtins.toString rice.transparency}) !important;
|
||||
--toolbar-field-color : ${accent.base} !important;
|
||||
--toolbar-field-focus-color : ${foreground} !important;
|
||||
--toolbar-field-focus-border-color : ${accent.base} !important;
|
||||
|
||||
/* Buttons */
|
||||
--toolbarbutton-icon-fill : ${foreground} !important;
|
||||
--toolbarbutton-hover-background : rgba(${rice.lib.hex-to-rgb-comma-string accent.base}, 0.2) !important;
|
||||
--toolbarbutton-active-background : rgba(${rice.lib.hex-to-rgb-comma-string accent.base}, 0.4) !important;
|
||||
|
||||
/* Notification and panel */
|
||||
--panel-disabled-color : rgba(${rice.lib.hex-to-rgb-comma-string foreground},0.3) !important;
|
||||
--panel-separator-color : ${border} !important;
|
||||
|
||||
/* New tab page */
|
||||
--newtab-background-color : ${background} !important;
|
||||
--newtab-background-color-secondary : ${secondary.dark} !important;
|
||||
--newtab-text-primary-color : ${foreground} !important;
|
||||
--newtab-text-secondary-color : ${secondary.base} !important;
|
||||
--newtab-search-icon-color : ${accent.base} !important;
|
||||
|
||||
--tabpanel-background-color : transparent !important;
|
||||
background : linear-gradient(180deg,rgba(${rice.lib.hex-to-rgb-comma-string secondary.dark}, ${builtins.toString rice.transparency}) 0%, rgba(${rice.lib.hex-to-rgb-comma-string background}, ${builtins.toString rice.transparency}) 100%) !important;
|
||||
}
|
||||
.tabbrowser-tab[selected="true"] {
|
||||
color: ${background} !important;
|
||||
}
|
||||
|
||||
#appcontent {
|
||||
background: transparent !important;
|
||||
}
|
||||
#navigator-toolbox {
|
||||
--tabs-border-color: transparent !important;
|
||||
}
|
||||
#toolbar-menubar, #TabsToolbar, #PersonalToolbar, #navigator-toolbox, #sidebar-box {
|
||||
background-color: transparent !important;
|
||||
-moz-appearance: none !important;
|
||||
background-image: none !important;
|
||||
}
|
||||
|
||||
window, #nav-bar{
|
||||
background-color: transparent !important;
|
||||
-moz-appearance: none !important;
|
||||
background-image: none !important;
|
||||
}
|
||||
'';
|
||||
|
||||
".mozilla/firefox/${hyper.user}/chrome/userContent.css".text = /* css */ ''
|
||||
/* Removes the white loading page */
|
||||
/* url(about:newtab), url(about:home) */
|
||||
@-moz-document url(about:blank) {
|
||||
html:not(#ublock0-epicker), html:not(#ublock0-epicker) body, #newtab-customize-overlay {
|
||||
background: ${background} !important;
|
||||
}
|
||||
}
|
||||
|
||||
/* Sets up minimal incognito scrollbar */
|
||||
@-moz-document url(about:privatebrowsing) {
|
||||
:root{
|
||||
scrollbar-width: thin !important;
|
||||
scrollbar-color: rgb(161, 161, 161) transparent !important;
|
||||
}
|
||||
}
|
||||
|
||||
/* new-tab */
|
||||
@-moz-document url-prefix(about:home), url-prefix(about:newtab) {
|
||||
:root{
|
||||
--newtab-background-color-secondary: ${background} !important;
|
||||
}
|
||||
body, html {
|
||||
background: transparent !important;
|
||||
}
|
||||
.tile, .search-handoff-button {
|
||||
border: ${builtins.toString rice.border-width}px solid ${border} !important;
|
||||
}
|
||||
}
|
||||
|
||||
@-moz-document domain(reddit.com) {
|
||||
header {
|
||||
background-color: rgba(${rice.lib.hex-to-rgb-comma-string background},${builtins.toString rice.transparency}) !important;
|
||||
backdrop-filter: blur(${blur}px);
|
||||
}
|
||||
body, html, .bg-neutral-background, .threadline, reddit-sidebar-nav, shreddit-post, aside, .reddit-search-bar, comment-body-header, shreddit-comment-tree{
|
||||
background-color: transparent !important;
|
||||
}
|
||||
}
|
||||
|
||||
@-moz-document domain(reddit.com) {
|
||||
header {
|
||||
background-color: rgba(${rice.lib.hex-to-rgb-comma-string background},${builtins.toString rice.transparency}) !important;
|
||||
}
|
||||
body, html, reddit-sidebar-nav, shreddit-post, aside, .reddit-search-bar{
|
||||
background-color: transparent !important;
|
||||
}
|
||||
}
|
||||
|
||||
@-moz-document domain(google.com) {
|
||||
.sfbg {
|
||||
background-color: rgba(${rice.lib.hex-to-rgb-comma-string background},${builtins.toString rice.transparency}) !important;
|
||||
backdrop-filter: blur(${blur}px);
|
||||
}
|
||||
body, html, div#search > * {
|
||||
background-color: transparent !important;
|
||||
border: ${builtins.toString rice.border-width} solid ${border};
|
||||
}
|
||||
.g, .appbar {
|
||||
background-color: transparent !important;
|
||||
border: ${builtins.toString rice.border-width} solid ${border};
|
||||
}
|
||||
div#rso {
|
||||
* {
|
||||
background-color: transparent !important;
|
||||
border: ${builtins.toString rice.border-width} solid ${border};
|
||||
}
|
||||
}
|
||||
div#cnt > div {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@media (prefers-color-scheme: dark) {
|
||||
:root .theme-system {
|
||||
--color-bg: transtparent !important;
|
||||
--color-text: ${rice.color.foreground}
|
||||
}
|
||||
}
|
||||
|
||||
@-moz-document domain(developer.mozilla.org) {
|
||||
html, body {
|
||||
background-color: transparent !important;
|
||||
}
|
||||
.top-navigation, .article-actions-container {
|
||||
background-color: rgba(0,0,0,1) !important;
|
||||
backdrop-filter: blur(100px);
|
||||
border-radius: ${builtins.toString rice.rounding}px;
|
||||
}
|
||||
}
|
||||
|
||||
@-moz-document domain(github.com) {
|
||||
body, html, header, #repository-container-header, .bgColor-muted, section {
|
||||
background-color: transparent !important;
|
||||
}
|
||||
}
|
||||
@-moz-document domain(youtube.com) {
|
||||
body, html, div#content, ytd-app, #frosted-glass.with-chipbar.ytd-app, ytd-shorts[is-dark] #cinematic-shorts-scrim.ytd-shorts {
|
||||
background-color: transparent !important;
|
||||
}
|
||||
#background.ytd-masthead, div#background {
|
||||
background-color: rgba(${rice.lib.hex-to-rgb-comma-string background}, ${builtins.toString rice.transparency}) !important;
|
||||
backdrop-filter: blur(100px);
|
||||
}
|
||||
* {
|
||||
--yt-spec-base-background: transparent;
|
||||
--yt-spec-raised-background: rgba(${rice.lib.hex-to-rgb-comma-string background}, ${builtins.toString rice.transparency}) !important;
|
||||
--yt-spec-menu-background: rgba(${rice.lib.hex-to-rgb-comma-string accent.dark}, ${builtins.toString rice.transparency}) !important;
|
||||
--yt-spec-inverted-background: rgba(${rice.lib.hex-to-rgb-comma-string secondary.dark}, ${builtins.toString rice.transparency}) !important;
|
||||
}
|
||||
}
|
||||
|
||||
@-moz-document domain(mynixos.com) {
|
||||
body, html {
|
||||
background-color: transparent !important;
|
||||
}
|
||||
header, footer {
|
||||
background-color: rgba(0,0,0,1) !important;
|
||||
backdrop-filter: blur(100px);
|
||||
border-radius: ${builtins.toString rice.rounding}px;
|
||||
}
|
||||
}
|
||||
|
||||
@-moz-document domain(moodle.informatik.tu-darmstadt.de) {
|
||||
body, html , .main-inner, .main-inner * {
|
||||
background-color: transparent !important;
|
||||
}
|
||||
.bg-primary {
|
||||
background-color: rgba(${rice.lib.hex-to-rgb-comma-string accent.base},0.5) !important;
|
||||
}
|
||||
}
|
||||
|
||||
@-moz-document url-prefix("https://nx2.site/") {
|
||||
html {
|
||||
background: radial-gradient(rgba(255, 255, 255, 0.8) 5%, transparent 5%) !important;
|
||||
background-repeat: repeat !important;
|
||||
background-size: 2vmin 2vmin !important;
|
||||
}
|
||||
}
|
||||
|
||||
@-moz-document url-prefix("pw.nx2.site") {
|
||||
html {
|
||||
background: black;
|
||||
}
|
||||
}
|
||||
|
||||
@-moz-document url-prefix("pw.nx2.site") {
|
||||
html {
|
||||
background: radial-gradient(rgba(255, 255, 255, 0.8) 5%, transparent 5%) !important;
|
||||
background-repeat: repeat !important;
|
||||
background-size: 2vmin 2vmin !important;
|
||||
}
|
||||
body, .tw-bg-background-alt3, main, .card-header, .card-body, .modal-body {
|
||||
background-color: transparent !important;
|
||||
}
|
||||
.modal-open, .modal-header, form.modal-content, .modal-footer {
|
||||
background-color: rgba(0,0,0,0.8) !important;
|
||||
backdrop-filter: blur(5px);
|
||||
}
|
||||
.cdk-virtual-scroll-content-wrapper, .card, .tw-bg-background, .modal-content {
|
||||
background-color: rgba(0,0,0,0.8) !important;
|
||||
border-radius: 10px !important;
|
||||
border: ${toString rice.border-width}px solid ${border} !important;
|
||||
}
|
||||
}
|
||||
|
||||
'';
|
||||
# @-moz-document domain(chatgpt.com) {
|
||||
# body, html , .bg-token-sidebar-surface-primary {
|
||||
# background-color: transparent !important;
|
||||
# }
|
||||
# .bg-token-main-surface-primary {
|
||||
# background-color: rgba(0,0,0,1) !important;
|
||||
# backdrop-filter: blur(100px) !important;
|
||||
# border-radius: ${builtins.toString rice.rounding}px !important;
|
||||
# }
|
||||
# }
|
||||
file = {
|
||||
".mozilla/firefox/${hyper.user}/chrome/userChrome.css".text = import ./userChrome.nix rice;
|
||||
".mozilla/firefox/${hyper.user}/chrome/userContent.css".text = import ./userContent.nix rice;
|
||||
};
|
||||
};
|
||||
}
|
||||
# browser.tabs.allow_transparent_browser
|
||||
# https://www.reddit.com/r/FirefoxCSS/comments/1dqws4b/firefox_128_will_allow_the_main_browser_content/
|
||||
|
||||
19
home-modules/firefox/firefox.nix
Normal file
19
home-modules/firefox/firefox.nix
Normal file
@@ -0,0 +1,19 @@
|
||||
{ pkgs, ... }@all: with all;
|
||||
# browser.tabs.allow_transparent_browser
|
||||
# https://www.reddit.com/r/FirefoxCSS/comments/1dqws4b/firefox_128_will_allow_the_main_browser_content/
|
||||
{
|
||||
programs.firefox.profiles."{hyper.user}".settings = {
|
||||
"widget.use-xdg-desktop-portal.file-picker" = 1;
|
||||
};
|
||||
home = {
|
||||
packages = with pkgs; [
|
||||
firefox
|
||||
];
|
||||
file = with rice.color; let
|
||||
blur = builtins.toString 20;
|
||||
f = rice.lib.hex-to-rgb-comma-string;
|
||||
in {
|
||||
".mozilla/firefox/${hyper.user}/chrome/userChrome.css".text = import ./userChrome.nix rice;
|
||||
".mozilla/firefox/${hyper.user}/chrome/userContent.css".text = import ./userContent.nix rice; };
|
||||
};
|
||||
}
|
||||
92
home-modules/firefox/userChrome.nix
Normal file
92
home-modules/firefox/userChrome.nix
Normal file
@@ -0,0 +1,92 @@
|
||||
rice: with rice.color; let
|
||||
f = rice.lib.hex-to-rgb-comma-string;
|
||||
# blur = builtins.toString 20;
|
||||
in /* css */ ''
|
||||
:root{
|
||||
/* Popup panels */
|
||||
--arrowpanel-background : rgba(${f background}, ${builtins.toString rice.transparency}) !important;
|
||||
--arrowpanel-border-color : ${border} !important;
|
||||
--arrowpanel-color : ${secondary.base} !important;
|
||||
--arrowpanel-dimmed : rgba(${f background},0.4) !important;
|
||||
--arrowpanel-dimmed-further : rgba(${f background},0.6) !important;
|
||||
--arrowpanel-dimmed-even-further : rgba(${f background},0.8) !important;
|
||||
|
||||
/* Autocomplete */
|
||||
--autocomplete-popup-background : rgba(${f background}, ${builtins.toString rice.transparency}) !important;
|
||||
--autocomplete-popup-color : ${foreground} !important;
|
||||
--autocomplete-popup-highlight-background: ${accent.base} !important;
|
||||
--autocomplete-popup-highlight-color : ${foreground} !important;
|
||||
|
||||
/* Toolbar background */
|
||||
--toolbar-bgcolor : transparent !important;
|
||||
--toolbar-non-lwt-bgcolor : rgba(${f background}, ${builtins.toString rice.transparency}) !important;
|
||||
--toolbar-non-lwt-bgimage : none !important;
|
||||
--toolbar-color : ${foreground} !important;
|
||||
|
||||
/* Tabs */
|
||||
--tab-selected-bgcolor : ${accent.base} !important;
|
||||
--tabs-border-color : ${border} !important;
|
||||
--tab-line-color : ${accent.base} !important;
|
||||
--tab-loader-size : 16px !important;
|
||||
|
||||
/* Sidebar */
|
||||
--lwt-sidebar-background-color : rgba(${f background}, ${builtins.toString rice.transparency}) !important;
|
||||
--lwt-sidebar-text-color : ${foreground} !important;
|
||||
--sidebar-background-color : rgba(${f background}, ${builtins.toString rice.transparency}) !important;
|
||||
--sidebar-text-color : ${foreground} !important;
|
||||
--sidebar-border-color : ${border} !important;
|
||||
|
||||
/* URL bar */
|
||||
--urlbar-popup-url-color : ${foreground} !important;
|
||||
--urlbar-popup-action-color : ${secondary.base} !important;
|
||||
--toolbar-field-background-color : rgba(${f background}, ${builtins.toString rice.transparency}) !important;
|
||||
--toolbar-field-focus-background-color : rgba(${f background}, ${builtins.toString rice.transparency}) !important;
|
||||
--toolbar-field-color : ${accent.base} !important;
|
||||
--toolbar-field-focus-color : ${foreground} !important;
|
||||
--toolbar-field-focus-border-color : ${accent.base} !important;
|
||||
|
||||
/* Buttons */
|
||||
--toolbarbutton-icon-fill : ${foreground} !important;
|
||||
--toolbarbutton-hover-background : rgba(${f accent.base}, 0.2) !important;
|
||||
--toolbarbutton-active-background : rgba(${f accent.base}, 0.4) !important;
|
||||
|
||||
/* Notification and panel */
|
||||
--panel-disabled-color : rgba(${f foreground},0.3) !important;
|
||||
--panel-separator-color : ${border} !important;
|
||||
|
||||
/* New tab page */
|
||||
--newtab-background-color : transparent !important;
|
||||
--newtab-background-color-secondary : ${secondary.dark} !important;
|
||||
--newtab-text-primary-color : ${foreground} !important;
|
||||
--newtab-text-secondary-color : ${secondary.base} !important;
|
||||
--newtab-search-icon-color : ${accent.base} !important;
|
||||
--newtab-background-card : ${accent.dark} !important;
|
||||
--tabpanel-background-color : transparent !important;
|
||||
|
||||
background : linear-gradient(180deg,rgba(${f secondary.dark}, ${builtins.toString rice.transparency}) 0%, rgba(${f accent.dark}, ${builtins.toString rice.transparency}) 100%) !important;
|
||||
}
|
||||
.tabbrowser-tab[selected="true"] {
|
||||
color: ${background} !important;
|
||||
}
|
||||
hbox#browser {
|
||||
backround-color: transparent: !important;
|
||||
}
|
||||
|
||||
#appcontent {
|
||||
background: transparent !important;
|
||||
}
|
||||
#navigator-toolbox {
|
||||
--tabs-border-color: transparent !important;
|
||||
}
|
||||
#toolbar-menubar, #TabsToolbar, #PersonalToolbar, #navigator-toolbox, #sidebar-box {
|
||||
background-color: transparent !important;
|
||||
-moz-appearance: none !important;
|
||||
background-image: none !important;
|
||||
}
|
||||
|
||||
window, #nav-bar{
|
||||
background-color: transparent !important;
|
||||
-moz-appearance: none !important;
|
||||
background-image: none !important;
|
||||
}
|
||||
''
|
||||
226
home-modules/firefox/userContent.nix
Normal file
226
home-modules/firefox/userContent.nix
Normal file
@@ -0,0 +1,226 @@
|
||||
rice: with rice.color; let
|
||||
f = rice.lib.hex-to-rgb-comma-string;
|
||||
blur = builtins.toString 20;
|
||||
in /* css */ ''
|
||||
/* Removes the white loading page */
|
||||
/* url(about:newtab), url(about:home) */
|
||||
@-moz-document url(about:blank) {
|
||||
html:not(#ublock0-epicker), html:not(#ublock0-epicker) body, #newtab-customize-overlay {
|
||||
background: transparent !important;
|
||||
}
|
||||
}
|
||||
|
||||
/* Sets up minimal incognito scrollbar */
|
||||
@-moz-document url(about:privatebrowsing) {
|
||||
:root{
|
||||
scrollbar-width: thin !important;
|
||||
scrollbar-color: rgb(161, 161, 161) transparent !important;
|
||||
}
|
||||
}
|
||||
|
||||
/* new-tab */
|
||||
@-moz-document url-prefix(about:home), url-prefix(about:newtab) {
|
||||
:root{
|
||||
--newtab-background-color-secondary: rgba(${f background},0.5) !important;
|
||||
}
|
||||
body, html {
|
||||
background: transparent !important;
|
||||
}
|
||||
.tile, .search-handoff-button {
|
||||
border: ${builtins.toString rice.border-width}px solid ${border} !important;
|
||||
}
|
||||
}
|
||||
|
||||
@-moz-document domain(reddit.com) {
|
||||
header {
|
||||
background-color: rgba(${f background},${builtins.toString rice.transparency}) !important;
|
||||
backdrop-filter: blur(${blur}px);
|
||||
}
|
||||
body, html, .bg-neutral-background, .threadline, reddit-sidebar-nav, shreddit-post, aside, .reddit-search-bar, comment-body-header, shreddit-comment-tree, #flex-left-nav-container {
|
||||
background-color: transparent !important;
|
||||
}
|
||||
#main-content {
|
||||
background-color: rgba(${f background},0.5)!important;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@-moz-document domain(reddit.com) {
|
||||
header {
|
||||
background-color: rgba(${rice.lib.hex-to-rgb-comma-string background},${builtins.toString rice.transparency}) !important;
|
||||
}
|
||||
body, html, reddit-sidebar-nav, shreddit-post, aside, .reddit-search-bar{
|
||||
background-color: transparent !important;
|
||||
}
|
||||
}
|
||||
|
||||
@-moz-document domain(google.com) {
|
||||
.sfbg {
|
||||
background-color: rgba(${rice.lib.hex-to-rgb-comma-string background},${builtins.toString rice.transparency}) !important;
|
||||
backdrop-filter: blur(${blur}px);
|
||||
}
|
||||
body, html, div#search > * {
|
||||
background-color: transparent !important;
|
||||
border: ${builtins.toString rice.border-width} solid ${border};
|
||||
}
|
||||
.g, .appbar {
|
||||
background-color: transparent !important;
|
||||
border: ${builtins.toString rice.border-width} solid ${border};
|
||||
}
|
||||
div#rso {
|
||||
* {
|
||||
background-color: transparent !important;
|
||||
border: ${builtins.toString rice.border-width} solid ${border};
|
||||
}
|
||||
}
|
||||
div#cnt > div {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@media (prefers-color-scheme: dark) {
|
||||
:root .theme-system {
|
||||
--color-bg: transtparent !important;
|
||||
--color-text: ${rice.color.foreground}
|
||||
}
|
||||
}
|
||||
|
||||
@-moz-document domain(developer.mozilla.org) {
|
||||
html, body {
|
||||
background-color: transparent !important;
|
||||
}
|
||||
.top-navigation, .article-actions-container {
|
||||
background-color: rgba(0,0,0,1) !important;
|
||||
backdrop-filter: blur(100px);
|
||||
border-radius: ${builtins.toString rice.rounding}px;
|
||||
}
|
||||
}
|
||||
|
||||
@-moz-document domain(github.com) {
|
||||
body, html, header, #repository-container-header, .bgColor-muted, section {
|
||||
background-color: transparent !important;
|
||||
}
|
||||
}
|
||||
@-moz-document domain(youtube.com) {
|
||||
body, html, div#content, ytd-app, #frosted-glass.with-chipbar.ytd-app, ytd-shorts[is-dark] #cinematic-shorts-scrim.ytd-shorts {
|
||||
background-color: transparent !important;
|
||||
}
|
||||
#background.ytd-masthead, div#background {
|
||||
background-color: rgba(${rice.lib.hex-to-rgb-comma-string background}, ${builtins.toString rice.transparency}) !important;
|
||||
backdrop-filter: blur(100px);
|
||||
}
|
||||
* {
|
||||
--yt-spec-base-background: transparent;
|
||||
--yt-spec-raised-background: rgba(${rice.lib.hex-to-rgb-comma-string background}, ${builtins.toString rice.transparency}) !important;
|
||||
--yt-spec-menu-background: rgba(${rice.lib.hex-to-rgb-comma-string accent.dark}, ${builtins.toString rice.transparency}) !important;
|
||||
--yt-spec-inverted-background: rgba(${rice.lib.hex-to-rgb-comma-string secondary.dark}, ${builtins.toString rice.transparency}) !important;
|
||||
}
|
||||
}
|
||||
|
||||
@-moz-document domain(mynixos.com) {
|
||||
body, html {
|
||||
background-color: transparent !important;
|
||||
}
|
||||
header, footer {
|
||||
background-color: rgba(0,0,0,1) !important;
|
||||
backdrop-filter: blur(100px);
|
||||
border-radius: ${builtins.toString rice.rounding}px;
|
||||
}
|
||||
}
|
||||
|
||||
@-moz-document domain(moodle.informatik.tu-darmstadt.de) {
|
||||
body, html , .main-inner, .main-inner * {
|
||||
background-color: transparent !important;
|
||||
}
|
||||
.bg-primary {
|
||||
background-color: rgba(${rice.lib.hex-to-rgb-comma-string accent.base},0.5) !important;
|
||||
}
|
||||
}
|
||||
@-moz-document domain(wikipedia.org) {
|
||||
body, html, div.mw-page-container, .vector-header, .mw-header {
|
||||
background-color: transparent !important;
|
||||
}
|
||||
:root {
|
||||
--color-base: ${foreground} !important;
|
||||
--color-base--hover: ${accent.bright} !important;
|
||||
--color-emphasized: ${accent.base} !important;
|
||||
--color-progressive: ${accent.base} !important;
|
||||
--color-progressive--hover: ${accent.brighter} !important;
|
||||
--color-progressive--active: ${secondary.bright} !important;
|
||||
--color-destructive: ${negative.base} !important;
|
||||
--color-destructive--hover: ${negative.brighter} !important;
|
||||
--color-destructive--active: ${negative.bright} !important;
|
||||
--color-visited: ${secondary.base} !important;
|
||||
--color-visited--hover: ${secondary.brighter} !important;
|
||||
--color-visited--active: ${secondary.bright} !important;
|
||||
--color-error: ${negative.base} !important;
|
||||
--color-error--hover: ${negative.bright} !important;
|
||||
--color-error--active: ${negative.bright} !important;
|
||||
--color-warning: ${weird.base} !important;
|
||||
--color-success: ${positive.base} !important;
|
||||
--color-notice: ${special.base} !important;
|
||||
--color-content-added: ${positive.base} !important;
|
||||
--color-content-removed: ${negative.base} !important;
|
||||
--color-base--subtle: ${accent.dark} !important;
|
||||
--box-shadow-color-base: ${black.base} !important;
|
||||
--background-color-base: transparent !important;
|
||||
--background-color-neutral: transparent !important;
|
||||
--background-color-neutral-subtle: transparent !important;
|
||||
--background-color-interactive: ${accent.darker} !important;
|
||||
--background-color-interactive--hover: ${accent.dark} !important;
|
||||
--background-color-interactive--active: ${secondary.dark} !important;
|
||||
--background-color-interactive-subtle: ${subtle.darker} !important;
|
||||
--background-color-interactive-subtle--hover: ${subtle.dark} !important;
|
||||
--background-color-interactive-subtle--active: ${subtle.base} !important;
|
||||
--border-color-base: ${border} !important;
|
||||
--border-color-emphasized: ${border2} !important;
|
||||
--border-color-subtle: ${subtle.base} !important;
|
||||
--border-color-muted: ${subtle.dark} !important;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@-moz-document url-prefix("https://nx2.site/") {
|
||||
html {
|
||||
background: radial-gradient(rgba(255, 255, 255, 0.8) 5%, transparent 5%) !important;
|
||||
background-repeat: repeat !important;
|
||||
background-size: 2vmin 2vmin !important;
|
||||
}
|
||||
}
|
||||
|
||||
@-moz-document url-prefix("pw.nx2.site") {
|
||||
html {
|
||||
background: black;
|
||||
}
|
||||
}
|
||||
|
||||
@-moz-document url-prefix("pw.nx2.site") {
|
||||
html {
|
||||
background: radial-gradient(rgba(255, 255, 255, 0.8) 5%, transparent 5%) !important;
|
||||
background-repeat: repeat !important;
|
||||
background-size: 2vmin 2vmin !important;
|
||||
}
|
||||
body, .tw-bg-background-alt3, main, .card-header, .card-body, .modal-body {
|
||||
background-color: transparent !important;
|
||||
}
|
||||
.modal-open, .modal-header, form.modal-content, .modal-footer {
|
||||
background-color: rgba(0,0,0,0.8) !important;
|
||||
backdrop-filter: blur(5px);
|
||||
}
|
||||
.cdk-virtual-scroll-content-wrapper, .card, .tw-bg-background, .modal-content {
|
||||
background-color: rgba(0,0,0,0.8) !important;
|
||||
border-radius: 10px !important;
|
||||
border: ${toString rice.border-width}px solid ${border} !important;
|
||||
}
|
||||
}
|
||||
''
|
||||
# @-moz-document domain(chatgpt.com) {
|
||||
# body, html , .bg-token-sidebar-surface-primary {
|
||||
# background-color: transparent !important;
|
||||
# }
|
||||
# .bg-token-main-surface-primary {
|
||||
# background-color: rgba(0,0,0,1) !important;
|
||||
# backdrop-filter: blur(100px) !important;
|
||||
# border-radius: ${builtins.toString rice.rounding}px !important;
|
||||
# }
|
||||
# }
|
||||
@@ -3,33 +3,35 @@
|
||||
home.packages = with pkgs; [
|
||||
any-nix-shell
|
||||
|
||||
(writeShellScriptBin "nxfetch" ''
|
||||
(writeShellScriptBin "nxfetch" /* bash */ ''
|
||||
logo=$(echo -e "
|
||||
|
||||
⠀⠀⠀⠀⠰⣿⣧⠀⠀⠹⣿⣧⠀⣴⣿⠆⠀⠀⠀⠀ OS
|
||||
⠀⠀⠀⣀⣀⣹⣿⣧⣀⣀⠘⣿⣿⣿⠏⠀⠀⠀⠀⠀ DE/WM
|
||||
⠀⠀⠼⠿⠿⠿⠿⠿⠿⠿⠦⠘⣿⣿⡀⠀⣼⣧⠀⠀ TERM
|
||||
⠀⠀⠀⠀⢠⣶⡶⠀⠀⠀⠀⠀⠈⠿⢁⣼⣿⠋⠀⠀ SHELL
|
||||
⢾⣿⣿⣿⣿⡿⠁⠀⠀⠀⠀⠀⠀⢀⣾⣿⣿⣿⣿⡷ ISHELL
|
||||
⠀⠀⣠⣿⡟⢁⣶⡀⠀⠀⠀⠀⠀⠾⠿⠃⠀⠀⠀⠀ KERNEL
|
||||
⠀⠀⢻⡟⠀⠈⢿⣿⡄⠲⣶⣶⣶⣶⣶⣶⣶⡖⠀⠀ EDITOR
|
||||
⠀⠀⠀⠀⠀⣰⣿⣿⣿⡄⠉⠉⢻⣿⣏⠉⠉⠀⠀⠀ TFM
|
||||
⠀⠀⠀⠀⠰⣿⠟⠀⢻⣿⣆⠀⠀⠻⣿⠆⠀⠀⠀⠀ PROMPT
|
||||
⠀⠀⠀⠀⠰⣿⣧⠀⠀⠹⣿⣧⠀⣴⣿⠆⠀⠀⠀⠀ OS
|
||||
⠀⠀⠀⣀⣀⣹⣿⣧⣀⣀⠘⣿⣿⣿⠏⠀⠀⠀⠀⠀ DE/WM
|
||||
⠀⠀⠼⠿⠿⠿⠿⠿⠿⠿⠦⠘⣿⣿⡀⠀⣼⣧⠀⠀ TERM
|
||||
⠀⠀⠀⠀⢠⣶⡶⠀⠀⠀⠀⠀⠈⠿⢁⣼⣿⠋⠀⠀ SHELL
|
||||
⢾⣿⣿⣿⣿⡿⠁⠀⠀⠀⠀⠀⠀⢀⣾⣿⣿⣿⣿⡷ ISHELL
|
||||
⠀⠀⣠⣿⡟⢁⣶⡀⠀⠀⠀⠀⠀⠾⠿⠃⠀⠀⠀⠀ KERNEL
|
||||
⠀⠀⢻⡟⠀⠈⢿⣿⡄⠲⣶⣶⣶⣶⣶⣶⣶⡖⠀⠀ EDITOR
|
||||
⠀⠀⠀⠀⠀⣰⣿⣿⣿⡄⠉⠉⢻⣿⣏⠉⠉⠀⠀⠀ TFM
|
||||
⠀⠀⠀⠀⠰⣿⠟⠀⢻⣿⣆⠀⠀⠻⣿⠆⠀⠀⠀⠀ PROMPT
|
||||
|
||||
" | lolcat --force 2> /dev/null)
|
||||
" | lolcat --force 2> /dev/null)
|
||||
|
||||
msg="
|
||||
$(echo -e "$logo" | sed -n 3p): $(cat /etc/*-release | grep PRETTY_NAME | cut -c 14- | rev | cut -c 2- | rev)
|
||||
$(echo -e "$logo" | sed -n 4p): ''${XDG_CURRENT_DESKTOP^}
|
||||
$(echo -e "$logo" | sed -n 5p): ''${TERM^}
|
||||
$(echo -e "$logo" | sed -n 6p): $(bash --version | head --lines 1 | cut -f -4 -d' ' | sed -E 's-(.*?), version (.*?)\(.*-\1 \2-g')
|
||||
$(echo -e "$logo" | sed -n 7p): fish $(fish --version | rev | cut -f 1 -d' ' | rev | sed 's/./\U&/')
|
||||
$(echo -e "$logo" | sed -n 8p): ''$(uname -r)
|
||||
$(echo -e "$logo" | sed -n 9p): $($EDITOR --version | head -n 1 | sed -E 's-(.+?) \(.*-\1-g' | sed 's/./\U&/')
|
||||
$(echo -e "$logo" | sed -n 10p): $(yazi --version | sed -E 's-(.*?) \(.*-\1-g')
|
||||
$(echo -e "$logo" | sed -n 11p): $(starship --version | head -n 1 | sed 's/./\U&/')
|
||||
"
|
||||
echo -e "$msg"
|
||||
release_line=$(cat /etc/*-release 2> /dev/null || echo 'PRETTY_NAME="[No Release]"')
|
||||
|
||||
msg="
|
||||
$(echo -e "$logo" | sed -n 3p): $(echo "$release_line" | grep PRETTY_NAME | cut -c 14- | rev | cut -c 2- | rev)
|
||||
$(echo -e "$logo" | sed -n 4p): ''${XDG_CURRENT_DESKTOP^}
|
||||
$(echo -e "$logo" | sed -n 5p): ''${TERM^}
|
||||
$(echo -e "$logo" | sed -n 6p): $(bash --version | head --lines 1 | cut -f -4 -d' ' | sed -E 's-(.*?), version (.*?)\(.*-\1 \2-g')
|
||||
$(echo -e "$logo" | sed -n 7p): fish $(fish --version | rev | cut -f 1 -d' ' | rev | sed 's/./\U&/')
|
||||
$(echo -e "$logo" | sed -n 8p): ''$(uname -r | sed -E 's=(.+-.+-.+-.+)-.+=\1=g')
|
||||
$(echo -e "$logo" | sed -n 9p): $($EDITOR --version | head -n 1 | sed -E 's-(.+?) \(.*-\1-g' | sed 's/./\U&/')
|
||||
$(echo -e "$logo" | sed -n 10p): $(yazi --version | sed -E 's-(.*?) \(.*-\1-g')
|
||||
$(echo -e "$logo" | sed -n 11p): $(starship --version | head -n 1 | sed 's/./\U&/')
|
||||
"
|
||||
echo -e "$msg"
|
||||
'')
|
||||
];
|
||||
|
||||
|
||||
@@ -21,16 +21,17 @@
|
||||
};
|
||||
extraConfig = {
|
||||
credential = {
|
||||
"https://git.da.dicos.de".username = lib.mkIf (hyper.host =="NxWSL") "lkurzweg";
|
||||
"https://git.da.dicos.de".password = lib.mkIf (hyper.host =="NxWSL") "Test";
|
||||
"https://git.da.dicos.de".username = lib.mkIf (hyper.host =="NxDCS") "lkurzweg";
|
||||
"https://git.da.dicos.de".password = lib.mkIf (hyper.host =="NxDCS") "Test";
|
||||
};
|
||||
url."ssh://git@git.da.dicos.de/".insteadOf = lib.mkIf (hyper.host =="NxWSL") "https://git.da.dicos.de/";
|
||||
url."ssh://git@git.da.dicos.de/".insteadOf = lib.mkIf (hyper.host =="NxDCS") "https://git.da.dicos.de/";
|
||||
url."ssh://git@github.com/".insteadOf = "https://github.com/";
|
||||
pull.rebase = false; # true
|
||||
};
|
||||
};
|
||||
programs.lazygit = {
|
||||
enable = true;
|
||||
package = pkgs.lazygit;
|
||||
settings = {
|
||||
windowSize = "normal";
|
||||
gui.theme = with rice.color; {
|
||||
|
||||
@@ -1,16 +1,36 @@
|
||||
{ pkgs, ... }@all: with all;
|
||||
{
|
||||
# there also is a system module
|
||||
home.packages = with pkgs; [
|
||||
gnupg
|
||||
gpg-tui
|
||||
pinentry-all
|
||||
];
|
||||
|
||||
services.gpg-agent = let
|
||||
min2sec = min: (min * 60);
|
||||
in {
|
||||
{ pkgs, ... }@all: with all; {
|
||||
home.packages = with pkgs; [ pinentry-all ];
|
||||
programs.gpg = {
|
||||
enable = true;
|
||||
package = pkgs.gnupg;
|
||||
homedir = "${hyper.home}/vault/gnupg";
|
||||
settings = {
|
||||
armor = true;
|
||||
cert-digest-algo = "SHA512";
|
||||
charset = "utf-8";
|
||||
default-preference-list = "SHA512 SHA384 SHA256 AES256 AES192 AES ZLIB BZIP2 ZIP Uncompressed";
|
||||
keyid-format = "0xlong";
|
||||
list-options = "show-uid-validity";
|
||||
no-comments = true;
|
||||
no-emit-version = true;
|
||||
no-greeting = true;
|
||||
no-symkey-cache = true;
|
||||
personal-cipher-preferences = "AES256 AES192 AES";
|
||||
personal-compress-preferences = "ZLIB BZIP2 ZIP Uncompressed";
|
||||
personal-digest-preferences = "SHA512 SHA384 SHA256";
|
||||
pinentry-mode = "loopback";
|
||||
require-cross-certification = true;
|
||||
s2k-cipher-algo = "AES256";
|
||||
s2k-digest-algo = "SHA512";
|
||||
use-agent = true;
|
||||
verify-options = "show-uid-validity";
|
||||
with-fingerprint = true;
|
||||
};
|
||||
};
|
||||
services.gpg-agent = let
|
||||
min2sec = min: (min * 60);
|
||||
in {
|
||||
enable = false;
|
||||
verbose = true;
|
||||
sshKeys = [
|
||||
"97081264F7FD72D890D496E839AA9A4C7892A7D8" # Keygrip (not Fingerprint!) of [A] Subkey
|
||||
@@ -22,33 +42,5 @@
|
||||
extraConfig = ''
|
||||
allow-loopback-pinentry
|
||||
'';
|
||||
} // (if (pkgs.version != "24.05") then {
|
||||
pinentry = {
|
||||
package = pkgs.pinentry;
|
||||
program = "pinentry";
|
||||
};
|
||||
} else {});
|
||||
|
||||
home.file.".gnupg/gpg.conf".text = ''
|
||||
personal-cipher-preferences AES256 AES192 AES
|
||||
personal-digest-preferences SHA512 SHA384 SHA256
|
||||
personal-compress-preferences ZLIB BZIP2 ZIP Uncompressed
|
||||
default-preference-list SHA512 SHA384 SHA256 AES256 AES192 AES ZLIB BZIP2 ZIP Uncompressed
|
||||
cert-digest-algo SHA512
|
||||
s2k-digest-algo SHA512
|
||||
s2k-cipher-algo AES256
|
||||
charset utf-8
|
||||
no-comments
|
||||
no-emit-version
|
||||
no-greeting
|
||||
keyid-format 0xlong
|
||||
list-options show-uid-validity
|
||||
verify-options show-uid-validity
|
||||
with-fingerprint
|
||||
require-cross-certification
|
||||
no-symkey-cache
|
||||
armor
|
||||
use-agent
|
||||
pinentry-mode loopback
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
||||
@@ -436,8 +436,8 @@
|
||||
fg = black.bright;
|
||||
};
|
||||
"ui.virtual.inlay-hint" = {
|
||||
fg = background;
|
||||
bg = tertiary.dark;
|
||||
fg = subtle.base;
|
||||
bg = subtle.dark;
|
||||
};
|
||||
"ui.virtual.ruler" = {
|
||||
bg = background;
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
{ pkgs, ... }@all: with all;
|
||||
let
|
||||
{ pkgs, ... }@all: with all; let
|
||||
animation-speed = "5";
|
||||
transparency = builtins.toString rice.transparency;
|
||||
terminal = "ghostty";
|
||||
@@ -7,7 +6,7 @@ let
|
||||
monitors = {
|
||||
xps = {
|
||||
main = { name = "eDP-1"; resolution = "1920x1200"; position = "1920x1080"; scale = "1.0"; };
|
||||
second = { name = "DP-5"; resolution = "1920x1080"; position = "1920x0"; scale = "1.0"; };
|
||||
second = { name = "desc:Sony SONY TV 0x01010101"; resolution = "1920x1080"; position = "1920x0"; scale = "1.0"; };
|
||||
third = { name = "DP-6"; resolution = "1920x1080"; position = "0x0"; scale = "1.0"; };
|
||||
};
|
||||
north = {
|
||||
@@ -15,12 +14,11 @@ let
|
||||
left = { name = "desc:Philips Consumer Electronics Company 273PLPH AU11423002132"; resolution = "1920x1080"; position = "0x0"; scale = "1.0"; };
|
||||
# right = { name = "HDMI-A-2"; resolution = "1920x1080"; position = "4480x360"; scale = "1.0"; };
|
||||
};
|
||||
ace = {
|
||||
main = { name = "HDMI-A-1"; resolution = "3840x2160"; position = "0x0"; scale = "2.0"; };
|
||||
};
|
||||
ace.main = { name = "HDMI-A-1"; resolution = "3840x2160"; position = "0x0"; scale = "2.0"; };
|
||||
};
|
||||
in {
|
||||
home.packages = with pkgs; [
|
||||
xdg-desktop-portal-hyprland
|
||||
hyprland-protocols
|
||||
hyprlock
|
||||
hypridle
|
||||
@@ -258,16 +256,16 @@ in {
|
||||
"opacity ${transparency}, class:^(Code)$"
|
||||
"opacity ${transparency}, class:^(code-oss)$"
|
||||
"opacity ${transparency}, class:^(discord)$"
|
||||
"opacity ${transparency}, class:^(vesktop)$"
|
||||
# "opacity ${transparency}, class:^(vesktop)$"
|
||||
# "opacity ${transparency}, class:^(Element)$"
|
||||
"opacity ${transparency}, class:^(lutris)$"
|
||||
"opacity ${transparency}, class:^(neovide)$"
|
||||
# "opacity ${transparency}, class:^(obsidian)$"
|
||||
"opacity ${transparency}, class:^(vesktop)$"
|
||||
"opacity ${transparency}, class:^(VSCodium)$"
|
||||
"opacity ${transparency}, title:^(wlogout)$"
|
||||
|
||||
"opaque, title:^(GNU Image Manipulation Program)$"
|
||||
"opaque, fullscreen:1"
|
||||
|
||||
"pin, title:^(Picture-in-Picture)$"
|
||||
|
||||
@@ -363,7 +361,7 @@ in {
|
||||
"SUPER, Q, killactive"
|
||||
"SUPER, W, exec, submap_indicator set ' '"
|
||||
"SUPER, W, submap, browserSM "
|
||||
"SUPER, E, exec, element-desktop"
|
||||
# "SUPER, E, exec, element-desktop"
|
||||
"SUPER, R, exec, rofi -show drun"
|
||||
# "SUPER, T, exec, alacritty"
|
||||
# "SUPER SHIFT, T, exec, alacritty -e sh -c "ssh nxace""
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ pkgs, ... }@all: with all;
|
||||
{ pkgs, ... }@all: with all; let
|
||||
sep = " ";
|
||||
in {
|
||||
home = {
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{ pkgs, ... }@all: with all; {
|
||||
home = {
|
||||
packages = with pkgs; [
|
||||
latest.opencode
|
||||
opencode
|
||||
];
|
||||
file.".config/opencode/opencode.json".text = let
|
||||
model = "qwen2.5-coder:7b";
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
{ pkgs, ... }@all: with all; {
|
||||
home.packages = with pkgs; [
|
||||
xdg-desktop-portal
|
||||
brightnessctl
|
||||
blueman
|
||||
fontpreview
|
||||
@@ -7,7 +8,7 @@
|
||||
gsettings-desktop-schemas
|
||||
imv
|
||||
pavucontrol
|
||||
# playerctl
|
||||
playerctl
|
||||
swww
|
||||
wev
|
||||
wl-clipboard
|
||||
|
||||
@@ -1,9 +1,12 @@
|
||||
{ pkgs, hyper, ... }: {
|
||||
home.packages = with pkgs; [
|
||||
chromium
|
||||
gnome-clocks
|
||||
gnome-calculator
|
||||
gnome-characters
|
||||
gnome-2048
|
||||
element-desktop
|
||||
qbittorrent
|
||||
unstable.spotify
|
||||
wl-clipboard
|
||||
xfce.thunar
|
||||
] ++ (if (hyper.host != "NxACE") then [
|
||||
|
||||
12
home-modules/programming.nix
Normal file
12
home-modules/programming.nix
Normal file
@@ -0,0 +1,12 @@
|
||||
{ ... }: {
|
||||
imports = [
|
||||
./programming/c.nix
|
||||
./programming/gleam.nix
|
||||
./programming/glsl.nix
|
||||
./programming/go.nix
|
||||
./programming/java.nix
|
||||
./programming/js.nix
|
||||
./programming/python.nix
|
||||
./programming/rust.nix
|
||||
];
|
||||
}
|
||||
11
home-modules/programming/rust.nix
Normal file
11
home-modules/programming/rust.nix
Normal file
@@ -0,0 +1,11 @@
|
||||
{ pkgs, ... }@all: with all; {
|
||||
home = {
|
||||
packages = with pkgs; [
|
||||
cargo
|
||||
clippy
|
||||
rustc
|
||||
rustfmt
|
||||
rust-analyzer
|
||||
];
|
||||
};
|
||||
}
|
||||
@@ -23,9 +23,7 @@
|
||||
};
|
||||
};
|
||||
};
|
||||
secrets = {
|
||||
pass = "/run/user/1000/secrets/copyparty/user-password/${hyper.user}";
|
||||
};
|
||||
secrets.pass = "/run/user/1000/secrets/copyparty/user-password/${hyper.user}";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -1,23 +1,7 @@
|
||||
{ pkgs, ... }@all: with all;
|
||||
{
|
||||
imports = [
|
||||
inputs.sops-nix.homeManagerModules.sops
|
||||
];
|
||||
|
||||
{ pkgs, ... }@all: with all; {
|
||||
imports = [ inputs.sops-nix.homeManagerModules.sops ];
|
||||
sops = {
|
||||
age.keyFile = lib.mkIf (hyper.host == "NxACE") "${hyper.home}/.age_nx2_key_13.txt";
|
||||
gnupg.home = lib.mkIf (hyper.host != "NxACE") "${hyper.home}/.gnupg";
|
||||
age.keyFile = "${hyper.home}/vault/age/sopsnix-${hyper.host}-home.key";
|
||||
defaultSopsFile = ../sops-secrets.yaml;
|
||||
|
||||
# %r is $XDG_RUNTIME_DIR
|
||||
secrets = {
|
||||
"example" = {
|
||||
path = "%r/secrets/example";
|
||||
};
|
||||
# "sops-age-private-key" = { # Bootstrapping doens't work
|
||||
# mode = "0400";
|
||||
# path = "/home/${user}/.config/sops/age/keys.txt";
|
||||
# };
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
56
home-modules/spotify.nix
Normal file
56
home-modules/spotify.nix
Normal file
@@ -0,0 +1,56 @@
|
||||
{ pkgs, ... }@all: with all;
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
unstable.spotify
|
||||
];
|
||||
services.librespot = {
|
||||
enable = true;
|
||||
package = pkgs.unstable.librespot;
|
||||
};
|
||||
sops.secrets."spotify/spotiy-player-clinet-id" = { path = "%r/secrets/spotify/spotiy-player-clinet-id"; };
|
||||
programs.spotify-player = {
|
||||
enable = true;
|
||||
package = pkgs.unstable.spotify-player;
|
||||
settings = {
|
||||
border_type = "Rounded";
|
||||
client_id_command = "cat $XDG_RUNTIME_DIR/secrets/spotify/spotiy-player-clinet-id";
|
||||
copy_command.command = "wl-copy";
|
||||
cover_img_length = 20;
|
||||
cover_img_scale = 1; # if this is not 1 it doesnt fit in the box (for me)
|
||||
cover_img_width = 9; # this ratio depends on your terminal font
|
||||
device.normalization = true;
|
||||
genre_num = 32; # all of them
|
||||
liked_icon = "";
|
||||
name = "spotify-player-${hyper.host}";
|
||||
pause_icon = "";
|
||||
playback_window_position = "Bottom";
|
||||
play_icon = "";
|
||||
progress_bar_position = "Right"; # "Bottom"
|
||||
progress_bar_type = "Rectangle"; # "Line"
|
||||
theme = "${hyper.user}";
|
||||
};
|
||||
themes = [{
|
||||
name = "${hyper.user}";
|
||||
component_style = with rice.color; {
|
||||
block_title = { fg = accent.bright; };
|
||||
border = { fg = border; };
|
||||
current_playing = { fg = special.base; bg = special.darker; modifiers = ["Italic"]; };
|
||||
like = { fg = positive.base; };
|
||||
lyrics_played = { fg = subtle.base; };
|
||||
lyrics_playing = { fg = special.base; };
|
||||
page_desc = { fg = secondary.base; };
|
||||
playback_album = { fg = secondary.base; };
|
||||
playback_artists = { fg = secondary.base; };
|
||||
playback_genres = { fg = subtle.base; };
|
||||
playback_metadata = { fg = accent.base; bg = background; };
|
||||
playback_progress_bar = { fg = accent.brighter; bg = accent.dark; modifiers = ["Bold"]; };
|
||||
playback_status = { fg = accent.bright; };
|
||||
playback_track = { fg = accent.bright; modifiers = ["Bold"]; };
|
||||
secondary_row = { fg = secondary.base; };
|
||||
selection = { bg = accent.dark; };
|
||||
table_header = { fg = tertiary.bright; };
|
||||
# playback_progress_bar_unfilled (Specific to progress_bar_type as Line) = "";
|
||||
};
|
||||
}];
|
||||
};
|
||||
}
|
||||
@@ -1,27 +1,38 @@
|
||||
{ pkgs, ... }@all: with all;
|
||||
{
|
||||
home = {
|
||||
packages = with pkgs; [ openssh sshfs ];
|
||||
file.".ssh/config".text = ''
|
||||
HOST nxace
|
||||
HostName ssh.${hyper.domain}
|
||||
User nx2
|
||||
Port 50022
|
||||
|
||||
HOST nxacel
|
||||
HostName 10.0.1.1
|
||||
User nx2
|
||||
Port 50022
|
||||
|
||||
HOST nxrpil
|
||||
HostName 10.0.1.31
|
||||
User nx2
|
||||
Port 22
|
||||
|
||||
HOST nxgit
|
||||
HostName ssh.${hyper.domain}
|
||||
User git
|
||||
Port 50022
|
||||
'';
|
||||
{ pkgs, ... }@all: with all; {
|
||||
home.packages = with pkgs; [ sshfs ];
|
||||
programs.ssh = {
|
||||
enable = true;
|
||||
package = pkgs.openssh;
|
||||
addKeysToAgent = "yes";
|
||||
matchBlocks = let
|
||||
nxace = name: {
|
||||
host = name;
|
||||
hostname = "ssh.${hyper.domain}";
|
||||
user = hyper.user;
|
||||
port = 50022;
|
||||
identityFile = "${hyper.home}/vault/ssh/nxace-nx2-${hyper.host}";
|
||||
};
|
||||
in {
|
||||
"*" = {
|
||||
identityFile = [
|
||||
"${hyper.home}/vault/ssh/nxgit-nx2-${hyper.host}"
|
||||
"${hyper.home}/vault/ssh/github-noggynoggy-${hyper.host}"
|
||||
"${hyper.home}/vault/ssh/tg-dm-informatik-tuda"
|
||||
];
|
||||
};
|
||||
"nxace" = nxace "nxace";
|
||||
"nxacel" = (nxace "nxacel") // { hostname = "10.0.1.1"; };
|
||||
"nxrpli" = (nxace "nxrpil") // { hostname = "10.0.1.31"; port = 22; };
|
||||
"nxgit" = (nxace "nxgit") // {
|
||||
user = "git";
|
||||
identityFile = "${hyper.home}/vault/ssh/nxgit-nx2-${hyper.host}";
|
||||
# addKeysToAgent = "1h";
|
||||
};
|
||||
};
|
||||
};
|
||||
services.ssh-agent = {
|
||||
enable = true;
|
||||
# socket = "ssh-agent"; # suffix to $XDG_RUNTIME_DIR
|
||||
# package = pkgs.openssh;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -8,25 +8,25 @@
|
||||
mimeApps = {
|
||||
enable = true;
|
||||
defaultApplications = let
|
||||
browser = "firefox.desktop";
|
||||
image = "imv.desktop";
|
||||
in {
|
||||
"default-web-browser" = [ browser ];
|
||||
"text/html" = [ browser ];
|
||||
"text/htm" = [ browser ];
|
||||
"x-scheme-handler/http" = [ browser ];
|
||||
"x-scheme-handler/https" = [ browser ];
|
||||
"x-scheme-handler/about" = [ browser ];
|
||||
"x-scheme-handler/unknown" = [ browser ];
|
||||
"x-scheme-handler/mailto" = "thunderbird.desktop";
|
||||
"image/png" = image;
|
||||
"image/jpg" = image;
|
||||
"image/jpeg" = image;
|
||||
"image/webp" = image;
|
||||
"image/gif" = image;
|
||||
"application/pdf" = "zathura.desktop";
|
||||
"inode/directory" = "thunar.desktop";
|
||||
};
|
||||
browser = "firefox.desktop";
|
||||
image = "imv.desktop";
|
||||
in {
|
||||
"default-web-browser" = [ browser ];
|
||||
"text/html" = [ browser ];
|
||||
"text/htm" = [ browser ];
|
||||
"x-scheme-handler/http" = [ browser ];
|
||||
"x-scheme-handler/https" = [ browser ];
|
||||
"x-scheme-handler/about" = [ browser ];
|
||||
"x-scheme-handler/unknown" = [ browser ];
|
||||
"x-scheme-handler/mailto" = "thunderbird.desktop";
|
||||
"image/png" = image;
|
||||
"image/jpg" = image;
|
||||
"image/jpeg" = image;
|
||||
"image/webp" = image;
|
||||
"image/gif" = image;
|
||||
"application/pdf" = "zathura.desktop";
|
||||
"inode/directory" = "thunar.desktop";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,12 +1,11 @@
|
||||
{ pkgs, ... }@all: with all; let
|
||||
tfc = pkgs.latest.xdg-desktop-portal-termfilechooser;
|
||||
x = (pkgs.version != "24.05");
|
||||
nox-var = (pkgs.version != "24.05");
|
||||
tfc = pkgs.xdg-desktop-portal-termfilechooser;
|
||||
in {
|
||||
home.packages = [
|
||||
pkgs.unar
|
||||
tfc
|
||||
];
|
||||
|
||||
programs.yazi = {
|
||||
enable = true;
|
||||
# package = pkgs.yazi;
|
||||
@@ -310,7 +309,7 @@ in {
|
||||
border_style = { fg = border; };
|
||||
};
|
||||
tabs = {
|
||||
active = { fg = accent.dark; bg = accent.base; };
|
||||
active = { fg = secondary.dark; bg = secondary.base; };
|
||||
inactive = { fg = secondary.base; bg = secondary.dark; };
|
||||
# sep_inner =
|
||||
# sep_outer =
|
||||
@@ -382,7 +381,7 @@ in {
|
||||
];
|
||||
};
|
||||
};
|
||||
} // (if x then {
|
||||
} // (if nox-var then {
|
||||
shellWrapperName = "ya";
|
||||
initLua = /* lua */ ''
|
||||
require("zoxide"):setup {
|
||||
@@ -423,7 +422,14 @@ in {
|
||||
enable = true;
|
||||
xdgOpenUsePortal = true;
|
||||
config.common."org.freedesktop.impl.portal.FileChooser" = "termfilechooser";
|
||||
extraPortals = [ tfc ];
|
||||
extraPortals = [ tfc ] ++ (with pkgs; [
|
||||
xdg-desktop-portal-hyprland
|
||||
xdg-desktop-portal
|
||||
xdg-desktop-portal-gnome
|
||||
xdg-desktop-portal-gtk
|
||||
xdg-desktop-portal-hyprland
|
||||
xdg-desktop-portal-wlr
|
||||
]);
|
||||
};
|
||||
};
|
||||
home.sessionVariables."GTK_USE_PORTAL" = "1";
|
||||
|
||||
Reference in New Issue
Block a user