Calculating Infinity

This is the personal website of Mark J. Skinner. I’m an Australian open-source computer programmer specialising in user interface design and 3D graphics, and have been writing serious Linux programs since 2001.

They are open-source under the GPL and LGPL, source code only, and in both .tar.xz and .tar.gz formats. The latest version of each package in .tar.xz format, and its GNUPG/PGP signature (signed with my 4096 bit RSA public key), is linked below. All source-code archive files, including all previous releases, are available here.

My standards/habits for packages, dates and log files are explained here.

Standard Config library

Standard Config is an alternative to getopt, and other similar configuration systems. It provides a simple interface for command line, config file and default options. Included is stdconfig-tool which converts config files between text and binary, converts them into HTML, and allows them to be used from scripts, and stdconfig-csrca (Standard Config C Source Archive) which allows files to be stored inside binary files, in a similar way to Windows resources (eg. icons).

Fun fact: Standard Config is used to update this website, using a config file for metadata, a makefile and a template file. Scripts are used to extract the metadata, and to construct directory listings. A config file is also used as the main source for Information taxonomy.

README stdconfig_0.2.1.tar.xz stdconfig_0.2.1.tar.xz.asc

Startd init daemon

SysVinit is too old, while Systemd is convoluted, buggy, insecure, and against open-source. Hopefully my init system manages to strike the right balance between command line based system administration and MacOS style automation, to eventually become the main standard. Included is start which is a limited command line version of startd, and udlog which displays Unix dates in log files in other formats.

Installation requires Standard Config to be installed first.

README startd_0.1.5.tar.xz startd_0.1.5.tar.xz.asc

Standard 3D 3D graphics editor and game engine

About 18 years ago, I got the idea for a Doom 3 level similar to the central area of the fictional space station Deep Space Nine. I tried to use the GTKRadiant 3D game map editor, but hated the UI, so I decided to write my own. I still haven’t gotten around to making that map though. :)

It’s now become the beginning of a universal gaming operating system - that aims to eventually replace all basic functionality of every substantial 3D game engine that has ever existed. However, in the short term, I’m attempting to duplicate the functionality of mostly the early id Software games.

It already has editing support for Quake, Quake 2 and Quake 3, map viewing support for Wolfenstein 3D, Doom, Half-Life, Return to Castle Wolfenstein, Enemy Territory, Painkiller, Doom 3, Quake 4, and Stalker, with support for Mechwarrior 2, Half-Life 2, Portal and Portal 2 still in the early stages. It has a texture editor, file browser and model viewer, and loads a large number of different image and 3D model formats.

There’s not that much documentation yet, but there are screenshots. :)

Installation requires Standard Config, GTK+ 2 (etc), OpenGL, GTKGLExt and Bullet Physics to be installed first.

README std3d_0.1.tar.xz std3d_0.1.tar.xz.asc
  std3d-data.zip std3d-data.zip.asc

Goldstein social media client/server

In their early years, social Media corporations showed great promise, but soon revealed themselves as hives of Left wing extremism, censorship and totalitarianism. Thus I was inspired, around the start of 2017, to slow work on Standard 3D to start work on a self hosted replacement for YouTube, Facebook, Twitter, Discord, etc, building on the basic functionality of IRC, but with stored messages.

The name of the project is taken from the fictional (propaganda) character in George Orwell’s Nineteen Eighty-Four that was demonised for trying to preserve history. Goldstein is also designed to preserve messages and files by automatically copying as much server data as possible to each client, while also minimising data transfer.

It’s designed to allow users to upload and download files by their SHA2-256 secure hashes and exchange messages with the server in multiple channels. Servers are hopefully able to support 100,000s of users simultaneously, and there are both command line (text) and GTK/OpenGL clients. Security is provided using the client’s choice of either Serpent or Rijndael (AES) 256 bit encryption, pre-shared secrets, and 4096 bit Diffie-Hellman-Merkle key exchange. I imagine every popular and/or censored YouTuber wanting to run her own server.

Installation requires Standard Config and the GNU Multiple Precision Arithmetic library to be installed first, and also GTK (etc), OpenGL and GTKGLExt if the GTK application is to be used.

README goldstein_0.1.1.tar.xz goldstein_0.1.1.tar.xz.asc

PrBoom+ patch

I’m planning my own Doom source port, based on PrBoom+. My work so far is included in a patch, which adds:

prboom-plus_2.5.1.4_cinfinity_0.1.patch.xz prboom-plus_2.5.1.4_cinfinity_0.1.patch.xz.asc

Other work

The logic of emotion.

Information taxonomy.

A scientific analysis of “ECT”.

A few of my favourite images.

My favourite quotes from Edward Snowden’s autobiography “Permanent Record”.

About me

I’m a 50 year old, centrist libertarian (ie. a classic liberal), and have therefore dedicated my life to the fight against tyranny in all it’s forms. This includes both traditional and secular religious fanaticism, but especially the still growing totalitarianism of the corporate software industry. I recognise open-source computer programming as an essential form of political activism for individual freedom and democracy.

You can contact me via email: marks@cinfinity.info, cinfinity.info@protonmail.com, and more privately via Telegram: t.me/cinfinityinfo.

About the website

This website was created using Emacs and Vim, Kramdown, Standard Config and various scripts, on a heavily customised version of Linux from Scratch. I also use Artix Linux, and previously used Tails.

This website is hosted on a Network Presence virtual private server (VPS). If you want a copy of it, with the exception of the older source code, you can download this archive.

Last modified: 2024-01-14 04:46:29 UTC.