From 1b8bee2df63de98419c8dd293fcdfe6f107e3cb7 Mon Sep 17 00:00:00 2001 From: Chris Cochrun Date: Wed, 25 Dec 2024 00:15:41 -0600 Subject: [PATCH] some things --- .config/firefox/chrome/userChrome.css | 225 ++++++++++++++++++++- .config/mpv-syl/script-opts/videoclip.conf | 2 + .config/mpv/script-opts/videoclip.conf | 2 + .config/tridactyl/themes/snazzy.css | 2 + home/home.nix | 20 +- home/modules/hyprland.nix | 2 +- modules/desktop.nix | 17 +- modules/emacs.nix | 5 + pkgs/desktop-packages.nix | 2 +- 9 files changed, 252 insertions(+), 25 deletions(-) create mode 100644 .config/mpv-syl/script-opts/videoclip.conf create mode 100644 .config/mpv/script-opts/videoclip.conf diff --git a/.config/firefox/chrome/userChrome.css b/.config/firefox/chrome/userChrome.css index 6b34d67..200e71f 100644 --- a/.config/firefox/chrome/userChrome.css +++ b/.config/firefox/chrome/userChrome.css @@ -1,9 +1,218 @@ -@import url(chrome/tab_close_button_always_on_hover.css); -@import url(chrome/button_effect_scale_onclick.css); -@import url(chrome/blank_page_background.css); -@import url(chrome/theme_color_variables.css); -@import url(chrome/navbar_tabs_oneliner_tabs_on_left.css); -@import url(chrome/autohide_sidebar.css); -@import url(chrome/menubar_in_toolbar.css); -@import url(chrome/hide_toolbox_top_bottom_borders.css); +/* Most of this is from MrOtherGuy */ +/* Make main toolbar autohide */ +:root{ + --uc-navbar-transform: -40px; + --uc-autohide-toolbar-delay: 1.8s; + --uc-autohide-toolbar-duration: 400ms; +} +:root[uidensity="compact"]{ --uc-navbar-transform: -34px } + +#navigator-toolbox > div{ display: contents; } +:root[sessionrestored] :where(#nav-bar,#PersonalToolbar,#tab-notification-deck,.global-notificationbox){ + transform: translateY(var(--uc-navbar-transform)) +} +:root:is([customizing],[chromehidden*="toolbar"]) :where(#nav-bar,#PersonalToolbar,#tab-notification-deck,.global-notificationbox){ + transform: none !important; + opacity: 1 !important; +} + +#nav-bar:not([customizing]){ + opacity: 0; + transition: transform var(--uc-autohide-toolbar-duration) ease var(--uc-autohide-toolbar-delay), opacity var(--uc-autohide-toolbar-duration) ease var(--uc-autohide-toolbar-delay) !important; + position: relative; + z-index: 2; +} +#titlebar{ position: relative; z-index: 3 } + +#navigator-toolbox, +#sidebar-box, +#sidebar-main, +#sidebar-splitter, +#tabbrowser-tabbox{ + z-index: auto !important; +} +/* Show when toolbox is focused, like when urlbar has received focus */ +#navigator-toolbox:focus-within > .browser-toolbar{ + transform: translateY(0); + opacity: 1; + transition-duration: var(--uc-autohide-toolbar-duration), var(--uc-autohide-toolbar-duration) !important; + transition-delay: 0s !important; +} +/* Show when toolbox is hovered */ +#titlebar:hover ~ .browser-toolbar, +.browser-titlebar:hover ~ :is(#nav-bar,#PersonalToolbar), +#nav-bar:hover, +#nav-bar:hover + #PersonalToolbar{ + transform: translateY(0); + opacity: 1; + transition-duration: var(--uc-autohide-toolbar-duration), var(--uc-autohide-toolbar-duration) !important; + transition-delay: 0s !important; +} +:root[sessionrestored] #urlbar[popover]{ + opacity: 0; + pointer-events: none; + transition: transform var(--uc-autohide-toolbar-duration) ease var(--uc-autohide-toolbar-delay), opacity var(--uc-autohide-toolbar-duration) ease var(--uc-autohide-toolbar-delay); + transform: translateY(var(--uc-navbar-transform)); +} +#mainPopupSet:has(> [panelopen]:not(#ask-chat-shortcuts,#tab-preview-panel)) ~ toolbox #urlbar[popover], +.browser-titlebar:is(:hover,:focus-within) ~ #nav-bar #urlbar[popover], +#nav-bar:is(:hover,:focus-within) #urlbar[popover], +#urlbar-container > #urlbar[popover]:is([focused],[open]){ + opacity: 1; + pointer-events: auto; + transition-delay: 0ms; + transform: translateY(0); +} +#urlbar-container > #urlbar[popover]:is([focused],[open]){ + transition-duration: 100ms; /* Faster when focused */ +} +/* This ruleset is separate, because not having :has support breaks other selectors as well */ +#mainPopupSet:has(> [panelopen]:not(#ask-chat-shortcuts,#tab-preview-panel)) ~ #navigator-toolbox > .browser-toolbar{ + transition-delay: 33ms !important; + transform: translateY(0); + opacity: 1; +} +/* If tabs are in sidebar then nav-bar doesn't normally have its own background - so we nee to add it back */ +#nav-bar.browser-titlebar{ + background: inherit; +} +#toolbar-menubar:not([autohide="true"]) ~ #nav-bar.browser-titlebar{ + background-position-y: -28px; /* best guess, could vary */ + border-top: none !important; +} + +/* Bookmarks toolbar needs so extra rules */ +#PersonalToolbar{ transition: transform var(--uc-autohide-toolbar-duration) ease var(--uc-autohide-toolbar-delay) !important; position: relative; z-index: 1 } + +/* Move up the content view */ +:root[sessionrestored]:not([inFullscreen],[chromehidden~="toolbar"]) > body > #browser{ margin-top: var(--uc-navbar-transform); } + + + + + + + +/* Why 100vw? Tab closing requires width animation to end and "none" can't be animated */ +.tabbrowser-tab[fadein]:not([style^="max-width"]){ max-width: 100vw !important } + + +/* Make tab content centered and more compact */ +.tabbrowser-tab[selected]:not(:hover):not([pinned]) .tab-label-container, +#tabbrowser-tabs:not([closebuttons="activetab"]) .tabbrowser-tab:not(:hover):not([pinned]) .tab-label-container{ + padding-inline-end: 6px !important; +} +.tab-icon-stack{ + margin-inline-start: auto +} +.tab-label-container{ + max-width: min-content; + margin-inline-end: auto; +} + + +/* Make tabs slimmer */ +/*.tabbrowser-tab[fadein]:not([style^="max-height"]), .tab-background, .tab-content, .tab-stack, .tabbrowser-tab { max-height: 5vw !important } + + +/* Make urlbar appear more compact */ +#urlbar[breakout][breakout-extend] { + margin-left: 0 !important; + width: var(--urlbar-width) !important; + margin-top: calc((var(--urlbar-container-height) - var(--urlbar-height)) / 2) + 2 !important; +} +.urlbarView{ + margin-inline: 0 !important; + width: 80% !important; +} +.urlbarView-row{ + padding: 0 2px !important; +} +.urlbarView-row-inner{ + padding-inline-start: 4px !important; +} +#urlbar-background{ + animation: none !important; +} +.urlbar-input-container{ + padding: 0px 1px !important; + height: initial !important; +} +#identity-icon{ + margin-block: var(--urlbar-icon-padding); +} +.urlbarView > .search-one-offs:not([hidden]){ + padding-block: 0px !important; +} + + + + + + + + + +/* Make extensions panel more compact */ +#unified-extensions-view{ + --uei-icon-size: 16px; +} +.unified-extensions-item-menu-button.subviewbutton{ + padding: 0px !important; + margin-inline-end: 0 !important; +} +.unified-extensions-item-action-button.subviewbutton{ + padding-block: 6px !important; +} +.unified-extensions-item-menu-button.subviewbutton > .toolbarbutton-icon{ + padding: 4px !important; +} +.unified-extensions-item-message-deck{ + display: none +} +#unified-extensions-view > vbox > vbox > .unified-extensions-item{ + padding-block: 0px !important; +} +#unified-extensions-panel .unified-extensions-item{ + margin-block: 0 !important; +} + + + + +/* Make bunch of things in the main UI round */ + +:root{ --toolbarbutton-border-radius: 24px !important } +.urlbar-input-container > box:hover, +.urlbar-input-container > box[open], +#main-menubar > menu, +.titlebar-button:hover, +#scrollbutton-up, +#scrollbutton-down, +.tab-close-button, +.close-icon > image, +#page-action-buttons > :hover, +.panel-arrowcontent, +.urlbarView-row-inner, +.search-one-offs button, +.subviewbutton-back, +.toolbaritem-combined-buttons > toolbarbutton, +#PopupSearchAutoComplete, +menupopup{ border-radius: 18px } + +button, +.tab-background{ border-radius: 30px !important; } + +.panel-arrowcontent{ margin-inline-end: 0 !important; } +.panel-arrow{ margin-inline: 17px !important; } + +menupopup{ -moz-appearance: none !important; overflow: -moz-hidden-unscrollable !important; } + +.tabbrowser-tab[selected]::after, +.tabbrowser-tab[beforeselected-visible]::after{ border-color: transparent !important; } + +.urlbar-icon, +toolbar toolbarbutton:not(#back-button):not(.bookmark-item):not(.titlebar-button) > .toolbarbutton-icon{ border-radius: 0px !important; clip-path: circle() } + +menugroup:hover > menuitem{ clip-path: circle() } diff --git a/.config/mpv-syl/script-opts/videoclip.conf b/.config/mpv-syl/script-opts/videoclip.conf new file mode 100644 index 0000000..e64842d --- /dev/null +++ b/.config/mpv-syl/script-opts/videoclip.conf @@ -0,0 +1,2 @@ +video_folder_path=/home/chris/vids +audio_folder_path=/home/chris/music \ No newline at end of file diff --git a/.config/mpv/script-opts/videoclip.conf b/.config/mpv/script-opts/videoclip.conf new file mode 100644 index 0000000..e64842d --- /dev/null +++ b/.config/mpv/script-opts/videoclip.conf @@ -0,0 +1,2 @@ +video_folder_path=/home/chris/vids +audio_folder_path=/home/chris/music \ No newline at end of file diff --git a/.config/tridactyl/themes/snazzy.css b/.config/tridactyl/themes/snazzy.css index d9b8e0c..377d2fb 100644 --- a/.config/tridactyl/themes/snazzy.css +++ b/.config/tridactyl/themes/snazzy.css @@ -18,6 +18,7 @@ --tridactyl-fg: var(--base05); --tridactyl-bg: var(--base00); + --tridactyl-cmdl-bg: var(--base00); --tridactyl-url-fg: var(--base08); --tridactyl-url-bg: var(--base00); --tridactyl-highlight-box-bg: var(--base0D); @@ -40,6 +41,7 @@ #command-line-holder { order: 1; color: var(--tridactyl-bg) !important; + background-color: var(--tridactyl-bg) !important; background: var(--tridactyl-bg) !important; } :root #completions table tr td.prefix, diff --git a/home/home.nix b/home/home.nix index a90fe03..d11a27f 100644 --- a/home/home.nix +++ b/home/home.nix @@ -87,11 +87,11 @@ in "audio/opus" = "mpv-slow.desktop"; "audio/x-opus" = "mpv-slow.desktop"; "audio/x-opus+ogg" = "mpv-slow.desktop"; - "x-scheme-handler/http" = "org.qutebrowser.qutebrowser.desktop"; - "x-scheme-handler/https" = "org.qutebrowser.qutebrowser.desktop"; - "text/html" = "org.qutebrowser.qutebrowser.desktop"; - "x-scheme-handler/about" = "org.qutebrowser.qutebrowser.desktop"; - "x-scheme-handler/unknown" = "org.qutebrowser.qutebrowser.desktop"; + "x-scheme-handler/http" = "firefox.desktop"; + "x-scheme-handler/https" = "firefox.desktop"; + "text/html" = "firefox.desktop"; + "x-scheme-handler/about" = "firefox.desktop"; + "x-scheme-handler/unknown" = "firefox.desktop"; }; defaultApplications = { "video/mp4" = "mpv.desktop"; @@ -119,11 +119,11 @@ in "audio/flac" = "mpv-slow.desktop"; "audio/wav" = "mpv-slow.desktop"; "audio/opus" = "mpv-slow.desktop"; - "x-scheme-handler/http" = "org.qutebrowser.qutebrowser.desktop"; - "x-scheme-handler/https" = "org.qutebrowser.qutebrowser.desktop"; - "text/html" = "org.qutebrowser.qutebrowser.desktop"; - "x-scheme-handler/about" = "org.qutebrowser.qutebrowser.desktop"; - "x-scheme-handler/unknown" = "org.qutebrowser.qutebrowser.desktop"; + "x-scheme-handler/http" = "firefox.desktop"; + "x-scheme-handler/https" = "firefox.desktop"; + "text/html" = "firefox.desktop"; + "x-scheme-handler/about" = "firefox.desktop"; + "x-scheme-handler/unknown" = "firefox.desktop"; }; }; diff --git a/home/modules/hyprland.nix b/home/modules/hyprland.nix index f5dc7e2..96b48b0 100644 --- a/home/modules/hyprland.nix +++ b/home/modules/hyprland.nix @@ -246,7 +246,7 @@ in "SUPER,E,exec,/home/chris/bin/emacslof" "SUPER,d,exec,emacsclient -c -e '(dired-jump)'" "SUPER,v,exec,cliphist list | rofi -p '󱃔 ' -dmenu -theme ~/.config/rofi/launchers-git/laptop-rbw-wayland.rasi | cliphist decode | wl-copy" - "SUPER,B,exec,/home/chris/bin/qblof" + "SUPER,B,exec,/home/chris/bin/fflof" "SUPER,A,exec,alacritty --class pulsemixer -e pulsemixer" "SUPERCTRL,i,exec,alacritty --class btop -e btop" ",Print,exec,screenshot" diff --git a/modules/desktop.nix b/modules/desktop.nix index ec40997..85f2839 100644 --- a/modules/desktop.nix +++ b/modules/desktop.nix @@ -43,11 +43,18 @@ in enableKwallet = true; }; - systemd.extraConfig = '' - DefaultTimeoutStopSec=10s - DefaultTimeoutStartSec=10s - ''; - + systemd = { + oomd = { + enable = true; + enableRootSlice = true; + enableUserSlices = true; + enableSystemSlice = true; + }; + extraConfig = '' + DefaultTimeoutStopSec=10s + DefaultTimeoutStartSec=10s + ''; + }; fonts.packages = with pkgs; [ nerd-fonts.victor-mono noto-fonts diff --git a/modules/emacs.nix b/modules/emacs.nix index 1cbddca..4cd7e21 100644 --- a/modules/emacs.nix +++ b/modules/emacs.nix @@ -180,6 +180,11 @@ pkgs.openjdk pkgs.languagetool pkgs.emacs-all-the-icons-fonts + pkgs.tree-sitter-grammars.tree-sitter-css + pkgs.tree-sitter-grammars.tree-sitter-scss + pkgs.tree-sitter-grammars.tree-sitter-rust + pkgs.tree-sitter-grammars.tree-sitter-yaml + pkgs.tree-sitter-grammars.tree-sitter-toml ])); defaultEditor = true; }; diff --git a/pkgs/desktop-packages.nix b/pkgs/desktop-packages.nix index e809381..c268dd2 100644 --- a/pkgs/desktop-packages.nix +++ b/pkgs/desktop-packages.nix @@ -50,7 +50,7 @@ # python310Packages.mutagen python310Packages.audiotools (mpv.override { - scripts = with pkgs.mpvScripts; [ mpris quality-menu sponsorblock ]; + scripts = with pkgs.mpvScripts; [ mpris quality-menu sponsorblock thumbfast videoclip modernx ]; }) ani-cli # mov-cli