Upcoming release

36 views
Skip to first unread message

Chris Spiegel

unread,
Nov 9, 2021, 2:22:06 PM11/9/21
to gargl...@googlegroups.com
Hi all,

It's been over two years since the last Gargoyle release, and there
have been a lot of changes since then, so it's time for a new release.

Any testing would be appreciated. We're now using Github Actions to
build binaries for various platforms each time a code change occurs.
These are available at https://github.com/garglk/garglk/actions.
Newest are at the top.

For Linux, the AppImage workflow includes a binary that should run on
most distributions.

For Windows, the MinGW workflow includes two installers, one for
32-bit Windows, the other for 64-bit.

For macOS, the macoS (DMG) workflow includes a disk image.

If you want to build on your own, the INSTALL.md file has
instructions; if there are problems, let me know, and I can work to
update the doc.

Most changes should be non-visible, in general. Some things which
might be worth looking at, though:

• LCD subpixel rendering is a lot more configurable (see the lcd
options in garglk.ini)
• Bundled fonts no longer exist (this should be transparent for
end-users, but is something packagers should be aware of)
• Glk 0.7.5 is implemented, with the major change being support for
resource streams
• Haiku is an experimentally-supported OS (this is due to Qt being the
default UI toolkit now for all platforms but Mac)

I don't think there's anything major left to do, code-wise, before
release, so this is more or less what things will look like, barring
any problems.

- Chris

Andrew Plotkin

unread,
Nov 9, 2021, 2:50:35 PM11/9/21
to gargl...@googlegroups.com
On Tue, 9 Nov 2021, Chris Spiegel wrote:

> Hi all,
>
> It's been over two years since the last Gargoyle release, and there
> have been a lot of changes since then, so it's time for a new release.
>
> Any testing would be appreciated. We're now using Github Actions to
> build binaries for various platforms each time a code change occurs.
> These are available at https://github.com/garglk/garglk/actions.
> Newest are at the top.

The Mac app works. As discussed, it uses low-res mode. I think that looks
pretty icky, but I never found a better workaround than "resize the
window", so I have no leg to stand on here. :)

It's an Intel-only binary, and unsigned. These days we really should
distribute an Intel+ARM signed app. (M1 Macs run Intel binaries today, but
that will stop working in about five years.)

I don't remember the compile options for including ARM. I'll try to figure
that out. As for signing and notarizing, I'm willing to do that dance for
the release.

--Z


--
"And Aholibamah bare Jeush, and Jaalam, and Korah: these were the borogoves..."
*

Chris Spiegel

unread,
Nov 9, 2021, 7:18:06 PM11/9/21
to gargl...@googlegroups.com
On Tue, Nov 9, 2021 at 11:50 AM Andrew Plotkin <zgo...@eblong.com> wrote:
> The Mac app works. As discussed, it uses low-res mode. I think that looks
> pretty icky, but I never found a better workaround than "resize the
> window", so I have no leg to stand on here. :)

I wish I had a better answer to this! There were some resize patches
earlier that caused more problems than they solved, but it certainly
would be nice to get a proper fix in.

> It's an Intel-only binary, and unsigned. These days we really should
> distribute an Intel+ARM signed app. (M1 Macs run Intel binaries today, but
> that will stop working in about five years.)

Agreed, and these are just for the convenience of testing at random
points during development. I'm at the mercy of the VM/environment
Github provides for its actions, and I'm really not sure if it's going
to generate a useful (Intel) binary in the general case. If it does,
and all it needs is signing, then that's great...

> I don't remember the compile options for including ARM. I'll try to figure
> that out. As for signing and notarizing, I'm willing to do that dance for
> the release.

... and I really appreciate you taking the time to do this part. If
the Mac image that Github provides is, in your estimation, sufficient,
and all it needs is signing, I'm on board with that. I'll defer to
your expertise there. If you can cross compile for ARM from Intel,
and if that can be added to the Github action, that'd be great too.
If you do get the ARM compiling working, I'm happy to add steps to the
action to get an automated build.


- Chris

Andrew Plotkin

unread,
Nov 10, 2021, 12:34:49 PM11/10/21
to gargl...@googlegroups.com
On Tue, 9 Nov 2021, Chris Spiegel wrote:

>> I don't remember the compile options for including ARM. I'll try to figure
>> that out. As for signing and notarizing, I'm willing to do that dance for
>> the release.
>
> ... and I really appreciate you taking the time to do this part.

The skinny on ARM:

It's easy enough to tell cmake to cross-compile a universal (x86+arm)
binary. You add to the cmake command line:

-DCMAKE_OSX_ARCHITECTURES="arm64;x86_64"

Everything compiled from source then comes out right.

However, the plan falls down when trying to deal with the libraries pulled
from homebrew (libSDL2, libjpeg, etc). Homebrew installs these as
single-architecture libraries matching the host machine. I looked for
discussion about getting Homebrew to install universal libraries, and
found a lot of "no thanks, that's too hard."

So I see two possibilities:

- Build all the libraries from source. Either use git submodules or just
stuff the source in the repository. This would simplify the
gargoyle_osx.sh script, which currently does a dance to copy and rejigger
all those library files. But, of course, it would slow down builds a lot.

- Build separate Gargoyle binaries on Intel and ARM Macs. This is probably
the sensible choice, but I don't have an ARM Mac yet so I can't help with
it. We'd want to ask around for another volunteer.

Adam Thornton

unread,
Nov 10, 2021, 12:51:32 PM11/10/21
to Andrew Plotkin, garglk-dev
I have an ARM Mac, but I know very little about proper MacOS development -- I live in a Linux-and-container world and my Mac is basically a very fancy terminal.

Right now my life is pretty chaotic, but I can try to do some ARM compilation given some hand holding.

Adam

igna...@mac.com

unread,
Nov 10, 2021, 9:29:06 PM11/10/21
to garglk-dev
I've tried the test binaries for macOS, and also tried building the current code myself on my Intel Mac, and I had problems with anything that displays images. Tried imagetest.gblorb, Andromeda 1983, City of Secrets and some others. Some would just hang when trying to display an image, others would display black squares.

Does anyone else have this problem?

Petter

igna...@mac.com

unread,
Dec 3, 2021, 11:44:47 AM12/3/21
to garglk-dev

I'll just mention here as well that the images problem was fixed in the repository, and that Mac builds now work, including on ARM.

Chris Spiegel

unread,
Dec 30, 2021, 9:37:09 AM12/30/21
to gargl...@googlegroups.com
I've just pushed out a branch gargoyle-2021.1
(https://github.com/garglk/garglk/tree/gargoyle-2021.1) that I hope
will be the final 2021.1 release. The only outstanding issue is HiDPI,
which is somewhat of a tough nut to crack. At this point at least the
visuals are no worse than in the 2019 release, and since existing
releases rely on ancient libraries, a new release is really needed, at
least for Linux/Unix systems which have deprecated or removed these
libraries. With luck we'll have a HiDPI-enabled release for 2022.

Andrew and Petter, you have expressed willingness to do Mac builds for
Intel and M1, respectively; if that's still the case, it'd be much
appreciated if you could build those from this branch at your leisure.
I'll provide Windows binaries as well as a Linux AppImage.

If no problems crop up, this branch will be the final 2021.1 as-is.

--
Chris

Andrew Plotkin

unread,
Dec 30, 2021, 6:18:52 PM12/30/21
to gargl...@googlegroups.com
On Thu, 30 Dec 2021, Chris Spiegel wrote:

> Andrew and Petter, you have expressed willingness to do Mac builds for
> Intel and M1, respectively; if that's still the case, it'd be much
> appreciated if you could build those from this branch at your leisure.

No problem. I have uploaded a signed Intel build here:
https://eblong.com/zarf/tmp/garglk/

I built this on the latest MacOS (Monterey 12.1), so it may not run on
anything older. Sorry about this! I have not investigated the
possibilities of finding build environments for older MacOS.

Chris Spiegel

unread,
Dec 31, 2021, 12:14:45 PM12/31/21
to gargl...@googlegroups.com
On Thu, Dec 30, 2021 at 3:18 PM Andrew Plotkin <zgo...@eblong.com> wrote:
>
> On Thu, 30 Dec 2021, Chris Spiegel wrote:
>
> > Andrew and Petter, you have expressed willingness to do Mac builds for
> > Intel and M1, respectively; if that's still the case, it'd be much
> > appreciated if you could build those from this branch at your leisure.
>
> No problem. I have uploaded a signed Intel build here:
> https://eblong.com/zarf/tmp/garglk/
>
> I built this on the latest MacOS (Monterey 12.1), so it may not run on
> anything older. Sorry about this! I have not investigated the
> possibilities of finding build environments for older MacOS.

Thank you! I tested on a Big Sur VM I have, and it runs just fine
there. Those two probably cover a decent amount of current macOS
users, at least.

However, in response to the 2021.1 branching, Dannii has indicated
that he'll be able to have a fix for a TADS banner bug within the next
couple of days. I think it's worth having that fix in, so if it's not
too much trouble, would you be willing to do another build when that
lands? If it proves more work than he anticipates, I'll just use the
build you provided here.

--
Chris

Andrew Plotkin

unread,
Dec 31, 2021, 12:28:56 PM12/31/21
to gargl...@googlegroups.com
On Fri, 31 Dec 2021, Chris Spiegel wrote:

> However, in response to the 2021.1 branching, Dannii has indicated
> that he'll be able to have a fix for a TADS banner bug within the next
> couple of days.

Not a problem.

igna...@mac.com

unread,
Jan 3, 2022, 10:55:07 AM1/3/22
to garglk-dev
Right, so I'm holding off on making an Apple Silicon binary until Dannii's PR is merged.

Just a slightly off-topic note on hi-dpi: The Mac test build I linked to in the hi-dpi PR works without problems for me, so it would be great if somebody else could test it. The problem with the "hidpi" setting could be solved by just removing it, I think.

Link here:

Petter

Chris Spiegel

unread,
Jan 29, 2022, 5:48:43 PM1/29/22
to gargl...@googlegroups.com
After a brief hiatus, it's now (again!) release time, and since we've
hit a new year, the release will become 2022.1. I've pushed a branch
called releases/2022.1 which, barring any problems, will be the
official 2022.1 release. Andrew and Petter, when you have time, can
you please do macOS builds from this branch? When those are
available, I'll provide Windows binaries and a Linux AppImage, then
tag the release.

Thanks everyone for helping get this release out!

--
Chris

igna...@mac.com

unread,
Jan 30, 2022, 6:56:47 PM1/30/22
to garglk-dev
I made a notarized Apple Silicon build and sent it to you (Chris Spiegel) via WeTransfer. Let's hope it works!

Petter

Andrew Plotkin

unread,
Jan 30, 2022, 9:42:50 PM1/30/22
to garglk-dev
On Sat, 29 Jan 2022, 'igna...@mac.com' via garglk-dev wrote:

> I made a notarized Apple Silicon build and sent it to you (Chris Spiegel)
> via WeTransfer. Let's hope it works!

The Intel version is at
https://eblong.com/zarf/tmp/garglk/gargoyle-2022.1-mac.dmg

Chris Spiegel

unread,
Jan 31, 2022, 1:13:44 AM1/31/22
to garglk-dev
Thank you both for the Mac builds. I have published 2022.1 to
https://github.com/garglk/garglk/releases/tag/2022.1.
Reply all
Reply to author
Forward
0 new messages