Re: discussion: GNUstep developer tools as AppImage?

[email protected] Tue, 26 May 2026 17:11:28 +0100
Newsgroups gmane.comp.lib.gnustep.general
Message-ID <[email protected]>
--Apple-Mail=_91566411-2D8E-442A-8FAB-3C7480194C1C
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=utf-8

HI all,

I used some time today to prototype this in GNUstep make, and =
successfully built a portable image of EasyDiff:

https://github.com/gnustep/tools-make/pull/70

I think lots of caveats (documented in the PR description), but it =
basically works. It would be nice to have CI that builds non-flattened =
AppImages that work on multiple architectures, for example.

Best wishes,

Graham.

> On 25 May 2026, at 12:37, [email protected] via =
Discussion list for the GNUstep programming environment =
<[email protected]> wrote:
>=20
> Hi,
>=20
>> Am 25.05.2026 um 10:41 schrieb Riccardo Mottola =
<[email protected]>:
>>=20
>> Hi,
>>=20
>> [email protected] via Discussion list for the =
GNUstep programming environment wrote:
>>> I think, GNUstep needs lower hurdles for entering our ecosystem and =
so I had the thought =E2=80=9EWhat if we distribute the GNUstep dev =
tools as AppImage?=E2=80=9C, e.g. bundling everything needed (basic =
GNUstep installation; compiler, linker, make; Gorm.app and =
ProjectCenter.app; some example code) into an AppImage like PikoPixel =
did, so that our App can be run everywhere AppImages are supported.
>>>=20
>>> What do you think about the idea, would it help our cause?
>>>=20
>>> What would be the prerequisites for such an attempt?
>>>=20
>>> How much work would it be?
>>>=20
>>=20
>> I don't know about AppImages but GNUstep supports packing everything =
into a single directory containing Application, frameworks, themes, =
preferences into a single folder.
>>=20
>> It is useful to ship a single application with its environment, I use =
it with success on windows and have scripts for that. Very convenient.
>> Theoretically it can also contain more than one app.
>>=20
>> It is instead not very smart having several directories for each app, =
since that way you have multiple runtime installations and running them =
in concurrency may cause issues (beyond space waste). I don't know how =
AppImages would handle this.
>=20
> I mentioned AppImages because those are a recognized way to distribute =
apps f=C3=BCr Linux (and BSD? I don=E2=80=99t know). Yeah, they somewhat =
reinvented the wheel after OpenSteps app bundle, but they still seem to =
be the way commonly used. Please correct me if I am wrong.=20
>=20
> Despite all this I am off course open to other but similar easy ways =
to distribute (binary) apps to users.
>=20
>>=20
>> -R
>=20
> kind regards,
>=20
> 	Lars


--Apple-Mail=_91566411-2D8E-442A-8FAB-3C7480194C1C
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
	charset=utf-8

<html aria-label=3D"message body"><head><meta http-equiv=3D"content-type" =
content=3D"text/html; charset=3Dutf-8"></head><body =
style=3D"overflow-wrap: break-word; -webkit-nbsp-mode: space; =
line-break: after-white-space;">HI all,<div><br></div><div>I used some =
time today to prototype this in GNUstep make, and successfully built a =
portable image of EasyDiff:</div><div><br></div><div><a =
href=3D"https://github.com/gnustep/tools-make/pull/70">https://github.com/=
gnustep/tools-make/pull/70</a></div><div><br></div><div>I think lots of =
caveats (documented in the PR description), but it basically works. It =
would be nice to have CI that builds non-flattened AppImages that work =
on multiple architectures, for example.</div><div><br></div><div>Best =
wishes,</div><div><br></div><div>Graham.<br =
id=3D"lineBreakAtBeginningOfMessage"><div><br><blockquote =
type=3D"cite"><div>On 25 May 2026, at 12:37, =
[email protected] via Discussion list for the GNUstep =
programming environment &lt;[email protected]&gt; wrote:</div><br =
class=3D"Apple-interchange-newline"><div><meta charset=3D"UTF-8"><span =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; float: none; =
display: inline !important;">Hi,</span><br style=3D"caret-color: rgb(0, =
0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
orphans: 2; text-align: start; text-indent: 0px; text-transform: none; =
white-space: normal; widows: 2; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration-line: none; =
text-decoration-thickness: auto; text-decoration-style: solid;"><br =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration-line: none; =
text-decoration-thickness: auto; text-decoration-style: =
solid;"><blockquote type=3D"cite" style=3D"font-family: Helvetica; =
font-size: 12px; font-style: normal; font-variant-caps: normal; =
font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; =
text-indent: 0px; text-transform: none; white-space: normal; widows: 2; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-line: =
none; text-decoration-thickness: auto; text-decoration-style: solid;">Am =
25.05.2026 um 10:41 schrieb Riccardo Mottola =
&lt;[email protected]&gt;:<br><br>Hi,<br><br>lars.sonchocky-helld=
[email protected] via Discussion list for the GNUstep programming =
environment wrote:<br><blockquote type=3D"cite">I think, GNUstep needs =
lower hurdles for entering our ecosystem and so I had the thought =
=E2=80=9EWhat if we distribute the GNUstep dev tools as AppImage?=E2=80=9C=
, e.g. bundling everything needed (basic GNUstep installation; compiler, =
linker, make; Gorm.app and ProjectCenter.app; some example code) into an =
AppImage like PikoPixel did, so that our App can be run everywhere =
AppImages are supported.<br><br>What do you think about the idea, would =
it help our cause?<br><br>What would be the prerequisites for such an =
attempt?<br><br>How much work would it be?<br><br></blockquote><br>I =
don't know about AppImages but GNUstep supports packing everything into =
a single directory containing Application, frameworks, themes, =
preferences into a single folder.<br><br>It is useful to ship a single =
application with its environment, I use it with success on windows and =
have scripts for that. Very convenient.<br>Theoretically it can also =
contain more than one app.<br><br>It is instead not very smart having =
several directories for each app, since that way you have multiple =
runtime installations and running them in concurrency may cause issues =
(beyond space waste). I don't know how AppImages would handle =
this.<br></blockquote><br style=3D"caret-color: rgb(0, 0, 0); =
font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
orphans: 2; text-align: start; text-indent: 0px; text-transform: none; =
white-space: normal; widows: 2; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration-line: none; =
text-decoration-thickness: auto; text-decoration-style: solid;"><span =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; float: none; =
display: inline !important;">I mentioned AppImages because those are a =
recognized way to distribute apps f=C3=BCr Linux (and BSD? I don=E2=80=99t=
 know). Yeah, they somewhat reinvented the wheel after OpenSteps app =
bundle, but they still seem to be the way commonly used. Please correct =
me if I am wrong.<span =
class=3D"Apple-converted-space">&nbsp;</span></span><br =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration-line: none; =
text-decoration-thickness: auto; text-decoration-style: solid;"><br =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration-line: none; =
text-decoration-thickness: auto; text-decoration-style: solid;"><span =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; float: none; =
display: inline !important;">Despite all this I am off course open to =
other but similar easy ways to distribute (binary) apps to =
users.</span><br style=3D"caret-color: rgb(0, 0, 0); font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: 400; letter-spacing: normal; orphans: 2; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration-line: none; text-decoration-thickness: auto; =
text-decoration-style: solid;"><br style=3D"caret-color: rgb(0, 0, 0); =
font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
orphans: 2; text-align: start; text-indent: 0px; text-transform: none; =
white-space: normal; widows: 2; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration-line: none; =
text-decoration-thickness: auto; text-decoration-style: =
solid;"><blockquote type=3D"cite" style=3D"font-family: Helvetica; =
font-size: 12px; font-style: normal; font-variant-caps: normal; =
font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; =
text-indent: 0px; text-transform: none; white-space: normal; widows: 2; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-line: =
none; text-decoration-thickness: auto; text-decoration-style: =
solid;"><br>-R<br></blockquote><br style=3D"caret-color: rgb(0, 0, 0); =
font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
orphans: 2; text-align: start; text-indent: 0px; text-transform: none; =
white-space: normal; widows: 2; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration-line: none; =
text-decoration-thickness: auto; text-decoration-style: solid;"><span =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; float: none; =
display: inline !important;">kind regards,</span><br style=3D"caret-color:=
 rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: =
normal; font-variant-caps: normal; font-weight: 400; letter-spacing: =
normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: 2; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration-line: none; =
text-decoration-thickness: auto; text-decoration-style: solid;"><br =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: 400; =
letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration-line: none; =
text-decoration-thickness: auto; text-decoration-style: solid;"><span =
class=3D"Apple-tab-span" style=3D"caret-color: rgb(0, 0, 0); =
font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: 400; letter-spacing: normal; =
orphans: 2; text-align: start; text-indent: 0px; text-transform: none; =
white-space: pre; widows: 2; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration-line: none; =
text-decoration-thickness: auto; text-decoration-style: solid;">	=
</span><span style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; =
font-size: 12px; font-style: normal; font-variant-caps: normal; =
font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; =
text-indent: 0px; text-transform: none; white-space: normal; widows: 2; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: =
none; float: none; display: inline =
!important;">Lars</span></div></blockquote></div><br></div></body></html>=

--Apple-Mail=_91566411-2D8E-442A-8FAB-3C7480194C1C--