Most of the repos that might be interesting. Not everything works or is finished.
- Games
- Game related
- Graphical utilities
- Command line utilities
- Machine Learning™-ish
- Desktop environment or whatever, stuff that makes my laptop work
- Multimedia-related
- Ancient stuff
- Graphics related
- Libraries
- Demoscene-ish
- Internet
- Chrome extensions
- KDE 1 and KDE 2
- Other
- Minor stuff
- freeaoe, age of empires II reimplementation
- Schiffbruch, game I played when I was young. Cleaned up to build and run on Linux, translated most code from german.
- tg18ai, planned to use it for holding the AI competition at TG18, but Windows doesn't work.
- ghostly, compo case for the AI competition at TG17 ("inverse" Pacman™®).
- Turn On Me, compo case for the AI competition at TG16
- The Kartering, compo case for the AI competition at TG15, written with larsivsi while really sober.
- dropdabass, compo case for the AI competition at TG14
- droidbattles, programming game.
- recrossable, crossword game with handwriting recognition and automatic crossword generation. Originally written for my reMarkable™® tablet.
- progress-quest, c++/qt version of progress quest.
- Awesome War Game, our first year object oriented programming project.
- KTamaga, a Tamagotchi emulator. For KDE 1.
- Amnesia: A Machine For Pigs, a survival horror game. Porting it to modern versions of stuff like angelscript.
- falltergeist, opensource crossplatform Fallout 2™ game engine writen in C++ and SDL. Cleaning up.
- kwest, interpreter for text adventures, half-way ported to Qt5
- Goblin Camp Stone Soup, Dwarf Fortress clone, revisited. Cleaning it up.
- Age of The Ring, some school project I found. Played around with it and fixed it up a bit.
- Advanced Genie Editor, editor for the data files in age of empires etc. Uses genieutils, like freeaoe.
- genieutils, used for freeaoe. Upstream thought I had changed too much, and after that I have done some heavy refactoring and cleanup. Upstream is semi-inactive.
- BORG, automated bot launcher used for the AI competition at The Gathering (keeps tracks of scores and stuff, because I didn't want to do that manually on stage).
- ghostlybot, simple test bot for testing the AI competition case at TG17. IIRC it uses Q-learning in some form.
- borderlands3-save-editor, got stuck on some game-breaking bugs. I have finished the game now, so probbly won't update it any further.
- masseffectandromeda-save-editor, very, very early WIP, doesn't work at all.
- rengine, header(s)-only C++ scenegraph rendering graphical library thing. Used for tg18ai, so I had to add some stuff and fix some stuff.
- OALWrapper, for Amnesia. Cleaning it up to fix build on Linux.
- sphero-and-mousr-qt-controller, utility to control the robots my cat play with (mousr and sphero).
- qt-scp-reader, an offline reader for the SCP wiki. Works with the data in the SCP mirrors below.
- qbyteview, simple tool to visualize a binary (displays entropy with a fancy method I don't remember the name of).
- epubreader, simple epub reader using qt.
- sandsmark-screenshot, very simple screenshot utility, replacement for
import png:- | xclip -selection clipboard -t image/png
because xclip broke and it was easier to write this than trying to understand the xclip code. - homefilesharing, simple (encrypted, authenticated) sharing of files (because who the fuck wants to set up samba just to copy files with a GUI) and remote mouse control (because wtf why is Synergy so complicated).
- paqerduty, tray application that notifies you when you're on call and an event happens.
- martin-todo, five minute hack because there's no nice simple todo applications that aren't horribly overcomplicated or sucky.
- martin-toldyouso, so I can keep track of every time I told people so.
- slaq, slack sucks.
- notifu, someone on IRC wanted a tool that loaded and displayed an URL in a popup for notifications.
- turbo-button, simple tray application toggling between battery saving and performance CPU stuff.
- qt-rfb-client, RFB/VNC client using Qt, ported to run on my reMarkable™.
- pebble, breadboard layout web app. Test it at https://sandsmark.github.io/pebble/
- bincalc, simple command line calculator for easily working with bits, convert hex values to float, etc.. Useful when reverse engineering.
- dmsdos, linux utilities to handle dos/win95 doublespace/drivespace/stacker.
- yzis, vi implementation.
- compouploader, automatically downloads results and entries from Unicorn (the competition org system), so they can be uploaded to scene.org.
- dcd-extractor, a very simple tool to extract the Device Configuration Data from a uboot binary with an IMX header
- github-mirror, a simple script to automatically mirror all your github repos
- quasselpwdumper, dumps your quassel password from your config file. forgot my password at some point so I wrote this.
- quassel-sqlite-merge, script to merge in an old quassel sqlite database into a postgresql database.
- unfuckify, makes c++ code using
auto
readable, i. e. unfucks it. I think this is what the kids call "opinionated". - Vector-cmdline-tools, tools to work with the Anki Vector robot. Porting to Qt Bluetooth to make it work on Linux (and maybe Windows).
- Steamless, SteamStub remover, command line version.
- jantu, artifical consciousness framework + Starcraft Broodwar™® = master thesis.
- master thesis, latex source for my master thesis.
- replicode, constructivist AI language and runtime
- repliqode, GUI interface for replicode stuff.
- replicodekateplugin, simple plugin for Kate to launch the replicode executive directly from it. also syntax highlighting for the replicode language.
- Kaldi, a fork to train a norwegian speech recognition model.
- link-grammar-norwegian, started on support for norwegian in link-grammar. too embarrassed of the actual link-grammar stuff to commit it.
- ann, for some reason I started on implementing a library for neural nets at a hotel to fall asleep. counting sheeps didn't work.
- decision-tree-learning, Implementation of decision-tree learning algorithms in C++ for the course TDT4171 Artificial Intelligence Methods.
- forward-backward-inference, implementation of the forward-backward algorithm for the course TDT4171 Artificial Intelligence Methods.
- poker-ai, a poker ai written for the course IT3105
- caffe, fork of Caffe for some vapoursynth I think. Forked to fix compatibility with latest cudnn.
- vision, pytorch vision module. Just fixing the libjpeg and libpng usage.
- MLDemos, visualization tool for random ML algorithms.
- narxsim, cleaned up some person's master thesis about NARX
- status, a thing for i3-bar. All the alternatives sucked.
- sandsmark-notificationd, all other notification daemons suck.
- dbus-screensaver-inhibit-dummy, dumb hack to keep steam from keeping my machine unlocked and awake forever.
- sandsmark-integration, custom QPA for myself, based on frameworks-integration (now gone).
- pastenotifier, pops up a tiny window when the clipboard changes. So you know what you paste before you paste the wrong thing in the wrong window.
- polkit-dumb-agent, a polkit agent in 145 lines of code, because polkit is dumb and none of the other agents worked.
- qiwd, GUI interface to iwd (because
wpa_supplicant
is old news). - Select Default Application, because I don't want notepad to be my default text editor, or Firefox to be my default image viewer.
- discotiles, simple screensaver effect using QML.
- reddit-notifier, a KDE plasmoid that shows reddit notifications from the RSS feed of notifications from your reddit account
- kfilemon, a simple
LD_PRELOAD
able library to hijack moves to avoid having to use inotify. - xdg-autostart-launcher, automatically launches all applications in the XDG autostart folders.
- patoggler, simple thing to toggle mute in pulseaudio.
- linux-vr-player-or-something, very simple VR video player using libmpv and openhmd. Because apparently everyone thought this was impossible to do or something?
- pavucontrol-qt, major cleanup from upstream and a ton of bugfixes, cleanups and refactoring. Upstream didn't want my changes.
- VapourSynth Editor, editor for vapoursynth scripts. Forked it because upstream seemed dead, and I wanted some features that probably wouldn't get merged in the first place (like full-fletched vim-mode).
- sigp, simple audio visualizer thing for Samfundets Interne Grand Prix 2010.
- vapoursynth-movit, Vapoursynth plugin exposing Movit. Written blindly (aka. plain vim without plugins, and without testing that it builds). Probably doesn't work.
- qoniometer, audio visualizer. Because frequency analysis visualization is boring.
- qpitch, instrument tuner.
- guitar-effects, various realtime, low-latency guitar effects. Loopback thing using pulseaudio.
- Butterflow, ported to opencv 4 and python 3.
- vlc-chromecast-subtitles, VLC with the patches for proper subtitle support for Chromecast™®.
- inputstream.adaptive, started refactoring so wvdecrypter could work without Kodi, ended up just trying to fix compatibility with newest version of Widevine.
- spokify, unofficial spotify™® client. added support for scrobbling (to last.fm), visualizer, the magic starred playlist, and some other stuff I don't remember.
- amarok-soundcloud, soundcloud support for amarok. I think it worked at some point.
- vlc-kio, vlc plugin to use the KDE file io protocol thing framework. don't think I ever finished it.
- simpleplayer, simple audio player for testing phonon from when I maintained phonon.
- lastfmscraper, screen-scraping tool for dumping when you played stuff from last.fm
- akode, start of a backend for Phonon using ffmpeg etc. directly.
- vapor, desktop client for rawk the cloud web music server thing.
- impd, custom MPD server implementation.
- diffimg, graphical UI to inspect differences between two images.
- phototonic, Image Viewer and organizer.
- extra-imageformats-qt, collection of random extra image format plugins for Qt (bpg, fuif and pgf).
- piQtureGLide, OpenGL picture viewer thing ported to Qt 5.
- heifthumbnailer, KIO HEIF thumbnailer.
- qhiveplot, an implementation of hive plots in qt, ended up using it in repliqode
- libqsnap, old implementation of the old snapchat API, used for the jolla snapchat™® client Bluefish. Written while drunk on a plane.
- winuname, BSD-licensed implementation of uname I wrote to replace something for something sometime. don't really remember much.
- qt-rappor-client, modernized and cleaned up the reference C++ implementation of RAPPOR.
- pcrio, PE file resource editor for genieutils/freeaoe.
- QSsh, Qt-based library implementing the ssh and sftp protocols.
- libqdlibface, library for doing face recognition. not really tested, but gave up trying to clean up libkface so started on this.
- zstr, header-only C++ library wrapping zlib with iostreams, used for genieutils/freeaoe.
- tacopie, C++ TCP Library. Upstream is dead.
- qtcreator-breakpad, breakpad integration extracted from qtcreator.
- taglib, taglib with matroska/ebml support.
- cubescubed, compofiller for the 4k competition at TG12.
- oyarsa, writing a kernel woo. the solskogen branch contains an entry at solskogen.
- invitro, 4k on Linux at solskogen at 2015 (2015 bytes).
- smallhtml, collection of some of the smallhtml compocases I made for TG.
- fuckdos, start on a demo of sorts with a trick I found out later wasn't as original as I thought.
- textonacube, entry in the fast demo compo at TG10 (we actually won money for this).
- legendary, a demo engine that never really got anywhere. but got used for a couple of projects and made some money.
- wdotcrawl, wikidot crawler. Rewrote it to mirror the SCP wiki.
- imagetracker, simple tracking pixel for emails written in like 2005.
- nugatti, start of a gnutella implementation written in 2011-2012-ish. never really finished anything besides the most basic parts of the protocol. started because I wanted to figure out how the bootstrapping worked.
- kubotu, the IRC bot in the #kubuntu IRC channel on freenode for a while.
- rawk, cloud web music server thing. something like subsonic to have a web-based music player with your own music collection.
- sophia, mg and I started working on a new-school BBS system using ssh while drunk.
- quassel-proxy, a proxy between the quassel protocol and json from when I wanted a web-based quassel client.
- quazzer, start of a fuzzer for the quassel protocol.
- lolcats, displayed a random lolcat from my collection. don't judge me.
- cloudsync, replacement for dropbox/ubuntu one/owncloud. don't think it ever worked properly.
- quassel-web, started on a web interface for quassel. wanted to have quassel in the steam overlay, and for some reason this seemed like the easiest solution. never finished.
- hjemmeside, one of my old homepages from when I started to learn django.
- cbot, IRC bot for NTNU gangstaz.
- DESMAN, distributed peer-to-peer decentralized
blockchainservice monitoring written for the student society in trondheim in 2008, never actually used. codename "lollercoaster". - notes, web-based note-taking app written in c++.
- millenials-to-snake-people, Chromium extension that does what it says, with toggle button (because I don't want it on all sites).
- Imagus, Chromium extension to show images on hover, github mirror with unminified code to compare with code in the official Chrome Store. Just because I don't trust stuff in the store.
- chrome-extension-tick, two simple chrome extensions that just tick or untick every checkbox.
- autochecker, google chrome extension to help automatically check the right boxes when filling out forms.
- anti-anti-devtools, started out as a chromium extension to defeat the tricks people use to detect devtools. Ended up defeating fingerprinting (and crashing some fingerprint-library-backends).
- bypass-paywalls-chrome, Bypass Paywalls web browser extension for Chrome and Firefox, with a fix for some crashing. But upstream doesn't seem to allow me to open a PR.
- url-rewriter, rewrites URLs on the fly.
- chrome-no-cohort, Disables the new google fingerprinting things.
- archive.is-chrome-extension, open links via archive.is when you right click them.
- browser-painter, draw on web pages.
Also see https://invent.kde.org/historical for the basic stuff.
- qt1, copy of Qt1 for usage with KDE1 (with some minor issued fixed, like scrollwheel support in some apps).
- qt2, copy of Qt 2 ported to modern system, with some fixes.
- KDE 2 kdelibs, KDE 2 version of kdelibs, fixed up to mostly build on a modern system.
- kde1-kuickshow, KDE 1 version of Kuickshow. And ported away from imlib, because that API is horrible.
- kde1-kshow, KDE 1 version of kshow. Because you always need more image viewers.
- kvoicecontrol, tool that gives you voice control over your unix commands. For KDE 1.
- kde1-amor, backport of Amusing Misuse of Resources for KDE 1 or something.
- kde1-kpackage, KDE 1 version of KPackage with libalpm/pacman/archlinux backend/support.
- kde1-kteatime, the original (pre-KDE 2 port) version of kteatime.
- kcmlaptop, laptop support (mostly power management) for KDE1.
- kdewizard, kdewizard for KDE1 (I missed Kandalf when running KDE1).
- kde2-kdebase, KDE 2 version of kdebase, fixed up to mostly build on a modern system.
- kde2-kio-sftp-kde3, backport of kio-sftp from KDE 3, wrapping the
ssh
executable. Doesn't work well, use the one below. - kde2-kio-sftp-kde4, backport of kio-sftp from KDE 4, using libssh.
- kde2-kmorph, KDE 2 application to morph between two images. Ported and improved performance a bit, don't really know how it is supposed to be used.
- KWoodhammer, All-in-one shell for all kinds of data encryption. KDE 1 version.
- SCP wiki dump, full mirror of the scp wiki with the entire history. ~20 million words, fun for training Machine Learning Things™
- dotfiles, since everyone like to post these kind of things. And it makes it easy to keep the config in sync across machines.
- sequrerender-child and sequrerender-host, testing out-of-process rendering with shared memory and seccomp and stuff.
- libfisk,
LD_PRELOAD
hack to hide the fact that someone has been fisked. fisking is a long tradition at the Student Society in Trondheim where you do stuff like puttingecho sleep 1 >> ~/.bashrc
into people's.bashrc
when they forget to lock their session. - bluefish, (old) snapchat client for the jolla. snapchat has drastically altered their API, so hasn't worked for a while (since I stopped using my jolla).
- glog-squash,
LD_PRELOAD
hack to disable endless amount of spam to the console when launching glib applications.
Probably not useful
- spacetrader, start of a port of the space trader game for palmos. never got far.
Things I have spent less than five minutes on.
Mostly things I didn't write with a couple of commits (e. g. because I wanted to test something and it didn't build or was missing something trivial.)
- qmarkdowntextedit, proper standalone version. preserved my fork because upstream later reverted my changes that made it a useful standalone application.
- sddm, started working on wayland support for sddm in 2013. never finished.
- kgtk, ugly
LD_PRELOAD
hack to make GTK applications use Qt/KDE dialogs. Works sometimes. - krename, rename utility. ported to qt5.
- esp-idf, fork to get the latest version with the necessary patches for ODROID-GO.
- synkron, ported to Qt5.
- klatexformula, ported to qt5.
- kfontview-standalone, displays contents of font files.
- kuiserver-standalone, standalone fork of kuiserver, so I don't need to pull in the entire plasma workspace just because I use a lot of KDE stuff.
- kcm-lookandfeel-standalone, to avoid having to install the whole Plasma desktop.
- kjackal, rootkit scanner. ported to newer kernels.
- kde-cli-tools-standalone, to avoid having to install the whole Plasma desktop just for kcmshell.
- qt-polkitagent, couldn't get any polkit crap to work. So had to fix the build of this to test it, but surprise, it didn't work.
- signsrch, just a mirror, but with history.
- clickteam-unpack, fixed compatibility with some installer (forgot which).
- irstlm, had to fix this to get Kaldi to work Properly™.
- opensift, upstream is dead. Now with modern opencv support.
- konsolelauncher, testing quick and dirty hack to speed up launching of konsole.
- opensift, Open-Source SIFT Library. Fixing opencv compatibility and stuff.
- kdeconnect-minimal, kdeconnect without so many big required dependencies.
- okular-backend-mupdf, PDF backend for Okular using MuPDF. Cleaning it up.
- Ghidra, adding some hardening flags to Ghidra build.
- ini-editor, I think this was to create a more generic config interface for the Xine backend for phonon.