diff options
Diffstat (limited to 'gnu/packages/lxde.scm')
-rw-r--r-- | gnu/packages/lxde.scm | 242 |
1 files changed, 242 insertions, 0 deletions
diff --git a/gnu/packages/lxde.scm b/gnu/packages/lxde.scm index e8db6271f5..e7654053d8 100644 --- a/gnu/packages/lxde.scm +++ b/gnu/packages/lxde.scm @@ -19,13 +19,22 @@ ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. (define-module (gnu packages lxde) + #:use-module (gnu packages) #:use-module (gnu packages autotools) + #:use-module (gnu packages docbook) + #:use-module (gnu packages gettext) #:use-module (gnu packages glib) #:use-module (gnu packages gnome) #:use-module (gnu packages gtk) + #:use-module (gnu packages linux) + #:use-module (gnu packages openbox) #:use-module (gnu packages pkg-config) + #:use-module (gnu packages polkit) + #:use-module (gnu packages wm) + #:use-module (gnu packages xml) #:use-module (gnu packages xorg) #:use-module (guix build-system gnu) + #:use-module (guix build-system trivial) #:use-module (guix download) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) @@ -219,4 +228,237 @@ with freedesktop.org standard.") (home-page "http://lxde.org") (license license:gpl2+))) +(define-public lxmenu-data + (package + (name "lxmenu-data") + (version "0.1.5") + (source + (origin + (method url-fetch) + (uri (string-append "https://downloads.sourceforge.net/lxde/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "1f5sh2dvb3pdnjlcsyzq9543ck2jsqizkx3204cr22zm5s6j3qwz")))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config) + ("intltool" ,intltool))) + (synopsis "Freedesktop.org desktop menus for LXDE") + (description + "Lxmenu-data provides files required to build freedesktop.org +menu spec-compliant desktop menus for LXDE.") + (home-page "http://lxde.org") + (license license:lgpl2.1+))) + +(define-public lxde-icon-theme + (package + (name "lxde-icon-theme") + (version "0.5.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://downloads.sourceforge.net/lxde/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "0v4i6x86fr2hbx4fb2si7y2qzmj7h6hcjwaifnin18r8kwwvgl73")))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config))) + (synopsis "LXDE default icon theme based on nuoveXT2") + (description + "Lxde-icon-theme provides an default icon theme for LXDE.") + (home-page "http://lxde.org") + (license license:lgpl3))) + +(define-public lxde-common + (package + (name "lxde-common") + (version "0.99.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://downloads.sourceforge.net/lxde/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "0mj84fa3f4ak1jjslrwc2q3ci9zxrxpciggviza9bjb0168brn8w")))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config) + ("intltool" ,intltool) + ("lxmenu-data" ,lxmenu-data) + ("lxde-icon-theme" ,lxde-icon-theme))) + (synopsis "Common files of the LXDE Desktop") + (description + "Lxde-common provides common files of the LXDE Desktop.") + (home-page "http://lxde.org") + (license license:gpl2+))) + +(define-public lxinput + (package + (name "lxinput") + (version "0.3.5") + (source + (origin + (method url-fetch) + (uri (string-append "https://downloads.sourceforge.net/lxde/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "123f3yn4rp1w5b3n5aj3ad9snkxab29qkrs7bcvf5bx4cn57g3sf")))) + (build-system gnu-build-system) + (inputs + `(("gtk+-2" ,gtk+-2))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("intltool" ,intltool))) + (synopsis "Tool for mouse and keyboard configuration in LXDE") + (description + "Lxinput provides a small program to configure keyboard and mouse +in LXDE.") + (home-page "http://lxde.org") + (license license:gpl2+))) + +(define-public lxsession + (package + (name "lxsession") + (version "0.5.3") + (source + (origin + (method url-fetch) + (uri (string-append "https://downloads.sourceforge.net/lxde/" + name "-" version ".tar.xz")) + (patches (search-patches "lxsession-use-gapplication.patch")) + (sha256 + (base32 + "1a0zmyywwzdh59nc0l94cir18vhp633z4q2xfhn5zx11ajj45gwh")) + (modules '((guix build utils))) + (snippet + ;; Remove C files generated by Vala so we can build from source. + '(let* ((c->vala + (lambda (file) + (string-append (string-drop-right file 2) + ".vala"))) + (generated-c-file? + (lambda (file stat) + (and (string-suffix? ".c" file) + (file-exists? (c->vala file)))))) + (for-each delete-file + (find-files "." generated-c-file?)))))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'rm-stamp + (lambda _ + (for-each delete-file (find-files "." "\\.stamp$")))) + (add-after 'rm-stamp 'autoreconf + (lambda _ + (zero? (system* "autoreconf" "-vfi"))))))) + (inputs + `(("gtk+-2" ,gtk+-2) + ("polkit" ,polkit))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("intltool" ,intltool) + ("docbook-xsl" ,docbook-xsl) + ("vala" ,vala) + ("autoconf" ,autoconf) + ("automake" ,automake))) + (synopsis "Lightweight X11 session manager") + (description + "Lxsession provides an lightweight X11 session manager.") + (home-page "http://lxde.org") + (license license:gpl2+))) + +(define-public lxpanel + (package + (name "lxpanel") + (version "0.9.3") + (source + (origin + (method url-fetch) + (uri (string-append "https://downloads.sourceforge.net/lxde/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "1ccgv7jgl3y865cpb6w7baaz7468fxncm83bqxlwyni5bwhglb1l")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'install 'wrap + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (menu (assoc-ref inputs "lxmenu-data"))) + (wrap-program (string-append out "/bin/lxpanel") + `("XDG_DATA_DIRS" ":" prefix + (,(string-append menu "/share")))) + #t)))))) + (inputs + ;; TODO: libindicator-0.3.0 + `(("gtk+-2" ,gtk+-2) + ("alsa-lib" ,alsa-lib) + ("libwnck-2" ,libwnck-2) + ("keybinder" ,keybinder) + ("libxmu" ,libxmu) + ("libxpm" ,libxpm) + ("libxml2" ,libxml2) + ("cairo" ,cairo) + ("libx11" ,libx11) + ("wireless-tools" ,wireless-tools))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("intltool" ,intltool) + ("docbook-xml" ,docbook-xml) + ("gettext-minimal" ,gettext-minimal))) + (propagated-inputs + `(("lxmenu-data" ,lxmenu-data) + ("libfm" ,libfm) + ("menu-cache" ,menu-cache))) + (synopsis "X11 Desktop panel for LXDE") + (description + "Lxpanel provides an X11 desktop panel for LXDE.") + (home-page "http://lxde.org") + (license license:gpl2+))) + +(define-public lxde + (package + (name "lxde") + (version (package-version lxde-common)) + (source #f) + (build-system trivial-build-system) + (arguments '(#:builder (mkdir %output))) + (propagated-inputs + ;; TODO: + ;; lxshortcut, lxsession-edit, gpicview, leafpad, + ;; lxappearance-obconf + `(("menu-cache" ,menu-cache) + ("lxappearance" ,lxappearance) + ("lxde-icon-theme" ,lxde-icon-theme) + ("lxde-common" ,lxde-common) + ("lxmenu-data" ,lxmenu-data) + ("lxpanel" ,lxpanel) + ("lxrandr" ,lxrandr) + ("lxsession" ,lxsession) + ("libfm" ,libfm) + ("libfm-extra" ,libfm-extra) + ("lxtask" ,lxtask) + ("lxterminal" ,lxterminal) + ("pcmanfm" ,pcmanfm) + ("openbox" ,openbox) + ("obconf" ,obconf))) + (synopsis "Lightweight X11 Desktop Environment") + (description + "LXDE, which stands for Lightweight X11 Desktop Environment, is a +desktop environment which is lightweight and fast. It is designed to be +user friendly and slim, while keeping the resource usage low. LXDE uses +less RAM and less CPU while being a feature rich desktop environment. Unlike +other tightly integrated desktops LXDE strives to be modular, so each +component can be used independently with few dependencies.") + (home-page "https://lxde.org") + (license license:gpl2+))) ; And others. + ;;; lxde.scm ends here |