summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarc Coquand <marc@mccd.space>2024-10-27 10:04:52 +0200
committerMarc Coquand <marc@mccd.space>2024-10-27 10:04:52 +0200
commit49a21778db28105f0ea01e2e65686de963e954cc (patch)
tree1dcd2ff184e2449e49711445162151bf39ebba8f
parent78c176e81be7cb5c3b27c8e7c0ec33367f953885 (diff)
downloadguix-49a21778db28105f0ea01e2e65686de963e954cc.tar.gz
guix-49a21778db28105f0ea01e2e65686de963e954cc.tar.bz2
guix-49a21778db28105f0ea01e2e65686de963e954cc.zip
.
-rw-r--r--home/bashrc2
-rw-r--r--home/config.scm18
-rw-r--r--home/dots/.emacs4
-rw-r--r--home/dots/.emacs.d/exwm/Xresources1
-rwxr-xr-xhome/dots/.xinitrc16
-rw-r--r--os/config.scm128
6 files changed, 94 insertions, 75 deletions
diff --git a/home/bashrc b/home/bashrc
index c69c164..63cdf66 100644
--- a/home/bashrc
+++ b/home/bashrc
@@ -38,6 +38,6 @@ alias a='pwd'
eval "$(zoxide init posix --hook prompt)"
if [ "$(tty)" = "/dev/tty1" ]; then
- exec startx
+ exec startx
fi
diff --git a/home/config.scm b/home/config.scm
index dd9a6cf..bc8d5fb 100644
--- a/home/config.scm
+++ b/home/config.scm
@@ -35,10 +35,11 @@
#:use-module (gnu packages linux)
#:use-module (gnu packages image)
#:use-module (gnu packages xdisorg)
- #:use-module (nongnu packages mozilla)
#:use-module (gnu packages databases)
- #:use-module (gnu packages compression)
+ #:use-module (gnu packages compression)
#:use-module (gnu system shadow)
+ #:use-module (gnu services xorg)
+ #:use-module (gnu system keyboard)
#:use-module (gnu home services fontutils)
#:use-module (gnu home services dotfiles)
#:use-module (gnu home services gnupg)
@@ -51,7 +52,8 @@
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system go)
- #:use-module (gnu home services pm))
+ #:use-module (gnu home services pm)
+ #:use-module (nongnu packages mozilla))
(define home-config
@@ -73,12 +75,14 @@
unzip
inxi
alsa-utils
-
texinfo
man-db
man-pages
mandoc
+ ;; gsettings
+ (specification->package+output "glib:bin")
+
go
binutils
@@ -106,6 +110,8 @@
xf86-video-fbdev
xf86-video-nouveau
+ adwaita-icon-theme
+
gnupg
age
pinentry
@@ -114,6 +120,7 @@
firefox
xsetroot
+ xhost
scrot
imlib2 ;; Needed for scrot
xset
@@ -130,7 +137,8 @@
(bash-profile (list (local-file "./profile")))
(bashrc (list (local-file "./bashrc")))))
- (service home-startx-command-service-type)
+ (service home-startx-command-service-type
+ (xorg-configuration (keyboard-layout (keyboard-layout "us" "colemak" #:options '("ctrl:nocaps")))))
(service home-xmodmap-service-type
(home-xmodmap-configuration
(key-map '(("remove Lock" . "Caps_Lock")
diff --git a/home/dots/.emacs b/home/dots/.emacs
index 24a5403..462d165 100644
--- a/home/dots/.emacs
+++ b/home/dots/.emacs
@@ -348,8 +348,8 @@
(use-package exwm-mff
:demand t
:load-path "elisp"
- :config
- (exwm-mff-mode))
+ :hook
+ ((server-after-make-frame . exwm-mff-mode)))
(use-package avy
:ensure t
diff --git a/home/dots/.emacs.d/exwm/Xresources b/home/dots/.emacs.d/exwm/Xresources
new file mode 100644
index 0000000..144cd0a
--- /dev/null
+++ b/home/dots/.emacs.d/exwm/Xresources
@@ -0,0 +1 @@
+Xft.dpi: 180 \ No newline at end of file
diff --git a/home/dots/.xinitrc b/home/dots/.xinitrc
index 24ccffb..914bcec 100755
--- a/home/dots/.xinitrc
+++ b/home/dots/.xinitrc
@@ -1,12 +1,18 @@
#!/usr/bin/env sh
+xhost +SI:localuser:$USER
DIR=$HOME/.guix-profile
-$DIR/bin/xinit -- $DIR/bin/Xorg :0 vt1 -keeptty \
- -configdir $DIR/share/X11/xorg.conf.d \
- -modulepath $DIR/lib/xorg/modules
export _JAVA_AWT_WM_NONREPARENTING=1
export VISUAL=emacsclient
export EDITOR="$VISUAL"
+export XDG_DATA_DIRS="/run/current-system/profile/share:$HOME/.guix-profile/share:/run/current-system/profile/share"
+export XDG_CONFIG_DIRS="$HOME/.guix-profile/etc/xdg:/run/current-system/profile/etc/xdg"
+export XDG_CONFIG_HOME="$HOME/.config"
+export XDG_CACHE_HOME="$HOME/.cache"
+export XDG_DATA_HOME="$HOME/.local/share"
+export GDK_DPI_SCALE="1.5"
+export GDK_SCALE="1.5"
+export XCURSOR_SIZE="32"
#autocutsel &
xsetroot -solid '#FFFFFF' &
#ulimit -c 0 &
@@ -16,8 +22,8 @@ gsettings set org.gnome.desktop.interface font-name 'Iosevka Aile' &
gsettings set org.gnome.desktop.interface cursor-size 32 &
gsettings set org.gnome.desktop.interface cursor-theme Adwaita &
# xkbcomp $HOME/.config/keymap_locked_modifier.xkb $DISPLAY &
-setxkbmap -layout us -variant colemak -option "caps:ctrl_modifier" &
+#setxkbmap -layout us -variant colemak -option "caps:ctrl_modifier" &
xsetroot -cursor_name left_ptr &
xset r rate 200 60 &
emacs --daemon --eval "(require 'exwm)" -f exwm-enable
-exec dbus-launch emacsclient -c
+exec dbus-run-session emacsclient -c
diff --git a/os/config.scm b/os/config.scm
index 07db39f..758b25a 100644
--- a/os/config.scm
+++ b/os/config.scm
@@ -10,77 +10,81 @@
;; Indicate which modules to import to access the variables
;; used in this configuration.
(use-modules (gnu)
+ (srfi srfi-1)
(nongnu packages linux)
(nongnu system linux-initrd))
(use-service-modules cups desktop networking ssh xorg nix)
(use-package-modules package-management)
(operating-system
- (kernel linux)
- (initrd microcode-initrd)
- (firmware (list linux-firmware))
- (locale "en_US.utf8")
- (timezone "Asia/Nicosia")
- (keyboard-layout (keyboard-layout "us" "colemak" #:options '("ctrl:nocaps")))
- (host-name "guix")
+ (kernel linux)
+ (initrd microcode-initrd)
+ (firmware (list linux-firmware))
+ (locale "en_US.utf8")
+ (timezone "Asia/Nicosia")
+ (keyboard-layout (keyboard-layout "us" "colemak" #:options '("ctrl:nocaps")))
+ (host-name "guix")
- ;; The list of user accounts ('root' is implicit).
- (users (cons* (user-account
- (name "mccd")
- (comment "Marc")
- (group "users")
- (home-directory "/home/mccd")
- (supplementary-groups '("wheel" "netdev" "audio" "video")))
- %base-user-accounts))
+ ;; The list of user accounts ('root' is implicit).
+ (users (cons* (user-account
+ (name "mccd")
+ (comment "Marc")
+ (group "users")
+ (home-directory "/home/mccd")
+ (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 (list (specification->package "emacs")
- (specification->package "emacs-exwm")
- (specification->package "nix")
- (specification->package "xf86-input-libinput")
- (specification->package "xf86-video-fbdev")
- (specification->package "xf86-video-nouveau")
- (specification->package "guile")
- (specification->package "texinfo")
- (specification->package "man-db")
- (specification->package "man-pages")
- (specification->package "mandoc")
- (specification->package
- "emacs-desktop-environment")) %base-packages))
+ ;; 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 (list (specification->package "emacs")
+ (specification->package "emacs-exwm")
+ (specification->package "nix")
+ (specification->package "xf86-input-libinput")
+ (specification->package "xf86-video-fbdev")
+ (specification->package "xf86-video-nouveau")
+ (specification->package "guile")
+ (specification->package "texinfo")
+ (specification->package "man-db")
+ (specification->package "man-pages")
+ (specification->package "adwaita-icon-theme")
+ (specification->package "gsettings-desktop-schemas")
+ (specification->package "mandoc")
+ (specification->package
+ "emacs-desktop-environment")) %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 cups-service-type)
- (service nix-service-type)
- (simple-service 'block-distracting-sites
- hosts-service-type
- (list
- (host "127.0.0.1" "omni.se"
- '("omni.se" "omni.se"))
- (host "127.0.0.1" "svt.se"
- '("svt.se" "svt.se"))
- (host "127.0.0.1" "reddit.com/r/sweden"
- '("reddit.com/r/sweden" "reddit.com/r/sweden"))
- (host "127.0.0.1" "reddit.com/r/decodingthegurus"
- '("reddit.com/r/decodingthegurus" "reddit.com/r/decodingthegurus"))
- (host "127.0.0.1" "news.ycombinator.com"
- '("news.ycombinator.com" "news.ycombinator.com"))
- (host "127.0.0.1" "lobste.rs"
- '("lobste.rs" "lobste.rs"))))
- (set-xorg-configuration
- (xorg-configuration (keyboard-layout keyboard-layout))))
- (modify-services %desktop-services
- (guix-service-type config => (guix-configuration
- (inherit config)
- (substitute-urls
- (append (list "https://substitutes.nonguix.org")
- %default-substitute-urls))
- (authorized-keys
- (append (list (local-file "./signing-key.pub"))
- %default-authorized-guix-keys)))))))
+ ;; Below is the list of system services. To search for available
+ ;; services, run 'guix system search KEYWORD' in a terminal.
+ (services
+ (append (list (service cups-service-type)
+ (service nix-service-type)
+ (service startx-command-service-type
+ (xorg-configuration (keyboard-layout keyboard-layout)))
+ (simple-service 'block-distracting-sites
+ hosts-service-type
+ (list
+ (host "127.0.0.1" "omni.se"
+ '("omni.se" "omni.se"))
+ (host "127.0.0.1" "svt.se"
+ '("svt.se" "svt.se"))
+ (host "127.0.0.1" "reddit.com/r/sweden"
+ '("reddit.com/r/sweden" "reddit.com/r/sweden"))
+ (host "127.0.0.1" "reddit.com/r/decodingthegurus"
+ '("reddit.com/r/decodingthegurus" "reddit.com/r/decodingthegurus"))
+ (host "127.0.0.1" "news.ycombinator.com"
+ '("news.ycombinator.com" "news.ycombinator.com"))
+ (host "127.0.0.1" "lobste.rs"
+ '("lobste.rs" "lobste.rs")))))
+ (modify-services %desktop-services
+ (delete gdm-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 (local-file "./signing-key.pub"))
+ %default-authorized-guix-keys)))))))
(bootloader (bootloader-configuration
(bootloader grub-efi-bootloader)