* lumina desktop package
@ 2019-02-10 3:13 Yoshinori Arai
2019-02-10 10:21 ` L p R n d n
0 siblings, 1 reply; 5+ messages in thread
From: Yoshinori Arai @ 2019-02-10 3:13 UTC (permalink / raw)
To: help-guix
Hello,
I'm making lumina-desktop package. I have succeeded to build the package but
failed to execute start-lumina-desktop in xinitrc after login with slim.
The log message is as follows,
Starting the Lumina desktop on current X11 session: ":0.0"
- Resetting monitor configuration to last-used settings
- Starting the session...
[Lumina] Checking User Files
- Old Version: "1.4.0"
- Current Version: "1.4.0"
- Made Changes: false
Finished with user files check
Got Desktop Process Finished: 11
Finished Closing Down Lumina
I have installed fluxbox individually so I think it's not needed to include it
in propagated-inputs. However, I tried to include it into propagated-inputs but
I got same result.
Please tell me some idea to resolve it.
Package definition is as follows,
(define-module (lumina)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix utils)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system gnu)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages xorg)
#:use-module (gnu packages qt)
#:use-module (gnu packages pdf) ;; poppler-qt5
#:use-module (gnu packages wm)
#:use-module (gnu packages xdisorg))
(define-public lumina-desktop
(package
(name "lumina-desktop")
(version "1.4.0-p1")
(source (origin
(method url-fetch)
(uri (string-append
"https://github.com/lumina-desktop/lumina/archive/v"
version ".tar.gz"))
(sha256
(base32
"0bz7jjcvqylizgri3mpn6isq7lgv74d2373i9nrv3jxwni72y83b"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-all-project-file
(lambda _
(for-each (lambda (f)
(let ((out (assoc-ref %outputs "out")))
(substitute* f
(("\\$\\$\\{L_SHAREDIR\\}")
(string-append out "/share"))
(("\\$\\$\\{L_SESSDIR\\}")
(string-append out "/share/xsessions"))
(("\\$\\$\\{L_ETCDIR\\}")
(string-append out "/etc"))
(("\\$\\$\\{L_MANDIR\\}")
(string-append out "/share/man"))
(("\\$\\$\\{LRELEASE\\}") (which "lrelease")))))
(find-files "." ".*\\.pro"))))
(add-after 'unpack 'fix-lumina-pdf-pro
(lambda _
(let ((pqt5 (assoc-ref %build-inputs "poppler-qt5")))
(substitute* "src-qt5/desktop-utils/lumina-pdf/lumina-pdf.pro"
(("\\$\\$\\{L_INCLUDEDIR\\}")
(string-append pqt5 "/include"))))
#t))
(add-after 'unpack 'fix-lthemeengine-pri
(lambda _
(let ((out (assoc-ref %outputs "out")))
(substitute* "src-qt5/core/lumina-theme-engine/lthemeengine.pri"
(("\\$\\$\\{DISTDIR\\}\\$\\$\\[QT_INSTALL_PLUGINS\\]")
(string-append out "/lib/qt5/plugins/styles"))))
#t))
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(invoke "qmake" "CONFIG+=WITH_I18N"
(string-append "PREFIX=" out))))))))
(native-inputs
`(("pkg-config" ,pkg-config)
("qttools" ,qttools)))
(inputs
`(("qtbase" ,qtbase)
("qtx11extras" ,qtx11extras)
("qtmultimedia" ,qtmultimedia)
("qtsvg" ,qtsvg)
("poppler-qt5" ,poppler-qt5)
("libxcb" ,libxcb)
("xcb-util" ,xcb-util)
("xcb-util-image" ,xcb-util-image)
("xcb-util-wm" ,xcb-util-wm)
("libxdamage" ,libxdamage)
("libxcursor" ,libxcursor)))
(propagated-inputs
`(("fluxbox" ,fluxbox)
("xscreensaver" ,xscreensaver)))
(home-page "https://www.lumina-desktop.org/")
(synopsis "Lightweight Desktop Environment")
(description "Lumina Desktop Environment is a lightweight system interface
that is designed for use on any Unix-like operating system.")
(license license:bsd-3)))
lumina-desktop
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: lumina desktop package
2019-02-10 3:13 lumina desktop package Yoshinori Arai
@ 2019-02-10 10:21 ` L p R n d n
2019-02-11 0:20 ` Yoshinori Arai
0 siblings, 1 reply; 5+ messages in thread
From: L p R n d n @ 2019-02-10 10:21 UTC (permalink / raw)
To: help-guix
Hello,
Funny, I just wrote a package definition for Lumina yesterday too.
Mine is a rougher (just builds and starts) but I didn't have any troube
starting lumina. I didn't use xinitrc though. I just choosed lumina
session in slim so it might not be helpfull to you...
Here is the (arguments) part of what I wrote as it's probably where the
magic happens (Mostly a rewrite of NixOS definition). Hope it helps.
Maybe there's something hidden in the differences...
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(invoke "qmake"
(string-append "PREFIX=" out)))
#t))
(add-after 'unpack 'fix-paths
(lambda* (#:key outputs inputs #:allow-other-keys)
;; Find Poppler-qt5
(substitute* "src-qt5/desktop-utils/lumina-pdf/mainUI.h"
(("#include <poppler-qt5.h>") "#include <poppler/qt5/poppler-qt5.h>"))
;; Fix plugins directory
(substitute* "src-qt5/core/lumina-theme-engine/lthemeengine.pri"
(("\\$\\[QT_INSTALL_PLUGINS\\]") (string-append (assoc-ref outputs "out")
"/lib/qt5/plugins")))
;; Find Fluxbox styles
(substitute* "src-qt5/core-utils/lumina-config/pages/page_fluxbox_settings.cpp"
(("LOS::AppPrefix()+\"share/fluxbox") (string-append
(assoc-ref inputs "fluxbox")
"/share/fluxbox")))
(substitute* "src-qt5/OS-detect.pri"
(("L_SESSDIR=/usr/share/xsessions") ""))
(substitute* "src-qt5/core/libLumina/LuminaOS-Linux.cpp"
(("\"/usr/\"") "PREFIX"))
#t))
(add-before 'configure 'chdir
(lambda _
(chdir "src-qt5")
#t)))))
Have a nice day,
Lprndn
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: lumina desktop package
2019-02-10 10:21 ` L p R n d n
@ 2019-02-11 0:20 ` Yoshinori Arai
2019-02-12 10:21 ` Efraim Flashner
0 siblings, 1 reply; 5+ messages in thread
From: Yoshinori Arai @ 2019-02-11 0:20 UTC (permalink / raw)
To: L p R n d n; +Cc: help-guix
On Sun, Feb 10, 2019 at 11:21:52AM +0100, L p R n d n wrote:
> Hello,
>
> Funny, I just wrote a package definition for Lumina yesterday too.
> Mine is a rougher (just builds and starts) but I didn't have any troube
> starting lumina. I didn't use xinitrc though. I just choosed lumina
> session in slim so it might not be helpfull to you...
> Here is the (arguments) part of what I wrote as it's probably where the
> magic happens (Mostly a rewrite of NixOS definition). Hope it helps.
> Maybe there's something hidden in the differences...
>
> (arguments
> `(#:phases
> (modify-phases %standard-phases
> (replace 'configure
> (lambda* (#:key outputs #:allow-other-keys)
> (let ((out (assoc-ref outputs "out")))
> (invoke "qmake"
> (string-append "PREFIX=" out)))
> #t))
> (add-after 'unpack 'fix-paths
> (lambda* (#:key outputs inputs #:allow-other-keys)
> ;; Find Poppler-qt5
> (substitute* "src-qt5/desktop-utils/lumina-pdf/mainUI.h"
> (("#include <poppler-qt5.h>") "#include <poppler/qt5/poppler-qt5.h>"))
> ;; Fix plugins directory
> (substitute* "src-qt5/core/lumina-theme-engine/lthemeengine.pri"
> (("\\$\\[QT_INSTALL_PLUGINS\\]") (string-append (assoc-ref outputs "out")
> "/lib/qt5/plugins")))
> ;; Find Fluxbox styles
> (substitute* "src-qt5/core-utils/lumina-config/pages/page_fluxbox_settings.cpp"
> (("LOS::AppPrefix()+\"share/fluxbox") (string-append
> (assoc-ref inputs "fluxbox")
> "/share/fluxbox")))
> (substitute* "src-qt5/OS-detect.pri"
> (("L_SESSDIR=/usr/share/xsessions") ""))
> (substitute* "src-qt5/core/libLumina/LuminaOS-Linux.cpp"
> (("\"/usr/\"") "PREFIX"))
> #t))
> (add-before 'configure 'chdir
> (lambda _
> (chdir "src-qt5")
> #t)))))
>
> Have a nice day,
>
> Lprndn
>
Hello,
Thank you for your suggestion.
I'm going to try to build lumina-desktop with using part of your code. I was
thinking how to debug lumina-desktop to find where is problem in c++ code.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: lumina desktop package
2019-02-11 0:20 ` Yoshinori Arai
@ 2019-02-12 10:21 ` Efraim Flashner
2019-02-12 21:28 ` Yoshinori Arai
0 siblings, 1 reply; 5+ messages in thread
From: Efraim Flashner @ 2019-02-12 10:21 UTC (permalink / raw)
To: Yoshinori Arai; +Cc: help-guix, L p R n d n
[-- Attachment #1: Type: text/plain, Size: 3244 bytes --]
On Mon, Feb 11, 2019 at 09:20:34AM +0900, Yoshinori Arai wrote:
> On Sun, Feb 10, 2019 at 11:21:52AM +0100, L p R n d n wrote:
> > Hello,
> >
> > Funny, I just wrote a package definition for Lumina yesterday too.
> > Mine is a rougher (just builds and starts) but I didn't have any troube
> > starting lumina. I didn't use xinitrc though. I just choosed lumina
> > session in slim so it might not be helpfull to you...
> > Here is the (arguments) part of what I wrote as it's probably where the
> > magic happens (Mostly a rewrite of NixOS definition). Hope it helps.
> > Maybe there's something hidden in the differences...
> >
> > (arguments
> > `(#:phases
> > (modify-phases %standard-phases
> > (replace 'configure
> > (lambda* (#:key outputs #:allow-other-keys)
> > (let ((out (assoc-ref outputs "out")))
> > (invoke "qmake"
> > (string-append "PREFIX=" out)))
> > #t))
> > (add-after 'unpack 'fix-paths
> > (lambda* (#:key outputs inputs #:allow-other-keys)
> > ;; Find Poppler-qt5
> > (substitute* "src-qt5/desktop-utils/lumina-pdf/mainUI.h"
> > (("#include <poppler-qt5.h>") "#include <poppler/qt5/poppler-qt5.h>"))
> > ;; Fix plugins directory
> > (substitute* "src-qt5/core/lumina-theme-engine/lthemeengine.pri"
> > (("\\$\\[QT_INSTALL_PLUGINS\\]") (string-append (assoc-ref outputs "out")
> > "/lib/qt5/plugins")))
> > ;; Find Fluxbox styles
> > (substitute* "src-qt5/core-utils/lumina-config/pages/page_fluxbox_settings.cpp"
> > (("LOS::AppPrefix()+\"share/fluxbox") (string-append
> > (assoc-ref inputs "fluxbox")
> > "/share/fluxbox")))
> > (substitute* "src-qt5/OS-detect.pri"
> > (("L_SESSDIR=/usr/share/xsessions") ""))
> > (substitute* "src-qt5/core/libLumina/LuminaOS-Linux.cpp"
> > (("\"/usr/\"") "PREFIX"))
> > #t))
> > (add-before 'configure 'chdir
> > (lambda _
> > (chdir "src-qt5")
> > #t)))))
> >
> > Have a nice day,
> >
> > Lprndn
> >
>
> Hello,
>
> Thank you for your suggestion.
> I'm going to try to build lumina-desktop with using part of your code. I was
> thinking how to debug lumina-desktop to find where is problem in c++ code.
>
I haven't built it in a while but I have a copy of lumina which boots
correctly in a VM. I don't use it personally so I never cleaned up the
rough edges (PATH searching, etc) and submitted it.
https://gitlab.com/Efraim/my-guix/blob/master/wip/lumina.scm
and the patch mentioned in the file:
https://gitlab.com/Efraim/my-guix/blob/master/add-LuminaOS-GuixSD.patch
--
Efraim Flashner <efraim@flashner.co.il> אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: lumina desktop package
2019-02-12 10:21 ` Efraim Flashner
@ 2019-02-12 21:28 ` Yoshinori Arai
0 siblings, 0 replies; 5+ messages in thread
From: Yoshinori Arai @ 2019-02-12 21:28 UTC (permalink / raw)
To: Efraim Flashner; +Cc: help-guix, L p R n d n
On Tue, Feb 12, 2019 at 12:21:05PM +0200, Efraim Flashner wrote:
> On Mon, Feb 11, 2019 at 09:20:34AM +0900, Yoshinori Arai wrote:
> > On Sun, Feb 10, 2019 at 11:21:52AM +0100, L p R n d n wrote:
> > > Hello,
> > >
> > > Funny, I just wrote a package definition for Lumina yesterday too.
> > > Mine is a rougher (just builds and starts) but I didn't have any troube
> > > starting lumina. I didn't use xinitrc though. I just choosed lumina
> > > session in slim so it might not be helpfull to you...
> > > Here is the (arguments) part of what I wrote as it's probably where the
> > > magic happens (Mostly a rewrite of NixOS definition). Hope it helps.
> > > Maybe there's something hidden in the differences...
> > >
> > > (arguments
> > > `(#:phases
> > > (modify-phases %standard-phases
> > > (replace 'configure
> > > (lambda* (#:key outputs #:allow-other-keys)
> > > (let ((out (assoc-ref outputs "out")))
> > > (invoke "qmake"
> > > (string-append "PREFIX=" out)))
> > > #t))
> > > (add-after 'unpack 'fix-paths
> > > (lambda* (#:key outputs inputs #:allow-other-keys)
> > > ;; Find Poppler-qt5
> > > (substitute* "src-qt5/desktop-utils/lumina-pdf/mainUI.h"
> > > (("#include <poppler-qt5.h>") "#include <poppler/qt5/poppler-qt5.h>"))
> > > ;; Fix plugins directory
> > > (substitute* "src-qt5/core/lumina-theme-engine/lthemeengine.pri"
> > > (("\\$\\[QT_INSTALL_PLUGINS\\]") (string-append (assoc-ref outputs "out")
> > > "/lib/qt5/plugins")))
> > > ;; Find Fluxbox styles
> > > (substitute* "src-qt5/core-utils/lumina-config/pages/page_fluxbox_settings.cpp"
> > > (("LOS::AppPrefix()+\"share/fluxbox") (string-append
> > > (assoc-ref inputs "fluxbox")
> > > "/share/fluxbox")))
> > > (substitute* "src-qt5/OS-detect.pri"
> > > (("L_SESSDIR=/usr/share/xsessions") ""))
> > > (substitute* "src-qt5/core/libLumina/LuminaOS-Linux.cpp"
> > > (("\"/usr/\"") "PREFIX"))
> > > #t))
> > > (add-before 'configure 'chdir
> > > (lambda _
> > > (chdir "src-qt5")
> > > #t)))))
> > >
> > > Have a nice day,
> > >
> > > Lprndn
> > >
> >
> > Hello,
> >
> > Thank you for your suggestion.
> > I'm going to try to build lumina-desktop with using part of your code. I was
> > thinking how to debug lumina-desktop to find where is problem in c++ code.
> >
>
> I haven't built it in a while but I have a copy of lumina which boots
> correctly in a VM. I don't use it personally so I never cleaned up the
> rough edges (PATH searching, etc) and submitted it.
>
> https://gitlab.com/Efraim/my-guix/blob/master/wip/lumina.scm
> and the patch mentioned in the file:
> https://gitlab.com/Efraim/my-guix/blob/master/add-LuminaOS-GuixSD.patch
>
> --
> Efraim Flashner <efraim@flashner.co.il> אפרים פלשנר
> GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
> Confidentiality cannot be guaranteed on emails sent or received unencrypted
Thank you. I will try it.
I have tried Lprndn's code but I got same result.
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2019-02-12 21:42 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-02-10 3:13 lumina desktop package Yoshinori Arai
2019-02-10 10:21 ` L p R n d n
2019-02-11 0:20 ` Yoshinori Arai
2019-02-12 10:21 ` Efraim Flashner
2019-02-12 21:28 ` Yoshinori Arai
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).