From d83d85535503d48a6c12a11ccab9320d079a0d2e Mon Sep 17 00:00:00 2001 From: Daniel Ziltener Date: Mon, 11 Dec 2023 11:59:44 +0100 Subject: [PATCH] . --- config.org | 30 +++++++++-- config.scm | 34 ++++++++---- home/emacs/templates | 35 +++++++++++++ home/git/.gitconfig | 36 ------------- home/git/config | 20 ++++++-- home/home-configuration.scm | 33 +++++++++--- home/sway/sway | 100 +++++++++++++++++++----------------- 7 files changed, 177 insertions(+), 111 deletions(-) delete mode 100644 home/git/.gitconfig diff --git a/config.org b/config.org index 0668e95..a902692 100644 --- a/config.org +++ b/config.org @@ -96,6 +96,7 @@ As a sibling to the former, the variable ~%local-swap~ does the same with the sw - emacs-desktop-environment - font-terminus - git +- hwdata - nss-certs - readline - swayfx @@ -114,11 +115,7 @@ As a sibling to the former, the variable ~%local-swap~ does the same with the sw #+begin_src scheme :noweb yes :exports none :results code (services (append - (modify-services - %desktop-services - (delete login-service-type) - (delete mingetty-service-type) - (delete console-font-service-type)) + <> <> (list <>) @@ -148,6 +145,29 @@ These services are unmodified, or have just few settings. <> #+end_src +*** Modified Desktop Services + +#+NAME: root-modified-desktop-services +#+begin_src scheme :exports none :results code + (modify-services + %desktop-services + (delete login-service-type) + (delete mingetty-service-type) + (delete console-font-service-type) + (guix-service-type config => (guix-configuration + (inherit config) + (substitute-urls + (append (list "https://substitutes.nonguix.org") + %default-substitute-urls)) + (authorized-keys + (append (list (plain-file "non-guix.pub" + "(public-key + (ecc + (curve Ed25519) + (q #C1FD53E5D4CE971933EC50C9F307AE2171A2D3B52C804642A7A35F84F3A4EA98#))) + "))))))) +#+end_src + *** Greeter Service =greetd= is a broken mess, yet here we are. diff --git a/config.scm b/config.scm index 517ff36..fdbd328 100644 --- a/config.scm +++ b/config.scm @@ -16,7 +16,7 @@ ;; [[file:config.org::*Modules][Modules:1]] -(use-modules (gnu) (gnu image) (gnu services authentication) (gnu services base) (gnu services dbus) (gnu services desktop) (gnu services linux) (gnu services networking) (gnu services pm) (gnu services virtualization) (gnu services xorg) (gnu system nss)) +nil ;; Modules:1 ends here ;; Service Modules @@ -27,7 +27,7 @@ ;; [[file:config.org::*Service Modules][Service Modules:1]] -(use-service-modules desktop xorg) +nil ;; Service Modules:1 ends here ;; Package Modules @@ -46,7 +46,7 @@ ;; [[file:config.org::*Package Modules][Package Modules:1]] -(use-package-modules bootloaders certs emacs emacs-xyz fonts readline terminals version-control wm xorg) +nil ;; Package Modules:1 ends here ;; File System @@ -115,7 +115,7 @@ %base-user-accounts)) (packages (append - (list emacs emacs-desktop-environment font-terminus git nss-certs readline swayfx) + nil %base-packages)) (services (append @@ -123,8 +123,20 @@ %desktop-services (delete login-service-type) (delete mingetty-service-type) - (delete console-font-service-type)) - (list (service tlp-service-type (tlp-configuration)) (service thermald-service-type (thermald-configuration (adaptive? #t))) (service bluetooth-service-type (bluetooth-configuration)) (service earlyoom-service-type (earlyoom-configuration (minimum-available-memory 5) (minimum-free-swap 5))) (service inputattach-service-type (inputattach-configuration)) (service libvirt-service-type (libvirt-configuration (unix-sock-group "libvirt"))) (service fstrim-service-type (fstrim-configuration)) (service fprintd-service-type (fprintd-configuration))) + (delete console-font-service-type) + (guix-service-type config => (guix-configuration + (inherit config) + (substitute-urls + (append (list "https://substitutes.nonguix.org") + %default-substitute-urls)) + (authorized-keys + (append (list (plain-file "non-guix.pub" + "(public-key + (ecc + (curve Ed25519) + (q #C1FD53E5D4CE971933EC50C9F307AE2171A2D3B52C804642A7A35F84F3A4EA98#))) + "))))))) + nil (list (service greetd-service-type (greetd-configuration @@ -141,11 +153,11 @@ (greetd-terminal-configuration (terminal-vt "4")) #;(greetd-terminal-configuration - (terminal-vt "7") ; ; ; - (terminal-switch #t) ; ; ; - (default-session-command ; ; ; - (greetd-wlgreet-session ; ; ; - (command ; ; ; + (terminal-vt "7") + (terminal-switch #t) + (default-session-command + (greetd-wlgreet-session + (command (file-append swayfx "/bin/sway"))))) (greetd-terminal-configuration (terminal-vt "8"))))))) diff --git a/home/emacs/templates b/home/emacs/templates index a54ad07..1760bed 100644 --- a/home/emacs/templates +++ b/home/emacs/templates @@ -45,6 +45,41 @@ org-mode n p n "#+end_src") +(advent-of-code-day + "* Day " (s day) ": " p + n> n> "Get the puzzle solution as [[./day" day ".scm][tangled .scm file]]." + n> n> "** Part One" + n> n> "#+NAME: day" day "-imports" + n> "#+begin_src scheme :exports none :noweb yes :tangle day" day ".scm" + n> + n> "#+end_src" + n> n> "#+NAME: day" day "-input-scm" + n> "#+begin_src scheme :exports none :noweb yes :tangle day" day ".scm" + n> "(define input \"" + n> "<>\")" + n> "#+end_src" + n> n> "*** Quest" + n> n> "*** Puzzle Solution" + n> n> "**** Calculation" + n> n> "#+NAME: day" day "-part1-calc-fn" + n> "#+begin_src scheme :tangle day" day ".scm :noweb strip-tangle" + n> "" + n> "#+end_src" + n> n> "#+CALL: day" day "-part1-calc-fn[:var input=day" day "-input[] :epilogue \"(calc-part-1)\"]()" + n> n> "** Part Two" + n> n> "*** Quest" + n> n> "*** Puzzle Solution" + n> n> "**** Calculation" + n> n> "#+NAME: day" day "-part2-calc-fn" + n> "#+begin_src scheme :tangle day" day ".scm :noweb strip-tangle" + n> "" + n> "#+end_src" + n>n> "#+CALL: day" day "-part2-calc-fn[:var input=day" day "-input[] :epilogue \"(calc-part-2)\"]()" + n> n> "** Puzzle Input" + n> n> "#+NAME: day" day "-input" + n> "#+begin_src fundamental" + n> "#+end_src") + ;; Local Variables: ;; mode: lisp-data ;; outline-regexp: "[a-z]" diff --git a/home/git/.gitconfig b/home/git/.gitconfig deleted file mode 100644 index 6e64ced..0000000 --- a/home/git/.gitconfig +++ /dev/null @@ -1,36 +0,0 @@ -# Das ist Git's benutzerspezifische Konfigurationsdatei. -[user] -# Bitte passen Sie die folgenden Zeilen an und kommentieren Sie diese aus: - name = Daniel Ziltener - email = dziltener@lyrion.ch - signingkey = 37F655BAF43BC0FF300A91A1B38976E82C9DAE42 - -[sendemail] - smtpserver = lyrion.ch - smtpuser = dziltener - smtpencryption = starttls - smtpserverport = 465 - -[rebase] - autoStash = true - -[pull] - rebase = true -[gui] - recentrepo = /home/zilti/projects/crawler-vacancies -[gitlab] - user = zilti - oauth-token = zA4CYqcCcV5oN7N-2Qsn -[cola] - spellcheck = false -[init] - defaultBranch = master - -[safe] - directory = /home/zilti/.local/share/hyprload/hyprland - directory = /opt/nixconfig/ - directory = /opt/nixconfig -[github] - user = dziltener@lyrion.ch -[commit] - gpgsign = true diff --git a/home/git/config b/home/git/config index c1d3add..e215e06 100644 --- a/home/git/config +++ b/home/git/config @@ -11,7 +11,7 @@ useUnicodeRuler = true [gpg] - program = "gpg2" + program = "gpg" [interactive] diffFilter = "diff-so-fancy --patch" @@ -26,10 +26,10 @@ autoStash = true [sendemail] - smtpencryption = "starttls" - smtpserver = "lyrion.ch" - smtpserverport = 465 - smtpuser = "dziltener" + smtpEncryption = "tls" + smtpServer = "lyrion.ch" + smtpServerPort = 465 + smtpUser = "dziltener" [sendemail "LMail"] from = "dziltener@lyrion.ch" @@ -51,3 +51,13 @@ email = "dziltener@lyrion.ch" name = "Daniel Ziltener" signingKey = "37F655BAF43BC0FF300A91A1B38976E82C9DAE42" + +[init] + defaultBranch = master + +[github] + user = dziltener@lyrion.ch + +[gitlab] + user = zilti + oauth-token = zA4CYqcCcV5oN7N-2Qsn \ No newline at end of file diff --git a/home/home-configuration.scm b/home/home-configuration.scm index 10e6dcc..8532fa9 100644 --- a/home/home-configuration.scm +++ b/home/home-configuration.scm @@ -29,7 +29,11 @@ (packages (specifications->packages (list "bsd-games" + "bolt" "chicken" + "chicken-apropos" + "chicken-chicken-doc" + "chicken-srfi-18" "curl" "direnv" "emacs" @@ -38,6 +42,7 @@ "firefox" "fuzzel" "gammastep" + "grim" "guile" "glibc-locales" "icecat" @@ -53,18 +58,21 @@ "rust" "rust-cargo" "senpai" + "slurp" + "swappy" "swayfx" "swayidle" + "swaylock-effects" "waybar" "wlogout"))) ;; Below is the list of Home services. To search for available ;; services, run 'guix home search KEYWORD' in a terminal. - ( -services + (services (list (service home-shepherd-service-type) (service home-msmtp-service-type (home-msmtp-configuration + (default-account "LMail") (accounts (list (msmtp-account @@ -72,8 +80,12 @@ services (configuration (msmtp-configuration (host "lyrion.ch") - (port 587) + (port 465) + (auth? #t) + (tls? #t) + (tls-starttls? #f) (user "dziltener") + (from "dziltener@lyrion.ch") (password-eval "pass Privat/Mailaccount | head -n 1")))) (msmtp-account (name "Red Sky") @@ -81,7 +93,11 @@ services (msmtp-configuration (host "gmail.com") (port 587) + (auth? #t) + (tls? #t) + (tls-starttls? #f) (user "dz@redsky.io") + (from "dziltener@lyrion.ch") (password-eval "pass Privat/RedSkyGMail")))))))) (simple-service 'ziltis-environment-variable-service home-environment-variables-service-type @@ -93,9 +109,10 @@ services ("MOZ_ENABLE_WAYLAND" . "1") ("SSL_CERT_FILE" . "$HOME/.guix-profile/etc/ssl/certs/ca-certificates.crt") ("CHICKEN_DOC_REPOSITORY" . "$XDG_DATA_HOME/chicken/doc") - ("CHICKEN_INSTALL_REPOSITORY" . "$XDG_DATA_HOME/chicken/eggs") - ("CHICKEN_REPOSITORY_PATH" . "$HOME/.guix-home/profile/var/lib/chicken/11/:$XDG_DATA_HOME/chicken/eggs") - ("CHICKEN_INSTALL_PREFIX" . "$HOME/.local"))) + ;; ("CHICKEN_INSTALL_REPOSITORY" . "$XDG_DATA_HOME/chicken/eggs") + ;; ("CHICKEN_REPOSITORY_PATH" . "$HOME/.guix-home/profile/var/lib/chicken/11/:$XDG_DATA_HOME/chicken/eggs") + ;; ("CHICKEN_INSTALL_PREFIX" . "$HOME/.local") + )) (simple-service 'ziltis-home-files-service home-files-service-type `(#;(".gnupg/gpg-agent.conf" ,(local-file "gnupg/gpg-agent.conf")))) @@ -117,7 +134,9 @@ services '(("hh" . "hstr") ("l" . "ls -alh") ("ll" . "ls -l") - ("ls" . "ls --color=tty"))) + ("ls" . "ls --color=tty") + ("create-guix-patch" . "git format-patch --to guix-patches@gnu.org --cc dziltener@lyrion.ch --inline --no-attach --stdout master") + ("send-create-guix-patch" . "git format-patch --to guix-patches@gnu.org --cc dziltener@lyrion.ch --inline --no-attach --stdout master | tail -n +2 | msmtp -t"))) (bashrc (list (local-file diff --git a/home/sway/sway b/home/sway/sway index 1749f2a..f39d586 100644 --- a/home/sway/sway +++ b/home/sway/sway @@ -32,11 +32,11 @@ default_border pixel 2 # window gaps smart_gaps inverse_outer gaps inner 15 -gaps left 700 -gaps right 700 +gaps left 500 +gaps right 500 bindsym $mod+g gaps outer all set 0 -bindsym $mod+i gaps left all set 700; gaps right all set 700 +bindsym $mod+i gaps left all set 500; gaps right all set 500 # window corner radius in px corner_radius 10 @@ -107,29 +107,35 @@ input * { # # Basics: # - # Start a terminal - bindsym $mod+q exec $term +# Start a terminal +bindsym $mod+q exec $term - # Kill focused window - bindsym $mod+c kill +# Kill focused window +bindsym $mod+c kill - # Start your launcher - bindsym $mod+r exec swaymsg "focus parent; split h; exec fuzzel" - bindsym $mod+Shift+r exec swaymsg "focus parent; split v; exec fuzzel" +# Start your launcher +bindsym $mod+r exec swaymsg "focus parent; split h; exec fuzzel" +bindsym $mod+Shift+r exec swaymsg "focus parent; split v; exec fuzzel" - # Drag floating windows by holding down $mod and left mouse button. - # Resize them with right mouse button + $mod. - # Despite the name, also works for non-floating windows. - # Change normal to inverse to use left mouse button for resizing and right - # mouse button for dragging. - floating_modifier $mod normal +# Screen locking +bindsym $mod+ctrl+l exec swaylock - # Reload the configuration file - bindsym $mod+Shift+c reload +# Screenshots +bindsym $mod+Print exec grim -g slurp - | swappy -f - - # Exit sway (logs you out of your Wayland session) - #bindsym $mod+m exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -B 'Yes, exit sway' 'swaymsg exit' - bindsym $mod+m exec wlogout +# Drag floating windows by holding down $mod and left mouse button. +# Resize them with right mouse button + $mod. +# Despite the name, also works for non-floating windows. +# Change normal to inverse to use left mouse button for resizing and right +# mouse button for dragging. +floating_modifier $mod normal + +# Reload the configuration file +bindsym $mod+Shift+c reload + +# Exit sway (logs you out of your Wayland session) +#bindsym $mod+m exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -B 'Yes, exit sway' 'swaymsg exit' +bindsym $mod+m exec wlogout # # Moving around: # @@ -159,30 +165,30 @@ bindsym $mod+Shift+Right move right # # Workspaces: # - # Switch to workspace - bindsym $mod+1 workspace number 1 - bindsym $mod+2 workspace number 2 - bindsym $mod+3 workspace number 3 - bindsym $mod+4 workspace number 4 - bindsym $mod+5 workspace number 5 - bindsym $mod+6 workspace number 6 - bindsym $mod+7 workspace number 7 - bindsym $mod+8 workspace number 8 - bindsym $mod+9 workspace number 9 - bindsym $mod+0 workspace number 10 - # Move focused container to workspace - bindsym $mod+Shift+1 move container to workspace number 1 - bindsym $mod+Shift+2 move container to workspace number 2 - bindsym $mod+Shift+3 move container to workspace number 3 - bindsym $mod+Shift+4 move container to workspace number 4 - bindsym $mod+Shift+5 move container to workspace number 5 - bindsym $mod+Shift+6 move container to workspace number 6 - bindsym $mod+Shift+7 move container to workspace number 7 - bindsym $mod+Shift+8 move container to workspace number 8 - bindsym $mod+Shift+9 move container to workspace number 9 - bindsym $mod+Shift+0 move container to workspace number 10 - # Note: workspaces can have any name you want, not just numbers. - # We just use 1-10 as the default. +# Switch to workspace +bindsym $mod+1 workspace number 1 +bindsym $mod+2 workspace number 2 +bindsym $mod+3 workspace number 3 +bindsym $mod+4 workspace number 4 +bindsym $mod+5 workspace number 5 +bindsym $mod+6 workspace number 6 +bindsym $mod+7 workspace number 7 +bindsym $mod+8 workspace number 8 +bindsym $mod+9 workspace number 9 +bindsym $mod+0 workspace number 10 +# Move focused container to workspace +bindsym $mod+Shift+1 move container to workspace number 1 +bindsym $mod+Shift+2 move container to workspace number 2 +bindsym $mod+Shift+3 move container to workspace number 3 +bindsym $mod+Shift+4 move container to workspace number 4 +bindsym $mod+Shift+5 move container to workspace number 5 +bindsym $mod+Shift+6 move container to workspace number 6 +bindsym $mod+Shift+7 move container to workspace number 7 +bindsym $mod+Shift+8 move container to workspace number 8 +bindsym $mod+Shift+9 move container to workspace number 9 +bindsym $mod+Shift+0 move container to workspace number 10 +# Note: workspaces can have any name you want, not just numbers. +# We just use 1-10 as the default. # # Layout stuff: # @@ -269,8 +275,8 @@ mode "resize" { #} # Autostarts +exec pipewire & sleep 0.2s && pipewire-pulse & wireplumber & +exec shepherd exec waybar -exec kitty && sleep 0.2s -exec swaymsg move scratchpad include @sysconfdir@/sway/config.d/*