How to mine Monero Updated 2025-11-05
Ubuntu 20.10 as per xmrig.com/docs/miner/build/ubuntu:
sudo apt install git build-essential cmake libuv1-dev libssl-dev libhwloc-dev
git clone https://github.com/xmrig/xmrig.git
mkdir xmrig/build && cd xmrig/build
cmake ..
make -j$(nproc)
At minexmr.com/#getting_started we see that all you then need is a single CLI command:
xmrig -o pool.minexmr.com:4444 -u <your-monero-address>
Seems simple, well done devs!
Benchmark on Lenovo ThinkPad P51 (2017) as per xmrig.com/docs/miner/benchmark:
./xmrig --bench=1M
gives:
948.1 h/s
which according to the minexmr.com mining pool would generate 0.0005 XMR/day, which at the February 2021 rate of 140 USD/XMR is 0.07 USD/day. The minimum payout in that pool is 0.004 XMR so it would take 8 days to reach that.
So clearly, application-specific integrated circuit mining is the only viable way of doing this.
www.makeuseof.com/cryptos-you-can-mine-at-home/ is a completely full of bullshit article that says otherwise. How can someone publish that!
I2P on Ubuntu 2026-08-07
On Ubuntu 26.04, visiting i2p.net/en/downloads/ recommended me to download files.i2p.net/2.12.0/i2pinstall_2.12.0.jar so I did:
cd ~
wget https://files.i2p.net/2.12.0/i2pinstall_2.12.0.jar
sudo apt install openjdk-17-jre
JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64 PATH="$JAVA_HOME/bin:$PATH" java -jar ./i2pinstall_2.12.0.jar -console
Then after some clicking faff
cd ~/i2p
JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64 PATH="$JAVA_HOME/bin:$PATH" ./i2prouter start
and it told me:
Starting I2P Service...
Waiting for I2P Service....
running: PID:423806
and it automatically opened up a Chrome tab at: 127.0.0.1:7657/welcome
The default Java 8 installed on my machine is too old, needed 17 or above. Very annoying.
To make things more bearable I added this to my .bashrc:
i2p() (
  cd ~/i2p
  JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64 PATH="$JAVA_HOME/bin:$PATH" ./i2prouter "$@"
)
so I can just:
i2p start
i2p stop
It does not come with a default browser... A popular option seems to be to install a praivate browser such as LibreWolf (Firefox based) to be your I2P thing www.youtube.com/watch?v=qFE1J9YhhWg Setting it up as such makes it not work as a regular clearnet browser. Instructions at: librewolf.net/installation/debian/
sudo apt update && sudo apt install extrepo -y
sudo extrepo enable librewolf && sudo extrepo update librewolf
sudo apt update && sudo apt install librewolf -y
Then go to Proxy settings and set Manual proxy configuration:
  • HTTP Proxy: 127.0.0.1:4444
  • SOCKS Host: 127.0.0.1:4447
Another setting you really want in LibreWolf is:
Don't enable HTTPS-Only Mode
otherwise it keeps complaining every time that pages are not https, because they are all http, because the security is happening at a lower layer of the protocol already.
Then I can visit the sample website tracker2.postman.i2p. It complains that it's not https, but I say, OK, I think I'm already mega encrypted figers crossed. It is a simple oldschool forum like phpBB where people announce their I2P compatible Torrents. From the posts I can copy a Magnet link and add it to 127.0.0.1:7657/i2psnark/, the built-in Torrent thing, the only convenient thing they have pre-setup for you :-)
Shame setting up this project is so difficult, it can never reach mainstream like this. Tor Browser and centralized VPN are so much more streamlined. But if it were mainstream, it would be boring? Early 200ss vibes come to mind.
I2P Ubuntu via PPA 2026-08-07
sudo apt-add-repository ppa:i2p-maintainers/i2p
sudo apt-get update
sudo apt-get install i2p
but then when I ran:
i2prouter start
it fails with:
Starting I2P Service...
Removed stale pid file: /home/ciro/.i2p/i2p.pid
Waiting for I2P Service.....
WARNING: I2P Service may have failed to start.
Infrastructure as a service Updated 2025-07-16
You SSH into a an OS like Ubuntu and do whatever you want from there. E.g. Amazon EC2.
The OS is usually virualized, and you get only a certain share of the CPU by default.
Inkscape Updated 2025-11-05
Inkscape is a a good software for editing/creating SVG files.
Its functionality is fundamental for as a software for drawing geometry diagrams, as it is a good middle ground between algorithmic generation, and raster graphics.
At 1.0.2, its UI is a bit terrible:
  • the way the menus open on the right with title below the window...
  • several defaults are atrocious, e.g. export drawing rather than page
And it crashes from time to time on Ubuntu 21.04. And it has some glaring bugs, e.g.:
But still, it is a very good initiative.
JAVA_HOME Updated 2025-07-16
This ultimately determines which Java is used by a bunch of tools.
TODO is there a way to update it sanely in Ubuntu: askubuntu.com/questions/175514/how-to-set-java-home-for-java to always match the default java executable?
Kdenlive Updated 2025-07-16
This seems like a decent option, although it has bugs coming in and out all the time! Also it is quite hard to learn to use.
To get started:
  • import a clip
  • drag it onto the track area
Shortucts:
To set the video length, search for "set outpoint" on "monitor".
Add subtitles:
  • Effects
  • Dynamic text
then drag on top of the video track. To add only to part of the video, cut it up first.
Preview has no sound on Ubuntu 20.10. Fixed as of Ubuntu 22.04.
Sound worked on Ubuntu 21.04 though, but it then soon crashed with:
 = = SET EFFECT PARAM:  "rect"  =  0=1188 0 732 242
MUTEX LOCK!!!!!!!!!!!! slotactivateeffect:  1
// // // RESULTING REQUIRED SCENE:  1
Object 0x557293592da0 destroyed while one of its QML signal handlers is in progress.
Most likely the object was deleted synchronously (use QObject::deleteLater() instead), or the application is running a nested event loop.
This behavior is NOT supported!
qrc:/qml/EffectToolBar.qml:80: function() { [native code] }
Killed
amazing.
On Ubuntu 22.04 haven't crashed yet.
The hot and more expensive sotorage for Amazon EC2, where e.g. your Ubuntu filesystem will lie.
The cheaper and slower alternative is to use Amazon S3.
LIGO 2025-10-14
Video 1.
LIGO documentary by Advanced LIGO Documentary Project
. Source.
As of 2020, no one knows how to build the major desktop distros fully from source into the ISO, and especially so in a reproducible build way. Everything is done in build servers somewhere with complicated layers of prebuilds. It's crap.
llama.cpp Created 2025-07-16 Updated 2025-07-16
This appears to be the backend library of Ollama.
They have a CLI front-end named llama-cli.
askubuntu.com/questions/1461564/install-llama-cpp-locally has some tutorials for Ubuntu. There was no nicely pre-packaged one for Ubuntu 25.04, but build worked on 79e0b68c178656bb0632cb8602d2940b755077f8 In particular it exposed Vulkan support before Ollama did: github.com/ollama/ollama/pull/5059 and it did seem to work, using up my AMD GPU.
MySQL Updated 2025-07-16
Create user for further logins without sudo askubuntu.com/questions/915585/how-to-login-mysql-shell-when-mysql-have-no-password/1325689#1325689:
sudo mysql -e "CREATE USER $USER"
Create test user with password:
sudo mysql -e 'CREATE USER user0 IDENTIFIED WITH mysql_native_password BY "a"'
sudo mysql -e 'GRANT ALL PRIVILEGES ON database_name.* TO "user0"'
and login as that user:
mysql -u user0 -p
Login with password given on the command line:
mysql -u user0 -pmypassword
The IDENTIFIED WITH mysql_native_password part is to overcome "Client does not support authentication protocol requested by server" when connecting from Node.js.
List users:
sudo mysql -e 'SELECT * FROM mysql.user'
View permissions for each user on each DB: serverfault.com/questions/263868/how-to-know-all-the-users-that-can-access-a-database-mysql
sudo mysql -e 'SELECT * FROM mysql.db'
List databases:
sudo mysql -e 'SHOW DATABASES'
Create database:
sudo mysql -e 'CREATE DATABASE mydb0'
Destroy database:
sudo mysql -e 'DROP DATABASE mydb0'
Show tables in database:
sudo mysql -e 'SHOW TABLES' mydb0
or:
sudo mysql -e 'SHOW TABLES FROM mydb0'
Nvidia Updated 2025-07-16
Open source driver/hardware interface specification??? E.g. on Ubuntu, a large part of the nastiest UI breaking bugs Ciro Santilli encountered over the years have been GPU related. Do you think that is a coincidence??? E.g. ubuntu 21.10 does not wake up from suspend.
Video 1.
Linus Torvalds saying "Nvidia Fuck You" (2012)
Source.
Video 2.
How Nvidia Won Graphics Cards by Asianometry (2021)
Source.
Video 3.
How Nvidia Won AI by Asianometry (2022)
Source.
Okular Updated 2025-07-16
This is generally good, especially compared to how crappy Evince, the default Ubuntu one, has been around 2014-2020.
OpenShot Updated 2025-07-16
Ubuntu 20.10 crash...:
  exceptions:ERROR Unhandled Exception
Traceback (most recent call last):
  File "/usr/bin/openshot-qt", line 11, in <module>
    load_entry_point('openshot-qt==2.5.1', 'gui_scripts', 'openshot-qt')()
  File "/usr/lib/python3/dist-packages/openshot_qt/launch.py", line 97, in main
    app = OpenShotApp(argv)
  File "/usr/lib/python3/dist-packages/openshot_qt/classes/app.py", line 218, in __init__
    from windows.main_window import MainWindow
  File "/usr/lib/python3/dist-packages/openshot_qt/windows/main_window.py", line 45, in <module>
    from windows.views.timeline_webview import TimelineWebView
  File "/usr/lib/python3/dist-packages/openshot_qt/windows/views/timeline_webview.py", line 42, in <module>
    from PyQt5.QtWebKitWidgets import QWebView
ImportError: /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5: undefined symbol: _ZN4QRhi10newSamplerEN11QRhiSampler6FilterES1_S1_NS0_11AddressModeES2_, version Qt_5_PRIVATE_API
MongoDB-based.
So once you install MongoDB, run with:
MONGODB_FEATHERS_REALWORLD=mongodb://localhost:27017/mydb npm start
Tests can be run with:
MONGODB_FEATHERS_REALWORLD=mongodb://localhost:27017/mydb npm run test
but there were 10 failures and 55 passes: github.com/randyscotsmithey/feathers-realworld-example-app/issues/3