summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--packages/plasma.scm246
-rw-r--r--suweren/home.scm21
-rw-r--r--suweren/home/bash-profile2
-rw-r--r--suweren/home/bashrc31
-rw-r--r--suweren/home/services.scm11
-rw-r--r--suweren/services.scm2
-rw-r--r--suweren/services/sound.scm6
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))