Forum system migration and wiki host migration
Unfortunately to add to the tally of what happens where there isn't a true community and instead just a corporation behind open source ... https://open.vanillaforums.com/discussion/39620/higher-logic-has-terminated-open-source-vanilla
... so sooner or later we'll probably need migrate away from this forum system. We won't lose any posts, but we'll probably need to lock the site for a day or so, or run something in parallel to test things out for a bit.
Our wiki has also been running really, really slow recently, most likely due to low quality shared hosting. I think it's finally time to migrate everything to the VPS. So a heads up that sooner or later I'll also be locking the wiki temporarily and doing a migration.





Comments
I've set up a test instance here: https://community-test.osarch.org/ - feel free to play around. The database is disconnected, so any posts you do there will be later deleted. Just a reminder that email notifications are wired up, so emails will be sent so please stick to testing with new threads.
This new forum system should also be significantly faster (let me know if you also think so). Passwords are not migrated, so you will need to reset your password there to play with: https://community-test.osarch.org/reset - at any time I might reset the DB, in which case you will again need to re-reset the password.
It's a lot more frugal (will elaborate more on that later, my biases showing through here) but we can also do a lot more customisation later, like embedding IFC models. Some features don't exist yet too.
Email sending should also be more reliable now (for those who have complained that they never received things). I realised I messed something up.
Cool, is this a home spun solution, or based on an existing forum code base?
It's home spun, and very, very tiny :)
cool, will you be pushing the code to github, or the like?
We couldn't be an open source community if we didn't have an open source forum right? :) https://github.com/Moult/threadbare
yes, dumb question. :)
cool name.
A big thanks to @brunopostle for testing :) Any other takers?
Left a few comments on the testing server of a few quirks that i ran across.
Also, a few questions/comments...
Would be nice if accounts had a simple profile page too.. to get to know your community. :)
Seems OK, though the proof will be in months ahead. A couple of thoughts on functionality:
1. A "Mark all as read" option,
2. Categories, or rooms. Maybe this was discussed and rejected in the past, but not everyone is interested in all aspects of BIM. No offense meant to anyone in particular, but I could use some of the more deeply technical posts as a cure for insomnia.
Wow, our own forum software sounds great, I don't really like the current one.
But is maintaining our own not a lot of trouble, on top of IFCOpenShell, won't this distract from the actual core development?
We could just self host one of the existing open source solutions like Blender developers did with Discourse at https://devtalk.blender.org , or are we planning some sort of deeper integration?
@sjb007
YES please, make categories meaningful again
Forums aren't complex beasts. They can be, but only if you want to build something generic that you ship out. If it's tailored it can be quite minimal and "set and forget".
Definitely one option is to go with one of the already established scripts, but I have a personal bias that it seems nothing works without Javascript on a text only browser, which means I really, really dislike Discourse :)
For categories, any strong opinions on tags vs strong hierarchies? Or anything so long as you can "just see things related to X"?
For me categories have two problems. First, people need to consistently set them for them to be useful. Second, they are very "woolly" with people able to create their own, making them less useful for grouping. See the current forums list of tags for ample demonstration of the long tail of single use tags.
So I would vote for a stronger hierarchy. It helps that my brain works best with tree structures :-)
As a non-pro around here, I'm probably not best placed to divide up the problem space into sensible categories that would suit the pros.
There is also another big question mark around shifting to hierarchy, and that would be how to migrate/map the existing threads into them.
If possible:
How about an approach where users can either use #tags for transversal (cross-topic) searches or select a predefined category for vertical (hierarchical) browsing?
I tend to support a predefined single-level category or tree that can be updated vox-populi if need arises to avoid over-populated categorization
I'm not sure I'd use categories, but maybe a simple #hashtag system would help. This could be an intermediate step between the current reliance on duckduckgo for searching, versus building a curated category system (or integration of a full search indexer).
I do think that the emoji responses are a big part of letting people know their post is appreciated. Can we see the +1s lined up as 🐇🐇🐇 or something?
A little update that our Wiki and blog (Wordpress) are now migrated to the same VPS that hosts the forums. And as of last night we now have backups running as well. Very sorry for the downtime.
I aim to get the new forum software a bit more polished and aim for a migration closer at the earliest in July, no real rush.
Bumping this because this deserves a fresh look.
OSArch is currently self-hosted on a VPS. We host a PHP forum called Vanilla, a Wordpress site, and a Mediawiki Wiki. Firstly, due to the recent Linux Copy Fail vulnerability, we need to do upgrades. That said, it's time to reflect a little bit about self-hosting and security.
Due to AI (sigh), I remain quite convinced that malware creation in the future will become easier and easier. For every one behemoth (Google, Microsoft, etc) there are a million smaller systems. Even if each one of those smaller systems (Vanilla, Wordpress, Mediawiki) were resourced well enough to keep up with fixes and patches, there are millions of resource-stretched (i.e. OSArch) users who will struggle to keep up.
I'm a little bit concerned that at some point, script kiddy scraping is going to mass attack (i.e. get credentials, flood with spam, etc) every smaller site using AI-assisted hacking, including us.
First, a recommendation that everybody on this forum use a password manager. If we are compromised, hopefully it's not the same as your email / bank password. Secondly, at some point, we should decide what our course of action is, such as:
How about paying a 3rd party to do periodic maintenance and address any urgencies? Other communities do this, Blender Foundation, QGIS, Godot, and OpenStreetMap. OSArch has a budget, and we're getting big enough to justify it.
I like the thought of using Threadbare. It's small, and as a community we can hack on it to bring more AEC-specific functionality over time.
And perhaps eventually we could integrate it into OSArch's own git hosted platform... a proposal that seems to have political buy-in and is moving toward being realized. The Forgejo instance could potentially take the place of the wiki functionality as well.
With a paid periodic maintainer in place, I suspect WordPress wouldn't be that much of a burden either.... though happy to be corrected on that.
what are the costs of the various options and how much donated time is currently being put into this?
On the AEC-specific hacking front... the integration possibilities could be exciting. @brunopostle's ifcurl work already gives Forgejo the ability to render inline IFC previews from ifc:// URLs in any Markdown context. Seems like Threadbare could do the same. Beyond that, the ifc:// URL scheme is already aligned to BCF viewpoint conventions, which opens up a longer-term path where Forgejo issues and BCF topics become interchangeable, meaning coordination issues raised on the platform could be exported as BCF for teams still working in Revit or Archicad, and vice versa.
Put it all together, Forgejo for git-based IFC storage, ifcurl for persistent viewpoints, BCF for industry interoperability, and Threadbare for community discussion. Could be the start of an open-source CDE perhaps. Just brainstorming.
One more thought on this, Threadbare's file uploads could potentially be backed by git as well. So when someone uploads foo.ifc, it gets committed to a repository on hub.osarch.org via the Forgejo API. When someone later uploads a revised version with the same name, git tracks it automatically. Users just see an upload button and a version history. The git mechanics are completely abstracted away. Every version becomes permanently addressable via an ifc:// URL, so forum threads could embed inline previews tied to specific versions of a file. And @brunopostle's IfcMerge could even handle conflicts between competing uploads in an IFC-aware way, rather than just last-write-wins. Again, just thinking out loud. :)
Some thoughts:
Sorry, a bit off topic, but .....
IFC Preview Thumbnails would be such a great feature, if possible.
It is so great that Blender and FreeCAD create Thumbnails for macOS Finder. Many of my proprietary Apps don't.
(Blender Thumbnails are too small for legibility or "Preview", FreeCAD allows max 512*512)
Should be done by Bonsai when saving an IFC (?)
Grab the 3D View, save image somewhere in IFC. Bonsai install also installing Quick View Applets for the OS (?)
OS's generally supported thumbnailing for filetypes independently of the application. So this is a matter of configuring a tool to do this, the ifcquery tool will generate an iso view of an IFC
The pro of threadbare is literally how minimal it is. The attack surface is minimal, and matches the existing PHP stack. The con is literally how un-battle tested it is. The lack of moderation controls is also a concern - adding them adds more possible attack vectors.
Any thoughts about Wordpress and Mediawiki?
For FreeCAD, we are currently bringing all "information" parts (homepage, blog, dev docs) into a unified static site that will replace the current one in a few months hopefully. So one open and clear point of entry and experience for all visitors, contributors and maintainers, instead of WordPress + custom legacy PHP + Jekyll + more. The Mediawiki and API portal migration have not yet started though, bit more tricky to tackle, but it is planned to do at some point.
We went with Hugo as we need strong multi-lingual support, performance and flexibility, but anything like Astro (JS), Zola (Rust), Eleventy (JS), Pelikan (Python) and more should do. In addition, we use a headless Content Management System called Sveltia. See https://jamstack.org/ for more comparison between current options. Also in case the project moves from GitHub to another git-based platform or self-hosted, it should be fairly easy to migrate with these options.
Happy to provide more insights if needed. Have a good one!
Looking to move this forward, can I propose firstly the lowest risk highest reward (imo) which is to migrate Wordpress (a widely popular attack surface) to a static site (probably Hugo because we know it'll work). It will of course be an AI assisted migration (I'm sure AI knows WordPress' DB structure backwards) and of course into a public Git repo. Here are the implications:
Date wise let's say this weekend?
Don't know if it's of any use: we use Open Web Calendar with a NextCloud public calendar at FreeCAD. You can find the custom Hugo partial and config params. This gives something like that.
Thanks @marcuspollio - really insightful, we'll likely follow in FreeCAD's footsteps.