summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.config/guix/base.scm141
-rwxr-xr-x.config/guix/channels.scm21
-rwxr-xr-x.config/guix/common.scm66
-rwxr-xr-x.config/guix/fsociety.scm44
l---------.config/guix/guix-packages/.#personal.scm1
l---------.config/guix/guix-packages/.#testing.scm1
-rwxr-xr-x.config/guix/guix-packages/testing.scm237
-rwxr-xr-x.config/guix/personal-channel.scm146
-rwxr-xr-x.config/guix/zeus.scm177
-rw-r--r--.config/stumpwm/colors.lisp30
-rw-r--r--.config/stumpwm/commands.lisp29
-rw-r--r--.config/stumpwm/config144
-rw-r--r--.config/stumpwm/keybindings.lisp70
-rw-r--r--.config/stumpwm/modeline.lisp59
-rw-r--r--.config/stumpwm/placement.lisp14
-rw-r--r--.config/stumpwm/theme.lisp30
-rwxr-xr-xguix-packages/starship.scm56
17 files changed, 0 insertions, 1266 deletions
diff --git a/.config/guix/base.scm b/.config/guix/base.scm
deleted file mode 100644
index 194f74a..0000000
--- a/.config/guix/base.scm
+++ /dev/null
@@ -1,141 +0,0 @@
-;; This is an operating system configuration generated
-;; by the graphical installer.
-;;
-;; Once installation is complete, you can learn and modify
-;; this file to tweak the system configuration, and pass it
-;; to the 'guix system reconfigure' command to effect your
-;; changes.
-
-
-;; Indicate which modules to import to access the variables
-;; used in this configuration.
-
-(define-module (base)
- #:use-module (gnu)
- #:use-module (nongnu packages linux)
- #:export (base-operating-system))
-
-(use-service-modules cups desktop networking ssh xorg)
-
-;;(define-public base-operating-system
-(operating-system
- (host-name "zeus")
-
- (kernel linux)
- (firmware (list linux-firmware
- amdgpu-firmware
- radeon-firmware))
-
- (locale "en_US.utf8")
- (timezone "Europe/Athens")
- (keyboard-layout (keyboard-layout "us"
- #:options
- '("ctrl:nocaps")))
-
- ;; Guix doesn't like it when there isn't a file-systems
- ;; entry, so add one that is meant to be overridden
-
- ;; (file-systems (cons*
- ;; (file-system
- ;; (mount-point "/tmp")
- ;; (device "none")
- ;; (type "tmpfs")
- ;; (check? #f))
- ;; %base-file-systems))
-
- ;; The list of user accounts ('root' is implicit).
- (users (cons* (user-account
- (name "apollo")
- (comment "Apollo")
- (group "users")
- (home-directory "/home/apollo")
- ;;(shell (file-append "/bin/zsh")) ;
- (supplementary-groups '("wheel"
- "netdev"
- "audio"
- "video")))
- (user-account
- (name "elliot")
- (comment "Elliot")
- (group "users")
- (home-directory "/home/elliot")
- (supplementary-groups '("wheel"
- "netdev"
- "audio"
- "video")))
- %base-user-accounts))
-
- ;; Packages installed system-wide. Users can also install packages
- ;; under their own account: use 'guix search KEYWORD' to search
- ;; for packages and 'guix install PACKAGE' to install a package.
- (packages (append (map specification->package
- `("emacs-exwm"
- "emacs-desktop-environment"
- "emacs"
- "bash"
- "xrandr"
- "picom"
- "gnome"
- "gnome-desktop"
- "nss-certs"
- "python"
- "alacritty"
- "emacs-vterm"
- "emacs-multi-vterm"
- "alsa-utils"
- "bluez-alsa"
- "gnome-bluetooth"
- "blueman"
- "qtile"
- "git"
- "font-jetbrains-mono"))
- %base-packages))
-
- ;; Below is the list of system services. To search for available
- ;; services, run 'guix system search KEYWORD' in a terminal.
- (services
- (append (list (service gnome-desktop-service-type)
- (service openssh-service-type)
- (bluetooth-service #:auto-enable?
- #t)
- (service cups-service-type)
- (set-xorg-configuration
- (xorg-configuration (keyboard-layout keyboard-layout))))
- ;; This is the default list of services we
- ;; are appending to.
- %desktop-services))
-
- (bootloader (bootloader-configuration
- (bootloader grub-efi-bootloader)
- (targets (list "/boot/efi"))
- (keyboard-layout keyboard-layout)))
- (mapped-devices (list (mapped-device
- (source (uuid
- "0594b592-ddcb-4a3c-958d-c773d7a85d93"))
- (target "cryptroot")
- (type luks-device-mapping))
- (mapped-device
- (source (uuid
- "a44f40ec-94c3-457a-a9ed-5db5396f3aea"))
- (target "crypthome")
- (type luks-device-mapping))))
-
- ;; The list of file systems that get "mounted". The unique
- ;; file system identifiers there ("UUIDs") can be obtained
- ;; by running 'blkid' in a terminal.
- (file-systems (cons* (file-system
- (mount-point "/boot/efi")
- (device (uuid "98B8-B93E"
- 'fat32))
- (type "vfat"))
- (file-system
- (mount-point "/")
- (device "/dev/mapper/cryptroot")
- (type "ext4")
- (dependencies mapped-devices))
- (file-system
- (mount-point "/home")
- (device "/dev/mapper/crypthome")
- (type "ext4")
- (dependencies mapped-devices)) %base-file-systems)))
-
diff --git a/.config/guix/channels.scm b/.config/guix/channels.scm
deleted file mode 100755
index 3365914..0000000
--- a/.config/guix/channels.scm
+++ /dev/null
@@ -1,21 +0,0 @@
-(cons*
- (channel
- (name 'guix)
- (url "https://git.savannah.gnu.org/git/guix.git")
- (branch "master")
- (introduction
- (make-channel-introduction
- "9edb3f66fd807b096b48283debdcddccfea34bad"
- (openpgp-fingerprint
- "BBB0 2DDF 2CEA F6A8 0D1D E643 A2A0 6DF2 A33A 54FA"))))
- (channel
- (name 'nonguix)
- (url "https://gitlab.com/nonguix/nonguix")
- ;; Enable signature verification:
- (introduction
- (make-channel-introduction
- "897c1a470da759236cc11798f4e0a5f7d4d59fbc"
- (openpgp-fingerprint
- "2A39 3FFF 68F4 EF7A 3D29 12AF 6F51 20A0 22FB B2D5"))))
- %default-channels)
-
diff --git a/.config/guix/common.scm b/.config/guix/common.scm
deleted file mode 100755
index 64666d7..0000000
--- a/.config/guix/common.scm
+++ /dev/null
@@ -1,66 +0,0 @@
-(define-module (common)
- #:use-module (gnu)
- #:use-module (gnu services)
- #:use-module (gnu home)
- #:use-module (gnu home services)
- #:use-module (gnu home services shells)
- #:use-module (gnu home services mcron)
- #:use-module (guix gexp))
-
-(define-public common-home-services
- (list
- ;; Set up the shell environment
- (service home-bash-service-type
- (home-bash-configuration
- (bash-profile
- `(,(plain-file "bash-profile-extras"
- (string-append
- ;; Load the Nix profile
- "if [ -f /run/current-system/profile/etc/profile.d/nix.sh ]; then\n"
- " . /run/current-system/profile/etc/profile.d/nix.sh\n"
- "fi\n"
-
- ;; Don't use the system-level PulseAudio configuration
- "unset PULSE_CONFIG\n"
- "unset PULSE_CLIENTCONFIG\n"))))
-
- (environment-variables
- '( ;; Sort hidden (dot) files first in `ls` listings
- ("LC_COLLATE" . "C")
-
- ;; Emacs is our editor
- ("VISUAL" . "emacsclient")
- ("EDITOR" . "emacsclient")
-
- ;; Add some things to $PATH (maybe integrate into other services?)
- ("PATH" . "$HOME/.dotfiles/.bin:$HOME/.npm-global/bin:$PATH")
-
- ;; Make sure Flatpak apps are visible
- ("XDG_DATA_DIRS" . "$XDG_DATA_DIRS:$HOME/.local/share/flatpak/exports/share")
-
- ;; Make sure JAVA_HOME is set
- ;; TODO: Move this to a different service
- ("JAVA_HOME" . "$(dirname $(dirname $(readlink $(which java))))")
-
- ;; Fix issues with Qutebrowser
- ;; TODO: Move this to Qutebrowser service
- ("QTWEBENGINE_CHROMIUM_FLAGS" . "--disable-seccomp-filter-sandbox")
-
- ;; Set the SSH authentication socket
- ;; TODO: Move to a gpg service
- ("SSH_AUTH_SOCK" . "$(gpgconf --list-dirs agent-ssh-socket)")))))
-
- ;; Set up desktop environment
-
-
- ;; Start background jobs
- (service home-mcron-service-type
- (home-mcron-configuration
- (jobs
- (list
- #~(job
- '(next-hour (range 0 24 4))
- "~/.dotfiles/.bin/sync-passwords")))))))
-
- ;; Udiskie for auto-mounting devices
-
diff --git a/.config/guix/fsociety.scm b/.config/guix/fsociety.scm
deleted file mode 100755
index 173d5fd..0000000
--- a/.config/guix/fsociety.scm
+++ /dev/null
@@ -1,44 +0,0 @@
-(define-module (helena)
- #:use-module (gnu)
- #:use-module (gnu home)
- #:use-module (common)
- #:use-module (base))
-
-(define home
- (home-environment
- (services (append
- (list
- common-home-services)))))
-
-(define system
- (operating-system
- (inherit base-operating-system)
-
- (host-name "helena")
-
- (bootloader (bootloader-configuration
- (bootloader grub-bootloader)
- (targets (list "/dev/nvme0n1"))
- (keyboard-layout keyboard-layout)))
- (swap-devices (list (swap-space
- (target (uuid
- "a8d782da-f1ea-477e-9b47-cf5aa431e893")))))
-
- ;; The list of file systems that get "mounted". The unique
- ;; file system identifiers there ("UUIDs") can be obtained
- ;; by running 'blkid' in a terminal.
- (file-systems (cons* (file-system
- (mount-point "/boot/efi")
- (device (uuid "021E-83B3"
- 'fat32))
- (type "vfat"))
- (file-system
- (mount-point "/")
- (device (uuid
- "2bb282ae-7b2d-45c3-92b1-b1524177defb"
- 'ext4))
- (type "ext4")) %base-file-systems))))
-(if (getenv "RUNNING_GUIX_HOME") home system)
-
-
-
diff --git a/.config/guix/guix-packages/.#personal.scm b/.config/guix/guix-packages/.#personal.scm
deleted file mode 120000
index 6e68dcc..0000000
--- a/.config/guix/guix-packages/.#personal.scm
+++ /dev/null
@@ -1 +0,0 @@
[email protected]:1673743482 \ No newline at end of file
diff --git a/.config/guix/guix-packages/.#testing.scm b/.config/guix/guix-packages/.#testing.scm
deleted file mode 120000
index 6e68dcc..0000000
--- a/.config/guix/guix-packages/.#testing.scm
+++ /dev/null
@@ -1 +0,0 @@
[email protected]:1673743482 \ No newline at end of file
diff --git a/.config/guix/guix-packages/testing.scm b/.config/guix/guix-packages/testing.scm
deleted file mode 100755
index 5fa374c..0000000
--- a/.config/guix/guix-packages/testing.scm
+++ /dev/null
@@ -1,237 +0,0 @@
-(define-module (my-hello)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix build-system gnu)
- #:use-module (guix download)
- #:use-module (nongnu packages mozilla)
- #:use-module (ice-9 regex)
- #:use-module (gnu packages)
- #:use-module (gnu packages audio)
- #:use-module (gnu packages base)
- #:use-module (gnu packages bash)
- #:use-module (gnu packages compression)
- #:use-module (gnu packages curl)
- #:use-module (gnu packages databases)
- #:use-module (gnu packages django)
- #:use-module (gnu packages flex)
- #:use-module (gnu packages fonts)
- #:use-module (gnu packages fontutils)
- #:use-module (gnu packages freedesktop)
- #:use-module (gnu packages game-development)
- #:use-module (gnu packages gettext)
- #:use-module (gnu packages glib)
- #:use-module (gnu packages gnome)
- #:use-module (gnu packages golang)
- #:use-module (gnu packages gtk)
- #:use-module (gnu packages gstreamer)
- #:use-module (gnu packages image)
- #:use-module (gnu packages javascript)
- #:use-module (gnu packages kde)
- #:use-module (gnu packages kde-frameworks) ; extra-cmake-modules
- #:use-module (gnu packages linux)
- #:use-module (gnu packages mp3)
- #:use-module (gnu packages ncurses)
- #:use-module (gnu packages pdf)
- #:use-module (gnu packages perl)
- #:use-module (gnu packages pkg-config)
- #:use-module (gnu packages python)
- #:use-module (gnu packages python-web)
- #:use-module (gnu packages python-xyz)
- #:use-module (gnu packages qt)
- #:use-module (gnu packages readline)
- #:use-module (gnu packages sdl)
- #:use-module (gnu packages sqlite)
- #:use-module (gnu packages texinfo)
- #:use-module (gnu packages tls)
- #:use-module (gnu packages video)
- #:use-module (gnu packages xiph)
- #:use-module (gnu packages xorg)
- #:use-module (gnu packages xml)
- #:use-module (guix gexp)
- #:use-module ((guix licenses) #:prefix license:)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix git-download)
- #:use-module (guix svn-download)
- #:use-module (guix utils)
- #:use-module (guix build-system cmake)
- #:use-module (guix build-system gnu)
- #:use-module (guix build-system go)
- #:use-module (guix build-system python)
- #:use-module (guix build-system qt)
- #:use-module (guix build-system trivial)
- #:use-module (srfi srfi-1))
-
-;; (define-public my-hello
-;; (package
-;; (inherit firefox-esr)
-;; (name "my-hello")
-;; (version "2.10")
-;; (source (origin
-;; (method url-fetch)
-;; (uri (string-append "mirror://gnu/hello/hello-" version
-;; ".tar.gz"))
-;; (sha256
-;; (base32
-;; "0ssi1wpaf7plaswqqjwigppsg5fyh99vdlb9kzl7c9lng89ndq1i"))))
-;; (build-system gnu-build-system)
-;; (synopsis "Hello, Guix world: An example custom Guix package")
-;; (description
-;; "GNU Hello prints the message \"Hello, world!\" and then exits. It
-;; serves as an example of standard GNU coding practices. As such, it supports
-;; command-line arguments, multiple languages, and so on.")
-;; (home-page "https://www.gnu.org/software/hello/")
-;; (license gpl3+)))
-(define-public librewolf
- (package
- (inherit firefox)
- (name "librewolf")
- (version "108.0.2-1")
- (source
- (origin
- (method url-fetch)
- (uri "https://gitlab.com/api/v4/projects/32320088/packages/generic/librewolf-source/108.0.2-1/librewolf-108.0.2-1.source.tar.gz")
- (sha256
- (base32 "0faa4fr2w24zvaa4fd4bj1ikqddnl3kkygf9hha2mxzypdcl233p"))))
- (arguments
- (substitute-keyword-arguments (package-arguments firefox-esr)
- ((#:phases phases)
- #~(modify-phases #$phases
- (replace 'set-build-id
- (lambda _
- (setenv "MOZ_BUILD_DATE")))))))
- (native-inputs
- (modify-inputs (package-native-inputs firefox-esr)
- (replace "rust" rust-firefox)
- (replace "rust:cargo" `(,rust-firefox "cargo"))
- ; (replace "node" node-lts)
- (replace "rust-cbindgen" rust-cbindgen-0.24)))
- (description
- "Full-featured browser client built from Firefox source tree, without
-the official icon and the name \"firefox\".")))
-
-(define-public anki
- (package
- (name "anki")
- ;; Later versions have dependencies on npm packages not yet in Guix.
- (version "2.1.36")
- (source
- (origin
- (method url-fetch)
- (uri "https://github.com/ankitects/anki/archive/refs/tags/2.1.36.tar.gz")
- (sha256
- (base32 "1krrnsp01nms6f2dyfm078imvx2b9synina63l41vbipcznnc1xs"))
- (patches (search-patches "anki-mpv-args.patch"))))
- (build-system gnu-build-system)
- (arguments
- `(#:make-flags (list (string-append "PREFIX=" %output))
- #:tests? #f ;no check target
- #:modules ((guix build gnu-build-system)
- (guix build utils)
- (ice-9 match))
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'disable-update-check
- ;; Don't ‘phone home’ unasked to check for updates.
- (lambda _
- (substitute* "aqt/update.py"
- (("requests\\.post")
- "throw.an.exception.instead"))
- #t))
- (delete 'configure) ;no configure script
- (add-after 'install 'wrap
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let ((bin (string-append (assoc-ref outputs "out") "/bin"))
- ;; List of paths to the site-packages directories of Python
- ;; library inputs.
- (site-packages
- (map (lambda (pyinput)
- (string-append
- (cdr pyinput)
- "/lib/python"
- ;; Calculate the python version to avoid breaking
- ;; with future 3.X releases.
- ,(version-major+minor
- (package-version python-wrapper))
- "/site-packages"))
- (filter (match-lambda
- ((label . _)
- (string-prefix? "python-" label)))
- inputs)))
- (qtwebengineprocess
- (search-input-file inputs
- "lib/qt5/libexec/QtWebEngineProcess")))
- ;; The program fails to find the QtWebEngineProcess program, so
- ;; we set QTWEBENGINEPROCESS_PATH to help it. PYTHONPATH is
- ;; wrapped to avoid declaring Python libraries as propagated
- ;; inputs.
- (for-each (lambda (program)
- (wrap-program program
- `("QTWEBENGINEPROCESS_PATH" =
- (,qtwebengineprocess))
- `("PATH" prefix (,(string-append
- (assoc-ref inputs "mpv")
- "/bin")))
- `("GUIX_PYTHONPATH" = ,site-packages)))
- (find-files bin ".")))
- #t)))))
- (native-inputs
- (list xdg-utils))
- (inputs
- `(("lame" ,lame)
- ("mpv" ,mpv)
- ("python" ,python-wrapper)
- ("python-beautifulsoup4" ,python-beautifulsoup4)
- ("python-decorator" ,python-decorator)
- ("python-distro" ,python-distro)
- ("python-jsonschema" ,python-jsonschema)
- ("python-markdown" ,python-markdown)
- ("python-pyaudio" ,python-pyaudio)
- ;; `python-pyqtwebengine' must precede `python-pyqt' in PYTHONPATH.
- ("python-pyqtwebengine" ,python-pyqtwebengine)
- ("python-pyqt" ,python-pyqt-without-qtwebkit)
- ("python-requests" ,python-requests)
- ("python-send2trash" ,python-send2trash)
- ("python-sip" ,python-sip)
- ;; `qtwebengine-5' is included in `pyqtwebengine', included here for easy
- ;; wrapping.
- ("qtwebengine-5" ,qtwebengine-5)))
- (home-page "https://apps.ankiweb.net/")
- (synopsis "Powerful, intelligent flash cards")
- (description "Anki is a program which makes remembering things
-easy. Because it's a lot more efficient than traditional study
-methods, you can either greatly decrease your time spent studying, or
-greatly increase the amount you learn.
-
-Anyone who needs to remember things in their daily life can benefit
-from Anki. Since it is content-agnostic and supports images, audio,
-videos and scientific markup (via LaTeX), the possibilities are
-endless. For example:
-@itemize
-@item Learning a language
-@item Studying for medical and law exams
-@item Memorizing people's names and faces
-@item Brushing up on geography
-@item Mastering long poems
-@item Even practicing guitar chords!
-@end itemize")
- (license gpl3+)))
-
-
-(define-public starship
- (package
- (inherit firefox)
- (name "starship")
- (version "1.12.0")
- (source
- (origin
- (method url-fetch)
- (uri "https://github.com/starship/starship/archive/refs/tags/v1.12.0.tar.gz")
- (sha256
- (base32 "0faa4fr2w24zvaa4fd4bj1ikqddnl3kkygf9hha2mxzypdcl233p"))))
- (description
- "Full-featured browser client built from Firefox source tree, without
-the official icon and the name \"firefox\".")))
-
-
-starship
diff --git a/.config/guix/personal-channel.scm b/.config/guix/personal-channel.scm
deleted file mode 100755
index e94bda9..0000000
--- a/.config/guix/personal-channel.scm
+++ /dev/null
@@ -1,146 +0,0 @@
-(define-module (personal-channel)
- #:use-modules (guix)
- #:use-modules (guix-packages))
-
-(define-public anki
- (package
- (name "anki")
- ;; Later versions have dependencies on npm packages not yet in Guix.
- (version "2.1.16")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "https://apps.ankiweb.net/downloads/archive/anki-"
- version "-source.tgz"))
- (sha256
- (base32 "1gfr51rnllkyzli73p4r51h5ypzfa3m7lic3m3rzpywmqwrxs07k"))
- (patches (search-patches "anki-mpv-args.patch"))))
- (build-system gnu-build-system)
- (arguments
- `(#:make-flags (list (string-append "PREFIX=" %output))
- #:tests? #f ;no check target
- #:modules ((guix build gnu-build-system)
- (guix build utils)
- (ice-9 match))
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'disable-update-check
- ;; Don't ‘phone home’ unasked to check for updates.
- (lambda _
- (substitute* "aqt/update.py"
- (("requests\\.post")
- "throw.an.exception.instead"))
- #t))
- (delete 'configure) ;no configure script
- (add-after 'install 'wrap
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let ((bin (string-append (assoc-ref outputs "out") "/bin"))
- ;; List of paths to the site-packages directories of Python
- ;; library inputs.
- (site-packages
- (map (lambda (pyinput)
- (string-append
- (cdr pyinput)
- "/lib/python"
- ;; Calculate the python version to avoid breaking
- ;; with future 3.X releases.
- ,(version-major+minor
- (package-version python-wrapper))
- "/site-packages"))
- (filter (match-lambda
- ((label . _)
- (string-prefix? "python-" label)))
- inputs)))
- (qtwebengineprocess
- (search-input-file inputs
- "lib/qt5/libexec/QtWebEngineProcess")))
- ;; The program fails to find the QtWebEngineProcess program, so
- ;; we set QTWEBENGINEPROCESS_PATH to help it. PYTHONPATH is
- ;; wrapped to avoid declaring Python libraries as propagated
- ;; inputs.
- (for-each (lambda (program)
- (wrap-program program
- `("QTWEBENGINEPROCESS_PATH" =
- (,qtwebengineprocess))
- `("PATH" prefix (,(string-append
- (assoc-ref inputs "mpv")
- "/bin")))
- `("GUIX_PYTHONPATH" = ,site-packages)))
- (find-files bin ".")))
- #t)))))
- (native-inputs
- (list xdg-utils))
- (inputs
- `(("lame" ,lame)
- ("mpv" ,mpv)
- ("python" ,python-wrapper)
- ("python-beautifulsoup4" ,python-beautifulsoup4)
- ("python-decorator" ,python-decorator)
- ("python-distro" ,python-distro)
- ("python-jsonschema" ,python-jsonschema)
- ("python-markdown" ,python-markdown)
- ("python-pyaudio" ,python-pyaudio)
- ;; `python-pyqtwebengine' must precede `python-pyqt' in PYTHONPATH.
- ("python-pyqtwebengine" ,python-pyqtwebengine)
- ("python-pyqt" ,python-pyqt-without-qtwebkit)
- ("python-requests" ,python-requests)
- ("python-send2trash" ,python-send2trash)
- ("python-sip" ,python-sip)
- ;; `qtwebengine-5' is included in `pyqtwebengine', included here for easy
- ;; wrapping.
- ("qtwebengine-5" ,qtwebengine-5)))
- (home-page "https://apps.ankiweb.net/")
- (synopsis "Powerful, intelligent flash cards")
- (description "Anki is a program which makes remembering things
-easy. Because it's a lot more efficient than traditional study
-methods, you can either greatly decrease your time spent studying, or
-greatly increase the amount you learn.
-
-Anyone who needs to remember things in their daily life can benefit
-from Anki. Since it is content-agnostic and supports images, audio,
-videos and scientific markup (via LaTeX), the possibilities are
-endless. For example:
-@itemize
-@item Learning a language
-@item Studying for medical and law exams
-@item Memorizing people's names and faces
-@item Brushing up on geography
-@item Mastering long poems
-@item Even practicing guitar chords!
-@end itemize")
- (license license:agpl3+)))
-
-(define-public roswell
- (package
- (name "roswell")
- (version "19.08.10.101")
- (home-page "https://github.com/roswell/roswell/")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url home-page)
- (commit (string-append "v" version))))
- (sha256
- (base32
- "0i72vzzzjwi9lnzzl8y10pp3kq298vhzz3spvsmi8n1yalqwslbf"))))
- (build-system gnu-build-system)
- (native-inputs
- `(("autoconf" ,autoconf)
- ("automake" ,automake)
- ("intltool" ,intltool)))
- (inputs
- `(("curl" ,curl)))
- (synopsis "Common Lisp implementation manager, launcher, and more")
- (description
- "Roswell started out as a command-line tool with the aim to make
-installing and managing Common Lisp implementations really simple and easy.
-Roswell has now evolved into a full-stack environment for Common Lisp
-development, and has many features that makes it easy to test, share, and
-distribute your Lisp applications.
-
-Roswell is still in beta. Despite this, the basic interfaces are stable and
-not likely to change.")
- (license license:expat)))
-
-roswell
diff --git a/.config/guix/zeus.scm b/.config/guix/zeus.scm
deleted file mode 100755
index a6b6ae5..0000000
--- a/.config/guix/zeus.scm
+++ /dev/null
@@ -1,177 +0,0 @@
-;; This is an operating system configuration generated
-;; by the graphical installer.
-;;
-;; Once installation is complete, you can learn and modify
-;; this file to tweak the system configuration, and pass it
-;; to the 'guix system reconfigure' command to effect your
-;; changes.
-
-
-;; Indicate which modules to import to access the variables
-;; used in this configuration.
-
-(define-module (zeus)
- #:use-module (gnu)
- #:use-module (srfi srfi-1)
- #:use-module (gnu system nss)
- #:use-module (gnu services pm)
- #:use-module (gnu services ssh)
- #:use-module (gnu services cups)
- #:use-module (gnu services guix)
- #:use-module (gnu services desktop)
- #:use-module (gnu services docker)
- #:use-module (gnu services networking)
- #:use-module (gnu services virtualization)
- #:use-module (gnu packages wm)
- #:use-module (gnu packages cups)
- #:use-module (gnu packages vim)
- #:use-module (gnu packages gtk)
- #:use-module (gnu packages xorg)
- #:use-module (gnu packages emacs)
- #:use-module (gnu packages file-systems)
- #:use-module (gnu packages gnome)
- #:use-module (gnu packages mtools)
- #:use-module (gnu packages linux)
- #:use-module (gnu packages audio)
- #:use-module (gnu packages gnuzilla)
- #:use-module (gnu packages web-browsers)
- #:use-module (gnu packages version-control)
- #:use-module (gnu packages package-management)
- #:use-module (gnu packages linux)
- #:use-module (gnu packages admin)
- #:use-module (nongnu packages linux)
- #:use-module (nongnu system linux-initrd))
-
-
-(use-service-modules cups desktop networking ssh xorg)
-
-(operating-system
- (host-name "zeus")
-
- (kernel linux)
- (firmware (list linux-firmware))
- (initrd microcode-initrd)
-
- (kernel-loadable-modules (list v4l2loopback-linux-module))
-
- (locale "en_US.utf8")
- (timezone "Europe/Athens")
- (keyboard-layout (keyboard-layout "us"
- #:options
- '("ctrl:nocaps")))
-
- ;; The list of user accounts ('root' is implicit).
- (users (cons (user-account
- (name "apollo")
- (comment "Thanos Apollo")
- (group "users")
- (home-directory "/home/apollo")
- (supplementary-groups '("wheel" ;; sudo
- "netdev" ;; network devices
- "kvm"
- "tty"
- "input"
- "realtime" ;; Enable realtime scheduling
- "lp" ;; control bluetooth devices
- "audio" ;; control audio devices
- "video"))) ;; control video devices
- %base-user-accounts))
-
- ;; Add the 'realtime' group
- (groups (cons (user-group (system? #t) (name "realtime"))
- %base-groups))
-
- ;; Packages installed system-wide. Users can also install packages
- ;; under their own account: use 'guix search KEYWORD' to search
- ;; for packages and 'guix install PACKAGE' to install a package.
- (packages (append (map specification->package
- `("emacs-exwm"
- "emacs-desktop-environment"
- "emacs"
- "emacs-guix"
- "emacs-vterm"
- "emacs-dashboard"
- "emacs-multi-vterm"
- "emacs-pdf-tools"
- "emacs-stumpwm-mode"
- "stumpish"
- "xrandr"
- "picom"
- "gnome"
- "gnome-desktop"
- "nss-certs"
- "python"
- "bind"
- "alacritty"
- "emacs-vterm"
- "emacs-multi-vterm"
- "alsa-utils"
- "bluez-alsa"
- "gnome-bluetooth"
- "blueman"
- "qtile"
- "git"
- "stumpwm"
- "rofi"
- "qemu"
- "libvirt"
- "virt-manager"
- "font-jetbrains-mono"))
- %base-packages))
-
- ;; Below is the list of system services. To search for available
- ;; services, run 'guix system search KEYWORD' in a terminal.
- (services
- (append (list (service gnome-desktop-service-type)
- (service openssh-service-type)
- (service bluetooth-service-type)
- (service cups-service-type)
- (set-xorg-configuration
- (xorg-configuration (keyboard-layout keyboard-layout)))
- )
- ;; This is the default list of services we
- ;; are appending to.
- %desktop-services))
-
-
-
- (bootloader (bootloader-configuration
- (bootloader grub-efi-bootloader)
- (targets (list "/boot/efi"))
- (keyboard-layout keyboard-layout)))
- (mapped-devices (list (mapped-device
- (source (uuid
- "0594b592-ddcb-4a3c-958d-c773d7a85d93"))
- (target "cryptroot")
- (type luks-device-mapping))
- (mapped-device
- (source (uuid
- "a44f40ec-94c3-457a-a9ed-5db5396f3aea"))
- (target "crypthome")
- (type luks-device-mapping))))
-
- ;; The list of file systems that get "mounted". The unique
- ;; file system identifiers there ("UUIDs") can be obtained
- ;; by running 'blkid' in a terminal.
- (file-systems (cons* (file-system
- (mount-point "/boot/efi")
- (device (uuid "98B8-B93E"
- 'fat32))
- (type "vfat"))
- (file-system
- (mount-point "/")
- (device "/dev/mapper/cryptroot")
- (type "ext4")
- (dependencies mapped-devices))
- (file-system
- (mount-point "/home")
- (device "/dev/mapper/crypthome")
- (type "ext4")
- (dependencies mapped-devices))
- (file-system
- (mount-point "/home/apollo/external")
- (device "/dev/sda1")
- (type "ext4")
- (dependencies mapped-devices))
- %base-file-systems)))
-
diff --git a/.config/stumpwm/colors.lisp b/.config/stumpwm/colors.lisp
deleted file mode 100644
index 5c06cbf..0000000
--- a/.config/stumpwm/colors.lisp
+++ /dev/null
@@ -1,30 +0,0 @@
-;; Colors
-(defvar phundrak-nord0 "#2e3440")
-(defvar phundrak-nord1 "#3b4252")
-(defvar phundrak-nord2 "#434c5e")
-(defvar phundrak-nord3 "#4c566a")
-(defvar phundrak-nord4 "#d8dee9")
-(defvar phundrak-nord5 "#e5e9f0")
-(defvar phundrak-nord6 "#eceff4")
-(defvar phundrak-nord7 "#8fbcbb")
-(defvar phundrak-nord8 "#88c0d0")
-(defvar phundrak-nord9 "#81a1c1")
-(defvar phundrak-nord10 "#5e81ac")
-(defvar phundrak-nord11 "#bf616a")
-(defvar phundrak-nord12 "#d08770")
-(defvar phundrak-nord13 "#ebcb8b")
-(defvar phundrak-nord14 "#a3be8c")
-(defvar phundrak-nord15 "#b48ead")
-
-(setq *colors*
- `(,phundrak-nord1 ;; 0 black
- ,phundrak-nord11 ;; 1 red
- ,phundrak-nord14 ;; 2 green
- ,phundrak-nord13 ;; 3 yellow
- ,phundrak-nord10 ;; 4 blue
- ,phundrak-nord14 ;; 5 magenta
- ,phundrak-nord8 ;; 6 cyan
- ,phundrak-nord5)) ;; 7 white
-
-(when *initializing*
- (update-color-map (current-screen)))
diff --git a/.config/stumpwm/commands.lisp b/.config/stumpwm/commands.lisp
deleted file mode 100644
index a47040e..0000000
--- a/.config/stumpwm/commands.lisp
+++ /dev/null
@@ -1,29 +0,0 @@
-;; Commands
-
-(defcommand firefox () ()
- "Run or raise Firefox."
- (sb-thread:make-thread (lambda () (run-or-raise "firefox" '(:class "Firefox") t nil))))
-
-
-(defcommand delete-window-and-frame () ()
- "Delete the current frame with its window."
- (delete-window)
- (remove-split))
-
-(defcommand hsplit-and-focus () ()
- "Create a new frame on the right and focus it."
- (hsplit)
- (move-focus :right))
-
-(defcommand vsplit-and-focus () ()
- "Create a new frame below and move focus to it."
- (vsplit)
- (move-focus :down))
-
-(defcommand term (&optional program) ()
- "Invoke a terminal, possibly with a @arg{program}."
- (sb-thread:make-thread
- (lambda ()
- (run-shell-command (if program
- (format nil "kitty ~A" program)
- "kitty")))))
diff --git a/.config/stumpwm/config b/.config/stumpwm/config
deleted file mode 100644
index 36867cf..0000000
--- a/.config/stumpwm/config
+++ /dev/null
@@ -1,144 +0,0 @@
-#-quicklisp
-(let ((quicklisp-init (merge-pathnames "quicklisp/setup.lisp"
- (user-homedir-pathname))))
- (when (probe-file quicklisp-init)
- (load quicklisp-init)))
-
-(in-package :stumpwm)
-(setf *default-package* :stumpwm)
-
-
-
-;; (load "~/.stumpwm.d/bluetooth.lisp")
-;; (load "~/.stumpwm.d/commands.lisp")
-(load "~/.config/stumpwm/theme.lisp")
-(load "~/.config/stumpwm/placement.lisp")
-(load "~/.config/stumpwm/keybindings.lisp")
-;; (load "~/./utilities.lisp")
-(load "~/.config/stumpwm/modeline.lisp")
-
-
-;; autostart
-(run-shell-command "
-emacs --daemon &
-feh --bg-scale ~/dotfiles/wallpaper.png &
-picom &
-exec qbittorrent &")
-
-
-(setf *mouse-focus-policy* :click)
-
-;; prefix key
-(set-prefix-key (kbd "C-t"))
-
-;; prompt the user for an interactive command. The first arg is an
-;; optional initial contents.
-(defcommand colon1 (&optional (initial "")) (:rest)
- (let ((cmd (read-one-line (current-screen) ": " :initial-input initial)))
- (when cmd
- (eval-command cmd t))))
-
-(define-key *top-map* (kbd "Super-2") (gselect 1))
-;; Run rofi
-(define-key *root-map* (kbd "C-r") "exec rofi -show drun")
-
-(define-key *root-map* (kbd "e") "exec emacsclient -c")
-
-(define-key *root-map* (kbd "C-e") "exec emacs --daemon")
-
-;; Browse somewhere
-(define-key *root-map* (kbd "b") "colon1 exec firefox http://www.")
-
-;; Ssh somewhere
-(define-key *root-map* (kbd "C-s") "colon1 exec xterm -e ssh ")
-
-;; Lock screen
-(define-key *root-map* (kbd "C-l") "exec xlock")
-
-;; Audio
-(define-key *top-map* (kbd "XF86AudioLowerVolume") "exec amixer sset Master 5%-")
-(define-key *top-map* (kbd "XF86AudioRaiseVolume") "exec amixer sset Master 5%+")
-
-;; Web jump (works for DuckDuckGo and Imdb)
-(defmacro make-web-jump (name prefix)
- `(defcommand ,(intern name) (search) ((:rest ,(concatenate 'string name " search: ")))
- (nsubstitute #\+ #\Space search)
- (run-shell-command (concatenate 'string ,prefix search))))
-
-(make-web-jump "duckduckgo" "firefox https://duckduckgo.com/?q=")
-(make-web-jump "imdb" "firefox http://www.imdb.com/find?q=")
-
-;; C-t M-s is a terrble binding, but you get the idea.
-(define-key *root-map* (kbd "M-s") "duckduckgo")
-(define-key *root-map* (kbd "i") "imdb")
-
-
-
-
-;; UI
-(setf *message-window-gravity* :center
- *input-window-gravity* :center
- *window-border-style :thin
- *mouse-focus-policy* :click
- *transient-border-width* 2
- *normal-size-border-width* 2)
-
-;; Message window font
-(set-font "-xos4-terminus-medium-r-normal--14-140-72-72-c-80-iso8859-15")
-
-(set-font "-xos4-terminus-medium-r-normal-*-20-*-*-*-*-*-*-*")
-
-;;; Define window placement policy...
-
-
-(defvar *thanos/workspaces*
- (list "EMACS"
- "WEB"
- "ANKI"
- "DOC"
- "RAND"
- "VID"
- "TOR"))
-
-(stumpwm:grename (nth 0 *thanos/workspaces*))
-(dolist (workspace (cdr *thanos/workspaces*))
- (stumpwm:gnewbg workspace))
-
-(defvar *move-to-keybinds* (list "!" "@" "#" "$" "%" "^" "&" "*" "("))
-(dotimes (y (length *ce/workspaces*))
- (let ((workspace (write-to-string (+ y 1))))
- (define-key *root-map* (kbd workspace) (concat "gselect " workspace))
- (define-key *root-map* (kbd (nth y *move-to-keybinds*)) (concat "gmove-and-follow " workspace))))
-
-;; Clear rules
-(clear-window-placement-rules)
-
-;; Last rule to match takes precedence!
-;; TIP: if the argument to :title or :role begins with an ellipsis, a substring
-;; match is performed.
-;; TIP: if the :create flag is set then a missing group will be created and
-;; restored from *data-dir*/create file.
-;; TIP: if the :restonre flag is set then group dump is restored even for an
-;; existing group using *data-dir*/restore file.
-(define-frame-preference "Default"
- ;; frame raise lock (lock AND raise == jumpto)
- (0 t nil :class "Konqueror" :role "...konqueror-mainwindow")
- (1 t nil :class "XTerm"))
-
-(define-frame-preference "Ardour"
- (0 t t :instance "ardour_editor" :type :normal)
- (0 t t :title "Ardour - Session Control")
- (0 nil nil :class "XTerm")
- (1 t nil :type :normal)
- (1 t t :instance "ardour_mixer")
- (2 t t :instance "jvmetro")
- (1 t t :instance "qjackctl")
- (3 t t :instance "qjackctl" :role "qjackctlMainForm"))
-
-(define-frame-preference "Shareland"
- (0 t nil :class "XTerm")
- (1 nil t :class "aMule"))
-
-(define-frame-preference "Emacs"
- (1 t t :restore "emacs-editing-dump" :title "...xdvi")
- (0 t t :create "emacs-dump" :class "Emacs"))
diff --git a/.config/stumpwm/keybindings.lisp b/.config/stumpwm/keybindings.lisp
deleted file mode 100644
index f72544d..0000000
--- a/.config/stumpwm/keybindings.lisp
+++ /dev/null
@@ -1,70 +0,0 @@
-
-(in-package :stumpwm)
-
-(which-key-mode)
-
-
-(setf *mouse-focus-policy* :click)
-
-;; prefix key
-(set-prefix-key (kbd "C-t"))
-
-;; prompt the user for an interactive command. The first arg is an
-;; optional initial contents.
-(defcommand colon1 (&optional (initial "")) (:rest)
- (let ((cmd (read-one-line (current-screen) ": " :initial-input initial)))
- (when cmd
- (eval-command cmd t))))
-
-
-
-(define-key *root-map* (kbd "`") "select-window-by-number 0")
-
-(define-key *root-map* (kbd "C-p") "exec rofi-pass")
-(define-key *root-map* (kbd "C-f") "fullscreen")
-
-;; Run rofi
-(define-key *root-map* (kbd "C-r") "exec rofi -show drun")
-
-(define-key *root-map* (kbd "e") "exec emacsclient -c")
-
-;; Browse somewhere
-(define-key *root-map* (kbd "b") "colon1 exec firefox http://www.")
-
-;; Lock screen
-(define-key *root-map* (kbd "C-l") "exec xlock")
-
-;; Audio
-(define-key *top-map* (kbd "XF86AudioLowerVolume") "exec amixer sset Master 5%-")
-(define-key *top-map* (kbd "XF86AudioRaiseVolume") "exec amixer sset Master 5%+")
-
-;;Keyboard-light
-(define-key *top-map* (kbd "XF86Explorer") "exec brightnessctl --device='tpacpi::kbd_backlight' set +1")
-(define-key *top-map* (kbd "XF86LaunchA") "exec brightnessctl --device='tpacpi::kbd_backlight' set 1-")
-
-;; Keyboard layout
-(define-key *top-map* (kbd "F1") "exec setxkbmap us")
-(define-key *top-map* (kbd "F2") "exec setxkbmap gr")
-
-
-;;; Groups
-;; Switch to group
-(define-key *top-map* (kbd "s-1") "gselect 1")
-(define-key *top-map* (kbd "s-2") "gselect 2")
-(define-key *top-map* (kbd "s-3") "gselect 3")
-(define-key *top-map* (kbd "s-4") "gselect 4")
-(define-key *top-map* (kbd "s-5") "gselect 5")
-(define-key *top-map* (kbd "s-6") "gselect 6")
-(define-key *top-map* (kbd "s-7") "gselect 7")
-;; Move window to group
-(define-key *top-map* (kbd "s-!") "gmove 1")
-(define-key *top-map* (kbd "s-@") "gmove 2")
-(define-key *top-map* (kbd "s-#") "gmove 3")
-(define-key *top-map* (kbd "s-$") "gmove 4")
-(define-key *top-map* (kbd "s-%") "gmove 5")
-(define-key *top-map* (kbd "s-^") "gmove 6")
-(define-key *top-map* (kbd "s-&") "gmove 7")
-;; Focus
-(define-key *top-map* (kbd "s-b") "move-focus left")
-(define-key *top-map* (kbd "s-f") "move-focus right")
-(define-key *top-map* (kbd "s-n") "move-focus down")
diff --git a/.config/stumpwm/modeline.lisp b/.config/stumpwm/modeline.lisp
deleted file mode 100644
index 43dfb9a..0000000
--- a/.config/stumpwm/modeline.lisp
+++ /dev/null
@@ -1,59 +0,0 @@
-
-;; Modeline
-(setf *window-format* "%m%n%s%c")
-(setf *screen-mode-line-format* (list "%g ^> %d"))
-
-(enable-mode-line (current-screen) (current-head) t)
-
-(setf *mode-line-timeout* 2)
-
-(setf *time-modeline-string* "%F %H:%M")
-
-(setf *group-format* "%t")
-
-(setf *window-format* "%n: %30t")
-
-(load "~/.config/stumpwm/colors.lisp")
-
-(setf *mode-line-background-color* phundrak-nord1
- *mode-line-foreground-color* phundrak-nord5)
-
-(setf *mode-line-border-color* phundrak-nord1
- *mode-line-border-width* 0)
-
-;; (defvar *mode-line-formatter-list*
-;; '(("%g") ("%W") ("^>") ("mu-unread" . t) ("%m") ("%C") ("%M") ("%B") ("%d"))
-;; "List of formatters for the modeline.")
-
-
-;; (defun generate-modeline (elements &optional not-invertedp rightp)
-;; "Generate a modeline for StumpWM.
-;; ELEMENTS should be a list of `cons'es which `car' is the modeline
-;; formatter or the shell command to run, and their `cdr' is either nil
-;; when the `car' is a formatter and t when it is a shell command."
-;; (when elements
-;; (cons (format nil
-;; " ^[~A^]^(:bg \"~A\") "
-;; (format nil "^(:fg \"~A\")^(:bg \"~A\")^f1~A^f0"
-;; (if (xor not-invertedp rightp) phundrak-nord1 phundrak-nord3)
-;; (if (xor not-invertedp rightp) phundrak-nord3 phundrak-nord1)
-;; (if rightp "" ""))
-;; (if not-invertedp phundrak-nord3 phundrak-nord1))
-;; (let* ((current-element (car elements))
-;; (formatter (car current-element))
-;; (commandp (cdr current-element)))
-;; (cons (if commandp
-;; `(:eval (run-shell-command ,formatter t))
-;; (format nil "~A" formatter))
-;; (generate-modeline (cdr elements)
-;; (not not-invertedp)
-;; (if (string= "^>" (caar elements)) t rightp)))))))
-
-;; (defcommand reload-modeline () ()
-;; "Reload modeline."
-;; (sb-thread:make-thread
-;; (lambda ()
-;; (setf *screen-mode-line-format*
-;; (cdr (generate-modeline *mode-line-formatter-list*))))))
-
-;; (reload-modeline)
diff --git a/.config/stumpwm/placement.lisp b/.config/stumpwm/placement.lisp
deleted file mode 100644
index dfef676..0000000
--- a/.config/stumpwm/placement.lisp
+++ /dev/null
@@ -1,14 +0,0 @@
-(when *initializing*
- (grename "EMACS")
- (gnewbg "WEB")
- (gnewbg "ANKI")
- (gnewbg "DOC")
- (gnewbg "RAND")
- (gnewbg "VID")
- (gnewbg "TOR"))
-
-(clear-window-placement-rules)
-
-(define-frame-preference "[VID]" (nil t t :class "Nemo"))
-
-(setf *dynamic-group-master-split-ratio* 1/2)
diff --git a/.config/stumpwm/theme.lisp b/.config/stumpwm/theme.lisp
deleted file mode 100644
index cdc1c6b..0000000
--- a/.config/stumpwm/theme.lisp
+++ /dev/null
@@ -1,30 +0,0 @@
-(load "~/.config/stumpwm/colors.lisp")
-
-;; TODO FONTS
-
-
-(set-border-color phundrak-nord1)
-(set-focus-color phundrak-nord1)
-(set-unfocus-color phundrak-nord3)
-(set-float-focus-color phundrak-nord1)
-(set-float-unfocus-color phundrak-nord3)
-
-
-(set-fg-color phundrak-nord4)
-(set-bg-color phundrak-nord1)
-
-
-(setf *normal-border-width* 0
- *float-window-border* 0
- *float-window-title-height* 15
- *window-border-style* :none
- *window-format* "%n:%t")
-
-(setf *key-seq-color* "^2")
-(setf *which-key-format* (concat *key-seq-color* "*~5a^n ~a"))
-
-
-(setf *input-window-gravity* :top
- *message-window-padding* 10
- *message-window-y-padding* 10
- *message-window-gravity* :center)
diff --git a/guix-packages/starship.scm b/guix-packages/starship.scm
deleted file mode 100755
index cd4319f..0000000
--- a/guix-packages/starship.scm
+++ /dev/null
@@ -1,56 +0,0 @@
-
-(define-module (my-packages)
- #:use-module (gnu packages)
- #:use-module (gnu packages build-tools)
- #:use-module (guix build-system copy)
- #:use-module (guix download)
- #:use-module (guix git-download)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix gexp)
- #:use-module (guix build-system gnu)
- #:use-module (guix build-system asdf)
- #:use-module (guix build-system emacs))
-
-;; A temporary fix based on this patch:
-;;
-;;https://lists.gnu.org/archive/html/guix-patches/2021-10/msg00762.html
-
-(define-public starship-prompt-bin
- (package
- (name "starship")
- (version "1.12.0")
- (source (origin
- (method url-fetch)
- (uri (string-append "https://github.com/starship/starship/releases/download/v"
- version
- "/starship-x86_64-unknown-linux-musl.tar.gz"))
- (sha256
- (base32
- "0w2w20lxx8l662xdcvjdb033sglhgfg3dnm5jfjb5z5sixwd37x0"))))
- (build-system asdf-build-system/source)
- (synopsis "binary of starship -- The cross-shell prompt for astronauts.")
- (description "Cross shell prompt")
- (home-page "https://starship.rs/")
- (license gpl2+)))
-
-(define-public exwm-firefox-core
- (package
- (name "exwm-firefox-core")
- (version "1.0")
- (home-page "https://github.com/walseb/exwm-firefox-core")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url home-page)
- (commit version)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "0w2w20lxx8l662xdcvjdb033sglhgfg3dnm5jfjb5z5sixwd37x0"))))
- (build-system emacs-build-system)
- (synopsis "Library for executing firefox function through EXWM")
- (description "sadf")
- (license gpl3+)))
-
-starship-prompt-bin