Conversation
- Note: jobs/1 is no longer explicitly declared as shared, but based on swipl documentation this is the default anyways
… usages of format compatible
Bool = i32 and most functions have an unused i32 return value
as suggested by triska
also fix format usage
- a few tests have a false added to force them to fail as the otherwise they currently break plunit and cause all later tests to not run
don't know why this was working without these stubs in the first place
|
Rebased to cleanup the one fixup! commit and merged main to resolve merge conflicts. While I generally prefer rebasing over merge and I also originally planed to do more cleanup of the commit history, due to the shear size of this I don't think that will be possible. |
I think a single commit could be acceptable. Especially if we can keep the fork and its branch for some time in case we needed this history. |
|
I get this error right after launching Rust and Scryer versions are up to date: Have you encountered this or do you have some idea where this might originate from? |
I don't get that error and without mthom/scryer-prolog#3133 we don't know which file is the offending one. (The xerrors are due to me running it under WSL2 on windows without X11 being properly setup) At the point where you're experiencing the crash it should be attempting to load the config file. |
so we can pin point errros during config loading
|
Added some print outs before and after the config loading, if the error occurs between these printouts the error should be in your config file. |
|
A Prolog syntax error in a file should also be detectable without launching plwm. For instance, can you successfully consult the configuration file (if any) with Scryer Prolog, by specifying it on the command line? |
|
Oh, sorry. It was indeed my config that was faulty :S Now I see some hiccups withs the hooks and menu operations. Also, sometimes the I'll write a proper assessment of the issues I find. Either way, the core window managment works in Scryer which is awesome! 🍾 |
|
Awesome, and thank you all a lot!! Also perfectly timed for the meetup! See you soon, let's celebrate this! |
This add the option of running plwm with scryer-prolog instead of swi.
Warning
The basics should be working at this stage, see the todo and help wanted section below for what is missing.
When testing I recommend using a VM or at least make sure you are able to change back to a working window manager in case this doesn't.
I.e. be able to switch tty, log into the terminal, and kill scryer-plwm (may need to kill display manager as well).
This splits the plwm binary into plwm-swi and plwm-scryer (the later is actually a script).
Installation on debian based system
Prerequisites
cargo install cargo-debrun0 apt install libxft-dev libx11-dev libxrandr-devInstall scryer-prolog
From CI Artifacts
From https://github.com/mthom/scryer-prolog/actions/runs/18056647934#artifacts
a. place the
scryer-prolog[.exe]binary from the release folder somewhere on yourPATHb. install the
scryer-prolog_<version>-1_<arch>.debpackage from the debian folder e.g.apt install scryer-prolog_<version>-1_<arch>.debBuild from Source
Debian Package
Manual
Then place ./target/release/scryer-prolog[.exe] somewhere on your PATH
Build & Install plwm-{core,swi,scryer}
Help Wanted
Try everything and find out whats broken
I am not used to tiling window manager and plwm in general.
So I am having a hard time testing things as at this point the bugs are often more subtle and I often don't known if some behavior is due to
Also using features that I haven't tried or don't know how to use would be helpful as this might
reveal more predicates that are assumed present from swi but that are missing in scryer and havent been implemented/stubbed in the port.
Signal handling
This requires some work in scryer-prolog as it currently doesn't have a way to handle signals besides hardcoded Ctr+C handling.
Some notes:
Run Tests (SWI-prolog)
I would like some help with
set + (defaults can be set)as that test appears to pass on main but fails here in a weird way.Note: a false has been inserted into the test to stop it from breaking other tests that needs to be removed when trying to search for the root cause.
warn_invalid_argandglobal_key_newvalue - (nonassoc_g)appear to also fail on master so I will ignore them as pre-existing failures.Command Line Argument Handling
Two ways to go about this:
Improve stub files
I think this is best discussed in #113
TODO