lickx / isthmus Goto Github PK
View Code? Open in Web Editor NEWOpenSim grid and/or region management for Linux and WSL hosts
License: GNU General Public License v3.0
OpenSim grid and/or region management for Linux and WSL hosts
License: GNU General Public License v3.0
(and make a maxigrid* that is split)
That would need to be parsed from etc/grid.ini (HomeURI) which is tricky, considering variables like ${Const|BaseURL} needs to be resolved (the NiNi library handles this in OpenSim itself)
Region port doesn't have to be fixed anymore but will be the same as sim port, dynamically allocated from a pool range defined in isthmus.conf
Dependencies:
It would imply that we do away with supporting multi region simulators, which is actually a good thing
Idea is to make etc/sim-local.d
Then a SIMNAME.ini can be put in it; this configuration will be added to the standard startup configuration.
If such a local/custom configuration doesn't exist for a sim, the sim will still start up using defaults.
Use istdb to remove prims and the region directly instead of sending strings to the Screen console
A lot of settings in the current opensim.ini should never be changed by the user in order for isthmus to work properly. Seperate this file in a system and local file. Local would override any system settings.
There are 3 related locations:
Removing the first does clear it form the worldmap. What the other two are, is a mystery to me.
simdel could call a remote php script from a hook to deregister the region from the map on the gridserver
have them in etc/hooks with the same name as the simctl command
WSL has a bug that doesn't create /var/run/screen and even if you create it (as root) it won't persist a reboot. To work around this when running isthmus in WSL, please do the following:
mkdir ~/.screen
echo "export SCREENDIR=$HOME/.screen" >> ~/.bashrc
This bug will be marked fixed when Microsoft rolls out a fix for WSL.
Real linux users are not affected by this issue.
Rather than check if a region ini is readable, just check etc/regions-enabled/*.ini
Benefits:
Not sure yet where the problem is, maybe Wifi hardcodes some paths as the problem seems to be in failing to read one or more configuration files
(I don't use Wifi myself so this issue has no priority)
We could automatically use a hostname setting for populating ini files (ExternalHostName)
Why define it in isthmus.conf and not use /etc/hostname? Because people might be using a dyndns service and the actual hostname might not match that.
Why do this at all and not use SYSTEMIP? One issue is that OpenSimSearch (on the grid side) won't pick up anything when not using a FQDN for ExternalHostName (Show parcel in search etc). Another issue is that when behind a NAT, SYSTEMIP will have a local network address, not visible from the outside.
Todo: figure out if ExternalHostName in the main opensim.ini is enough or whether we need to also define it in each region.ini (Answer: needs to be defined per region)
When a ROBUST from another isthmus tree is running, rtinstall will say ROBUST is still running and then quit.
A check should be made if THIS isthmus's ROBUST is running
tbi later
Not sure what would be the best way yet
Perhaps wget ${GridInfoURI}/gridinfo and see if it doesn't timeout or is refused
If it is only logins disabled then we still can start the sim I guess or should (can?) we check for that too?
By using -regiondir instead of -regionfile
The region inis defined in etc/sims-enabled can stay, on start we'll copy the ini to a temporary "regiondir" somewhere within var and pass that with -regiondir
This will allow any OpenSim runtime to be used, without needing to patch OpenSim with the -regionfile hack (it's mainly hackish because of backwards compatibility with regiondir loading)
Only an aesthetic thing but I can't figure out why this doesn't work yet.
For removing search data about everything on a sim (or its parcels)
I tried Offline Message Module V2 which only can send local grid offlines but not HG.
Also tried the older (V1) module with the modern PHP script to no avail.
I get messages in the sim log "can't find user <HG friend's UUID> so i think that is the actual root of it but not sure where to look yet.
Will try to find some solution but for now had enough.
But without nginx load-balancing, or it will get too complex for starters
Because there are better alternatives now for Diva WiFi, which I couldn't get to work with multiple Robusts.
The most interesting alternative is W4OS
./simtool clearscripts or equivalent should be automatically done at the end of siminstall, preserving script state but clearing compiled scrips
Tool for grid operations, through cronjob. Thinking of 2 things now:
We could parse etc/grid.ini for the actual homegrid URL such as "hg.osgrid.org:80" to preserve creator and object owners names when loading the OAR in another (or local) grid
Inworld objects don't play sound with the recent release of Singularity 1.8.9 (8338) where they do play on the beta with build number 8297. This is maybe some configuration issue in isthmus as on Sandbox Plaza 3 (which runs pretty stock OpenSim) I do get sound on 1.8.9
The last Firestorm (6-0-2-56680) does work correct with sound.
Since this only makes sense on the server running the map robust
Currently hardcoded between 8000..8019
This would allow running multiple grids from 1 server
Also, show how many root agents in simctl list (if a sim is online)
Working on it, groundwork done
in do_start for bin/simctl and bin/robust
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.