diff mbox series

[bug#43210] gnu: lxqt-config: Wrapping the lxqt-config and lxqt-config-input and setting the setxkbmap PATH for fixing save added layout

Message ID 2a9af2f5-62b9-45c9-bfa5-430241158521@www.fastmail.com
State New
Headers show
Series [bug#43210] gnu: lxqt-config: Wrapping the lxqt-config and lxqt-config-input and setting the setxkbmap PATH for fixing save added layout | expand

Checks

Context Check Description
cbaines/comparison success View comparision
cbaines/git branch success View Git branch
cbaines/applying patch success View Laminar job

Commit Message

Hamzeh Nasajpour Sept. 5, 2020, 5:54 a.m. UTC

Comments

Hamzeh Nasajpour Sept. 12, 2020, 12:01 p.m. UTC | #1
Hi guys.
Seems that anyway we have to add `setxkbmap` to `propagated-inputs`. The previous commit will fix the adding `keyboard-layout` but without having the `setxkbmap` in `propagated-inputs` the added layouts won't add as permanent and will be reset after each reboot. So again, we need to add `setxkbmap` as a dependency in `propagated-inputs`.


On Sat, Sep 5, 2020, at 10:24 AM, Hamzeh Nasajpour wrote:
> diff --git a/gnu/packages/lxqt.scm b/gnu/packages/lxqt.scm
> index 21587609ce..baa2ee6795 100644
> --- a/gnu/packages/lxqt.scm
> +++ b/gnu/packages/lxqt.scm
> @@ -379,6 +379,7 @@ the operating system LXQt is running on.")
>         ("qtbase" ,qtbase)
>         ("qtsvg" ,qtsvg)
>         ("qtx11extras" ,qtx11extras)
> +       ("setxkbmap" ,setxkbmap)
>         ("solid" ,solid)
>         ("xf86-input-libinput" ,xf86-input-libinput)
>         ("xkeyboard-config" ,xkeyboard-config)
> @@ -418,7 +419,16 @@ the operating system LXQt is running on.")
>                 (("\\$\\{LXQT_TRANSLATIONS_DIR\\}")
>                  (string-append (assoc-ref outputs "out")
>                                 "/share/lxqt/translations")))
> -             #t)))))
> +             #t))
> +          (add-after 'install 'wrap-for-setxkbmap-path
> +            (lambda* (#:key outputs #:allow-other-keys)
> +              (let ((out              (assoc-ref outputs "out"))
> +                    (setxkbmap          (assoc-ref %build-inputs 
> "setxkbmap")))
> +                       (wrap-program (string-append out 
> "/bin/lxqt-config")
> +                            `("PATH" ":" prefix (,(string-append 
> setxkbmap "/bin/"))))
> +                       (wrap-program (string-append out 
> "/bin/lxqt-config-input")
> +                           `("PATH" ":" prefix (,(string-append 
> setxkbmap "/bin/"))))
> +               #t))))))
>      (home-page "https://lxqt.github.io")
>      (synopsis "Tools to configure LXQt and the underlying operating 
> system")
>      (description "lxqt-config is providing several tools involved in 
> the
Ludovic Courtès Sept. 24, 2020, 3:22 p.m. UTC | #2
Hi,

"Hamzeh Nasajpour" <h.nasajpour@pantherx.org> skribis:

> Seems that anyway we have to add `setxkbmap` to `propagated-inputs`. The previous commit will fix the adding `keyboard-layout` but without having the `setxkbmap` in `propagated-inputs` the added layouts won't add as permanent and will be reset after each reboot. So again, we need to add `setxkbmap` as a dependency in `propagated-inputs`.

Why is that?  I fail to see why using ‘propagated-inputs’ instead of
wrapping would work better.

>> +          (add-after 'install 'wrap-for-setxkbmap-path
>> +            (lambda* (#:key outputs #:allow-other-keys)
>> +              (let ((out              (assoc-ref outputs "out"))
>> +                    (setxkbmap          (assoc-ref %build-inputs 
>> "setxkbmap")))
>> +                       (wrap-program (string-append out 
>> "/bin/lxqt-config")
>> +                            `("PATH" ":" prefix (,(string-append 
>> setxkbmap "/bin/"))))
>> +                       (wrap-program (string-append out 
>> "/bin/lxqt-config-input")
>> +                           `("PATH" ":" prefix (,(string-append 
>> setxkbmap "/bin/"))))
>> +               #t))))))

For this case, it might be easier/preferable to replace ‘setxkbmap’ in
the source code with the absolute file name of ‘setxkbmap’.

Thanks,
Ludo’.
diff mbox series

Patch

diff --git a/gnu/packages/lxqt.scm b/gnu/packages/lxqt.scm
index 21587609ce..baa2ee6795 100644
--- a/gnu/packages/lxqt.scm
+++ b/gnu/packages/lxqt.scm
@@ -379,6 +379,7 @@  the operating system LXQt is running on.")
        ("qtbase" ,qtbase)
        ("qtsvg" ,qtsvg)
        ("qtx11extras" ,qtx11extras)
+       ("setxkbmap" ,setxkbmap)
        ("solid" ,solid)
        ("xf86-input-libinput" ,xf86-input-libinput)
        ("xkeyboard-config" ,xkeyboard-config)
@@ -418,7 +419,16 @@  the operating system LXQt is running on.")
                (("\\$\\{LXQT_TRANSLATIONS_DIR\\}")
                 (string-append (assoc-ref outputs "out")
                                "/share/lxqt/translations")))
-             #t)))))
+             #t))
+          (add-after 'install 'wrap-for-setxkbmap-path
+            (lambda* (#:key outputs #:allow-other-keys)
+              (let ((out              (assoc-ref outputs "out"))
+                    (setxkbmap          (assoc-ref %build-inputs "setxkbmap")))
+                       (wrap-program (string-append out "/bin/lxqt-config")
+                            `("PATH" ":" prefix (,(string-append setxkbmap "/bin/"))))
+                       (wrap-program (string-append out "/bin/lxqt-config-input")
+                           `("PATH" ":" prefix (,(string-append setxkbmap "/bin/"))))
+               #t))))))
     (home-page "https://lxqt.github.io")
     (synopsis "Tools to configure LXQt and the underlying operating system")
     (description "lxqt-config is providing several tools involved in the