[PATCH] gnu: Add icewm

  • Open
  • quality assurance status badge
Details
2 participants
  • Andy Tai
  • Simon Tournier
Owner
unassigned
Submitted by
Andy Tai
Severity
normal
A
A
Andy Tai wrote 5 days ago
(address . guix-patches@gnu.org)
CAJsg1E_sqTdfO7aFTfD3MGLv2RqiYs=m2YhjgHOUD8jx=C2OMg@mail.gmail.com
From bd669eb4d0d7fc3b79adf8b90f04e9cfee8b0906 Mon Sep 17 00:00:00 2001
From: Andy Tai <atai@atai.org>
Date: Sun, 22 Jan 2023 12:35:32 -0800
Subject: [PATCH] gnu: Add icewm

* gnu/packages/wm.scm (icewm): New variable
---
gnu/packages/wm.scm | 58 +++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 58 insertions(+)

Toggle diff (76 lines)
diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index b93c57b888..a65b53f8f2 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -97,6 +97,7 @@ (define-module (gnu packages wm)
#:use-module (gnu packages bison)
#:use-module (gnu packages build-tools)
#:use-module (gnu packages calendar)
+ #:use-module (gnu packages compression)
#:use-module (gnu packages check)
#:use-module (gnu packages datastructures)
#:use-module (gnu packages docbook)
@@ -2918,3 +2919,60 @@ (define-public grimshot
an interface over @code{grim}, @code{slurp} and @code{jq}, and supports storing
the screenshot either directly to the clipboard using @code{wl-copy} or to a
file.")))
+
+
+(define-public icewm
+ (package
+ (name "icewm")
+ (version "3.3.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "https://github.com/ice-wm/icewm/releases/download/"
+ version "/icewm-" version ".tar.lz"))
+ (sha256
+ (base32
+ "14vkv5r9rvwfj8gmdsrkkq7vxvk2j7z7wfybzc8ywj469yya5ppq"))))
+ (build-system gnu-build-system)
+ (native-inputs (list pkg-config))
+ (inputs (list fontconfig
+ fribidi
+ imlib2
+ libice
+ libjpeg-turbo
+ libsm
+ libxcomposite
+ libxdamage
+ libxext
+ libxfixes
+ libxft
+ libxinerama
+ libxpm
+ libxrandr
+ libxrender
+ libx11
+ lzip
+ perl))
+ (arguments
+ `(#:phases (modify-phases %standard-phases
+ (add-after 'unpack 'skip-failing-test
+ ;; strtest.cc tests failing due to $HOME and /etc setup difference under guix
+ (lambda _
+ (substitute* "src/Makefile.in"
+ (("TESTS = strtest\\$\\(EXEEXT\\)")
+ "TESTS = ")) #t)))))
+ (home-page "https://ice-wm.org/")
+ (synopsis "Window manager for the X Window System")
+ (description
+ "IceWM is a window manager for the X Window System. The goal of
+IceWM is speed, simplicity, and not getting in the user’s way. It comes with a
+taskbar with pager, global and per-window keybindings and a dynamic menu system.
+Application windows can be managed by keyboard and mouse. Windows
+can be iconified to the taskbar, to the tray, to the desktop or be made
+hidden. They are controllable by a quick switch window (Alt+Tab) and in a
+window list. A handful of configurable focus models are
+menu-selectable. Setups with multiple monitors are supported by RandR and
+Xinerama. IceWM is very configurable, themeable and well documented. It
+includes an optional external background wallpaper manager with transparency
+support, a simple session manager and a system tray.")
+ (license license:gpl2)))
\ No newline at end of file
--
2.39.1
A
S
S
Simon Tournier wrote 3 days ago
87k01cp195.fsf@gmail.com
Hi,

Thanks for the follow up. :-)

The patch builds fine and it LTGM except one minor point.


On dim., 22 janv. 2023 at 12:37, Andy Tai <atai@atai.org> wrote:

Toggle quote (6 lines)
> + (source (origin
> + (method url-fetch)
> + (uri (string-append
> + "https://github.com/ice-wm/icewm/releases/download/"
> + version "/icewm-" version ".tar.lz"))

This archive contains generated .gmo which are not in the source code
[1] and I do not know what is the usual Guix policy about that. Do we
re-generate them?

Other said, these files are in the archive tar.gz [2].



Toggle quote (2 lines)
> \ No newline at end of file

This patch does not apply to current master. From my point of view, it
is worth to provide the base-commit (see --base option of
git-format-patch or git-send-email).

And it helps if the new package is not added to the end of the file.
For instance, I would put it between i3lock-fancy and xmonad-next.


Cheers,
simon
A
A
Andy Tai wrote 3 days ago
(name . Simon Tournier)(address . zimon.toutoune@gmail.com)(address . 61010@debbugs.gnu.org)
CAJsg1E-TXfEw0Fx=LmVZghusMk3oKQoKNLfc1pTDE69dPhEr8g@mail.gmail.com
updated patch attached


On Tue, Jan 24, 2023 at 4:35 AM Simon Tournier <zimon.toutoune@gmail.com> wrote:
Toggle quote (15 lines)
>
> The patch builds fine and it LTGM except one minor point.
>
> On dim., 22 janv. 2023 at 12:37, Andy Tai <atai@atai.org> wrote:
>
> This archive contains generated .gmo which are not in the source code
> [1] and I do not know what is the usual Guix policy about that. Do we
> re-generate them?
>
> Other said, these files are in the archive tar.gz [2].
>
> 1: <https://github.com/ice-wm/icewm/tree/3.3.1/po>
> 2: <https://github.com/ice-wm/icewm/archive/refs/tags/3.3.1.tar.gz>
>

This I did not address in the revision because the second .tar.gz is
available on the net, satisfying GPL's source requirement... but will
revise if Guix policy demands otherwise
Toggle quote (11 lines)
>
> > \ No newline at end of file
>
> This patch does not apply to current master. From my point of view, it
> is worth to provide the base-commit (see --base option of
> git-format-patch or git-send-email).
>
> And it helps if the new package is not added to the end of the file.
> For instance, I would put it between i3lock-fancy and xmonad-next.
>

addressed as suggested
Toggle quote (3 lines)
>
> Cheers,
> simon
From 58af949be6d43c4194c517874a021b43cbea1547 Mon Sep 17 00:00:00 2001
From: Andy Tai <atai@atai.org>
Date: Tue, 24 Jan 2023 23:25:07 -0800
Subject: [PATCH] gnu: Add icewm

* gnu/packages/wm.scm (icewm): New variable
---
gnu/packages/wm.scm | 59 +++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 59 insertions(+)

Toggle diff (81 lines)
diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index a860ed1f93..f2d3f6f1b3 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -100,6 +100,7 @@ (define-module (gnu packages wm)
#:use-module (gnu packages bison)
#:use-module (gnu packages build-tools)
#:use-module (gnu packages calendar)
+ #:use-module (gnu packages compression)
#:use-module (gnu packages check)
#:use-module (gnu packages datastructures)
#:use-module (gnu packages docbook)
@@ -763,6 +764,64 @@ (define-public i3lock-fancy
desktop environment.")
(license license:expat)))
+(define-public icewm
+ (package
+ (name "icewm")
+ (version "3.3.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "https://github.com/ice-wm/icewm/releases/download/"
+ version "/icewm-" version ".tar.lz"))
+ (sha256
+ (base32
+ "14vkv5r9rvwfj8gmdsrkkq7vxvk2j7z7wfybzc8ywj469yya5ppq"))))
+ (build-system gnu-build-system)
+ (native-inputs (list pkg-config))
+ (inputs (list fontconfig
+ fribidi
+ imlib2
+ libice
+ libjpeg-turbo
+ libsm
+ libxcomposite
+ libxdamage
+ libxext
+ libxfixes
+ libxft
+ libxinerama
+ libxpm
+ libxrandr
+ libxrender
+ libx11
+ lzip
+ perl))
+ (arguments
+ `(#:phases (modify-phases %standard-phases
+ (add-after 'unpack 'skip-failing-test
+ ;; strtest.cc tests failing due to $HOME and /etc setup
+ ;; difference under guix
+ (lambda _
+ (substitute* "src/Makefile.in"
+ (("TESTS = strtest\\$\\(EXEEXT\\)")
+ "TESTS = ")) #t)))))
+ (home-page "https://ice-wm.org/")
+ (synopsis "Window manager for the X Window System")
+ (description
+ "IceWM is a window manager for the X Window System. The goal of
+IceWM is speed, simplicity, and not getting in the user’s way. It comes with a
+taskbar with pager, global and per-window keybindings and a dynamic menu system.
+Application windows can be managed by keyboard and mouse. Windows
+can be iconified to the taskbar, to the tray, to the desktop or be made
+hidden. They are controllable by a quick switch window (Alt+Tab) and in a
+window list. A handful of configurable focus models are
+menu-selectable. Setups with multiple monitors are supported by RandR and
+Xinerama. IceWM is very configurable, themeable and well documented. It
+includes an optional external background wallpaper manager with transparency
+support, a simple session manager and a system tray.")
+ (license license:gpl2)))
+
+
(define-public xmonad-next
(package
(name "xmonad-next")

base-commit: 718223c58c20fa066527fb30da2b5dccca82913f
--
2.39.1
A
A
Andy Tai wrote 3 days ago
(name . Simon Tournier)(address . zimon.toutoune@gmail.com)(address . 61010@debbugs.gnu.org)
CAJsg1E-q0cRtAyB6Zw0MicWE1HxgAbjmgoz58fgMzPzYvwfz_Q@mail.gmail.com
same patch with only difference of label as "v2"

not sure how to make Guix QA rebuild with the new patch

On Tue, Jan 24, 2023 at 11:37 PM Andy Tai <atai@atai.org> wrote:
Toggle quote (41 lines)
>
> updated patch attached
>
>
> On Tue, Jan 24, 2023 at 4:35 AM Simon Tournier <zimon.toutoune@gmail.com> wrote:
> >
> > The patch builds fine and it LTGM except one minor point.
> >
> > On dim., 22 janv. 2023 at 12:37, Andy Tai <atai@atai.org> wrote:
> >
> > This archive contains generated .gmo which are not in the source code
> > [1] and I do not know what is the usual Guix policy about that. Do we
> > re-generate them?
> >
> > Other said, these files are in the archive tar.gz [2].
> >
> > 1: <https://github.com/ice-wm/icewm/tree/3.3.1/po>
> > 2: <https://github.com/ice-wm/icewm/archive/refs/tags/3.3.1.tar.gz>
> >
>
> This I did not address in the revision because the second .tar.gz is
> available on the net, satisfying GPL's source requirement... but will
> revise if Guix policy demands otherwise
> >
> > > \ No newline at end of file
> >
> > This patch does not apply to current master. From my point of view, it
> > is worth to provide the base-commit (see --base option of
> > git-format-patch or git-send-email).
> >
> > And it helps if the new package is not added to the end of the file.
> > For instance, I would put it between i3lock-fancy and xmonad-next.
> >
>
> addressed as suggested
> >
> > Cheers,
> > simon



--
Andy Tai, atai@atai.org, Skype: licheng.tai, Line: andy_tai, WeChat: andytai1010
Year 2023 民國112年
自動的精神力是信仰與覺悟
自動的行為力是勞動與技能
From 58af949be6d43c4194c517874a021b43cbea1547 Mon Sep 17 00:00:00 2001
From: Andy Tai <atai@atai.org>
Date: Tue, 24 Jan 2023 23:25:07 -0800
Subject: [PATCH v2] gnu: Add icewm

* gnu/packages/wm.scm (icewm): New variable
---
gnu/packages/wm.scm | 59 +++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 59 insertions(+)

Toggle diff (81 lines)
diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index a860ed1f93..f2d3f6f1b3 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -100,6 +100,7 @@ (define-module (gnu packages wm)
#:use-module (gnu packages bison)
#:use-module (gnu packages build-tools)
#:use-module (gnu packages calendar)
+ #:use-module (gnu packages compression)
#:use-module (gnu packages check)
#:use-module (gnu packages datastructures)
#:use-module (gnu packages docbook)
@@ -763,6 +764,64 @@ (define-public i3lock-fancy
desktop environment.")
(license license:expat)))
+(define-public icewm
+ (package
+ (name "icewm")
+ (version "3.3.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "https://github.com/ice-wm/icewm/releases/download/"
+ version "/icewm-" version ".tar.lz"))
+ (sha256
+ (base32
+ "14vkv5r9rvwfj8gmdsrkkq7vxvk2j7z7wfybzc8ywj469yya5ppq"))))
+ (build-system gnu-build-system)
+ (native-inputs (list pkg-config))
+ (inputs (list fontconfig
+ fribidi
+ imlib2
+ libice
+ libjpeg-turbo
+ libsm
+ libxcomposite
+ libxdamage
+ libxext
+ libxfixes
+ libxft
+ libxinerama
+ libxpm
+ libxrandr
+ libxrender
+ libx11
+ lzip
+ perl))
+ (arguments
+ `(#:phases (modify-phases %standard-phases
+ (add-after 'unpack 'skip-failing-test
+ ;; strtest.cc tests failing due to $HOME and /etc setup
+ ;; difference under guix
+ (lambda _
+ (substitute* "src/Makefile.in"
+ (("TESTS = strtest\\$\\(EXEEXT\\)")
+ "TESTS = ")) #t)))))
+ (home-page "https://ice-wm.org/")
+ (synopsis "Window manager for the X Window System")
+ (description
+ "IceWM is a window manager for the X Window System. The goal of
+IceWM is speed, simplicity, and not getting in the user’s way. It comes with a
+taskbar with pager, global and per-window keybindings and a dynamic menu system.
+Application windows can be managed by keyboard and mouse. Windows
+can be iconified to the taskbar, to the tray, to the desktop or be made
+hidden. They are controllable by a quick switch window (Alt+Tab) and in a
+window list. A handful of configurable focus models are
+menu-selectable. Setups with multiple monitors are supported by RandR and
+Xinerama. IceWM is very configurable, themeable and well documented. It
+includes an optional external background wallpaper manager with transparency
+support, a simple session manager and a system tray.")
+ (license license:gpl2)))
+
+
(define-public xmonad-next
(package
(name "xmonad-next")

base-commit: 718223c58c20fa066527fb30da2b5dccca82913f
--
2.39.1
S
S
Simon Tournier wrote 3 days ago
(name . Andy Tai)(address . atai@atai.org)(address . 61010@debbugs.gnu.org)
865ycv6kbl.fsf@gmail.com
Hi,

On Tue, 24 Jan 2023 at 23:37, Andy Tai <atai@atai.org> wrote:

Toggle quote (4 lines)
> This I did not address in the revision because the second .tar.gz is
> available on the net, satisfying GPL's source requirement... but will
> revise if Guix policy demands otherwise

I do not understand what you mean. My point is that these .gmo files
are generated by the author of the release and they are _not_ included in
the upstream source code – the Git repository.

For most of the cases, the Guix project tries hard to package only from
the source code, i.e., build as much as possible from scratch.

Hence, the question: do we re-generate these files?


Cheers,
simon

PS: Indeed, sorry for the typo in my previous message. I wrote:

Other said, these files are in the archive tar.gz [2].

when *not* is missing. I wanted to say:

Other said, these files are *NOT* in the archive tar.gz [2].
A
A
Andy Tai wrote 40 hours ago
(name . Simon Tournier)(address . zimon.toutoune@gmail.com)(address . 61010@debbugs.gnu.org)
CAJsg1E8eR5XvrqJ-BLZxGAR2mJLgJbYdc-0f=-zY7ejuCfUadQ@mail.gmail.com
I just untar'd the

icewm-3.3.0.tar.lz

file (not tar.gz file, my bad for bad description before), in a clean
directory, and
the .gmo files are there
/share/software/icewm/icewm-3.3.0$ !find
find . -name *.gmo
./po/zh_CN.gmo
./po/pt_BR.gmo
./po/sk.gmo
./po/en.gmo
...

As we are getting the release tarball as the source, the git repo is
immaterial as far as this icewm version is concerned.

On Wed, Jan 25, 2023 at 2:10 AM Simon Tournier <zimon.toutoune@gmail.com> wrote:
Toggle quote (32 lines)
>
> Hi,
>
> On Tue, 24 Jan 2023 at 23:37, Andy Tai <atai@atai.org> wrote:
>
> > This I did not address in the revision because the second .tar.gz is
> > available on the net, satisfying GPL's source requirement... but will
> > revise if Guix policy demands otherwise
>
> I do not understand what you mean. My point is that these .gmo files
> are generated by the author of the release and they are _not_ included in
> the upstream source code – the Git repository.
>
> For most of the cases, the Guix project tries hard to package only from
> the source code, i.e., build as much as possible from scratch.
>
> Hence, the question: do we re-generate these files?
>
>
> Cheers,
> simon
>
> PS: Indeed, sorry for the typo in my previous message. I wrote:
>
> Other said, these files are in the archive tar.gz [2].
>
> when *not* is missing. I wanted to say:
>
> Other said, these files are *NOT* in the archive tar.gz [2].



--
Andy Tai, atai@atai.org, Skype: licheng.tai, Line: andy_tai, WeChat: andytai1010
Year 2023 民國112年
自動的精神力是信仰與覺悟
自動的行為力是勞動與技能
A
A
Andy Tai wrote 67 minutes ago
(name . Simon Tournier)(address . zimon.toutoune@gmail.com)(address . 61010@debbugs.gnu.org)
CAJsg1E-vtk1Eh2-rsgm2ZQo5wPCcTaGcW+0qs92e1UGWZQ=JdA@mail.gmail.com
OK I will make another patch tom re-generate the .gmo files in the
build process, even if that is probably "redundant" but will just run
one more step. First I need to figure out how these .gmo files are
generated as I don't deal with gettext much.

On Wed, Jan 25, 2023 at 10:02 PM Andy Tai <atai@atai.org> wrote:
Toggle quote (61 lines)
>
> I just untar'd the
>
> icewm-3.3.0.tar.lz
> (from https://github.com/ice-wm/icewm/releases/download/3.3.0/icewm-3.3.0.tar.lz)
>
> file (not tar.gz file, my bad for bad description before), in a clean
> directory, and
> the .gmo files are there
> /share/software/icewm/icewm-3.3.0$ !find
> find . -name *.gmo
> ./po/zh_CN.gmo
> ./po/pt_BR.gmo
> ./po/sk.gmo
> ./po/en.gmo
> ...
>
> As we are getting the release tarball as the source, the git repo is
> immaterial as far as this icewm version is concerned.
>
> On Wed, Jan 25, 2023 at 2:10 AM Simon Tournier <zimon.toutoune@gmail.com> wrote:
> >
> > Hi,
> >
> > On Tue, 24 Jan 2023 at 23:37, Andy Tai <atai@atai.org> wrote:
> >
> > > This I did not address in the revision because the second .tar.gz is
> > > available on the net, satisfying GPL's source requirement... but will
> > > revise if Guix policy demands otherwise
> >
> > I do not understand what you mean. My point is that these .gmo files
> > are generated by the author of the release and they are _not_ included in
> > the upstream source code – the Git repository.
> >
> > For most of the cases, the Guix project tries hard to package only from
> > the source code, i.e., build as much as possible from scratch.
> >
> > Hence, the question: do we re-generate these files?
> >
> >
> > Cheers,
> > simon
> >
> > PS: Indeed, sorry for the typo in my previous message. I wrote:
> >
> > Other said, these files are in the archive tar.gz [2].
> >
> > when *not* is missing. I wanted to say:
> >
> > Other said, these files are *NOT* in the archive tar.gz [2].
>
>
>
> --
> Andy Tai, atai@atai.org, Skype: licheng.tai, Line: andy_tai, WeChat: andytai1010
> Year 2023 民國112年
> 自動的精神力是信仰與覺悟
> 自動的行為力是勞動與技能



--
Andy Tai, atai@atai.org, Skype: licheng.tai, Line: andy_tai, WeChat: andytai1010
Year 2023 民國112年
自動的精神力是信仰與覺悟
自動的行為力是勞動與技能
?