OpenXtalk IDE Repo Reorganization

Organizing tasks to work on, New Features Ideas, Building LCS & LCB Libraries & Widgets, Redecorating and Modifying the IDE, Hacking / Editing Tools, Compiling the Engine from Source, etc.
Post Reply
User avatar
OpenXTalkPaul
Posts: 1485
Joined: Sat Sep 11, 2021 4:19 pm
Contact:

OpenXtalk IDE Repo Reorganization

Post by OpenXTalkPaul »

I don't know if anyone is paying attention to the repos, but I've slowly been rearranging the IDE repo and uploading files to match what the LCC Installers installed on both macOS and Windows (I promise I'll do Linux soon), merging them together into one big directory that is effectively a cross-platform install.

The IDE Bundle /Contents directory is where the macOS install begins. The files Info.plist and PkgInfo, and subdirectories MacOS (where the macOS executables are), Resources (icons, AppleScript dictionary, localization files etc.), _CodeSignature all being specific to the IDE on macOS

Within IDE Bundle /Contents directory is a Tools subdirectory, the directory structure of this folder and subdirectories largely matches up across mac/win installs, and is where the merging of the two versions starts. This Tools directory is the same as the IDE root level on Windows and is where you'll find the Windows IDE executable.

Also you'll notice that I've changed the Windows App/Doc icons to OXT icons.

From there down most of the differences/merging is in the Externals. On macOS externals are .bundle format (they're actually folders but they show as single files in the macOS Finder), while on Windows externals are in the familiar .dll, and on Linux .so format. So in the externals you'll have for example revxml.bundle (mac) AND revxml.dll (win) AND revxml.so

One significant difference is that in recent versions revBrowser uses WebKit that comes with macOS, while on Windows/Linux revBrowser uses Chromium Embedded Framework that is in the CEF subdirectory in the externals folder (I believe LC is moving to WebKit across all platforms going forward). There seems to also be redundant copies of these CEF files in the Runtime folder that are used when building standalones, I'm not sure if there is any differences ( perhaps with some tweaks to the Standalone build scripts, the IDE overall size could be reduced by several hundred megabytes ). These CEF folders contain a libcef file that is too large for GitHub to except (100mb) and so as a workaround I've Zip compressed them (which cuts the size in half on certain copies) and renamed (example: libcef.dll.zipcompressed). There is facilities for hosting files larger than 100mb on GitHub, but this workaround is fine for now in my opinion.

Another significant difference is that macOS version has a standalone runtime for iOS which Win/Lin doesn't have since you can only build iOS apps on macOS.

I've tested this shared install setup on a shared FAT64 partition on macOS 10.14 and Win 10 with a shortcut to the Win EXE on my win desktop. Seems to work fine in my limited testing. Be warned that this multi-platform IDE setup with everything combined is over 2 Gigabytes!
User avatar
richmond62
Posts: 2619
Joined: Sun Sep 12, 2021 11:03 am
Location: Bulgaria
Contact:

Re: OpenXtalk IDE Repo Reorganization

Post by richmond62 »

I will try and "pull my finger out" this weekend as have just had a few lumpy weeks
as my private language school gets into gear.
https://richmondmathewson.owlstown.net/
User avatar
OpenXTalkPaul
Posts: 1485
Joined: Sat Sep 11, 2021 4:19 pm
Contact:

Re: OpenXtalk IDE Repo Reorganization

Post by OpenXTalkPaul »

richmond62 wrote: Tue Oct 05, 2021 6:15 pm I will try and "pull my finger out" this weekend as have just had a few lumpy weeks
as my private language school gets into gear.
No worries, I appreciate the moral support.
My normal busy season is starting to wind down a bit so I'm hoping to have more time to work on this soon.
Post Reply

Who is online

Users browsing this forum: No registered users and 2 guests