emacs-bug-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#38721: closed ([PATCH] gnu: Add i3-gaps)


From: GNU bug Tracking System
Subject: bug#38721: closed ([PATCH] gnu: Add i3-gaps)
Date: Tue, 24 Dec 2019 02:20:02 +0000

Your message dated Mon, 23 Dec 2019 20:19:33 -0600
with message-id <address@hidden>
and subject line Re: [bug#38721] [PATCH] gnu: Add i3-gaps
has caused the debbugs.gnu.org bug report #38721,
regarding [PATCH] gnu: Add i3-gaps
to be marked as done.

(If you believe you have received this mail in error, please contact
address@hidden.)


-- 
38721: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=38721
GNU Bug Tracking System
Contact address@hidden with problems
--- Begin Message --- Subject: [PATCH] gnu: Add i3-gaps Date: Mon, 23 Dec 2019 10:51:57 +0200
* gnu/packages/wm.scm (i3-gaps): New variable.
---
 gnu/packages/wm.scm | 75 +++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 75 insertions(+)

diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index 6c1919be56..904e2a3975 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -30,6 +30,7 @@
 ;;; Copyright © 2019 Evan Straw <address@hidden>
 ;;; Copyright © 2019 Brett Gilio <address@hidden>
 ;;; Copyright © 2019 Noodles! <address@hidden>
+;;; Copyright © 2019 Alexandru-Sergiu Marton <address@hidden>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -327,6 +328,80 @@ i3 primarily targets advanced users.  Windows are managed 
manually and organised
 inside containers, which can be split vertically or horizontally, and 
optionally
 resized.
 
+i3 uses a plain-text configuration file, and can be extended and controlled 
from
+many programming languages.")
+    (license license:bsd-3)))
+
+(define-public i3-gaps
+  (package
+    (name "i3-gaps")
+    (version "4.17.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append 
"https://github.com/Airblader/i3/releases/download/";
+                                  version "/i3-" version ".tar.bz2"))
+              (sha256
+               (base32
+                "0gqcr6s53dk3f2y9h6cna00rnwnh4yymk96li7lbym3d84cxjzrs"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:configure-flags
+       ;; The build system tries to build in a separate directory, but that
+       ;; seems to be unnecessary.
+       (list "--disable-builddir")
+
+       ;; The test suite requires the unpackaged Xephyr X server.
+       #:tests? #f
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'install 'patch-session-file
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (i3 (string-append out "/bin/i3"))
+                    (i3-with-shmlog (string-append out "/bin/i3-with-shmlog")))
+               (substitute* (string-append out "/share/xsessions/i3.desktop")
+                 (("Exec=i3") (string-append "Exec=" i3)))
+               (substitute* (string-append out 
"/share/xsessions/i3-with-shmlog.desktop")
+                 (("Exec=i3-with-shmlog") (string-append "Exec=" 
i3-with-shmlog)))
+               #t))))))
+    (inputs
+     `(("libxcb" ,libxcb)
+       ("xcb-util" ,xcb-util)
+       ("xcb-util-cursor" ,xcb-util-cursor)
+       ("xcb-util-keysyms" ,xcb-util-keysyms)
+       ("xcb-util-wm" ,xcb-util-wm)
+       ("xcb-util-xrm" ,xcb-util-xrm)
+       ("libxkbcommon" ,libxkbcommon)
+       ("libev" ,libev)
+       ("libyajl" ,libyajl)
+       ("asciidoc" ,asciidoc)
+       ("xmlto" ,xmlto)
+       ("perl-pod-simple" ,perl-pod-simple)
+       ("libx11" ,libx11)
+       ("pcre" ,pcre)
+       ("startup-notification" ,startup-notification)
+       ("pango" ,pango)
+       ("cairo" ,cairo)))
+    (native-inputs
+     `(("which" ,which)
+       ("perl" ,perl)
+       ("pkg-config" ,pkg-config)
+       ;; For building the documentation.
+       ("libxml2" ,libxml2)
+       ("docbook-xsl" ,docbook-xsl)))
+    (home-page "https://github.com/Airblader/i3";)
+    (synopsis "Tiling window manager with gaps")
+    (description "i3-gaps is a fork of i3wm, a tiling window manager for X11.
+It is kept up to date with upstream, adding a few additional features such
+as gaps between windows.
+
+i3 is a tiling X11 window manager that dynamically manages
+tiled, stacked, and tabbed window layouts.
+
+i3 primarily targets advanced users.  Windows are managed manually and 
organised
+inside containers, which can be split vertically or horizontally, and 
optionally
+resized.
+
 i3 uses a plain-text configuration file, and can be extended and controlled 
from
 many programming languages.")
     (license license:bsd-3)))
-- 
2.24.1




--- End Message ---
--- Begin Message --- Subject: Re: [bug#38721] [PATCH] gnu: Add i3-gaps Date: Mon, 23 Dec 2019 20:19:33 -0600 User-agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux)
Alexandru-Sergiu Marton <address@hidden> writes:

> * gnu/packages/wm.scm (i3-gaps): New variable.
> ---
>  gnu/packages/wm.scm | 75 +++++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 75 insertions(+)
>
> diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
> index 6c1919be56..904e2a3975 100644
> --- a/gnu/packages/wm.scm
> +++ b/gnu/packages/wm.scm
> @@ -30,6 +30,7 @@
>  ;;; Copyright © 2019 Evan Straw <address@hidden>
>  ;;; Copyright © 2019 Brett Gilio <address@hidden>
>  ;;; Copyright © 2019 Noodles! <address@hidden>
> +;;; Copyright © 2019 Alexandru-Sergiu Marton <address@hidden>
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -327,6 +328,80 @@ i3 primarily targets advanced users.  Windows are 
> managed manually and organised
>  inside containers, which can be split vertically or horizontally, and 
> optionally
>  resized.
>  
> +i3 uses a plain-text configuration file, and can be extended and controlled 
> from
> +many programming languages.")
> +    (license license:bsd-3)))
> +
> +(define-public i3-gaps
> +  (package
> +    (name "i3-gaps")
> +    (version "4.17.1")
> +    (source (origin
> +              (method url-fetch)
> +              (uri (string-append 
> "https://github.com/Airblader/i3/releases/download/";
> +                                  version "/i3-" version ".tar.bz2"))
> +              (sha256
> +               (base32
> +                "0gqcr6s53dk3f2y9h6cna00rnwnh4yymk96li7lbym3d84cxjzrs"))))
> +    (build-system gnu-build-system)
> +    (arguments
> +     `(#:configure-flags
> +       ;; The build system tries to build in a separate directory, but that
> +       ;; seems to be unnecessary.
> +       (list "--disable-builddir")
> +
> +       ;; The test suite requires the unpackaged Xephyr X server.
> +       #:tests? #f
> +       #:phases
> +       (modify-phases %standard-phases
> +         (add-after 'install 'patch-session-file
> +           (lambda* (#:key outputs #:allow-other-keys)
> +             (let* ((out (assoc-ref outputs "out"))
> +                    (i3 (string-append out "/bin/i3"))
> +                    (i3-with-shmlog (string-append out 
> "/bin/i3-with-shmlog")))
> +               (substitute* (string-append out "/share/xsessions/i3.desktop")
> +                 (("Exec=i3") (string-append "Exec=" i3)))
> +               (substitute* (string-append out 
> "/share/xsessions/i3-with-shmlog.desktop")
> +                 (("Exec=i3-with-shmlog") (string-append "Exec=" 
> i3-with-shmlog)))
> +               #t))))))
> +    (inputs
> +     `(("libxcb" ,libxcb)
> +       ("xcb-util" ,xcb-util)
> +       ("xcb-util-cursor" ,xcb-util-cursor)
> +       ("xcb-util-keysyms" ,xcb-util-keysyms)
> +       ("xcb-util-wm" ,xcb-util-wm)
> +       ("xcb-util-xrm" ,xcb-util-xrm)
> +       ("libxkbcommon" ,libxkbcommon)
> +       ("libev" ,libev)
> +       ("libyajl" ,libyajl)
> +       ("asciidoc" ,asciidoc)
> +       ("xmlto" ,xmlto)
> +       ("perl-pod-simple" ,perl-pod-simple)
> +       ("libx11" ,libx11)
> +       ("pcre" ,pcre)
> +       ("startup-notification" ,startup-notification)
> +       ("pango" ,pango)
> +       ("cairo" ,cairo)))
> +    (native-inputs
> +     `(("which" ,which)
> +       ("perl" ,perl)
> +       ("pkg-config" ,pkg-config)
> +       ;; For building the documentation.
> +       ("libxml2" ,libxml2)
> +       ("docbook-xsl" ,docbook-xsl)))
> +    (home-page "https://github.com/Airblader/i3";)
> +    (synopsis "Tiling window manager with gaps")
> +    (description "i3-gaps is a fork of i3wm, a tiling window manager for X11.
> +It is kept up to date with upstream, adding a few additional features such
> +as gaps between windows.
> +
> +i3 is a tiling X11 window manager that dynamically manages
> +tiled, stacked, and tabbed window layouts.
> +
> +i3 primarily targets advanced users.  Windows are managed manually and 
> organised
> +inside containers, which can be split vertically or horizontally, and 
> optionally
> +resized.
> +
>  i3 uses a plain-text configuration file, and can be extended and controlled 
> from
>  many programming languages.")
>      (license license:bsd-3)))

Hi, Alexandru-Sergiu Marton.

Thank you for your patch. By the looks of it, this is your first patch
submission to GNU Guix! Thank you.

I want to offer you some kind advice. You may not be familiar with our
inheritance mechanism. Since i3-gaps is really just a derivative form of
core i3, we can actually just inherit the package parameters, arguments,
inputs, etc. modifying only what we need to.

In other-words, your definition can be /massively/ reduced as follows:

--8<---------------cut here---------------start------------->8---
(define-public i3-gaps
  (package (inherit i3-wm)
           (name "i3-gaps")
           (version "4.17.1")
           (source (origin
                     (method url-fetch)
                     (uri (string-append
                           "https://github.com/Airblader/i3/releases/download/";
                           version "/i3-" version ".tar.bz2"))
                     (sha256
                      (base32
                       
"0iazv2i2rgmakzh95pgj6iapyzn7bdpcbcd35a79mhlml4ry33qy"))))
           (build-system gnu-build-system)
           (home-page "https://github.com/Airblader/i3";)
           (synopsis "Tiling window manager with gaps")
           (description "i3-gaps is a fork of i3wm, a tiling window manager
for X11.  It is kept up to date with upstream, adding a few additional
features such as gaps between windows.

i3 is a tiling X11 window manager that dynamically manages tiled, stacked,
and tabbed window layouts.

i3 primarily targets advanced users.  Windows are managed manually and
organised inside containers, which can be split vertically or horizontally,
and optionally resized.

i3 uses a plain-text configuration file, and can be extended and controlled
from many programming languages.")
           (license license:bsd-3)))
--8<---------------cut here---------------end--------------->8---

I went ahead and pushed this to master with you as the author, and me as
a co-author. I used your <address@hidden> email address for
the git config.

Again, welcome! We are happy to have you around.

88c9408070280db51d1a0e604b9ec77f1611ab3c. Closing.

-- 
Brett M. Gilio
GNU Guix, Contributor | GNU Project, Webmaster
[DFC0 C7F7 9EE6 0CA7 AE55 5E19 6722 43C4 A03F 0EEE]
<address@hidden> <address@hidden>


--- End Message ---

reply via email to

[Prev in Thread] Current Thread [Next in Thread]