Compare commits

..

26 commits

Author SHA1 Message Date
eaf92fbf1b Don't show the weather in a new Firefox tab 2024-10-24 07:32:14 -07:00
b56e730c34
Update to latest emacs configuration 2024-08-15 00:19:00 -07:00
e332b2ab1d
Accept wezterm as a terminal to raise
I've been trying it out.
2024-08-15 00:18:32 -07:00
b07410da65
Don't use ‘add-zsh-hook’ for setting up vterm
It seems that the ‘autoload’ and ‘add-zsh-hook’ calls somehow interfered with
the later setup of the ‘zsh-autosuggestions’.
2024-08-15 00:14:26 -07:00
cae3df4258
[abcde] Store ripped files into temporary directory 2024-08-15 00:13:43 -07:00
08c336290e
Add configuration for icecat 2024-07-04 23:57:28 -07:00
33bceec314
[zathura] Change default background and foreground colors 2024-07-04 23:55:31 -07:00
7fc5ff99f6
Update Emacs config to latest commit 2024-07-02 00:13:08 -07:00
72bb9d7b9c Set wallpaper when stumpwm starts
This depends on ‘feh’ being installed and the wallpaper existing. I'll want to
update it to actually depend on the ‘feh’ package and to download the wallpaper
package from somewhere else.
2024-07-01 14:20:25 -07:00
b3e3f9292c Fix stumpwm packages
The latest ‘stumpwm’ package has removed the “lib” output. All things using the
‘stumpwm:lib’ output need to switch to just using ‘stumpwm’.

I've added the ‘stumpwm+swank’ package definition because in my package
repository it depends on ‘stumpwm:lib’ and this way I can update it more easily.
2024-07-01 14:18:40 -07:00
eec1396d42 Remove rounded corners around the stumpwm modeline
- Redefine the ‘stumpwm::make-mode-line-window’ function to set the
  ‘_NET_WM_WINDOW_TYPE’ property to ‘_NET_WM_WINDOW_TYPE_DOCK’ so that it can be
  matched by window type.

- Specify that for picom any “dock” type windows should be excluded from getting
  rounded corners.

- Add ‘rounded-corners-exclude’ initializer for the ‘home-picom-configuration’.
2024-07-01 14:17:30 -07:00
53cc05214f Add mpdscrobble service 2024-06-19 23:02:35 -07:00
dbfce1861c Remove conflicting definitions of SCSH
Changes that I made were added to Guix some time ago.
2024-06-19 21:56:33 -07:00
744b191483 Move all mpd-related packages into (oni packages mpd) 2024-06-19 21:55:28 -07:00
730d18c024 Remove unused package 2024-06-19 21:54:28 -07:00
7421fb9730 Update emacs config to latest version 2024-06-19 16:12:01 -07:00
419e7053b9 Add my PHP config for Emacs 2024-06-19 16:11:51 -07:00
3b1e7f4876 Add archlinux package search for Surfingkeys 2024-04-22 15:30:22 -07:00
e0ffe1a859 fix(surfingkeyes): Fix syntax error 2024-04-20 00:10:27 -07:00
7bcf1f8aae feat(surfingkeys): Add EmacsWiki search 2024-04-19 23:39:20 -07:00
e3a5148a02 fix: oni channel url 2024-04-19 23:02:14 -07:00
2c6868b56c chore(emacs-config): Update to latest 2024-04-19 23:01:07 -07:00
2f8d342c5e fix: Update git repo and homepage urls
I switched from using Forgejo back to using cgit, and the urls have changed.
2024-04-19 23:00:15 -07:00
fc494ab25b feat(emacs): Add ‘org-modern’ configuration 2024-04-19 22:58:03 -07:00
cf72a2ebc8 fix(surfingkeys): Fix melpa name casing 2024-04-19 22:29:18 -07:00
2a6a6b67f4 feat(surfingkeys): Add Melpa search alias 2024-04-19 22:26:52 -07:00
21 changed files with 452 additions and 185 deletions

View file

@ -52,7 +52,7 @@ CDPARANOIAOPTS="--never-skip=40"
CDDISCID=cd-discid CDDISCID=cd-discid
# Give the base location here for the encoded music files. # Give the base location here for the encoded music files.
OUTPUTDIR="$HOME/music" OUTPUTDIR="$HOME/tmp/music"
# The default actions that abcde will take. # The default actions that abcde will take.
ACTIONS=cddb,read,encode,tag,move,clean ACTIONS=cddb,read,encode,tag,move,clean

View file

@ -96,11 +96,15 @@
home-emacs-golden-ratio-service-type home-emacs-golden-ratio-service-type
home-emacs-pinentry-service-type home-emacs-pinentry-service-type
home-emacs-vterm-service-type home-emacs-vterm-service-type
home-emacs-vterm-configuration)) home-emacs-vterm-configuration
home-emacs-org-modern-service-type))
#:use-module ((oni home services environment) #:use-module ((oni home services environment)
#:select (home-environment-service)) #:select (home-environment-service))
#:use-module ((oni home services flameshot) #:use-module ((oni home services flameshot)
#:select (home-flameshot-service-type)) #:select (home-flameshot-service-type))
#:use-module ((oni home services gnuzilla)
#:select (home-icecat-service-type
home-icecat-configuration))
#:use-module ((oni home services kdeconnect) #:use-module ((oni home services kdeconnect)
#:select (home-kdeconnect-service-type)) #:select (home-kdeconnect-service-type))
#:use-module ((oni home services mpd) #:use-module ((oni home services mpd)
@ -108,7 +112,8 @@
home-mpd-configuration home-mpd-configuration
<home-mpd-audio-output> <home-mpd-audio-output>
home-mpc-update-service-type home-mpc-update-service-type
home-mpd-notify-service-type)) home-mpd-notify-service-type
home-mpdscrobble-service-type))
#:use-module ((oni home services mpv) #:use-module ((oni home services mpv)
#:select (home-mpv-service-type #:select (home-mpv-service-type
home-mpv-mpris-service-type)) home-mpv-mpris-service-type))
@ -194,12 +199,11 @@
emacs-oni-embrace emacs-oni-embrace
emacs-oni-yaml emacs-oni-yaml
emacs-oni-python emacs-oni-python
emacs-oni-git-commit)) emacs-oni-git-commit
#:use-module ((oni packages hlwm-run-or-raise) emacs-oni-php))
#:select (hlwm-run-or-raise))
#:use-module ((oni packages inbox-size) #:use-module ((oni packages inbox-size)
#:select (inbox-size)) #:select (inbox-size))
#:use-module ((oni packages mpd-random-albums) #:use-module ((oni packages mpd)
#:select (mpd-random-albums)) #:select (mpd-random-albums))
#:use-module ((oni packages notmuch-collect-tasks) #:use-module ((oni packages notmuch-collect-tasks)
#:select (notmuch-collect-tasks)) #:select (notmuch-collect-tasks))
@ -241,6 +245,8 @@
(wintypes (wintypes
'((dnd (shadow . #f)) '((dnd (shadow . #f))
(dock (shadow . #f)))) (dock (shadow . #f))))
(rounded-corners-exclude
'("window_type *= \\\"dock\\\""))
(corner-radius 15) (corner-radius 15)
(blur-background #f) (blur-background #f)
(blur-background-frame #f) (blur-background-frame #f)
@ -253,7 +259,6 @@
(specification->package+output "glibc-locales") (specification->package+output "glibc-locales")
(specification->package+output "font-fantasque-sans") (specification->package+output "font-fantasque-sans")
(specification->package+output "font-comic-neue") (specification->package+output "font-comic-neue")
hlwm-run-or-raise
pick-random-wallpaper pick-random-wallpaper
notmuch-collect-tasks notmuch-collect-tasks
notmuch-tag-mailinglists notmuch-tag-mailinglists
@ -323,6 +328,7 @@
emacs-oni-python emacs-oni-python
emacs-nginx-mode emacs-nginx-mode
emacs-oni-git-commit emacs-oni-git-commit
emacs-oni-php
tree-sitter-bash tree-sitter-bash
tree-sitter-scheme tree-sitter-scheme
@ -365,7 +371,7 @@
(list (list
(channel (channel
(name 'oni) (name 'oni)
(url "https://code.ryuslash.org/ryuslash/guix-packages.git") (url "git://ryuslash.org/guix-packages.git")
(introduction (introduction
(make-channel-introduction (make-channel-introduction
"646573578b7adfbff415645fed201269076cebf6" "646573578b7adfbff415645fed201269076cebf6"
@ -445,6 +451,7 @@
(service home-emacs-vterm-service-type (service home-emacs-vterm-service-type
(home-emacs-vterm-configuration (home-emacs-vterm-configuration
(buffer-name-string "*vterm* %s"))) (buffer-name-string "*vterm* %s")))
(service home-emacs-org-modern-service-type)
(service home-flameshot-service-type) (service home-flameshot-service-type)
@ -465,6 +472,7 @@
#:format "44100:16:2"))))) #:format "44100:16:2")))))
(service home-mpc-update-service-type) (service home-mpc-update-service-type)
(service home-mpd-notify-service-type) (service home-mpd-notify-service-type)
(service home-mpdscrobble-service-type)
(service home-mpv-service-type) (service home-mpv-service-type)
;; [2024-01-05 Fri] mpv-mpris fails to compile: ;; [2024-01-05 Fri] mpv-mpris fails to compile:
@ -533,4 +541,22 @@
(ssh-support? #f) (ssh-support? #f)
(extra-content (extra-content
"allow-emacs-pinentry\n"))) "allow-emacs-pinentry\n")))
(service home-ssh-agent-service-type)))) (service home-ssh-agent-service-type)
(service home-icecat-service-type
(home-icecat-configuration
(settings
'(("extensions.pocket.enabled" #f)
("view_source.editor.args" "--no-wait")
("view_source.editor.external" #t)
("view_source.editor.path" "/home/chelys/.guix-home/profile/bin/emacsclient")
("browser.display.background_color" "#222424")
("browser.display.foreground_color" "#bfbfbf")
("browser.display.document_color_use" 2)
("browser.anchor_color" "#ff9800")
("browser.visited_color" "#0babab")
("browser.display.use_document_fonts" 0)
("browser.newtabpage.activity-stream.showWeather" #f)
;; Change the accelerator key (modifier key for most keyboard
;; shortcuts) to the super key (from control).
("ui.key.accelKey" 91))))))))

View file

@ -15,7 +15,8 @@
emacs-eros emacs-eros
emacs-ace-link emacs-ace-link
emacs-pinentry emacs-pinentry
emacs-vterm)) emacs-vterm
emacs-org-modern))
#:use-module ((gnu home services) #:use-module ((gnu home services)
#:select (service-type #:select (service-type
service-extension service-extension
@ -67,7 +68,10 @@
home-emacs-pinentry-configuration home-emacs-pinentry-configuration
home-emacs-vterm-service-type home-emacs-vterm-service-type
home-emacs-vterm-configuration)) home-emacs-vterm-configuration
home-emacs-org-modern-service-type
home-emacs-org-modern-configuration))
(define-maybe string) (define-maybe string)
@ -500,8 +504,10 @@
"fi\n" "fi\n"
(if (maybe-value-set? (home-emacs-vterm-configuration-buffer-name-string config)) (if (maybe-value-set? (home-emacs-vterm-configuration-buffer-name-string config))
(string-append (string-append
"autoload -U add-zsh-hook\n" "vterm_chpwd(){ print -Pn \"\\e]2;%m:%2~\\a\" }\n"
"add-zsh-hook -Uz chpwd (){ print -Pn \"\\e]2;%m:%2~\\a\" }\n") "if [[ \"$INSIDE_EMACS\" = 'vterm' ]]; then\n"
" chpwd_functions+=(vterm_chpwd)\n"
"fi\n")
"") "")
"vterm_prompt_end() {\n" "vterm_prompt_end() {\n"
" vterm_printf \"51;A$(whoami)@$(hostname):$(pwd)\"\n" " vterm_printf \"51;A$(whoami)@$(hostname):$(pwd)\"\n"
@ -538,3 +544,40 @@
(compose identity) (compose identity)
(default-value (home-emacs-vterm-configuration)) (default-value (home-emacs-vterm-configuration))
(description "Install and configure emacs-vterm."))) (description "Install and configure emacs-vterm.")))
;;; Org-modern
(define-configuration/no-serialization home-emacs-org-modern-configuration
(package
(package emacs-org-modern)
"Package to use for setting emacs-org-modern.")
(extra-content
(text-config '())
"Extra content for emacs-org-modern configuration."))
(define (add-emacs-org-modern-configuration config)
(home-emacs-extension
(configurations
(append
(list (mixed-text-file "org-modern-config"
";;;;; org-modern-config starts here.\n"
"(with-eval-after-load 'org (global-org-modern-mode))"
";;;;; org-modern-config ends here.\n"))
(home-emacs-org-modern-configuration-extra-content config)))))
(define (add-emacs-org-modern-packages config)
(list (home-emacs-org-modern-configuration-package config)))
(define home-emacs-org-modern-service-type
(service-type
(name 'home-emacs-org-modern)
(extensions
(list (service-extension
home-emacs-service-type
add-emacs-org-modern-configuration)
(service-extension
home-profile-service-type
add-emacs-org-modern-packages)))
(compose identity)
(default-value (home-emacs-org-modern-configuration))
(description "Install and configure emacs-org-modern.")))

View file

@ -0,0 +1,85 @@
(define-module (oni home services gnuzilla)
#:use-module ((ice-9 match)
#:select (match))
#:use-module ((gnu services configuration)
#:select (serialize-package
define-configuration))
#:use-module ((gnu packages gnuzilla)
#:select (icecat))
#:use-module ((gnu home services)
#:select (service-type
service-extension
home-profile-service-type
home-files-service-type))
#:use-module ((guix packages)
#:select (package?))
#:use-module ((guix gexp)
#:select (gexp
mixed-text-file))
#:export (home-icecat-service-type
home-icecat-configuration))
(define (serialize-setting pair)
(match pair
((key (? boolean? value))
(format #f "user_pref(~s, ~a);" key (if value "true" "false")))
((key (? number? value))
(format #f "user_pref(~s, ~a);" key value))
((key (? string? value))
(format #f "user_pref(~s, ~s);" key value))))
(define (serialize-alist field value)
(string-join (map serialize-setting value) "\n"))
(define (alist? value)
(or (null? value)
(and (list? value)
(list? (car value)))))
(define-configuration home-icecat-configuration
(package
(package icecat)
"Package to use for setting up icecat.")
(settings
(alist '())
"Settings to specify for the generated profile."))
(define (add-icecat-packages config)
(list (home-icecat-configuration-package config)))
(define (home-icecat-configuration-files config)
`((".mozilla/icecat/profiles.ini"
,(mixed-text-file
"profiles.ini"
"[Install4F96D1932A9F858E]\n"
"Default=default\n"
"Locked=1\n"
"\n"
"[Profile0]\n"
"Name=default\n"
"IsRelative=1\n"
"Path=default\n"
"Default=1\n"
"\n"
"[General]\n"
"StartWithLastProfile=1\n"
"Version=2\n"))
(".mozilla/icecat/default/user.js"
,(mixed-text-file
"user.js"
(serialize-alist config (home-icecat-configuration-settings config))))))
(define home-icecat-service-type
(service-type
(name 'home-icecat)
(extensions
(list (service-extension
home-profile-service-type
add-icecat-packages)
(service-extension
home-files-service-type
home-icecat-configuration-files)))
(compose identity)
(default-value (home-icecat-configuration))
(description "Install and configure icecat.")))

View file

@ -9,8 +9,9 @@
#:use-module (srfi srfi-1) #:use-module (srfi srfi-1)
#:use-module (oop goops) #:use-module (oop goops)
#:use-module (ice-9 string-fun) #:use-module (ice-9 string-fun)
#:use-module ((oni packages mpd-notify) #:use-module ((oni packages mpd)
#:select (mpd-notify)) #:select (mpd-notify
mpdscrobble))
#:export (home-mpd-service-type #:export (home-mpd-service-type
home-mpd-configuration home-mpd-configuration
@ -20,7 +21,10 @@
home-mpc-update-configuration home-mpc-update-configuration
home-mpd-notify-service-type home-mpd-notify-service-type
home-mpd-notify-configuration)) home-mpd-notify-configuration
home-mpdscrobble-service-type
home-mpdscrobble-configuration))
(define (serialize-boolean field value) (define (serialize-boolean field value)
"") "")
@ -204,3 +208,44 @@
(compose identity) (compose identity)
(default-value (home-mpd-notify-configuration)) (default-value (home-mpd-notify-configuration))
(description "Install and configure mpd notifications."))) (description "Install and configure mpd notifications.")))
(define-configuration home-mpdscrobble-configuration
(package
(package mpdscrobble)
"Pakcage to use for setting mpdscrobble")
(auto-start?
(boolean #t)
"Should mpdscrobble be started automatically?"))
(define (add-mpdscrobble-packages config)
(list (home-mpdscrobble-configuration-package config)))
(define (home-mpdscrobble-shepherd-service config)
(list
(shepherd-service
(documentation "Scrobble songs to last.fm and/or maloja")
(provision '(mpdscrobble))
(requirement '(mpd))
(auto-start? (home-mpdscrobble-configuration-auto-start? config))
(start
#~(make-forkexec-constructor
(list #$(file-append (home-mpdscrobble-configuration-package config) "/bin/mpdscrobble"))
#:log-file (format #f "~a/.local/var/log/mpdscrobble.log" (getenv "HOME"))))
(stop #~(make-kill-destructor))
(respawn? #t)
(respawn-delay 1)
(respawn-limit 60))))
(define home-mpdscrobble-service-type
(service-type
(name 'home-mpdscrobble)
(extensions
(list (service-extension
home-profile-service-type
add-mpdscrobble-packages)
(service-extension
home-shepherd-service-type
home-mpdscrobble-shepherd-service)))
(compose identity)
(default-value (home-mpdscrobble-configuration))
(description "Install and configure mpdscrobble.")))

View file

@ -113,6 +113,9 @@
(wintypes (wintypes
(alist '()) (alist '())
"Window-type-specific settings") "Window-type-specific settings")
(rounded-corners-exclude
(list '())
"Specify a list of conditions of windows that should have no rounded corners")
(corner-radius (corner-radius
(number 0) (number 0)
"Sets the radius of rounded window corners") "Sets the radius of rounded window corners")

View file

@ -56,7 +56,6 @@
(define (add-stumpwm-packages config) (define (add-stumpwm-packages config)
(append (list sbcl (append (list sbcl
(home-stumpwm-configuration-package config) (home-stumpwm-configuration-package config)
(list stumpwm "lib")
(home-stumpwm-configuration-stumpish-package config)))) (home-stumpwm-configuration-stumpish-package config))))
(define (home-stumpwm-extensions original-config extension-configs) (define (home-stumpwm-extensions original-config extension-configs)

View file

@ -39,7 +39,7 @@ after it has been unlocked."
(defcommand raise-terminal () () (defcommand raise-terminal () ()
"Open or show my terminal" "Open or show my terminal"
(run-or-raise "kitty" '(:class "kitty"))) (run-or-raise "kitty" '(:class "kitty|org\.wezfurlong\.wezterm")))
(define-key *top-map* (kbd "C-M-l") "lock-screen") (define-key *top-map* (kbd "C-M-l") "lock-screen")
(define-key *top-map* (kbd "s-b") "raise-browser") (define-key *top-map* (kbd "s-b") "raise-browser")
@ -93,6 +93,26 @@ after it has been unlocked."
"^*5^B[VPN]^b^n " "^*5^B[VPN]^b^n "
"")) ""))
"%d ")) "%d "))
;;; Redefinition of the make mode-line window to add the Dock window type.
(defun stumpwm::make-mode-line-window (screen)
"Create a window suitable for a modeline."
(let ((window (xlib:create-window
:parent (screen-root screen)
:x 0 :y 0 :width 1 :height 1
:background (stumpwm::alloc-color screen *mode-line-background-color*)
:border (stumpwm::alloc-color screen *mode-line-border-color*)
:border-width *mode-line-border-width*
;; You can click the modeline
:event-mask (xlib:make-event-mask :button-press :exposure)
;; these windows are not controlled by the window manager
:override-redirect :on)))
(xlib:change-property
window :_NET_WM_WINDOW_TYPE
(list (xlib:find-atom *display* :_NET_WM_WINDOW_TYPE_DOCK))
:atom 32)
window))
(mode-line) (mode-line)
;;; Screenshots ;;; Screenshots
@ -132,6 +152,8 @@ after it has been unlocked."
(define-frame-preference "teams" (define-frame-preference "teams"
(0 t t :class "teams-for-linux" :create t)) (0 t t :class "teams-for-linux" :create t))
(sb-ext:run-program *shell-program* '("-c" "feh --bg-center ~/pictures/wallpaper/5120x1440/wallhaven-v9ydgl.jpg"))
(swank:create-server :dont-close t) (swank:create-server :dont-close t)
(which-key-mode) (which-key-mode)

View file

@ -5,7 +5,7 @@
#:use-module ((guix licenses) #:prefix license:) #:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages base) #:use-module (gnu packages base)
#:use-module (gnu packages bash) #:use-module (gnu packages bash)
#:use-module (oni packages scsh) #:use-module (gnu packages shells)
#:use-module (gnu packages mail)) #:use-module (gnu packages mail))
(define-public count-emails (define-public count-emails

View file

@ -14,7 +14,7 @@
#:use-module (oni packages emacs)) #:use-module (oni packages emacs))
(define-public emacs-oni-config (define-public emacs-oni-config
(let ((commit "5d0fe5971995503f57798601cd3a9e9e9c4c7b9d") (let ((commit "f404ee603285efc62c73f03b178bd367d115fcbc")
(revision "0")) (revision "0"))
(package (package
(name "emacs-oni-config") (name "emacs-oni-config")
@ -23,13 +23,13 @@
(origin (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
(url "https://code.ryuslash.org/ryuslash/emacs-config.git") (url "git://code.ryuslash.org/emacs-config.git")
(commit commit))) (commit commit)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0lqh3qblhlbps6742w3wv3c7nlv3mipi1cjfcbw1i3b8bsc2c6rv")))) (base32 "1q9qh3b9r06j87pwscabj5mqjhbnysiw1a0xb31c4wn24bnmm143"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(home-page "https://code.ryuslash.org/ryuslash/emacs-config") (home-page "https://code.ryuslash.org/emacs-config/about/")
(synopsis "My Emacs configuration") (synopsis "My Emacs configuration")
(description "This package provides my configuration for emacs") (description "This package provides my configuration for emacs")
(license license:gpl3+)))) (license license:gpl3+))))
@ -322,21 +322,14 @@ Emacs")))
#:emacs ,emacs)) #:emacs ,emacs))
(propagated-inputs (propagated-inputs
(list emacs-oni-yasnippet (list emacs-oni-yasnippet
emacs-oni-alert
emacs-oni-hydra emacs-oni-hydra
emacs-org-roam emacs-org-roam
emacs-org emacs-org
emacs-org-contrib emacs-org-contrib
emacs-org-bullets
emacs-org-edna emacs-org-edna
emacs-diminish emacs-diminish
emacs-all-the-icons
emacs-olivetti emacs-olivetti
emacs-form-feed emacs-org-pretty-table))
emacs-org-pretty-table
emacs-ob-async
emacs-org-ql
emacs-org-super-agenda))
(synopsis "My Emacs Org configuration") (synopsis "My Emacs Org configuration")
(description "This package provides my configuration for org"))) (description "This package provides my configuration for org")))
@ -916,3 +909,27 @@ Emacs")))
emacs-yaml-pro)) emacs-yaml-pro))
(synopsis "My configuration for yaml-mode.") (synopsis "My configuration for yaml-mode.")
(description "This package provides my configuration for editing Yaml files."))) (description "This package provides my configuration for editing Yaml files.")))
(define-public emacs-oni-php
(package
(inherit emacs-oni-config)
(name "emacs-oni-php")
(arguments
'(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'chdir-oni-php
(λ _ (chdir "oni-php"))))
#:include '("\\.el$" "^snippets\\/")))
(propagated-inputs
(list emacs-php-mode
emacs-oni-yasnippet
emacs-oni-flycheck
emacs-oni-company
emacs-oni-hydra
emacs-ggtags
emacs-fic-mode
emacs-ac-php
;; Actually a dependency of emacs-ac-php for using company-php.
emacs-xcscope))
(synopsis "My configuration for php-mode.")
(description "This package provides my configuration for editing PHP files.")))

View file

@ -215,14 +215,14 @@ custom pairs?)")
(source (source
(origin (origin
(uri (git-reference (uri (git-reference
(url "https://code.ryuslash.org/ryuslash/eshell-fringe-status.git") (url "git://code.ryuslash.org/eshell-fringe-status.git")
(commit commit))) (commit commit)))
(method git-fetch) (method git-fetch)
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0frx1lc0rf6p01m5gjyaazl64f839856qn88v263rdls5rpncmz9")))) (base32 "0frx1lc0rf6p01m5gjyaazl64f839856qn88v263rdls5rpncmz9"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(home-page "https://code.ryuslash.org/ryuslash/eshell-fringe-status") (home-page "https://code.ryuslash.org/eshell-fringe-status")
(synopsis "Show last status in fringe") (synopsis "Show last status in fringe")
(description "Show last status in fringe") (description "Show last status in fringe")
(license license:gpl3+)))) (license license:gpl3+))))
@ -630,15 +630,36 @@ faster and I highly recommend its usage if your Emacs version permits.")
(source (source
(origin (origin
(uri (git-reference (uri (git-reference
(url "https://code.ryuslash.org/ryuslash/yoshi-theme.git") (url "git://code.ryuslash.org/yoshi-theme.git")
(commit commit))) (commit commit)))
(method git-fetch) (method git-fetch)
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0bb5mf194iw72w7zcvs9jmlxx5ngvslx5i6c6rna9bj3y0zm8jlb")))) (base32 "0bb5mf194iw72w7zcvs9jmlxx5ngvslx5i6c6rna9bj3y0zm8jlb"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(home-page "https://code.ryuslash.org/ryuslash/yoshi-theme") (home-page "https://code.ryuslash.org/yoshi-theme")
(synopsis "Emacs theme named after my cat") (synopsis "Emacs theme named after my cat")
(description "My cat is named Yoshi and I was just working on a random new theme, which was (description "My cat is named Yoshi and I was just working on a random new theme, which was
new-theme for a while. I couldn't think of a name so I named it after him.") new-theme for a while. I couldn't think of a name so I named it after him.")
(license license:gpl3+)))) (license license:gpl3+))))
(define-public emacs-fic-mode
(let ((commit "a05fc36ed54ba0c6dc22ac216a6a72cf191ca13d")
(revision "0"))
(package
(name "emacs-fic-mode")
(version (git-version "0.0.0" revision commit))
(source
(origin
(uri (git-reference
(url "https://github.com/lewang/fic-mode.git")
(commit commit)))
(method git-fetch)
(file-name (git-file-name name version))
(sha256
(base32 "074dfwdir2dx5cpbjk1ac8d3hkjkrylivy7agir5mnmzjm3bs9gw"))))
(build-system emacs-build-system)
(home-page "https://github.com/lewang/fic-mode.git")
(synopsis "Add TODO, FIXME, etc highlighting in comments and strings.")
(description "Add TODO, FIXME, etc highlighting in comments and strings.")
(license license:gpl3+))))

View file

@ -5,7 +5,7 @@
#:use-module ((guix licenses) #:prefix license:) #:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages base) #:use-module (gnu packages base)
#:use-module (gnu packages bash) #:use-module (gnu packages bash)
#:use-module (oni packages scsh)) #:use-module (gnu packages shells))
(define-public (inbox-size emacs) (define-public (inbox-size emacs)
(let ((commit "e9a94db05e45be9357ccc757601c1cd890a6254c") (let ((commit "e9a94db05e45be9357ccc757601c1cd890a6254c")
@ -16,7 +16,7 @@
(source (source
(origin (origin
(uri (git-reference (uri (git-reference
(url "https://code.ryuslash.org/ryuslash/inbox-size.git") (url "git://code.ryuslash.org/util/tom/inbox-size.git")
(commit commit))) (commit commit)))
(method git-fetch) (method git-fetch)
(sha256 (sha256

View file

@ -17,7 +17,7 @@
(origin (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
(url "https://code.ryuslash.org/ryuslash/guile-inkplate/") (url "git://code.ryuslash.org/guile-inkplate/")
(commit "27cbc844dee8f9f9b8a0a175f7ebf005cb205046"))) (commit "27cbc844dee8f9f9b8a0a175f7ebf005cb205046")))
(file-name "guile-inkplate-0.1-checkout") (file-name "guile-inkplate-0.1-checkout")
(sha256 (base32 "00qx2d16xma19myq4lla3gnq8rljsqbns53ma5hwamkyvwwyd55s")))) (sha256 (base32 "00qx2d16xma19myq4lla3gnq8rljsqbns53ma5hwamkyvwwyd55s"))))

View file

@ -1,42 +0,0 @@
(define-module (oni packages mpd-notify)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages base)
#:use-module (gnu packages shells)
#:use-module (gnu packages mpd)
#:use-module (gnu packages gnome)
#:use-module (guix build-system gnu)
#:use-module (guix git-download)
#:use-module (guix packages))
(define-public mpd-notify
(let ((commit "1bf3786878eb499b6a0c56e47ba3f3e07cd81182")
(revision "0"))
(package
(name "mpd-notify")
(version (git-version "0.0.0" revision commit))
(source
(origin
(uri (git-reference
(url "https://code.ryuslash.org/ryuslash/mpd-notify.git")
(commit commit)))
(method git-fetch)
(sha256
(base32 "1i72h3mxsifymnmpmrgfqhgrbq9sjhgn1b9d64f164m1m0g0smq3"))
(file-name (git-file-name name version))))
(propagated-inputs
(list mpd-mpc zsh libnotify))
(build-system gnu-build-system)
(arguments
`(#:tests? #f
#:phases
(modify-phases %standard-phases
(delete 'configure)
(delete 'build)
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let ((bin (string-append (assoc-ref outputs "out") "/bin")))
(install-file "mpd-notify" bin)))))))
(home-page "https://ryuslash.org/")
(synopsis "A simple script that notifies you of MPD player state changes.")
(description "Uses `mpc idleloop' to listen to player state changes and sends notifications.")
(license license:gpl3+))))

View file

@ -1,44 +0,0 @@
(define-module (oni packages mpd-random-albums)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages mpd)
#:use-module (guix build-system gnu)
#:use-module (guix git-download)
#:use-module (guix packages)
#:use-module (oni packages scsh))
(define-public mpd-random-albums
(let ((commit "c12a766e1920e726129dfd1161a2ef15471f89e8")
(revision "0"))
(package
(name "mpd-random-albums")
(version (git-version "0.0.0" revision commit))
(source
(origin
(uri (git-reference
(url "git://ryuslash.org/util/tom/mpd-random-albums")
(commit commit)))
(method git-fetch)
(sha256
(base32 "0mgs9377hw3x1nfcah3wwr3zijvzrkqicvgrbcjl3g1p4fmlb8mr"))
(file-name (git-file-name name version))))
(propagated-inputs
(list mpd bash scsh))
(build-system gnu-build-system)
(arguments
`(#:tests? #f
#:phases
(modify-phases %standard-phases
(delete 'configure)
(delete 'build)
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let ((bin (string-append (assoc-ref outputs "out") "/bin"))
(site (string-append (assoc-ref outputs "out") "/share/scsh-0.7")))
(install-file "mpd-random-albums" bin)
(install-file "mpd.scm" site)))))))
(home-page "https://ryuslash.org/")
(synopsis "A simple script that populates the MPD playlist with all of my albums in random order.")
(description "Creates a new playlist in MPD with all of the albums in my database and shuffles them by album.")
(license license:gpl3+))))

106
oni/packages/mpd.scm Normal file
View file

@ -0,0 +1,106 @@
(define-module (oni packages mpd)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages base)
#:use-module (gnu packages shells)
#:use-module (gnu packages bash)
#:use-module (gnu packages mpd)
#:use-module (gnu packages gnome)
#:use-module (guix build-system gnu)
#:use-module (guix build-system python)
#:use-module (guix build-system pyproject)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix packages)
#:use-module (gnu packages python-web)
#:use-module (gnu packages music)
#:use-module (gnu packages check))
(define-public mpd-notify
(let ((commit "1bf3786878eb499b6a0c56e47ba3f3e07cd81182")
(revision "0"))
(package
(name "mpd-notify")
(version (git-version "0.0.0" revision commit))
(source
(origin
(uri (git-reference
(url "git://code.ryuslash.org/util/tom/mpd-notify.git")
(commit commit)))
(method git-fetch)
(sha256
(base32 "1i72h3mxsifymnmpmrgfqhgrbq9sjhgn1b9d64f164m1m0g0smq3"))
(file-name (git-file-name name version))))
(propagated-inputs
(list mpd-mpc zsh libnotify))
(build-system gnu-build-system)
(arguments
`(#:tests? #f
#:phases
(modify-phases %standard-phases
(delete 'configure)
(delete 'build)
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let ((bin (string-append (assoc-ref outputs "out") "/bin")))
(install-file "mpd-notify" bin)))))))
(home-page "https://ryuslash.org/")
(synopsis "A simple script that notifies you of MPD player state changes.")
(description "Uses `mpc idleloop' to listen to player state changes and sends notifications.")
(license license:gpl3+))))
(define-public mpd-random-albums
(let ((commit "c12a766e1920e726129dfd1161a2ef15471f89e8")
(revision "0"))
(package
(name "mpd-random-albums")
(version (git-version "0.0.0" revision commit))
(source
(origin
(uri (git-reference
(url "git://ryuslash.org/util/tom/mpd-random-albums")
(commit commit)))
(method git-fetch)
(sha256
(base32 "0mgs9377hw3x1nfcah3wwr3zijvzrkqicvgrbcjl3g1p4fmlb8mr"))
(file-name (git-file-name name version))))
(propagated-inputs
(list mpd bash scsh))
(build-system gnu-build-system)
(arguments
`(#:tests? #f
#:phases
(modify-phases %standard-phases
(delete 'configure)
(delete 'build)
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let ((bin (string-append (assoc-ref outputs "out") "/bin"))
(site (string-append (assoc-ref outputs "out") "/share/scsh-0.7")))
(install-file "mpd-random-albums" bin)
(install-file "mpd.scm" site)))))))
(home-page "https://ryuslash.org/")
(synopsis "A simple script that populates the MPD playlist with all of my albums in random order.")
(description "Creates a new playlist in MPD with all of the albums in my database and shuffles them by album.")
(license license:gpl3+))))
(define-public mpdscrobble
(let ((commit "c4314b026183a2b38673db898deb98f24dfb3901")
(revision "0"))
(package
(name "python-mpdscrobble")
(version (git-version "0.3.3" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dbeley/mpdscrobble")
(commit commit)))
(sha256
(base32 "1kixss0s182hhl52qrr646zswx0c81si6jxz08jc8sal8y1rm4ql"))))
(build-system pyproject-build-system)
(native-inputs (list python-pytest))
(propagated-inputs (list python-httpx python-pylast python-mpd2))
(home-page "https://github.com/dbeley/mpdscrobble")
(synopsis "A simple Last.fm scrobbler for MPD.")
(description "This package provides a simple Last.fm scrobbler for MPD.")
(license license:expat))))

View file

@ -1,57 +0,0 @@
(define-module (oni packages scsh)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages)
#:use-module (gnu packages autotools)
#:use-module (gnu packages scheme)
#:use-module (guix build-system gnu)
#:use-module (guix git-download)
#:use-module (guix packages))
(define-public scsh
(let ((commit "114432435e4eadd54334df6b37fcae505079b49f")
(revision "1"))
(package
(name "scsh")
(version (string-append "0.0.0-" revision "." (string-take commit 7)))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/scheme/scsh")
(commit commit)))
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
"1ghk08akiz7hff1pndi8rmgamgcrn2mv9asbss9l79d3c2iaav3q"))
(patches (search-patches "scsh-nonstring-search-path.patch"))))
(build-system gnu-build-system)
(arguments
`(#:test-target "test"
#:phases
(modify-phases %standard-phases
(add-before 'configure 'replace-rx
(lambda* (#:key inputs #:allow-other-keys)
(let* ((rx (assoc-ref inputs "scheme48-rx"))
(rxpath (string-append rx "/share/scheme48-"
,(package-version scheme48)
"/rx")))
(delete-file-recursively "rx")
(symlink rxpath "rx"))
#t)))))
(inputs
(list scheme48 scheme48-rx))
(native-inputs
(list autoconf automake))
(native-search-paths
(list (search-path-specification
(variable "SCSH_LIB_DIRS")
(separator " ")
(files '("share/scsh-0.7")))))
(home-page "https://github.com/scheme/scsh")
(synopsis "Unix shell embedded in Scheme")
(description
"Scsh is a Unix shell embedded in Scheme. Scsh has two main
components: a process notation for running programs and setting up pipelines
and redirections, and a complete syscall library for low-level access to the
operating system.")
(license license:bsd-3))))

35
oni/packages/stumpwm.scm Normal file
View file

@ -0,0 +1,35 @@
(define-module (oni packages stumpwm)
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (gnu packages wm)
#:use-module (gnu packages lisp-xyz))
(define-public stumpwm+swank
(package
(inherit stumpwm)
(name "stumpwm-with-swank")
(outputs '("out"))
(inputs
`(("stumpwm" ,stumpwm)
("swank" ,sbcl-slime-swank)))
(arguments
(substitute-keyword-arguments (package-arguments stumpwm)
((#:phases phases)
`(modify-phases ,phases
(replace 'build-program
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(program (string-append out "/bin/stumpwm")))
(setenv "HOME" "/tmp")
(build-program program outputs
#:entry-program '((stumpwm:stumpwm) 0)
#:dependencies '("stumpwm" "swank")
#:dependency-prefixes
(map (lambda (input) (assoc-ref inputs input))
'("stumpwm" "swank")))
#t)))
(delete 'copy-source)
(delete 'build)
(delete 'check)
(delete 'remove-temporary-cache)
(delete 'cleanup)))))))

View file

@ -17,7 +17,7 @@
(source (source
(origin (origin
(uri (git-reference (uri (git-reference
(url "https://code.ryuslash.org/ryuslash/inkplate-display.git") (url "git://code.ryuslash.org/util/tom/inkplate-display.git")
(commit commit))) (commit commit)))
(method git-fetch) (method git-fetch)
(sha256 (sha256

View file

@ -9,7 +9,9 @@ function orgCapture() {
api.addSearchAlias('aw', 'archlinux wiki', 'https://wiki.archlinux.org/index.php?search=%s'); api.addSearchAlias('aw', 'archlinux wiki', 'https://wiki.archlinux.org/index.php?search=%s');
api.removeSearchAlias('e'); api.addSearchAlias('ap', 'archlinux packages', 'https://archlinux.org/packages/?q=%s');
api.addSearchAlias('m', 'melpa', 'https://melpa.org/#/?q=%s');
api.addSearchAlias('e', 'emacswiki', 'https://duckduckgo.com/?q=site%3Aemacswiki.org+%s&atb=v98-1&ia=web');
api.addSearchAlias( api.addSearchAlias(
'w', 'w',
'wikipedia', 'wikipedia',

View file

@ -1,2 +1,8 @@
set default-bg \#222424
set default-fg \#bfbfbf
set recolor
set recolor-lightcolor \#222424
set recolor-darkcolor \#bfbfbf
map n navigate next map n navigate next
map p navigate previous map p navigate previous