Todo/Upcoming

To expand

  • Edit the VisionFive 2 Article to include more RISC V Devices, change it to being documentation on several SBC's

I love Risc V devices due to the (Assumed) privacy they offer with their open instruction set and I happen to have a relatively good collection of them that I got before Mexican tariffs and custom agents went nutso over anything coming from China. I want to make an article basically documenting all of them, I'll probably edit the VisionFive article to include them all and update it continuously.

 

TODO

  • FreeBSD PCIe passthrough and making a virtual firewall

As of the time of writing I have a pfsense firewall virtualized over an Ubuntu 24 OS. My logic as to why I did this was simple as even if an attacker took control of the virtual machine running the firewall they wouldn't be able to touch the host and if someone did manage to take control of the VM I could just restore a snap and carry on as normal.

Given that a new vulnerability for KVM was found a couple of weeks ago as of the time of writing that allows a remote attacker to take complete control of the host, I want to wipe that device completely, install FreeBSD into it and virtualize OpnSense with a passed-through network card.

This is my number 1 priority an I will likely work on it a day after this blog version goes live, having it documented for August's article.

  • Static website considerations

I was debating on whether or not to do this as I'd give the blueprint of how the website runs for a possible attacker but honestly? configuring everything from scratch is a pain and companies seem to want the info regarding configuring a website on your own these days in order to charge consulting fees so it may be useful to someone that stumbles upon the site. Likely to be documented on August or September.

  • Local hosting cheat sheet

How to push to a local gitea instance, Nextcloud commands, among other things. I may integrate it with XigmaNAS as running things like Nextcloud in a FreeBSD jail is significantly harder than running things in a Linux system like Unraid that is running 10+ Dockers. 

  • Using CUPS to print with a heat receipt printer

I had forgotten I had this thing until I was doing inventory of my devices the other day. I think it's a good chance to make an article on how to write CUPs drivers because it's really not difficult for small devices like this.

  • How to make a 2D vector image into a 3D mesh

I want to replace the image of my blog for something a bit more personal, I'm planning on making a logo in inkscape and translating it into 3D using blender, then texturing it.

  • Creating a virtualized FreeBSD I2P website running on a jail

I want to make a second blog on the deep web to post things that I believe are too risky to show on clearnet. I want to make it a jail on FreeBSD running over a virtualized linux, probably with a network card that has passthrough in order to isolate it from the host. The website will likely contain nothing but html and the articles would have to be updated manually.

  • Unix-Based file sharing

File sharing using NFS and how to integrate it with Hikvision NVR Systems

  • GRUB and chroot tricks

Uses for GRUB and chroot related to loading a system that has a broken boot partition or booting a system in a USB that the BIOS cannot boot to.

  • XigmaNAS install and configuration

An alternative to TrueNAS core for bad processors now that it's going defunct, useful for small companies, personal use and recycling atom/celeron computers that may end up in the garbage otherwise.

  • Making a KVM (Keyboard, video and mouse) server to make a borderline unhackable remote windows server. 

This has been on my mind for a while now. While working on different companies I've come across an issue which is shared among most of them, they have a windows program of some kind that they cannot under any circumstances take offline or upgrade the system of without causing severe issues to their bottom line (E.g. XRay-Software made by Canon for windows 7, A NOC/SOC controller running over windows XP, a plotter by Kodak that uses a windows 7 program, the UPS controller for a small data center requiring a windows server install, etc.). This is a huge security gap and it can cause all sort of issues, particularly when facing audits or pentesting. In all of these cases the software can run offline due to the severity of it losing connection or has long since been patched by a third party to work offline after the company responsible for maintaining the server has gone down under but in most cases are online in order to be controlled remotely. 

This gave me an idea what if the machine only has access to the local network or the machine it controls? The idea is simple: You setup a windows machine or a small controller to act as keyboard and video for the machine and then access the machine acting as video and keyboard remotely via linux (Effectively having 2 proxies between the windows machine and the internet), with the only data going into the machine being keyboard and mouse movements and the only data coming out being video. That way the only machine that you must keep updating is the linux machine you're connecting to and if an attacker gets access to the windows server they must work very hard and slow to do some damage and won't be able to load ransomeware unless they write a program from scratch.

I'm thinking of using a Banana PI BPI-M6 to serve as the kvm server, which is a rather mediocre sbc but it comes loaded with an NPU that I believe can be used to pull this off or at least a demo of it.

  • I was considering consolidating these 3 in a single post but all three use different gpus, different methods and most importantly, they all suck. AMD AI on anything other than enterprise GPU's is a PITA to setup:
  • Configuring Zluda to use unsupported AMD GPUs for generative AI on Windows

How to get Zluda to work on an RX 6600 and hoe to make it work for generative AI.

  • How to get ROCM to work on supported hardware

How to load generative AI on Linux with an AMD card that supports it. Most likely will be done on Arch Linux as that's the easiest platform to get this working on.

  • How to get ROCM to work on Polaris AMD GPU's

How to load generative AI on Linux with an AMD card that don't support it via docker, this one is difficult to do and I only have a single card to try it on, regardless I think it's worth trying.

  • I'm considering this one but I don't know if GIMP still supports this:
  • Configuring OpenVino to use an Arc770 for AI filters and other effects on GIMP

How to setup gimp to use an Arc card for generation of images and application of filters in a single program. This keeps failing under windows with little to no recourse (Something to do with Intel updating the program to use their ultra CPUs and letting Arc GPU users hang) so I'll probably have to do it on Linux to troubleshoot properly.

UNDER CONSIDERATION

 

  • Self-hosted Rustdesk service

I don't have the money required at the moment to rent a server to mount RustDesk and I currently have no need for it, however I'll try to do so when I get the money, people are always looking for team-viewer alternatives, this is currently my highest priority when I get the money for it.

  • File hosting and Nextcloud on I2P?

Under consideration, I believe it's doable and an affordable solution for remote file hosting without getting into trouble with an ISP and without having to purchase a domain but I've never tried it and apparently neither has anyone. I cannot find info on how to do it anywhere. I will probably do this one once I finish my queue, it's my first priority that doesn't require investment in a server elsewhere. This one isn't about anonymity, it's about affordability.

  • Installing and configuring Wazuh as a SIEM 

After OSSIM was shuttered by AT&T for doing too much of a good job and eating the market, I've been interested in doing this one but I don't think I can spare the hardware  and commitment this implies. SIEM software is in my openion better operated as bare-metal due to the amount of resources they consume, you also need to configure the SIEM to collect the logs from all network equipment and while this is perfectly okay in an office it can lead to some rather tiresome interactions when you're sharing a home with someone. It's third on my priorities, I'm definitely doing it  as it's very useful for small clients but I need to buy some hardware to simulate an office-space.

  • Using a virtual machine as a virtual switch for several other virtual machines

As it says on the title I want to configure a virtual machine in order to serve as router or bridge for other virtual machines with a network card on passthrough, this way you can have several virtual machines without touching the host. The main problem I have with this is that FreeBSD jails exist (As seen on my I2P article hidden blog article). so it's rather pointless? The only services I want to run with a setup like this are OpenVAS (Which has become corporo slop and made absurdly obtuse to setup on purposse), and Nextcloud (Doable in FreeBSD Jails albeit without apps). So I don't see the point, I may reconsider this after getting Wazuh to run on bare-metal.

  • Configuring a "Driver free" BT+AX900 (aicsemi) USB adapter on Linux (Short)  

About two years ago I bought a "Driver Free" Wifi adapter from Aliexpress that when I placed it on my Linux computer it mounted as a drive with a very sus .exe inside (Which I assume was meant to auto-execute, lsusb identified the device as a 'aicsemi Aic MSC'), at the time I thought of it as just another chinese scam but held unto it, mostly because I couldn't return it.  Later I learned that it really is a wifi antena and someone developed free drivers for it, but I don't know if it warrants a whole article.

I may add it to some article with random pieces of hardware that are difficult to run on linux. I have a Creative sound card that is also a bit hard to run as Creative doesn't provide code or binaries for Linux officially.

  • Installing Raspberry Pi OS on an arm32 Microsoft surface tablet 

It's useful for selling them or gifting them as they can be bought for cheap but the performance is very bad due to the lack of nvidia tegra drivers, this one is under heavy consideration I don't know if it's worth doing again and I cannot find the drivers anywhere. 

A possible reason for considering actually doing it is that the documentation is poor and it has some unexpected pitfalls (E.G. not all listed versions of the bootloader work).

  • Using flatpaks on unsupported architectures (Short)

This is another one that I question if it's worth documenting due to how poor the documentation on it is. This is mostly useful for running programs that you cannot find anywhere else or compile for platforms different from x86_64 (In particular risc v) but I question if it's worth dedicating an article to.

  • Benchmarking weird/rare GPUs

This is mostly about 3 GPU's

  • The intel DG1: Probably the rarest intel discrete GPU that's not a prototype? I happen to have a version that's not tied to any particular hardware (Gamer Nexus and several others benchmarked one that was tied to some Lenovo server or something) and as such I could get comparisons with other GPU's in my collection. I'm also curious as to whether or not it works on BSD as Arc cards do not work there but XE cards usually do.
  • The SM768: Silicon motion USB GPU's, I've always questioned if they're better or not than just integrated graphics.
  • Imagination GPUs: These ones may not be even worth benchmarking because I've only ever found them in SOC's. I have one in a VisionFive2 and another in a BPI-M6. I think they're interesting but they're also rather bad and I don't know if they're worth considering as anything other as display adapters, they are good on paper but their drivers (Which I'm 50% sure contain glowieware) are honestly awful and hold the hardware back.

In all scenarios I question why I'd bother documenting this, benchmarking takes a lot of time and I question if the data acquired from this is even useful. Maybe I'll do videos about this.

  • Arcan Display Server

The other Linux display server people generally don't know or talk about, I may consider a walkthrough and basic configuration of it, it's a cool project but the only desktop environment available for it, Durden, is a DWM-based Window manager that I find unintuitive and tiresome to use. Last checked: It can easily be installed on Void Linux.

  • AROS and Reactor OS

In my opinion the only non-Unix open OS systems. AROS is the unofficial continuation of Amiga OS 4 and Reactor OS is a reverse-engineering of Windows from scratch.

Both offer compatibility with apps that have stopped working for the systems they were developed for, of the two AROS is the best developed and more useful while Reactor is more of a last-resource thing.

Both of them can be useful but honestly unless a client requires to continue running an amiga program from the 80's in a machine and wants to integrate it with modern systems I honestly don't find much use for them.

  • illumos

Ditto as AROS, only this one is Unix based and used for Solaris apps.

  • Haiku

Ditto AROS but this one is for BeOS, realistically there's no benefit in documenting it. Nobody used BeOS back in the day and it has little to no applications to be found (Unlike AROS or Illumos).

  • Flashing a BIOS on Linux

I currently cannot afford a sacrificial lamb motherboard in case this one goes wrong (Which has for me in the past) and I have no need for it. The last machines I've done this for were machines with socket LGA 1151 that I flashed to be compatible with 8th and 9th gen intel CPUs.

  • VIA CPU governor throttling

This is about a feature that's not commonly used in 32 bit VIA processors that allows to make the CPU deliberately slower on purpose. This is useful mostly for time-critical programs running DOS. It's under consideration because most systems that fit this description are either games (This serves no purpose as emulators are good at handling this) or applications in the government sector that cannot be easily changed or replaced such as the controllers for the public lighting systems which is rather far-fetched as far as case-uses go.

I'm also considering making a guide on usage and maybe gaming of the via computer I have in general using tinycore or openbsd as I think it's cool and not many people know about them.

  • Alternative Linux kernels

Comparison and use cases for alternative linux kernels such as Xanmod, Liquorix, Zen and linux-vifio. Out of these the only one that I've found an useful application for is linux-vfio (Used for PCI devices pass-through in cheap motherboards that group all PCI devices in the same group causing issues that prevent the pass-through from happening) but it's very poorly maintained and honestly it's better to fork over the extra 50 dollars for a better motherboard in most scenarios, even most OEM motherboards I've come across support PCI passthrough without major issues.

  • Making raid drives (Short)

How to configure drives in raid 1 on linux and possibly BSD. I may integrate this in another article as it's honestly quite short and easy to do so.

  • Changing formats for roms

This is related to emulation gaming and how to make ROMS into more portable formats, specifically how to turn bin and cues into chds, how to turn isos into cso's and how to turn isos into gcz's. It's under consideration as some big company may take offence to this and send a DMCA, I may consider it if I find open roms such as Friday Night Funkin' for the PS1.

  • Self-hosting a VPN service

I don't have the money required at the moment to rent a VPS and do this, I may consider it in the future but I also question how useful it would be for anything other than hiding your IP. Eventually some authority will request information from your service provider and the result will be the same as acquiring a VPN through other means except perhaps a bit cheaper. Under serious consideration if I cobble together enough crypto and find a hosting server willing to accept it for payment.

  • Self-hosting a mail service

Same as above I don't have the money but unlike the other one I question why I would even do this, there's a reason why I use Protonmail instead of self-hosting; every time I've tried hosting a mail service on my own the mails have never cleared for gmail. It's better to use Protonmail or else you simply won't be able to communicate these days, it's depressing really.

  • Compiling GNU Icecat

There are two versions of Icecat: one that is up-to-date and one that is not. The problem is that most repositories contain the one that is not but in order to get the latest version you must either use the Arch AUR (Which basically adds a bunch of useless stuff that makes it a worse version of LibreWolf instead of just hardened Firefox), or compiling it from source. The issue with compiling Icecat is that it's legitimately one of the most difficult programs I've compiled requiring several visits to the mozilla forums to resolve pitfall after pitfall. I don't think it's worth it, it's just a hardened version of Firefox, Librewolf is better for most scenarios. 

  • AI hosting service using TOR or I2P

This is in order to have a text-based AI service that you can rely on without having it available to subpoena (Based on a couple of recent lawsuits regarding the Subnautica lawsuits and Mercante v SmashJT). I'm questioning whether to make it TOR or I2P based and it would most likely be done in BSD either way.

  • Installing Nextcloud on FreeBSD

This one is a legitimate PITA and I don't think it's worth it, once you manage to install nextcloud you run into a thousand issues in regards to installing addons or even updating. I did it once on Truenas for a terramaster NAS and honestly it was a miserable experience.

  • Installing the community version of OpenVAS (Or whatever they call it these days)

At some point in recent years OpenVAS decided that they weren't making enough money while more-or-less having a monopoly so they decided to go full corpo and offer OpenVAS as a subscription-based solution (It's so tiresome). However if you dig deep enough there's a community version of the software that's extremely obtuse to install and configure on purpose, so much so I'm considering dedicating a whole article just to that, it's that bad.

  • Using QubesOS as a daily driver

I was a Qubes OS user for quite some time and I quite liked it, there are several day-to-day tasks that can be a bit hard to accomplish on it that I'd like to document but the problem that I have is that the OS is very heavy and I currently don't have a laptop capable of running it (I recommend a laptop with 16 threads, the most powerful laptop I have at the moment has 4). There's also an issue that always rubbed me the wrong way regarding Qubes which is due to the requirement of processing power you're likely to get stuck with a laptop that has Intel ME or AMD PSP, which makes me question if it's even worth getting a new 'privacy' laptop when there's a backdoor built into them. Honestly I think I'm fine with my core 2 duo that lacks intel ME as far as privacy goes at the moment.

  • Mounting and converting physical and virtual drives, as well as file-system passthrough

This one is easy to do, I just want to document how to mount drives and have them mount automatically using fstab.

I'll also cover file-system pass-through although it will just be to showcase why it's not necessary and to be honest mounting is better.

It's currently under consideration because I think it's very easy and can be integrated into other articles? I originally had written to include how to mount qcow drives to extract files on them but I integrated it with my Whonix regular VM article. I think I can do the same for most mount options except for BSD mounting and files pass-through but in the case of the former there's a package that remedies most headaches (automount) and in the case of file-system passthrough I don't see the point? it leaves a very clear log when transferring files from a guest to a host and in my opinion that's undesirable for privacy reasons and a potential attack vector you can avoid by just mounting the virtual disk.

  • Sound output on a computer without a sound card

For some reason I happen to have not one but two integrated computers without sound cards (They have the sound outputs soldered in but no sound card), I'm thinking that maybe I should document how to get sound out of them but I don't know if it's worth doing? Maybe I'll do it for people that buy used server equipment which usually lacks those.

  • A look at KaiOS and apps

I happen to have a phone with KaiOS (A rather high-end 1GB model at that) that I wanted to develop for but for all intends and purposes the project seems abandoned now (Last blog post was January 2025) so I don't see the point in doing so anymore and more importantly I don't think it ever reached the audience it intended, as a third worlder I get to work and fix on cheap tech and tech that's 20+ years old and I've never seen anyone with KaiOS,even less so now when everything seems to revolve around Whatsapp. I wasn't a big fan of it anyways, I like the idea of html apps running on phones but the OS wasn't completely open source and I think that more than anything is what scared developers away.

Maybe I'll do an article gaming on it as there are quite a lot of games developed for it that are locked to the platform and will cease to exist when the servers shut  down. I may also develop a game for it as it seems suspiciously easy to do so.

Discarded/Trash Can

 

  • Fixing the clock on Linux (Short) 

This one is about a specific issue that happens if you boot Linux in a system where Windows is used as another partition or is present in another disk. I'm posting the issue verbatim according to the Gentoo wiki:

Historically, Unix systems have set their RTC to represent UTC. Other operating system, such as Windows, expect the RTC to represent local time by default.

This can lead to a difficulty when dual-booting: the time being correct on one operating system causes it to be incorrect on the other. When either uses NTP to obtain the time, they then 'correct' the RTC, only for the situation to revert when the other does the same, seemingly 'fighting' over the RTC, and resulting in the clock being incorrect by several hours.

To avoid Windows adjusting the hardware clock back to local time, add the following registry entry:

For 64-bit Windows, open regedit then browse to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation. Create a new QWORD entry called RealTimeIsUniversal, then set its value to 1. Reboot the system. The clock should now be in UTC time. For 32-bit Windows, follow the 64-bit instructions except use DWORD instead of QWORD.

I have integrated this into the guide for windows 11 VM gaming as it's a requirement for getting a good framerate AND having the clock run properly.

This article was updated on