diff options
-rw-r--r-- | packages/plasma.scm | 246 | ||||
-rw-r--r-- | suweren/home.scm | 21 | ||||
-rw-r--r-- | suweren/home/bash-profile | 2 | ||||
-rw-r--r-- | suweren/home/bashrc | 31 | ||||
-rw-r--r-- | suweren/home/services.scm | 11 | ||||
-rw-r--r-- | suweren/services.scm | 2 | ||||
-rw-r--r-- | suweren/services/sound.scm | 6 |
7 files changed, 252 insertions, 67 deletions
diff --git a/packages/plasma.scm b/packages/plasma.scm index a0efcc5..d7b042d 100644 --- a/packages/plasma.scm +++ b/packages/plasma.scm @@ -1,81 +1,193 @@ (define-module (packages plasma) + #:use-module (gnu packages fontutils) #:use-module (gnu packages freedesktop) + #:use-module (gnu packages glib) + #:use-module (gnu packages ibus) + #:use-module (gnu packages kde) #:use-module (gnu packages kde-frameworks) #:use-module (gnu packages kde-pim) #:use-module (gnu packages kde-plasma) + #:use-module (gnu packages maths) + #:use-module (gnu packages multiprecision) + #:use-module (gnu packages libcanberra) + #:use-module (gnu packages linux) + #:use-module (gnu packages pulseaudio) + #:use-module (gnu packages qt) + #:use-module (gnu packages xdisorg) + #:use-module (gnu packages xorg) #:use-module (guix packages)) (define-public plasma* - (package (inherit plasma) - (propagated-inputs (list kdeclarative ;; require by sddm breeze theme - qqc2-desktop-style ; qtquickcontrols2 theme - baloo - breeze-icons ; default mouse icon - breeze - breeze-gtk - drkonqi - kactivitymanagerd ; require this run dbus - kde-cli-tools - kdecoration - kded - kdeplasma-addons - kgamma - kgpg - khotkeys - ktexteditor + (let* ((inputs-1 (list packagekit-qt5 + signon-plugin-oauth2 + signond + attica + appstream-qt + baloo + breeze + breeze-icons + eudev + fontconfig + glib + ibus + kaccounts-integration + kactivities + kactivities-stats + kauth + karchive + kcmutils + kconfig + kcoreaddons + kcrash + kdbusaddons + kdeclarative + kded + kdesu + kdelibs4support + kglobalaccel + kguiaddons + kholidays + ki18n + kiconthemes + kidletime + kinit + kio + kitemmodels + knewstuff + knotifications + knotifyconfig + kpackage + kpeople + krunner + kscreenlocker + ktexteditor + ktextwidgets + kunitconversion + kuserfeedback + kwallet + kwayland + kwin + layer-shell-qt + libaccounts-qt + libcanberra + libkscreen + libksysguard + libqalculate + gmp + mpfr + libsm + libxi + libxft + libxkbcommon + libxrender + libxtst + networkmanager-qt + phonon + pipewire + plasma-framework + plasma-wayland-protocols + prison + qqc2-desktop-style + qtbase-5 + qtdeclarative-5 + qtquickcontrols-5 + qtquickcontrols2-5 + qtwayland-5 + qtx11extras + wayland + wayland-protocols + xcb-util + xcb-util-image + xcb-util-keysyms + xdg-user-dirs - kscreen - libkscreen + ;; These are needed for Xserver + xf86-input-libinput + xf86-input-evdev + xorg-server + xf86-input-synaptics + xkeyboard-config + libxkbfile + libxcursor + libxkbcommon)) + (inputs-2 (list libcanberra + plasma-framework + pipewire + pulseaudio)) + (plasma-desktop* (package (inherit plasma-desktop) + (inputs inputs-1))) + (plasma-pa* (package (inherit plasma-pa) + (propagated-inputs inputs-2)))) + (package (inherit plasma) + (propagated-inputs (list kdeclarative ;; require by sddm breeze theme + qqc2-desktop-style ; qtquickcontrols2 theme + baloo + breeze-icons ; default mouse icon + breeze + breeze-gtk + drkonqi + kactivitymanagerd ; require this run dbus + kde-cli-tools + kdecoration + kded + kdeplasma-addons + kgamma + kgpg + khotkeys + ktexteditor - ksystemstats - kwallet - kwallet-pam - kwin - kinit + kscreen + libkscreen - libksysguard - milou - ;; oxygen - oxygen-sounds + ksystemstats + kwallet + kwallet-pam + kwin + kinit - kde-gtk-config - kdesu - krunner - kinfocenter - kscreenlocker - ksshaskpass - discover - kmenuedit - plasma-welcome - plasma-browser-integration - plasma-desktop - plasma-disks - polkit-kde-agent - system-settings - xdg-desktop-portal-kde - ;; module cyclic referencing - (module-ref - (resolve-interface - '(gnu packages kde-systemtools)) - 'dolphin) - (module-ref - (resolve-interface - '(gnu packages kde-systemtools)) - 'konsole) - (module-ref - (resolve-interface - '(gnu packages kde-systemtools)) - 'spectacle) + libksysguard + milou + ;; oxygen + oxygen-sounds - kwayland-integration - plasma-firewall - plasma-integration - plasma-nm - plasma-pa - plasma-systemmonitor - ;; plasma-thunderbolt ;; waiting for bolt + kde-gtk-config + kdesu + krunner + kinfocenter + kscreenlocker + ksshaskpass + discover + kmenuedit + plasma-welcome + plasma-browser-integration + plasma-desktop + plasma-disks + polkit-kde-agent + system-settings + xdg-desktop-portal-kde + ;; module cyclic referencing + (module-ref + (resolve-interface + '(gnu packages kde-systemtools)) + 'dolphin) + (module-ref + (resolve-interface + '(gnu packages kde-systemtools)) + 'konsole) + (module-ref + (resolve-interface + '(gnu packages kde-systemtools)) + 'spectacle) - kglobalaccel - plasma-vault - plasma-workspace - powerdevil)))) + kwayland-integration + plasma-firewall + plasma-integration + plasma-nm + plasma-pa + plasma-systemmonitor + ;; plasma-thunderbolt ;; waiting for bolt + + kglobalaccel + plasma-vault + plasma-workspace + powerdevil))))) diff --git a/suweren/home.scm b/suweren/home.scm new file mode 100644 index 0000000..fb3905c --- /dev/null +++ b/suweren/home.scm @@ -0,0 +1,21 @@ +(define-module (suweren home) + #:use-module (gnu home) + #:use-module (gnu home services desktop) + #:use-module (gnu home services shells) + #:use-module (gnu home services shepherd) + #:use-module (gnu home services sound) + #:use-module (gnu services) + #:use-module (suweren home services) + #:use-module (suweren services sound)) + +(define-public %home-environment + (let* ((bash (service home-bash-service-type + bash-configuration)) + (dbus (service home-dbus-service-type)) + (pipewire (service home-pipewire-service-type)) + (shepherd (service home-shepherd-service-type)) + (services (list bash + dbus + pipewire + shepherd))) + (home-environment (services services)))) diff --git a/suweren/home/bash-profile b/suweren/home/bash-profile new file mode 100644 index 0000000..37ea25c --- /dev/null +++ b/suweren/home/bash-profile @@ -0,0 +1,2 @@ +# Honor per-interactive-shell startup file +if [ -f ~/.bashrc ]; then . ~/.bashrc; fi diff --git a/suweren/home/bashrc b/suweren/home/bashrc new file mode 100644 index 0000000..10589f4 --- /dev/null +++ b/suweren/home/bashrc @@ -0,0 +1,31 @@ +# Bash initialization for interactive non-login shells and +# for remote shells (info "(bash) Bash Startup Files"). + +# Export 'SHELL' to child processes. Programs such as 'screen' +# honor it and otherwise use /bin/sh. +export SHELL + +if [[ $- != *i* ]] +then + # We are being invoked from a non-interactive shell. If this + # is an SSH session (as in "ssh host command"), source + # /etc/profile so we get PATH and other essential variables. + [[ -n "$SSH_CLIENT" ]] && source /etc/profile + + # Don't do anything else. + return +fi + +# Source the system-wide file. +source /etc/bashrc + +# Adjust the prompt depending on whether we're in 'guix environment'. +if [ -n "$GUIX_ENVIRONMENT" ] +then + PS1='\u@\h \w [env]\$ ' +else + PS1='\u@\h \w\$ ' +fi +alias ls='ls -p --color=auto' +alias ll='ls -l' +alias grep='grep --color=auto' diff --git a/suweren/home/services.scm b/suweren/home/services.scm new file mode 100644 index 0000000..b765820 --- /dev/null +++ b/suweren/home/services.scm @@ -0,0 +1,11 @@ +(define-module (suweren home services) + #:use-module (gnu home services shells) + #:use-module (guix gexp)) + +(define-public bash-configuration + (let ((bashrc (list (local-file "bashrc" + "bashrc"))) + (bash-profile (list (local-file "bash-profile" + "bash-profile")))) + (home-bash-configuration (bashrc bashrc) + (bash-profile bash-profile)))) diff --git a/suweren/services.scm b/suweren/services.scm index 1cd2467..9674808 100644 --- a/suweren/services.scm +++ b/suweren/services.scm @@ -2,6 +2,7 @@ #:use-module (gnu services) #:use-module (gnu services base) #:use-module (gnu services desktop) + #:use-module (gnu services sound) #:use-module (services guix channels) #:use-module (services nonguix substitute) #:use-module (services plasma-desktop)) @@ -9,6 +10,7 @@ (define-public %distribution-services (let ((%desktop-services* (modify-services %desktop-services + (delete pulseaudio-service-type) (guix-service-type config => (channels config)) diff --git a/suweren/services/sound.scm b/suweren/services/sound.scm new file mode 100644 index 0000000..8067f98 --- /dev/null +++ b/suweren/services/sound.scm @@ -0,0 +1,6 @@ +(define-module (suweren services sound) + #:use-module (gnu home services sound) + #:use-module (gnu services)) + +(define-public pipewire + (service home-pipewire-service-type)) |