GUIX novosti (home, shell)
parent
bf012bcda9
commit
79430b7133
|
@ -0,0 +1,69 @@
|
||||||
|
. /etc/profile
|
||||||
|
|
||||||
|
# <3 default editor (za manjse urejanje)
|
||||||
|
export EDITOR="vim"
|
||||||
|
export VISUAL="vim"
|
||||||
|
|
||||||
|
# Nek Java fix?
|
||||||
|
export NLS_LANG=American_America.UTF8
|
||||||
|
|
||||||
|
# Guile Zadeve
|
||||||
|
export GUILE_WARN_DEPRECATED="detailed"
|
||||||
|
|
||||||
|
# PhantomJS binary location
|
||||||
|
export PHANTOMJS_BIN=/usr/bin/phantomjs
|
||||||
|
|
||||||
|
# emacspeak speech server
|
||||||
|
export DTK_PROGRAM=espeak
|
||||||
|
|
||||||
|
# Rust paketi
|
||||||
|
export PATH="$HOME/.local/bin:$HOME/.cargo/bin:$PATH"
|
||||||
|
|
||||||
|
# User bin
|
||||||
|
export PATH="$HOME/bin:$PATH"
|
||||||
|
|
||||||
|
# Firefox webrender
|
||||||
|
export MOZ_WEBRENDER=1
|
||||||
|
|
||||||
|
# Wayland pls!
|
||||||
|
export KITTY_ENABLE_WAYLAND=1
|
||||||
|
export MOZ_ENABLE_WAYLAND=1
|
||||||
|
#export XDG_SESSION_TYPE=wayland
|
||||||
|
|
||||||
|
# Tole bojda ni dobra ideja (pravi wiki!)
|
||||||
|
#export GDK_BACKEND=wayland
|
||||||
|
|
||||||
|
# QT nastavitve
|
||||||
|
#export QT_QPA_PLATFORMTHEME="qt5ct"
|
||||||
|
# GTK izgled: sudo apt install qt5-style-plugins
|
||||||
|
export QT_QPA_PLATFORMTHEME=gtk
|
||||||
|
export QT_FONT_DPI=95
|
||||||
|
|
||||||
|
export _JAVA_OPTIONS="-Dawt.useSystemAAFontSettings=lcd -Dswing.defaultlaf=com.sun.java.swing.plaf.gtk.GTKLookAndFeel $_JAVA_OPTIONS"
|
||||||
|
export JAVA_FONTS="/usr/share/fonts/TTF"
|
||||||
|
#export QT_QPA_PLATFORM=wayland-egl
|
||||||
|
export QT_WAYLAND_FORCE_DPI=physical
|
||||||
|
export QT_WAYLAND_DISABLE_WINDOWDECORATION=1
|
||||||
|
export _JAVA_AWT_WM_NONREPARENTING=1
|
||||||
|
|
||||||
|
# Guile
|
||||||
|
export GUILE_LOAD_COMPILED_PATH="/usr/local/lib/guile/3.0/ccache:/usr/local/lib/guile/3.0/site-ccache"
|
||||||
|
export GUILE_SITE_DIR="$HOME/.local/guile/site_dir"
|
||||||
|
|
||||||
|
# (FULL)Screen share
|
||||||
|
export XDG_CURRENT_DESKTOP=sway
|
||||||
|
|
||||||
|
# Guix
|
||||||
|
#export GUIX_PACKAGE_PATH="$HOME/projekti/guix-paketi # guix channel!
|
||||||
|
#export GUIX_LOCPATH="$HOME/.guix-profile/lib/locale"
|
||||||
|
#export GUIX_PROFILE="$HOME/.guix-profile"
|
||||||
|
#export XDG_DATA_DIRS="/usr/local/share:/usr/share:$XDG_DATA_DIRS"
|
||||||
|
#export XDG_DATA_DIRS="${GUIX_PROFILE}/share${XDG_DATA_DIRS:+:}$XDG_DATA_DIRS"
|
||||||
|
#export PATH="$HOME/.config/guix/current/bin:$PATH"
|
||||||
|
#. "$GUIX_PROFILE/etc/profile"
|
||||||
|
|
||||||
|
# Loadamo sway na tty1!
|
||||||
|
# If running from tty1 start sway
|
||||||
|
#if [ "$(tty)" = "/dev/tty1" ]; then
|
||||||
|
# QT_QPA_PLATFORM=wayland-egl SDL_VIDEODRIVER=wayland exec sway
|
||||||
|
#fi
|
|
@ -0,0 +1,97 @@
|
||||||
|
;; -*- mode: scheme; -*-
|
||||||
|
;; This is an operating system configuration template
|
||||||
|
;; for a "desktop" setup with GNOME and Xfce.
|
||||||
|
|
||||||
|
(use-modules (gnu)
|
||||||
|
(gnu system nss)
|
||||||
|
(guix utils)
|
||||||
|
(nongnu packages linux)
|
||||||
|
(nongnu system linux-initrd)
|
||||||
|
(srfi srfi-1))
|
||||||
|
(use-service-modules desktop xorg dns networking)
|
||||||
|
(use-package-modules bootloaders certs shells ssh version-control emacs vim wm freedesktop xorg fontutils)
|
||||||
|
|
||||||
|
(operating-system
|
||||||
|
(host-name "apnx")
|
||||||
|
(timezone "Europe/Ljubljana")
|
||||||
|
(locale "sl_SI.utf8")
|
||||||
|
|
||||||
|
;; Use the UEFI variant of GRUB with the EFI System
|
||||||
|
;; Partition mounted on /boot/efi.
|
||||||
|
(bootloader (bootloader-configuration
|
||||||
|
(bootloader grub-efi-bootloader)
|
||||||
|
(targets '("/boot/efi"))))
|
||||||
|
|
||||||
|
(kernel linux)
|
||||||
|
(initrd microcode-initrd)
|
||||||
|
(firmware (list linux-firmware))
|
||||||
|
|
||||||
|
(file-systems (cons* (file-system
|
||||||
|
(device "/dev/sda3")
|
||||||
|
(mount-point "/")
|
||||||
|
(type "btrfs")
|
||||||
|
(options "compress"))
|
||||||
|
(file-system
|
||||||
|
(device "/dev/sda2")
|
||||||
|
(mount-point "/boot/efi")
|
||||||
|
(type "vfat"))
|
||||||
|
%base-file-systems))
|
||||||
|
|
||||||
|
(swap-devices
|
||||||
|
(list (swap-space (target "/swapfile"))))
|
||||||
|
|
||||||
|
(users (cons* (user-account
|
||||||
|
(name "g1smo")
|
||||||
|
(comment "Yuri")
|
||||||
|
(group "users")
|
||||||
|
(supplementary-groups '("wheel" "netdev"
|
||||||
|
"audio" "video" "dialout"))
|
||||||
|
(shell (file-append zsh "/bin/zsh"))
|
||||||
|
(home-directory "/home/g1smo"))
|
||||||
|
(user-account
|
||||||
|
(name "bask")
|
||||||
|
(comment "Balkan Anarchist Bookfair")
|
||||||
|
(group "users")
|
||||||
|
(supplementary-groups '("wheel" "netdev"
|
||||||
|
"audio" "video" "dialout"))
|
||||||
|
(home-directory "/home/bask"))
|
||||||
|
%base-user-accounts))
|
||||||
|
|
||||||
|
;; This is where we specify system-wide packages.
|
||||||
|
(packages (cons* nss-certs ;for HTTPS access
|
||||||
|
zsh ;Z shell
|
||||||
|
openssh
|
||||||
|
git
|
||||||
|
emacs
|
||||||
|
vim
|
||||||
|
bspwm
|
||||||
|
libinput
|
||||||
|
xf86-input-libinput
|
||||||
|
freetype
|
||||||
|
%base-packages))
|
||||||
|
|
||||||
|
;; Add GNOME and/or Xfce---we can choose at the log-in
|
||||||
|
;; screen with F1. Use the "desktop" services, which
|
||||||
|
;; include the X11 log-in service, networking with Wicd,
|
||||||
|
;; and more.
|
||||||
|
|
||||||
|
(services (cons* (service xfce-desktop-service-type)
|
||||||
|
(service gnome-desktop-service-type)
|
||||||
|
(service dnsmasq-service-type
|
||||||
|
(dnsmasq-configuration
|
||||||
|
(cache-size 1500)))
|
||||||
|
(service network-manager-service-type
|
||||||
|
(network-manager-configuration
|
||||||
|
(dns "dnsmasq")))
|
||||||
|
(service pam-limits-service-type
|
||||||
|
(list
|
||||||
|
(pam-limits-entry "@audio" 'both 'rtprio 99)
|
||||||
|
(pam-limits-entry "@audio" 'both 'memlock 'unlimited)))
|
||||||
|
|
||||||
|
(remove
|
||||||
|
(lambda (service)
|
||||||
|
(eq? network-manager-service-type (service-kind service)))
|
||||||
|
%desktop-services)))
|
||||||
|
|
||||||
|
;; Allow resolution of '.local' host names with mDNS.
|
||||||
|
(name-service-switch %mdns-host-lookup-nss))
|
|
@ -0,0 +1,125 @@
|
||||||
|
;; This "home-environment" file can be passed to 'guix home reconfigure'
|
||||||
|
;; to reproduce the content of your profile. This is "symbolic": it only
|
||||||
|
;; specifies package names. To reproduce the exact same profile, you also
|
||||||
|
;; need to capture the channels being used, as returned by "guix describe".
|
||||||
|
;; See the "Replicating Guix" section in the manual.
|
||||||
|
|
||||||
|
(use-modules (gnu home)
|
||||||
|
(gnu packages)
|
||||||
|
(gnu packages xdisorg)
|
||||||
|
(gnu services)
|
||||||
|
(guix gexp)
|
||||||
|
(gnu home services shells)
|
||||||
|
(gnu home services desktop)
|
||||||
|
(gnu home services pm)
|
||||||
|
(gnu home services sound))
|
||||||
|
|
||||||
|
(home-environment
|
||||||
|
;; Below is the list of packages that will show up in your
|
||||||
|
;; Home profile, under ~/.guix-home/profile.
|
||||||
|
(packages (specifications->packages (list "htop"
|
||||||
|
"emacs-pgtk"
|
||||||
|
"binutils"
|
||||||
|
"gcc-toolchain@11"
|
||||||
|
"icecat-l10n:sl"
|
||||||
|
"icecat"
|
||||||
|
"crawl-tiles"
|
||||||
|
"acpi"
|
||||||
|
"zynaddsubfx"
|
||||||
|
"gnome-tweaks"
|
||||||
|
"gimp"
|
||||||
|
"supercollider"
|
||||||
|
"ardour"
|
||||||
|
"slurp"
|
||||||
|
"wireplumber"
|
||||||
|
"pipewire"
|
||||||
|
"qjackctl"
|
||||||
|
"mplayer"
|
||||||
|
"ffmpeg"
|
||||||
|
"libcaca"
|
||||||
|
"kigo"
|
||||||
|
"lierolibre"
|
||||||
|
"transmission:gui"
|
||||||
|
"wine64"
|
||||||
|
"wine"
|
||||||
|
"audacity"
|
||||||
|
"numix-gtk-theme"
|
||||||
|
"nextcloud-client"
|
||||||
|
"nyxt"
|
||||||
|
"icedove-wayland"
|
||||||
|
"ungoogled-chromium-wayland"
|
||||||
|
"keepassxc"
|
||||||
|
"libappindicator"
|
||||||
|
"snixembed"
|
||||||
|
"vlc"
|
||||||
|
"qpwgraph"
|
||||||
|
"pamixer"
|
||||||
|
"element-desktop"
|
||||||
|
"pavucontrol"
|
||||||
|
"libreoffice"
|
||||||
|
"mako"
|
||||||
|
"alacritty"
|
||||||
|
"redshift-wayland"
|
||||||
|
"i3status"
|
||||||
|
"rofi-wayland"
|
||||||
|
"sway"
|
||||||
|
"wev"
|
||||||
|
"grim"
|
||||||
|
"xjackfreak"
|
||||||
|
"ncdu"
|
||||||
|
"bind:utils"
|
||||||
|
"python-i3ipc"
|
||||||
|
"python"
|
||||||
|
"screen"
|
||||||
|
"bibata-cursor-theme"
|
||||||
|
"ripgrep"
|
||||||
|
"brightnessctl"
|
||||||
|
"foot"
|
||||||
|
"jack"
|
||||||
|
"amb-plugins"
|
||||||
|
"fil-plugins"
|
||||||
|
"gnugo"
|
||||||
|
"bsd-games"
|
||||||
|
"file"
|
||||||
|
"nmap"
|
||||||
|
"font-fira-code"
|
||||||
|
"font-awesome"
|
||||||
|
"unzip"
|
||||||
|
"zsh"
|
||||||
|
"curl")))
|
||||||
|
|
||||||
|
;; Below is the list of Home services. To search for available
|
||||||
|
;; services, run 'guix home search KEYWORD' in a terminal.
|
||||||
|
(services
|
||||||
|
(list (service home-zsh-service-type
|
||||||
|
(home-zsh-configuration
|
||||||
|
(zshrc (list (local-file
|
||||||
|
"/home/g1smo/sredstva/dotfiles/.zshrc"
|
||||||
|
"zshrc")))
|
||||||
|
(zprofile (list (local-file
|
||||||
|
"/home/g1smo/sredstva/dotfiles/.profile"
|
||||||
|
"profile")))))
|
||||||
|
|
||||||
|
;; Skrij misko po 4 sekundah ne-premikanja
|
||||||
|
(service home-unclutter-service-type
|
||||||
|
(home-unclutter-configuration
|
||||||
|
(idle-timeout 2)))
|
||||||
|
|
||||||
|
;; Rdecenje zaslona @TODO se ne dela :(
|
||||||
|
(service home-redshift-service-type
|
||||||
|
(home-redshift-configuration
|
||||||
|
(redshift redshift-wayland)
|
||||||
|
(adjustment-method 'wayland)
|
||||||
|
(location-provider 'manual)
|
||||||
|
(latitude 46.05108)
|
||||||
|
(longitude 14.50513)))
|
||||||
|
|
||||||
|
|
||||||
|
;; Pipewire zvok!
|
||||||
|
;; Dbus je odvisen paket
|
||||||
|
(service home-dbus-service-type)
|
||||||
|
(service home-pipewire-service-type)
|
||||||
|
|
||||||
|
;; Indikator nizke baterije
|
||||||
|
(service home-batsignal-service-type)
|
||||||
|
)))
|
|
@ -1,75 +0,0 @@
|
||||||
(define-module (home services mako)
|
|
||||||
#:use-module (ice-9 match)
|
|
||||||
#:use-module (gnu home services)
|
|
||||||
#:use-module (gnu services configuration)
|
|
||||||
#:use-module (guix packages)
|
|
||||||
#:use-module (guix gexp)
|
|
||||||
#:use-module (gnu packages wm)
|
|
||||||
#:use-module (guix import utils)
|
|
||||||
#:use-module ((gnu home-services-utils) #:select (maybe-object->string))
|
|
||||||
#:export (home-mako-service-type
|
|
||||||
home-mako-configuration))
|
|
||||||
|
|
||||||
(define-configuration/no-serialization home-mako-configuration
|
|
||||||
(package
|
|
||||||
(package mako)
|
|
||||||
"mako package to use")
|
|
||||||
(config
|
|
||||||
(alist '())
|
|
||||||
""))
|
|
||||||
|
|
||||||
(define (serialize-mako-config config)
|
|
||||||
(define* (serialize-criteria criteria #:optional (res '()))
|
|
||||||
(match criteria
|
|
||||||
((field value)
|
|
||||||
(format #f "[~a]\n"
|
|
||||||
(string-join
|
|
||||||
(cons (format #f "~a=\"~a\"" field value) res))))
|
|
||||||
((field value . rest)
|
|
||||||
(serialize-criteria
|
|
||||||
rest
|
|
||||||
(cons (format #f "~a=\"~a\"" field value) res)))))
|
|
||||||
|
|
||||||
(define (serialize-key key)
|
|
||||||
(if (list? key)
|
|
||||||
(serialize-criteria key)
|
|
||||||
(string-append (maybe-object->string key) "=")))
|
|
||||||
|
|
||||||
(define (serialize-val val)
|
|
||||||
(cond
|
|
||||||
((or (number? val) (symbol? val)) (maybe-object->string val))
|
|
||||||
((list? val) (serialize-mako-config val))
|
|
||||||
(else val)))
|
|
||||||
|
|
||||||
(define (serialize-field key val)
|
|
||||||
(let ((val (serialize-val val))
|
|
||||||
(key (serialize-key key)))
|
|
||||||
(list key val)))
|
|
||||||
|
|
||||||
(generic-serialize-alist
|
|
||||||
(lambda args (flatten (interpose args)))
|
|
||||||
serialize-field
|
|
||||||
config))
|
|
||||||
|
|
||||||
(define (add-mako-configuration config)
|
|
||||||
(let ((cfg (home-mako-configuration-config config)))
|
|
||||||
`(("mako/config"
|
|
||||||
,(apply mixed-text-file
|
|
||||||
"config"
|
|
||||||
(serialize-mako-config cfg))))))
|
|
||||||
|
|
||||||
(define add-mako-package
|
|
||||||
(compose list home-mako-configuration-package))
|
|
||||||
|
|
||||||
(define home-mako-service-type
|
|
||||||
(service-type
|
|
||||||
(name 'home-mako)
|
|
||||||
(extensions
|
|
||||||
(list (service-extension
|
|
||||||
home-xdg-configuration-files-service-type
|
|
||||||
add-mako-configuration)
|
|
||||||
(service-extension
|
|
||||||
home-profile-service-type
|
|
||||||
add-mako-package)))
|
|
||||||
(default-value (home-mako-configuration))
|
|
||||||
(description "")))
|
|
|
@ -1,87 +0,0 @@
|
||||||
(define-module (home services pipewire)
|
|
||||||
#:use-module (guix gexp)
|
|
||||||
|
|
||||||
#:use-module (gnu packages linux)
|
|
||||||
#:use-module (gnu packages pulseaudio)
|
|
||||||
|
|
||||||
#:use-module (gnu home services)
|
|
||||||
#:use-module (gnu home services shepherd))
|
|
||||||
|
|
||||||
(define (home-pipewire-files-service _)
|
|
||||||
`(("alsa/asoundrc"
|
|
||||||
,(mixed-text-file
|
|
||||||
"asoundrc"
|
|
||||||
#~(string-append
|
|
||||||
"<"
|
|
||||||
#$(file-append
|
|
||||||
pipewire
|
|
||||||
"/share/alsa/alsa.conf.d/50-pipewire.conf")
|
|
||||||
">\n<"
|
|
||||||
#$(file-append
|
|
||||||
pipewire
|
|
||||||
"/share/alsa/alsa.conf.d/99-pipewire-default.conf")
|
|
||||||
">\n"
|
|
||||||
"
|
|
||||||
pcm_type.pipewire {
|
|
||||||
lib " #$(file-append
|
|
||||||
pipewire
|
|
||||||
"/lib/alsa-lib/libasound_module_pcm_pipewire.so") "
|
|
||||||
}
|
|
||||||
|
|
||||||
ctl_type.pipewire {
|
|
||||||
lib " #$(file-append
|
|
||||||
pipewire
|
|
||||||
"/lib/alsa-lib/libasound_module_ctl_pipewire.so") "
|
|
||||||
}
|
|
||||||
")))))
|
|
||||||
|
|
||||||
(define (home-pipewire-shepherd-service _)
|
|
||||||
(list
|
|
||||||
(shepherd-service
|
|
||||||
(requirement '(dbus))
|
|
||||||
(provision '(pipewire))
|
|
||||||
(stop #~(make-kill-destructor))
|
|
||||||
(start #~(make-forkexec-constructor
|
|
||||||
(list #$(file-append pipewire "/bin/pipewire")))))
|
|
||||||
(shepherd-service
|
|
||||||
(requirement '(pipewire))
|
|
||||||
(provision '(wireplumber))
|
|
||||||
(stop #~(make-kill-destructor))
|
|
||||||
(start #~(make-forkexec-constructor
|
|
||||||
(list #$(file-append wireplumber "/bin/wireplumber")))))
|
|
||||||
#;
|
|
||||||
(shepherd-service
|
|
||||||
(requirement '(pipewire))
|
|
||||||
(provision '(pipewire-media-session))
|
|
||||||
(stop #~(make-kill-destructor))
|
|
||||||
(start #~(make-forkexec-constructor
|
|
||||||
(list
|
|
||||||
#$(file-append
|
|
||||||
pipewire-media-session
|
|
||||||
"/bin/pipewire-media-session")
|
|
||||||
"-c"
|
|
||||||
#$(file-append
|
|
||||||
pipewire-media-session
|
|
||||||
"/share/pipewire/media-session.d/media-session.conf")))))
|
|
||||||
(shepherd-service
|
|
||||||
(requirement '(pipewire))
|
|
||||||
(provision '(pipewire-pulse))
|
|
||||||
(stop #~(make-kill-destructor))
|
|
||||||
(start #~(make-forkexec-constructor
|
|
||||||
(list #$(file-append pipewire "/bin/pipewire-pulse")))))))
|
|
||||||
|
|
||||||
(define-public home-pipewire-service-type
|
|
||||||
(service-type
|
|
||||||
(name 'home-pipewire)
|
|
||||||
(extensions
|
|
||||||
(list (service-extension
|
|
||||||
home-xdg-configuration-files-service-type
|
|
||||||
home-pipewire-files-service)
|
|
||||||
(service-extension
|
|
||||||
home-shepherd-service-type
|
|
||||||
home-pipewire-shepherd-service)
|
|
||||||
(service-extension
|
|
||||||
home-profile-service-type
|
|
||||||
(const (list pipewire pulseaudio)))))
|
|
||||||
(default-value #f)
|
|
||||||
(description "run pipewire and stuff")))
|
|
|
@ -43,6 +43,10 @@ ln -s "$DIR/.config/compton.conf" ~/.config/compton.conf
|
||||||
# redshift (pordeci skrin, X)
|
# redshift (pordeci skrin, X)
|
||||||
ln -s "$DIR/.config/redshift" ~/.config/redshift
|
ln -s "$DIR/.config/redshift" ~/.config/redshift
|
||||||
|
|
||||||
|
# guix (channel z lokalnimi paketi
|
||||||
|
mkdir ~/.config/guix
|
||||||
|
ln -s $DIR/.config/guix/channels.scm ~/.config/guix/channels.scm
|
||||||
|
|
||||||
# i3 block, bolj fensi statusbar (ne uporabljam vec)
|
# i3 block, bolj fensi statusbar (ne uporabljam vec)
|
||||||
ln -s "$DIR/.i3blocks.conf" ~/.i3blocks.conf
|
ln -s "$DIR/.i3blocks.conf" ~/.i3blocks.conf
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue