From 2052fd93975f7e001ae4736153641226bdd18f96 Mon Sep 17 00:00:00 2001 From: surtur Date: Mon, 10 Jul 2023 05:09:43 +0200 Subject: [PATCH] home-manager: add more configs --- .config/aerc/aerc-surtur.conf | 211 +++++++++++++++++++++++++++++ .config/environment.d/java.conf | 1 + .config/environment.d/mozilla.conf | 2 + .config/environment.d/qt.conf | 2 + .config/kitty/current-theme.conf | 42 ++++++ home-surtur.nix | 52 +------ nix/modules/xdg.nix | 97 +++++++++++++ 7 files changed, 360 insertions(+), 47 deletions(-) create mode 100644 .config/aerc/aerc-surtur.conf create mode 100644 .config/environment.d/java.conf create mode 100644 .config/environment.d/mozilla.conf create mode 100644 .config/environment.d/qt.conf create mode 100644 .config/kitty/current-theme.conf create mode 100644 nix/modules/xdg.nix diff --git a/.config/aerc/aerc-surtur.conf b/.config/aerc/aerc-surtur.conf new file mode 100644 index 0000000..790aa6b --- /dev/null +++ b/.config/aerc/aerc-surtur.conf @@ -0,0 +1,211 @@ +# +# aerc main configuration + +[ui] +# +# Describes the format for each row in a mailbox view. This field is compatible +# with mutt's printf-like syntax. +# +# Default: %D %-17.17n %Z %s +# index-format=%D %-17.17n %Z %s +index-columns = date<*,name<17,flags>4,subject<* +column-subject = {{.ThreadPrefix}}{{.Subject}} +column-date = {{.DateAutoFormat .Date.Local}} +column-name = {{index (.From | names) 0}} +column-flags = {{.Flags | join ""}} + +# +# See time.Time#Format at https://godoc.org/time#Time.Format +# +# Default: 2006-01-02 03:04 PM (ISO 8601 + 12 hour time) +timestamp-format=2006-01-02 03:04 PM + +# +# Width of the sidebar, including the border. +# +# Default: 20 +sidebar-width=20 + +# +# Message to display when viewing an empty folder. +# +# Default: (no messages) +empty-message=(no messages) + +# Message to display when no folders exists or are all filtered +# +# Default: (no folders) +empty-dirlist=(no folders) + +# Enable mouse events in the ui, e.g. clicking and scrolling with the mousewheel +# +# Default: false +mouse-enabled=false + +# +# Ring the bell when new messages are received +# +# Default: true +new-message-bell=true + +# Marker to show before a pinned tab's name. +# +# Default: ` +pinned-tab-marker='`' + +# Describes the format string to use for the directory list +# +# Default: %n %>r +# dirlist-format=%n %>r +dirlist-left = {{.Folder}} +dirlist-right = {{if .Unread}}{{humanReadable .Unread}}/{{end}}{{if .Exists}}{{humanReadable .Exists}}{{end}} + +# List of space-separated criteria to sort the messages by, see *sort* +# command in *aerc*(1) for reference. Prefixing a criterion with "-r " +# reverses that criterion. +# +# Example: "from -r date" +# +# Default: "" +sort= + +# Moves to next message when the current message is deleted +# +# Default: true +next-message-on-delete=true + +# The directories where the stylesets are stored. It takes a colon-separated +# list of directories. +# +# default: /usr/local/share/aerc/stylesets/ +stylesets-dirs=/usr/share/aerc/stylesets/ + +# Sets the styleset to use for the aerc ui elements. +# +# Default: default +# styleset-name=default +styleset-name=dracula + +[viewer] +# +# Specifies the pager to use when displaying emails. Note that some filters +# may add ANSI codes to add color to rendered emails, so you may want to use a +# pager which supports ANSI codes. +# +# Default: less -R +pager=less -R + +# +# If an email offers several versions (multipart), you can configure which +# mimetype to prefer. For example, this can be used to prefer plaintext over +# html emails. +# +# Default: text/plain,text/html +alternatives=text/plain,text/html + +# +# Default setting to determine whether to show full headers or only parsed +# ones in message viewer. +# +# Default: false +show-headers=false + +# +# Layout of headers when viewing a message. To display multiple headers in the +# same row, separate them with a pipe, e.g. "From|To". Rows will be hidden if +# none of their specified headers are present in the message. +# +# Default: From|To,Cc|Bcc,Date,Subject +header-layout=From|To,Cc|Bcc,Date,Subject + +# Whether to always show the mimetype of an email, even when it is just a single part +# +# Default: false +always-show-mime=false + +# How long to wait after the last input before auto-completion is triggered. +# +# Default: 250ms +completion-delay=250ms + +# +# Global switch for completion popovers +# +# Default: true +completion-popovers=true + +[compose] +# +# Specifies the command to run the editor with. It will be shown in an embedded +# terminal, though it may also launch a graphical window if the environment +# supports it. Defaults to $EDITOR, or vi. +editor= + +# +# Default header fields to display when composing a message. To display +# multiple headers in the same row, separate them with a pipe, e.g. "To|From". +# +# Default: To|From,Subject +header-layout=To|From,Subject,Cc|Bcc + +# +# Specifies the command to be used to tab-complete email addresses. Any +# occurrence of "%s" in the address-book-cmd will be replaced with what the +# user has typed so far. +# +# The command must output the completions to standard output, one completion +# per line. Each line must be tab-delimited, with an email address occurring as +# the first field. Only the email address field is required. The second field, +# if present, will be treated as the contact name. Additional fields are +# ignored. +address-book-cmd= + +[filters] +# +# Filters allow you to pipe an email body through a shell command to render +# certain emails differently, e.g. highlighting them with ANSI escape codes. +# +# The first filter which matches the email's mimetype will be used, so order +# them from most to least specific. +# +# You can also match on non-mimetypes, by prefixing with the header to match +# against (non-case-sensitive) and a comma, e.g. subject,text will match a +# subject which contains "text". Use header,~regex to match against a regex. +# subject,~^\[PATCH=awk -f /usr/share/aerc/filters/hldiff +subject,~^\[PATCH=awk -f /usr/libexec/aerc/filters/hldiff +#text/html=/usr/local/share/aerc/filters/html +text/html=/usr/libexec/aerc/filters/html +text/*=awk -f /usr/libexec/aerc/filters/plaintext +image/*=catimg -w $(tput cols) - + +[triggers] +# +# Triggers specify commands to execute when certain events occur. +# +# Example: +# new-email=exec notify-send "New email from %n" "%s" + +# +# Executed when a new email arrives in the selected folder +# new-email=exec notify-send "aerc: you have a new email" +mail-received = notify-send "aerc: you have a new email" + +[templates] +# Templates are used to populate email bodies automatically. +# + +# The directories where the templates are stored. It takes a colon-separated +# list of directories. +# +# default: /usr/local/share/aerc/templates/ +template-dirs=/usr/share/aerc/templates/ + +# The template to be used for quoted replies. +# +# default: quoted_reply +quoted-reply=quoted_reply + +# The template to be used for forward as body. +# +# default: forward_as_body +forwards=forward_as_body diff --git a/.config/environment.d/java.conf b/.config/environment.d/java.conf new file mode 100644 index 0000000..22a8ae6 --- /dev/null +++ b/.config/environment.d/java.conf @@ -0,0 +1 @@ +_JAVA_AWT_WM_NONREPARENTING=1 diff --git a/.config/environment.d/mozilla.conf b/.config/environment.d/mozilla.conf new file mode 100644 index 0000000..29c1402 --- /dev/null +++ b/.config/environment.d/mozilla.conf @@ -0,0 +1,2 @@ +MOZ_DBUS_REMOTE=1 +MOZ_ENABLE_WAYLAND=1 diff --git a/.config/environment.d/qt.conf b/.config/environment.d/qt.conf new file mode 100644 index 0000000..f16dc71 --- /dev/null +++ b/.config/environment.d/qt.conf @@ -0,0 +1,2 @@ +QT_QPA_PLATFORMTHEME=qt5ct +QT_WAYLAND_DISABLE_WINDOWDECORATION=1 diff --git a/.config/kitty/current-theme.conf b/.config/kitty/current-theme.conf new file mode 100644 index 0000000..6933de9 --- /dev/null +++ b/.config/kitty/current-theme.conf @@ -0,0 +1,42 @@ +## name: Dracula +## author: Keegan Carruthers-Smith +## license: MIT +## upstream: https://raw.githubusercontent.com/dracula/kitty/master/dracula.conf + +foreground #f8f8f2 +background #282a36 +selection_foreground #ffffff +selection_background #44475a +url_color #8be9fd +color0 #21222c +color8 #6272a4 +color1 #ff5555 +color9 #ff6e6e +color2 #50fa7b +color10 #69ff94 +color3 #f1fa8c +color11 #ffffa5 +color4 #bd93f9 +color12 #d6acff +color5 #ff79c6 +color13 #ff92df +color6 #8be9fd +color14 #a4ffff +color7 #f8f8f2 +color15 #ffffff +cursor #f8f8f2 +cursor_text_color background +active_tab_foreground #282a36 +# active_tab_background #f8f8f2 +active_tab_background #ab86e0 +# inactive_tab_foreground #282a36 +# inactive_tab_background #6272a4 +# alt +# inactive_tab_background #2c2f3a +# alt2 +# inactive_tab_foreground #6272a4 +inactive_tab_foreground #a0cff7 +# inactive_tab_background #2b2b2b +inactive_tab_background #282a36 +tab_bar_background #282a36 +mark1_foreground #282a36 diff --git a/home-surtur.nix b/home-surtur.nix index 85046ca..d34e5cc 100644 --- a/home-surtur.nix +++ b/home-surtur.nix @@ -1,4 +1,5 @@ { + config, lib, pkgs, homeage, @@ -75,15 +76,15 @@ in { ".config/sway/config" = { source = ./.config/sway/config; }; - ".config/sway/config.d/dracula.sway" = { - source = ./.config/sway/config.d/dracula.sway; - }; ".config/sway/env" = { source = ./.config/sway/env; }; ".config/sway/inputs" = { source = ./.config/sway/inputs; }; + ".config/sway/config.d/dracula.sway" = { + source = ./.config/sway/config.d/dracula.sway; + }; ".config/waybar/config" = { source = ./.config/waybar/config; }; @@ -584,48 +585,5 @@ in { }; }; - xdg = { - configFile."kitty/config.d" = { - source = ./.config/kitty/config.d; - }; - - configFile."aerc/aerc.conf" = { - source = ./.config/aerc/aerc.conf; - }; - configFile."aerc/binds.conf" = { - source = ./.config/aerc/binds.conf; - }; - - configFile."sheldon/plugins.toml" = { - source = ./.config/sheldon/plugins.toml; - }; - - configFile."starship.toml" = { - source = ./.config/starship.toml; - }; - - configFile."zathura/zathurarc" = { - source = ./.config/zathura/zathurarc; - }; - configFile."zathura/dracula-zathura" = { - source = pkgs.fetchFromGitHub { - owner = "dracula"; - repo = "zathura"; - rev = "b597b1537aa125e8829bef2cc57a0b0c6a6b35a1"; - sha256 = "sha256-g6vxwPw0Q9QFJBc3d4R3ZsHnnEvU5o1f4DSuyLeN5XQ="; - }; - }; - - configFile."qutebrowser/dracula" = { - source = pkgs.fetchFromGitHub { - owner = "dracula"; - repo = "qutebrowser-dracula-theme"; - rev = "ba5bd6589c4bb8ab35aaaaf7111906732f9764ef"; - sha256 = "sha256-av6laQezAOrBt6P+F2eHWFqAnTEENfDrvzEfhn2dDNY="; - }; - }; - configFile."qutebrowser/stylesheets" = { - source = ./.config/qutebrowser/stylesheets; - }; - }; + xdg = (import ./nix/modules/xdg.nix) {inherit pkgs config hostName;}; } diff --git a/nix/modules/xdg.nix b/nix/modules/xdg.nix new file mode 100644 index 0000000..8dd1926 --- /dev/null +++ b/nix/modules/xdg.nix @@ -0,0 +1,97 @@ +{ + config, + pkgs, + hostName, + ... +}: { + configFile."kitty/config.d" = { + source = ./../../.config/kitty/config.d; + }; + configFile."kitty/current-theme.conf" = { + source = ./../../.config/kitty/current-theme.conf; + }; + + configFile."aerc/aerc.conf" = { + # source = ./../../.config/aerc/aerc.conf; + source = ./../../.config/aerc/aerc-${hostName}.conf; + }; + configFile."aerc/binds.conf" = { + source = ./../../.config/aerc/binds.conf; + }; + + configFile."mako/dracula-mako" = { + source = pkgs.fetchFromGitHub { + owner = "dracula"; + repo = "mako"; + rev = "80caf30d59f8017e306519ca33609be75a86ebaf"; + sha256 = "sha256-qoQODX2435xfH9G6xOVFXitKy/75MaDU+tiQ/EsjRV4="; + }; + }; + + configFile."sheldon/plugins.toml" = { + source = ./../../.config/sheldon/plugins.toml; + }; + + configFile."starship.toml" = { + source = ./../../.config/starship.toml; + }; + + configFile."zathura/zathurarc" = { + source = ./../../.config/zathura/zathurarc; + }; + configFile."zathura/dracula-zathura" = { + source = pkgs.fetchFromGitHub { + owner = "dracula"; + repo = "zathura"; + rev = "b597b1537aa125e8829bef2cc57a0b0c6a6b35a1"; + sha256 = "sha256-g6vxwPw0Q9QFJBc3d4R3ZsHnnEvU5o1f4DSuyLeN5XQ="; + }; + }; + + configFile."qutebrowser/dracula" = { + source = pkgs.fetchFromGitHub { + owner = "dracula"; + repo = "qutebrowser-dracula-theme"; + rev = "ba5bd6589c4bb8ab35aaaaf7111906732f9764ef"; + sha256 = "sha256-av6laQezAOrBt6P+F2eHWFqAnTEENfDrvzEfhn2dDNY="; + }; + }; + configFile."qutebrowser/stylesheets" = { + source = ./../../.config/qutebrowser/stylesheets; + }; + configFile."qutebrowser-work/config/stylesheets" = { + source = ./../../.config/qutebrowser/stylesheets; + }; + + configFile."ccache/ccache.conf" = { + source = ./../../.config/ccache/ccache.conf; + }; + + configFile."go/env" = { + source = ./../../.config/go/env; + }; + + configFile."glow/glow.yml" = { + source = ./../../.config/glow/glow.yml; + }; + + configFile."gtk-4.0/settings.ini" = { + source = ./../../.config/gtk-4.0/settings.ini; + }; + configFile."gtk-4.0/gtk.css" = { + source = ./../../.config/gtk-4.0/gtk.css; + }; + + configFile."environment.d/sway-session.conf" = { + source = ./../../.config/environment.d/sway-session.conf; + }; + configFile."environment.d/java.conf" = { + source = ./../../.config/environment.d/java.conf; + }; + configFile."environment.d/mozilla.conf" = { + source = ./../../.config/environment.d/mozilla.conf; + }; + configFile."environment.d/qt.conf" = { + source = ./../../.config/environment.d/qt.conf; + }; +}