I'm not sure why this happens:
warning: Source file is more recent than executable.
$ git config -l core.editor=emacs core.repositoryformatversion=0 core.filemode=true core.bare=false core.logallrefupdates=true remote.origin.url=https://aur.archlinux.org/tme.git remote.origin.fetch=+refs/heads/*:refs/remotes/origin/* branch.master.remote=origin branch.master.merge=refs/heads/master
makepkg -si
$ sudo find src -type f -newer pkg/tme/usr/bin/tmesh| grep 'c$' src/tme-0.12rc10/generic/fb-xlat-auto.c src/tme-0.12rc10/libtme/recode-host.c src/tme-0.12rc10/host/display/display.c
But the same segfault happens if I build the tme-0.12rc10.tar.xz sources completely outside of PKGBUILD. The segfault has been happening for a while now. I was afraid it was due to my conversion of as_echo but the PKGBUILD does not use that and the segfault happens in both cases.
That usually indicates that the build process was done after the last installation. The first 2 files (fl-xlat-auto.c, recode-host.c) are (re)generated during the build process. Since the build from AUR is done in-place, the src files get overwritten. In a regular vpath build, they would be in the build directory. The display.c file is written to via the last PKGBUILD of course. If you do a clean build/install it should (hopefully) go away.
Since you are using X, you can try installing the Perl X11::Protocol module before building tme. I have just added it as a build dependency to the AUR PKGBUILD, so it should install it automatically after you update your repo and rebuild the package clean. You should probably uninstall the current installation first and do everything clean again just to make sure. The configure will detect the Perl module and regenerate the fb-xlat-auto.c using the fb-xlat-auto.pl script in the generic subdir. It relies on that Perl module, so it won't run if it isn't found, instead relying on a default config. This should detect your current X settings and generate custom framebuffer translations for your screen. Let me know if this makes a difference.
Reply To phabrics
Since you are using X, you can try installing the Perl X11::Protocol module before building tme. I have just added it as a build dependency to the AUR PKGBUILD, so it should install it automatically after you update your repo and rebuild the package clean. You should probably uninstall the current installation first and do everything clean again just to make sure. The configure will detect the Perl module and regenerate the fb-xlat-auto.c using the fb-xlat-auto.pl script in the generic subdir. It relies on that Perl module, so it won't run if it isn't found, instead relying on a default config. This should detect your current X settings and generate custom framebuffer translations for your screen. Let me know if this makes a difference.
$ yay -R tme $ sudo rm -r pkg/ src tme-0.12rc10-1-x86_64.pkg.tar.zst
makepkg -si ... checking for perl4.036... no checking for perl4... no checking for perl... /usr/bin/perl ... checking for perl module X11::Protocol version 0.56... ok ... /usr/bin/perl fb-xlat-auto.pl src 1152x900d1b1s0p32om 1152x900d8b8s0p32ommi8 1152x900d1b1s0p32omccmi8 dst d32b32s0p32olml_r0xffff0000_g0xff00ff00_b0xff0000ff d24b32s0p32olml_r0xff0000_g0xff00_b0xff > fb-xlat-auto.in || \ echo "src 1152x900d1b1s0p32om 1152x900d8b8s0p32ommi8 1152x900d1b1s0p32omccmi8 dst d32b32s0p32olml_r0xffff0000_g0xff00ff00_b0xff0000ff d24b32s0p32olml_r0xff0000_g0xff00_b0xff" > fb-xlat-auto.in cat fb-xlat-auto.in | xargs /bin/sh fb-xlat-auto.sh > fb-xlat-auto.c
Thread 1 "tmesh" received signal SIGSEGV, Segmentation fault. 0x00007f54c2315ce3 in tme_fb_xlat1 (src=0x56261e6ca5b0, dst=0x56261e6d2b30) at /home/ambie/src/aur-tme/tme/src/tme-0.12rc10/generic/fb-xlat-auto.c:6741 warning: Source file is more recent than executable. 6741 TME_FB_XLAT_SHIFT_DST(dst_fifo0_may_be_unaligned,
The src and dst addresses changed since the last gdb output.
I tried out your config at https://github.com/ambiamber/Run-Sun3-SunOS-4.1.1 using my copy of tme. I am still not seeing the segfault that you are seeing. I can only assume that this is an environmental issue of some sort. May I ask what config your machine is running? In particular, the processor & screen specs. Maybe there is something there that is causing the condition that I haven't been able to reproduce in testing. If you don't mind, can you send me the config.log from your most recent build?
I'm also wondering if there might be a conflict with tme-0.8. If you have it installed on the same machine, then there is definitely the possibility for there to be some weird interaction between them. I seem to recall having this issue a long, long time ago when I was first trying to port. I don't remember how I resolved it, but having a clean machine (no previous tme installs) is probably the best way to test. There could also be an artifact with some of the libtool libs that are already existing.
Reply To phabrics
I tried out your config at https://github.com/ambiamber/Run-Sun3-SunOS-4.1.1 using my copy of tme. I am still not seeing the segfault that you are seeing. I can only assume that this is an environmental issue of some sort. May I ask what config your machine is running? In particular, the processor & screen specs. Maybe there is something there that is causing the condition that I haven't been able to reproduce in testing. If you don't mind, can you send me the config.log from your most recent build?
Config from using PKGBUILD to compile tme.
https://gist.github.com/ambiamber/bd42b155102a1c39b7bcb0183b201a87
I turned on debugging when that configure job was run. The issue happens with or without debugging.
$ git diff PKGBUILD diff --git a/PKGBUILD b/PKGBUILD index 2ba74dc..3ec4abf 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -10,7 +10,7 @@ makedepends=('perl-x11-protocol') depends=('libvncserver' 'gtk4' 'sdl2') source=("https://osdn.net/dl/nme/${pkgname}-${pkgver}.tar.xz") sha256sums=('e2c90f7c63de196c7bf52c9b06f17e2ab9db86fa86d8c3ff3ee2360fb20914f8') -options=('libtool') +options=(libtool debug !strip) install=$pkgname.install prepare() @@ -23,7 +23,7 @@ build() { cd "$pkgname-$pkgver" if test "x${CARCH}" = xx86_64; then - ./configure --prefix=/usr --disable-ltdl-install --disable-recode + ./configure --prefix=/usr --disable-ltdl-install --disable-recode CFLAGS=-g3 else ./configure --prefix=/usr --disable-ltdl-install fi
Reply To ambie
Reply To phabrics
I tried out your config at https://github.com/ambiamber/Run-Sun3-SunOS-4.1.1 using my copy of tme. I am still not seeing the segfault that you are seeing. I can only assume that this is an environmental issue of some sort. May I ask what config your machine is running? In particular, the processor & screen specs. Maybe there is something there that is causing the condition that I haven't been able to reproduce in testing. If you don't mind, can you send me the config.log from your most recent build?
Config from using PKGBUILD to compile tme. https://gist.github.com/ambiamber/bd42b155102a1c39b7bcb0183b201a87 I turned on debugging when that configure job was run. The issue happens with or without debugging.
Thank you so much for doing this, Ambie. I hope we are getting closer to figuring this out. I replicated your build exactly and I still got it to work for me. No difference in the compiler flags. The architecture is the same. My kernel is one revision lower (6.2.12 vs. 6.2.13). The only differences are in the relative paths we use and the PATH environment. This would seem to indicate that maybe the environment variables are making the difference? I should point out that tme-0.12 no longer requires anything to be set, unless the paths are not the installation ones. So, there is no need to set LTDL_LIBRARY_PATH or LD_LIBRARY_PATH. I don't know if you are setting those.
Here is my config for the exact same PKGBUILD to compile tme
https://gist.github.com/phabrics/3bdf6dd0f668bda31a72827917dfe4f3
Here is my local "env" run showing the environment variables under which I was able to run "tmesh SUN3" using your project:
SHELL=/bin/bash SESSION_MANAGER=local/springfield:@/tmp/.ICE-unix/455,unix/springfield:/tmp/.ICE-unix/455 WINDOWID=46137347 COLORTERM=truecolor XDG_CONFIG_DIRS=/etc/xdg XDG_MENU_PREFIX=xfce- TERMCAP= SSH_AUTH_SOCK=/tmp/ssh-XXXXXXIETsef/agent.553 INSIDE_EMACS=28.2,comint DESKTOP_SESSION=xfce SSH_AGENT_PID=554 GTK_MODULES=canberra-gtk-module XDG_SEAT=seat0 PWD=/home/phabrics/github/phabrics/Run-Sun3-SunOS-4.1.1 LOGNAME=phabrics XDG_SESSION_TYPE=tty PANEL_GDK_CORE_DEVICE_EVENTS=0 SYSTEMD_EXEC_PID=307 WINDOWPATH=1 MOTD_SHOWN=pam HOME=/home/phabrics LANG=en_US.UTF-8 XDG_CURRENT_DESKTOP=XFCE COLUMNS=238 VTE_VERSION=7201 INVOCATION_ID=04a4428087244a55b54b25aa7cb8ac49 XDG_SESSION_CLASS=user TERM=dumb USER=phabrics DISPLAY=:0.0 SHLVL=2 XDG_VTNR=1 XDG_SESSION_ID=1 XDG_RUNTIME_DIR=/run/user/1000 DEBUGINFOD_URLS=https://debuginfod.archlinux.org XDG_DATA_DIRS=/usr/local/share:/usr/share PATH=/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus MAIL=/var/spool/mail/phabrics OLDPWD=/home/phabrics _=/usr/bin/env
I think the next step would be for me to try testing your build. If you can send the package you built (.zst file), I can install it on my machine and see if I get the error. If so, I might be able to debug it. Much appreciated.
I have uploaded my built package to the Downloads section of this project. It is under Downloads->aur->0.12rc10->tme-0.12rc10-1-x84_64-1.tar.xz. This is the debug version as noted, and the PKGBUILD used to build it is in the same folder for reference.
If you wish to give this a try, you can download it now and install it with "pacman -U" or similar. Hope this helps!
I see you are using xfce while I am using gnome. I went and created an Arch Linux VM with xfce and lightdm.
I started with a prefabricated Arch Linux qemu qcow2 image from https://geo.mirror.pkgbuild.com/images/ to save me a huge amount of time compared to installing Arch from scratch. It still took time to put Xorg and xfce and lightdm on. The result is that I have a "clean" build environment, clean in that it does not have a lot of packages installed so that missing dependencies will show up.
[arch@tme ~]$ yay -S tme AUR Explicit (1): tme-0.12rc10-1 Sync Dependency (3): libvncserver-0.9.14-2, gtk4-1:4.10.3-1, sdl2-2.26.5-1 :: (1/1) Downloaded PKGBUILD: tme 1 tme (Build Files Exist) ==> Packages to cleanBuild? ==> [N]one [A]ll [Ab]ort [I]nstalled [No]tInstalled or (1 2 3, 1-3, ^4) ==> 1 tme (Build Files Exist) ==> Diffs to show? ==> [N]one [A]ll [Ab]ort [I]nstalled [No]tInstalled or (1 2 3, 1-3, ^4) ==> ==> Making package: tme 0.12rc10-1 (Thu May 4 14:32:31 2023) ==> Retrieving sources... -> Downloading tme-0.12rc10.tar.xz... % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 2 0 2 0 0 5 0 --:--:-- --:--:-- --:--:-- 5 100 2 0 2 0 0 0 0 --:--:-- 0:00:03 --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- 0:00:03 --:--:-- 0 100 1671k 100 1671k 0 0 260k 0 0:00:06 0:00:06 --:--:-- 698k ==> Validating source files with sha256sums... tme-0.12rc10.tar.xz ... Passed :: (1/1) Parsing SRCINFO: tme resolving dependencies... looking for conflicting packages... Packages (17) graphene-1.10.8-1 gssdp-1.6.2-1 gst-plugins-bad-libs-1.22.2-1 gst-plugins-base-libs-1.22.2-1 gstreamer-1.22.2-1 gupnp-1:1.6.3-1 gupnp-igd-1.6.0-1 hidapi-0.13.1-2 libnice-0.1.21-2 libva-2.18.0-1 libxkbcommon-x11-1.5.0-1 libxv-1.0.12-1 orc-0.4.33-1 wayland-protocols-1.31-1 gtk4-1:4.10.3-1 libvncserver-0.9.14-2 sdl2-2.26.5-1 Total Download Size: 14.76 MiB Total Installed Size: 76.98 MiB :: Proceed with installation? [Y/n] :: Retrieving packages... gtk4-1:4.10.3-1-... 6.0 MiB 2.61 MiB/s 00:02 [######################] 100% gst-plugins-bad-... 2.4 MiB 6.12 MiB/s 00:00 [######################] 100% gst-plugins-base... 2.2 MiB 7.38 MiB/s 00:00 [######################] 100% gstreamer-1.22.2... 1824.5 KiB 7.13 MiB/s 00:00 [######################] 100% sdl2-2.26.5-1-x86_64 987.6 KiB 5.67 MiB/s 00:00 [######################] 100% libnice-0.1.21-2... 313.9 KiB 3.69 MiB/s 00:00 [######################] 100% orc-0.4.33-1-x86_64 249.0 KiB 3.86 MiB/s 00:00 [######################] 100% libvncserver-0.9... 231.1 KiB 3.76 MiB/s 00:00 [######################] 100% graphene-1.10.8-... 196.3 KiB 3.04 MiB/s 00:00 [######################] 100% libva-2.18.0-1-x... 183.3 KiB 3.14 MiB/s 00:00 [######################] 100% gupnp-1:1.6.3-1-... 123.9 KiB 1333 KiB/s 00:00 [######################] 100% wayland-protocol... 76.5 KiB 879 KiB/s 00:00 [######################] 100% gssdp-1.6.2-1-x86_64 59.4 KiB 782 KiB/s 00:00 [######################] 100% hidapi-0.13.1-2-... 40.6 KiB 865 KiB/s 00:00 [######################] 100% libxv-1.0.12-1-x... 35.5 KiB 826 KiB/s 00:00 [######################] 100% gupnp-igd-1.6.0-... 28.8 KiB 480 KiB/s 00:00 [######################] 100% libxkbcommon-x11... 22.5 KiB 401 KiB/s 00:00 [######################] 100% Total (17/17) 14.8 MiB 3.01 MiB/s 00:05 [######################] 100% (17/17) checking keys in keyring [######################] 100% (17/17) checking package integrity [######################] 100% (17/17) loading package files [######################] 100% (17/17) checking for file conflicts [######################] 100% (17/17) checking available disk space [######################] 100% :: Running pre-transaction hooks... (1/1) etckeeper: pre-transaction commit [master 6162f78] saving uncommitted changes in /etc prior to pacman run Author: arch <arch@tme> 1 file changed, 1 insertion(+), 1 deletion(-) :: Processing package changes... ( 1/17) installing graphene [######################] 100% ( 2/17) installing gstreamer [######################] 100% Optional dependencies for gstreamer python: gst-plugins-doc-cache-generator ( 3/17) installing orc [######################] 100% ( 4/17) installing libxv [######################] 100% ( 5/17) installing gst-plugins-base-libs [######################] 100% ( 6/17) installing libxkbcommon-x11 [######################] 100% ( 7/17) installing libva [######################] 100% Optional dependencies for libva intel-media-driver: backend for Intel GPUs (>= Broadwell) libva-intel-driver: backend for Intel GPUs (<= Haswell) libva-mesa-driver: backend for AMD and Nvidia GPUs ( 8/17) installing gssdp [######################] 100% Optional dependencies for gssdp gtk4: gssdp-device-sniffer [pending] ( 9/17) installing gupnp [######################] 100% Optional dependencies for gupnp python: gupnp-binding-tool (10/17) installing gupnp-igd [######################] 100% (11/17) installing libnice [######################] 100% Optional dependencies for libnice gstreamer: "nice" GStreamer plugin [installed] (12/17) installing wayland-protocols [######################] 100% (13/17) installing gst-plugins-bad-libs [######################] 100% (14/17) installing gtk4 [######################] 100% Optional dependencies for gtk4 evince: Default print preview command (15/17) installing hidapi [######################] 100% (16/17) installing sdl2 [######################] 100% Optional dependencies for sdl2 alsa-lib: ALSA audio driver [installed] libpulse: PulseAudio audio driver [installed] jack: JACK audio driver pipewire: PipeWire audio driver libdecor: Wayland client decorations (17/17) installing libvncserver [######################] 100% :: Running post-transaction hooks... (1/4) Arming ConditionNeedsUpdate... (2/4) Compiling GSettings XML schema files... (3/4) Updating GTK4 module cache... (4/4) etckeeper: post-transaction commit [master c68a795] committing changes in /etc made by "sudo pacman -S --config /etc/pacman.conf -- extra/gtk4 extra/sdl2 extra/libvncserver" Author: arch <arch@tme> 2 files changed, 2 insertions(+) create mode 100644 libva.conf ==> Making package: tme 0.12rc10-1 (Thu May 4 14:32:47 2023) ==> Checking runtime dependencies... ==> Checking buildtime dependencies... ==> Missing dependencies: -> perl-x11-protocol ==> ERROR: Could not resolve all dependencies. -> error making: tme-exit status 8 -> Failed to install the following packages. Manual intervention is required: tme - exit status 8 [arch@tme ~]$
You should update you PKGBUILD to include perl-x11-protocol as a dependency.
One more thing, if you put triple open braces (left braces) on a line by itself, the next lines will be formatted as a code block. You also need triple close braces on a line by itself to close the code block.
I added the missing package and tme built and installed. Now the emulator window opens but I get this:
[arch@tme Run-Sun3-SunOS-4.1.1]$ tmesh SUN3 Thu May 4 14:58:51 2023 library versions: tmesh> source SUN3 libEGL warning: DRI2: failed to authenticate tmesh>
When I got this it was because the qemu guest running tmesh did not have 3D OpenGL enabled at the qemu level.
[arch@tme Run-Sun3-SunOS-4.1.1]$ tmesh SUN3 Thu May 4 14:58:51 2023 library versions: tmesh> source SUN3 libEGL warning: DRI2: failed to authenticate tmesh>I enabled 3D. I'm using virt-manger but I can dump the configuration as xml if you need to see it.
Now tmesh doesn't crash but the TME window is only about 839 pixels wide by 253 pixels hight.
Reply To ambie
When I got this it was because the qemu guest running tmesh did not have 3D OpenGL enabled at the qemu level. {{{ Run-Sun3-SunOS-4.1.1$ tmesh SUN3 Thu May 4 14:58:51 2023 library versions: tmesh> source SUN3 libEGL warning: DRI2: failed to authenticate tmesh> }}} I enabled 3D. I'm using virt-manger but I can dump the configuration as xml if you need to see it. Now tmesh doesn't crash but the TME window is only about 839 pixels wide by 253 pixels hight.
I'm glad you were able to get it up and running to a certain extent. I don't know why the TME window is scaled. It should always be a fixed size (some multiple of the 1152x900 native size). Are you able to see anything on the screen? Is the input working? I may need to adjust some stuff there.
It shouldn't depend on the window manager you are using. I think you can use anything there. In fact, I think it should compile fine even in a console environment without graphics. In that case, it obviously won't be able to detect X screen settings with perl-x11-protocol falling back to the defaults. So the result might be suboptimal for a given X11 graphics environment, but it should work fine. That's how it can be distributed as a binary package with default settings for anyone in any graphics environment. In fact, all X dependencies have been removed from TME itself, so that it only depends on the graphics package being used to take care of all those details (gtk, sdl, vnc).
I thought I had added perl-x11-protocol as a build dependency. It's actually an optional dependency, so maybe I should just have it as an option. I think you have to specify to makepkg that uninstalled build dependencies should be installed (-s option). Not sure how yay handles that. I will give it a try and let you know if I need the configuration. Thank you and sorry for the inconvenience. Obviously the goal is to have it working right out of the box. I have only been testing myself and haven't had input from anyone else in a long while.
I really appreciate you and I'm glad to help.
This is an image of the tmesh window running inside the Arch Linux KVM QEMU libvirt VM https://drive.google.com/file/d/1eCqQgwJCgkmP8j3POFwZhX6rHBNGLiy1/view
In the PKGBUILD for tme:
makedepends=('perl-x11-protocol')But yay doesn't display perl-x11-protocol as a Sync Dependency:
AUR Explicit (1): tme-0.12rc10-1 Sync Dependency (3): libvncserver-0.9.14-2, gtk4-1:4.10.3-1, sdl2-2.26.5-1
In the ocrmypdf PKGBUILD python-wheel is only in makedepends.
# NOTICE: The number of dependencies we rely on is *very high*. If the program does not run after an upgrade, make sure all your dep s are upgraded, especially AUR deps! depends=('python' 'img2pdf' 'python-pillow>=7.0.0' 'tesseract' 'ghostscript' 'unpaper' 'pngquant' 'python-pikepdf' 'python-reportlab ' 'python-pdfminer' 'python-tqdm' 'python-pluggy' 'python-coloredlogs' 'python-importlib_resources' 'python-packaging') makedepends=('python-setuptools-scm>=7.0.5' 'python-build' 'python-installer' 'python-wheel') optdepends=('jbig2enc: Better compression algorithm; results in smaller PDF files')Focusing on python-wheel, that package is not installed yet.
[arch@tme ~]$ yay -Qii python-wheel error: package 'python-wheel' was not foundThe python-wheel package shows up on the "Sync Make Dependency" line:
[arch@tme ~]$ yay -S ocrmypdf AUR Explicit (1): ocrmypdf-14.1.0-1 AUR Dependency (1): python-coloredlogs-15.0.1-3 Sync Dependency (15): unpaper-7.0.0-2, tesseract-5.3.1-1, python-pdfminer-20221105-2, python-pluggy-1.0.0-4, python-tqdm-4.65.0-3, python-packaging-23.0-3, img2pdf-0.4.4-5, python-importlib_resources-5.12.0-2, python-pikepdf-7.2.0-2, pngquant-3.0.1-3, ghostscript-10.01.1-1, python-reportlab-3.6.12-3, python-pillow-9.5.0-2, python-humanfriendly-10.0-5, python-3.11.3-1 Sync Make Dependency (6): python-build-0.10.0-3, python-installer-0.7.0-3, python-wheel-0.40.0-3, python-setuptools-scm-7.1.0-3, python-setuptools-1:67.7.0-1, python-sphinx-7.0.0-1 :: (1/2) Downloaded PKGBUILD: python-coloredlogs :: (2/2) Downloaded PKGBUILD: ocrmypdf 2 ocrmypdf (Build Files Exist) 1 python-coloredlogs (Build Files Exist) ==> Packages to cleanBuild? ==> [N]one [A]ll [Ab]ort [I]nstalled [No]tInstalled or (1 2 3, 1-3, ^4)The one thing I notice (and it might not be relevant) is that the ocrmypdf PKGBUILD puts depends= before makedepends=
You're running tmesh over ssh aren't you?
XDG_SESSION_TYPE=ttyWhen I tried to do that by using SSH into the VM it fails
$ ssh -CY arch@tme ... skip ahead... [arch@tme Run-Sun3-SunOS-4.1.1]$ $ env | grep -E 'DISP|tty' XDG_SESSION_TYPE=tty DISPLAY=localhost:10.0 [arch@tme Run-Sun3-SunOS-4.1.1]$ tmesh SUN3 Thu May 4 12:43:39 2023 library versions: tmesh> source SUN3 libEGL warning: DRI3: failed to query the version libEGL warning: DRI2: failed to authenticate tmesh> ^C
$ ssh -X arch@tme ... skip ahead ... [arch@tme Run-Sun3-SunOS-4.1.1]$ tmesh SUN3 Thu May 4 12:47:49 2023 library versions: tmesh> source SUN3 (process:887): Gdk-ERROR **: 12:47:49.328: XInput2 support not found on display Trace/breakpoint trap (core dumped)This is how I uninstall tme via yay:
[arch@tme ~]$ yay -R tme checking dependencies... Packages (1) tme-0.12rc10-1 Total Removed Size: 2.89 MiB :: Do you want to remove these packages? [Y/n] :: Running pre-transaction hooks... (1/1) Removing old entries from the info directory file... :: Processing package changes... (1/1) removing tme [######################] 100% :: Running post-transaction hooks... (1/1) Arming ConditionNeedsUpdate... [arch@tme ~]$ yay -Scc Cache directory: /var/cache/pacman/pkg/ :: Do you want to remove ALL files from cache? [y/N] y removing all files from cache... Database directory: /var/lib/pacman/ :: Do you want to remove unused repositories? [Y/n] removing unused sync repositories... Build directory: /home/arch/.cache/yay :: Do you want to remove ALL AUR packages from cache? [Y/n] removing AUR packages from cache... [arch@tme ~]$
OK, so after a little more investigation, it appears that there is an issue with gtk4 that I hadn't seen before. It looks like we will have to fall back to gtk3 for it to work. It is easy enough to do this by simply changing the corresponding dependency in PKGBUILD appropriately. This build will make the window display the full screen with gtk, rather than just the partial window you're seeing now. You can also use sdl or vnc which do display properly with the current build. It's as simple as changing the "gtk" to "sdl" or "vnc" at the machine description location and starting tmesh the same way.
display0: tme/host/sdl/display
I am still debugging an issue with the keyboard input handling in the graphical displays, which seems to be in Sun2/3 configs only right now. But you should be able to display the Sun screen using one of the methods above if you wish. You can also use the serial port interface on the console, but that's probably not what you want. In the meantime, I will see if I can fix what's going on with the graphical display key input. I am not using ssh, but it's an interesting testcase. I guess gtk4 doesn't support the X forwarding, or else the X via ssh doesn't support all of its requirements. Not really sure about that one. I have just been running a normal terminal, sometimes inside of emacs (which I think that was).
As for the dependency issue, I think I might just put everything in depends (or optdepends/makedepends if it allows). That would hopefully bypass the issue.
Reply To phabrics
OK, so after a little more investigation, it appears that there is an issue with gtk4 that I hadn't seen before. It looks like we will have to fall back to gtk3 for it to work. It is easy enough to do this by simply changing the corresponding dependency in PKGBUILD appropriately.
I'm not really sure how changing to gtk3 in the PKGBUILD will work if there is already gtk4 installed for other software to use. I think configure.ac would need to be modified to not look for gtk4.
On my physical computer running tme with gtk4 I set the display to gtk. The screen works but the keyboard does not respond except to the Enter key and even that has a delay of several seconds. I also tried VNC with Remmina and the keyboard was the same. Here is a screenshot of Ninth Edition UNIX running:
https://drive.google.com/file/d/1eWTDewn0agp4jBMI6PMSkwvrzItyCikS/view
I'm working on a repo to install v9. That is my target. It requires SunOS to install it.
On my xfce VM I removed gtk4 because xfce does not require it. (I really rolled back to a qcow2 snapshot I took before installing tme). I changed the PKGBUILD to use gtk3
diff --git a/PKGBUILD b/PKGBUILD index 1c3fe86..d92a5c4 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -8,9 +8,9 @@ license=('GPL3') url="http://phabrics.com" optdepends=('perl-x11-protocol: for computing optimal graphics parameters' 'libvncserver: graphics hosted via VNC server' - 'gtk4: graphics hosted via GTK4' + 'gtk3: graphics hosted via GTK3' 'sdl2: graphics hosted via SDL2') -makedepends=('perl-x11-protocol' 'libvncserver' 'gtk4' 'sdl2') +makedepends=('perl-x11-protocol' 'libvncserver' 'gtk3' 'sdl2') source=("https://osdn.net/dl/nme/${pkgname}-${pkgver}.tar.xz") sha256sums=('e2c90f7c63de196c7bf52c9b06f17e2ab9db86fa86d8c3ff3ee2360fb20914f8') options=(libtool debug !strip)Then I used makepkg -si and the result works; the screen and keyboard are good. So gtk4 appears to have been an issue like you said.
The MY-SUN3 configuration file is in this repo: https://github.com/ambiamber/Run-Sun3-SunOS-4.1.1 It was renamed from MY-SUN3 to just SUN3 there. I'm not using wayland.