Tech Talk

xmir is running on OS X server with mono and the asset server on PostgreSQL. Since this is a somewhat unusual configuration we will collect and share information on this here on the Tech Talk 

Alias the loopback address for your grid on macOS

For most smaller grids and even standalone installations of OpenSim there is a need to make a loopback of your grid’s IP address for everything to work properly. Many home routers such as Apple’s AirPort Express, Airport Extreme and the TimeMachine models of the same support automatic loopback. In this case there is no need to do anything as it should work “right out of the box”.

However, many home routers don’t support automatic loopback, and business and enterprise routers usually don’t. 

Creating a loopback alias for your grid’s IP address on the servers OpenSim runs on can therefore be a necessity. 

Setting a loopback alias in terminal can be done with the command

sudo ifconfig lo0 alias <your grid IP>

Removing it is done with 

sudo ifconfig lo0 -alias <your grid IP>

The culprit is this command does not survive a reboot. The easiest way to overcome this is to create a plist and place it in /Library/LaunchDaemons

If your domain for the grid is and your IP address is then the plist will look like this saved to the file org.mydomain.loopback.plist

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "">

<plist version="1.0">















Make sure the plist has the same privileges as other files in  /Library/LaunchDaemons.  You can then load it with

sudo launchctl load /Library/LaunchDaemons/org.mydomain.loopback.plist 

To check the result issue the following command, and you should see your grid IP address listed in the result

sudo ifconfig lo0

Updated LSL language module for BBEdit

For many macOS users BBEdit is the editor of choice, and while there was a language module for the Linden Scripting Language (LSL) available, it had not been updated for a long time.  Download an updated version, where all the additions to LSL through November 2016 have been added. 

In addition all OSSL keywords and constants have been added.

The plist needs to be installed in ~Library/Application Support/BBEdit/Language Modules, and a restart of BBEdit will pick it up. 

BBEdit has been around like “forever” and was first launched April 12, 1992 on Macintosh System Software 6. 

LSL is used for scripting virtual worlds in SecondLife and OpenSim grids. 

The language module can also be used with TextWrangler

Update your browser to keep making L$ payments

Linden Lab recently made an announcement that a web browser supporting TLS v1.2 will be required from June 15, 2016 to access SecondLife’s web cashier to make payments or exchange L$. 

The most recent versions of Chrome, Firefox, Safari or Microsoft Edge all have this support, as does the most recent version of the SecondLife viewer in addition to Kokua 4.0.2 or higher. 

If in doubt, you can check your browser by visiting or check the support pages of your favorite viewer for accessing the SecondLife grid. 

Kokua 4.0.2 released

Kokua version 4.0.2 is available for download with support for Linux 32 and 64 bit, OS X and Windows. 

This version brings functionality up to par with the Linden 4.0.2 version of the SecondLife viewer were this is a maintenance release with focus on fixing issues and bugs for mesh uploads, playing sounds at region crossings in addition to a number of smaller issues.  

The release has the following additions for this version:

• RLV version from Marine Kelly

• Added a preference to Enable RLV at Preferences->Kokua

• Added a menu and preference to disable jumping with the keyboard

• Fixed an issue where alt clicking on the avatar an moving the mouse would move or swing the camera a considerable distance. 

• Fixed a crash in the OS X version when receiving a teleport invitation on OpenSim 

• Corrected an issue with placing items of VAR regions on OpenSim

• Set the default hand pose to Relaxed when uploading an animation

Check the Kokua Blog for the full announcement and the change log.

Kokua 4.0.1 released

Kokua version 4.0.1 is available for download with support for Linux 32 and 64 bit, OS X and Windows. 

This version brings functionality up to par with the Linden 4.0.1 version of the SecondLife viewer were the main focus is on replacing the dated QTWebkit framework with SL Chromium Embedded Framework.  For the first time it is also possible to select a mesh item attached to another avatar – handy for finding out who made the creation.  

The release has the following additions for this version:

• RLV version 2.9.16 from Marine Kelly

• Setting the Export permissions flag for items in OpenSim

• Do not let me fly

• Inventory filter for transferrable items only

There are additional bug fixes for areas such as cache issues, media volume, space navigator in addition to a large number of fixes from the Linden version.

The changes included in SecondLife versions and are included in this version. 

Check the Kokua Blog for the full announcement.

Mac users beware - your application updater could betray you

Mac users need to be aware of a security issue with the Sparkle open source updater that is used by many Mac applications for providing updates to newer versions. 

The issue can used for a main-in-the-middle attack when downloading and installing new updates. 

Of the commonly used applications using Sparkle are Teamviewer and the VLC Media Player

Along with a flawed Sparkle version, vulnerable apps must also be running an unencrypted HTTP channel to receive software updates from offsite servers. Nefarious users capable of capturing network traffic, perhaps over an unsecured Wi-Fi connection, can leverage the Sparkle exploit to run malicious code remotely on a target computer. The publication cited work from a software engineer called Radek, who confirmed the exploit affects apps running on the latest versions of OS X 10.11 El Capitan and OS X 10.10 Yosemite.

A list has been made on Github where individuals identify applications that are found to be vulnerable. You may want to check the list and look for an update if you use one of the identified applications and versions.

SecondLife kicks off new avatar with project Bento

Linden Lab announced today that SecondLife will get a new avatar skeleton with bones that enables finger, facial and tail animations in addition to the possibility of adding more arms and legs to an avatar. 

"We are introducing extensions to the standard Second Life Avatar Skeleton that give you dozens of new bones to support both rigging and animation, and accompanying new attachment points! This extended skeleton, which is fully backward compatible with existing avatars, rigging and animation, gives creators the power to build more sophisticated avatars than ever before.”

The new skeleton is made available to content creators through sample files and a project viewer and will add the following new bones to it:

  • 11 extra limb bones for wings, additional arms, or extra legs.
  • 6 tail bones
  • 30 bones in the hands (all 10 fingers!)
  • 30 bones for facial expressions
  • 2 other new bones in the head for animating ears or antennae
  • 13 new attachment points associated with the new bones

The new skeleton imported into Cheetah 3D

Full details and download links to the project viewer and demo material in the SecondLife Blog

Fonts for OpenSim dynamic textures

OpenSim has functions to generate dynamic textures, including text, but what fonts can it use?

For OpenSim on OS X (Server) it turns out that all fonts installed in /Library/System/Fonts in addition to fonts installed in ~/Library/Fonts for the user that OpenSim is running under is available to mono and therefore to OpenSim. 

A discussion on how to make fonts available for OpenSim running on Linux and Windows can be found in the Kitely Blog, where they also provide a script for testing the fonts available. 

A modified script that includes some of the Apple installed fonts is below. Place the script in a prim and scale it so the texture with the fonts becomes readable. Fonts existing on the system will show properly formatted, the rest will be set in the same type. 

//fonttest MT

list lFonts = ["Abadi MT","Agency FB","Algerian","Andale Mono","Arial","Arial Rounded MT","Avant-Garde","Baskerville Old Face","Bauhaus 93","Beesknees ITC","Bell MT","Berlin Sans FB","Bernard MT","BernhardMod BT","Bitstream Vera Sans","Bitstream Vera Sans Mono","Bitstream Vera Serif","Blackadder ITC","Blackletter 686 BT","Book Antiqua","Bookman Old Style","Bradley Hand ITC","Braggadocio","Britannic","Broadway","Brush738 BT","Brush Script MT","Brushwood Italic","Californian FB","Calisto MT","CaslonOpenface BT","Castellar","Centaur","Century Gothic","Century Schoolbook","Chiller","Colonna MT","Comic Sans MS","Cooper","Copperplate Gothic","Courier","Courier New","Curlz MT","Desdemona","Edwardian Script ITC","Elephant","Engravers MT","EngraversGothic BT","Eras ITC","Eurostile","Felix Titling","Flexure","Footlight MT","Forte","Franklin Gothic Book","Freestyle Script","French Script MT","Garamond","Georgia","Gigi","Gill Sans MT","Gloucester MT","Goudy Old Style","Goudy Stout","Gradl","Haettenschweiler","Harlow Solid Italic","Harrington","Helvetia","High Tower Text","Hippo","Humanist521 Bold Cn BT","Impact","Imprint MT Shadow","Informal Roman","Jokerman","Juice ITC","Kino MT","Kristen ITC","Kunstler Script","LcdD","Lucida Blackletter","Lucida Calligraphy","Lucida Fax","Lucida Handwriting","Lucida Sans","Lucida Sans Typewriter","Magneto","Maiandra GD","Matisse ITC","Matura MT Script Capitals","Mead","Mercurius Script MT","Mistral","Modern No. 20","Monotype Corsiva","MS Sans Serif","News Gothic MT","Niagara Engraved","Niagara Solid","

OCR A","Old English Text MT","Onyx","Onyx BT","Oz Handicraft BT","Palace Script MT","Palatino Linotype","Papyrus","Parchment","Perpetua Titling MT","Placard Condensed","Playbill","Poor Richard","Pristina","QuickType","Rage","Ransom","Ravie","Ribbon131 Bd BT","Rockwell","Script MT","ShelleyVolante","Showcard Gothic","Snap ITC","Stencil","Swiss721 BlkEx BT","Tahoma","Tempus Sans ITC","Terminal","Times New Roman","T-Roman","Transam","Trebuchet MS","Tw Cen MT","Utopia","Verdana","Viner Hand ITC","Vivaldi","Vladimir Script","Westminster","Wide Latin","Xerox Sans Serif","Xerox Serif","Utopia","Zapf Chancery",

// Microsoft fonts

"Andale Mono", "Arial", "Arial Black", "Calibri", "Cambria", "Comic Sans MS", "Candara", "Consolas", "Constantia", "Corbel", "Courier New", "Georgia",  "Impact", "Times New Roman", "Webdings",

// urw-fonts

"Bookman", "Zapf Chancery", "URW Gothic L", "Palatino", "New Century Schoolbook",

// Apple fonts



string sContentType = "vector";

string sData = "";                               

string sExtraParams = "width:1024,height:1024";

integer i;

integer j;

integer k;

draw_fonts(list fonts)


    sData += "PenSize 5; ";

    sData += "PenColour Red; "; 

    sData += "FontSize 14; ";    

    for (i = 0; i <= llGetListLength(fonts); ++i)




        if (i>=40)


            j= i-40;

            k= 250;


        if (i>=80)


            j= i-80;

            k= 500;


        if (i>=120)


            j= i-120;

            k= 750;



        sData += "MoveTo "+(string)k+","+(string)(20*j)+"; ";

        string name = llList2String(fonts,i);

        sData += "FontName "+name+"; Text "+name+";";


    osSetDynamicTextureData("", sContentType, sData, sExtraParams, 0);









How to prevent OS X Server from sleeping

When running OpenSim on OS X Server – at least in grid mode, the thing you don’t want to happen is for the server to go to sleep or spin down the disks. For some reason this happened on one of my servers where the disk kept spinning down regardless of how the System Settings control panel was configured. 

To override the control panel, you can open a terminal session and type the following (with an administrator password):

sudo pmset -a disablesleep 1

Swift goes open source

Unveiling the website Apple has fulfilled the promise they made at the WWDC 2015 to take the Swift programming language open source in 2015. 

"We want everyone to learn Swift as their primary language, and we want — when developers invest in Swift — to be able to use it everywhere from scripting to apps for mobile down to writing code in the cloud,” Apple’s senior Software VP Craig Federighi told The Next Web. "We think the best way to enable all of that is to open source it.”

Swift was first announced at the WWDC in 2014 and made available to Apple developers initially focussing on iOS development in version 1.0. Over the next year the language was improved and many of the initial shortcomings removed so when version 2.0 was introduced in 2015 it had developed to a system level language also with proper support of OS X, where the goal is also to address the enterprise world bringing Swift to the servers.  IBM has reportedly been "a major source" of feedback, and eager to use Swift to port mobile apps to cloud services.

Swift is likely to replace Objective-C in the medium to long term in all Apple programming, but Federighi claimed that it will still have a place. – "Objective C is forever," he said. "I don't think anyone should fear for the future of Objective C. We're going to continue to support Objective C for ourselves and the developer community. "[Apple] has an investment in many many millions of lines of Objective C, and that's not going to change," he continued.

What do you get?

Swift is being released under an Apache 2.0 license, which is incidentally the same license Microsoft used when it open-sourced a big chunk of its .NET framework last year. The project is hosted on GitHub and includes the compiler, the LLDB debugger, the REPL command-line environment, the standard and core libraries, and code from supporting projects. New to Swift (and also open source) is the Swift Package Manager, described as an “early-stage project” that will serve as a repository for Swift modules and will evolve with input from the community.

Binary packaging is currently in Xcode 7.x for OS X, or for Ubuntu 15.1o and 14.04 from the download section of

For non OS X users, Cocoa and most of the iOS and OS X toolbox libraries are not available, and applications submitted to the Apple App stores must still be compiled and finalized with Xcode. 

Get started with IBM Swift Sandbox in your web-browser

Only hours after Apple made its Swift programming language open source, IBM has introduced a new, simple, and free browser-based way for developers to get started writing code. 

If you don’t own a Mac with Xcode, cannot be bothered to download the binaries and install on Linux, but still are curious to what the Swift language has to offer, IBM’s Sandbox tool will let you write in code and get the result immediately displayed directly in your web-browser. 

The sandbox runs on IBM Cloud in a Docker container, and allows testers to use both the latest versions of Swift and its standard library. John Petitto said that the Swift Sandbox tool "barely scratches the surface of what's possible”, teasing that this is just the beginning from IBM, which has openly embraced Apple's programming language for iOS and OS X.  

hypergrid address: hop://                                             xmir © 2014-2017