Uploaded March 2024 | Updated September 2026, 2 weeks ago
#RaspberryPi #Comparison #Benchmark
Full steps can be found at i12bretro.github.io/tutorials/0918.html
--------------------------------------------------------------------
The Devices
--------------------------------------------------------------------
The Raspberry Pi 4 runs a 1.5 GHz Quad Core Broadcom BCM2711 64-bit CPU with 4GB LPDDR4 RAM.
The Raspberry Pi 5 runs a 2.4 GHz Quad Core Broadcom BCM2712 64-bit CPU with 4GB LPDDR4 RAM.
--------------------------------------------------------------------
The Benchmarks
--------------------------------------------------------------------
7-Zip - The 7-zip benchmark tests compression and decompression using the LZMA method. Results are shown as a rating in MIPS (million instructions per second). The rating value is calculated from the measured CPU speed and it is normalized with Intel Core 2 Duo E6600 (2.4 GHz, 4 MB L2) CPU in 64-bit Windows with multi-threading option switched off. The charted value is the total compression MIPS score.
Sysbench - The sysbench CPU benchmark verifies prime numbers by doing standard division of the number by all numbers between 2 and the square root of the number. Once a number gives a remainder of 0, the next number is calculated.
CPU Blowfish - Blowfish is a symmetric-key 64-bit block cipher
CPU CryptoHash - CrytpoHash is a cryptographic hash function that maps data of arbitrary size (often called the "message") to a bit array of a fixed size (called the "hash" or "message digest"). It is a one-way function, that is practically infeasible to invert, and is used in digital signatures, message authentication and hash functions to index data in hash tables.
A Fibonacci sequence is a series of numbers in which each number is the sum of the two preceding numbers, such as 1, 1, 2, 3, 5, 8, etc. This benchmark tests the integer processing ability of a CPU.
CPU Fibonacci - A Fibonacci sequence is a series of numbers in which each number is the sum of the two preceding numbers, such as 1, 1, 2, 3, 5, 8, etc. This benchmark tests the integer processing ability of a CPU.
CPU N-Queens - N-Queens finds a way to place a variable number of queens on a chessboard so that no two queens threaten each other by sharing the same row, column or diagonal. For some reason, the Cortex-A53 which is a simpler in-order processor does better at this benchmark than more complex out-of-order processors like the Cortex-A72 and Core i5, but it is hard to conclude much from this result.
CPU ZLib - ZLib is a software library used for data compression, which is used by the gzip file compression program. This benchmark is memory intensive, so its results will reflect the speed of the RAM.
FPU FFT - Fast Fourier Transforms (FFT) converts a signal to frequencies and vice-versa. It is used in audio digital signal processing and image signal processing, and is an indication how fast a processor can process video in software.
FPU Raytracing - Raytracing is a rendering technique for generating an image by tracing the path of light as pixels in an image plane and simulating the effects of its encounters with virtual objects. Like FFT, this benchmark tests how well the processor deals with floating point numbers (i.e. numbers with decimal points).
Sources: https://source.puri.sm/Librem5/community-wiki/-/wikis/Benchmarks,
unix.stackexchange.com/a/607910
### Connect with me and others ###
★ Discord: discord.com/invite/EzenvmSHW8
★ Reddit: reddit.com/r/i12bretro
★ Twitter: twitter.com/i12bretro
#RaspberryPi #Comparison #Benchmark
Full steps can be found at i12bretro.github.io/tutorials/0918.html
--------------------------------------------------------------------
The Devices
--------------------------------------------------------------------
The Raspberry Pi 4 runs a 1.5 GHz Quad Core Broadcom BCM2711 64-bit CPU with 4GB LPDDR4 RAM.
The Raspberry Pi 5 runs a 2.4 GHz Quad Core Broadcom BCM2712 64-bit CPU with 4GB LPDDR4 RAM.
--------------------------------------------------------------------
The Benchmarks
--------------------------------------------------------------------
7-Zip - The 7-zip benchmark tests compression and decompression using the LZMA method. Results are shown as a rating in MIPS (million instructions per second). The rating value is calculated from the measured CPU speed and it is normalized with Intel Core 2 Duo E6600 (2.4 GHz, 4 MB L2) CPU in 64-bit Windows with multi-threading option switched off. The charted value is the total compression MIPS score.
Sysbench - The sysbench CPU benchmark verifies prime numbers by doing standard division of the number by all numbers between 2 and the square root of the number. Once a number gives a remainder of 0, the next number is calculated.
CPU Blowfish - Blowfish is a symmetric-key 64-bit block cipher
CPU CryptoHash - CrytpoHash is a cryptographic hash function that maps data of arbitrary size (often called the "message") to a bit array of a fixed size (called the "hash" or "message digest"). It is a one-way function, that is practically infeasible to invert, and is used in digital signatures, message authentication and hash functions to index data in hash tables.
A Fibonacci sequence is a series of numbers in which each number is the sum of the two preceding numbers, such as 1, 1, 2, 3, 5, 8, etc. This benchmark tests the integer processing ability of a CPU.
CPU Fibonacci - A Fibonacci sequence is a series of numbers in which each number is the sum of the two preceding numbers, such as 1, 1, 2, 3, 5, 8, etc. This benchmark tests the integer processing ability of a CPU.
CPU N-Queens - N-Queens finds a way to place a variable number of queens on a chessboard so that no two queens threaten each other by sharing the same row, column or diagonal. For some reason, the Cortex-A53 which is a simpler in-order processor does better at this benchmark than more complex out-of-order processors like the Cortex-A72 and Core i5, but it is hard to conclude much from this result.
CPU ZLib - ZLib is a software library used for data compression, which is used by the gzip file compression program. This benchmark is memory intensive, so its results will reflect the speed of the RAM.
FPU FFT - Fast Fourier Transforms (FFT) converts a signal to frequencies and vice-versa. It is used in audio digital signal processing and image signal processing, and is an indication how fast a processor can process video in software.
FPU Raytracing - Raytracing is a rendering technique for generating an image by tracing the path of light as pixels in an image plane and simulating the effects of its encounters with virtual objects. Like FFT, this benchmark tests how well the processor deals with floating point numbers (i.e. numbers with decimal points).
Sources: https://source.puri.sm/Librem5/community-wiki/-/wikis/Benchmarks,
unix.stackexchange.com/a/607910
### Connect with me and others ###
★ Discord: discord.com/invite/EzenvmSHW8
★ Reddit: reddit.com/r/i12bretro
★ Twitter: twitter.com/i12bretro

![Install Invoice Plane - Invoice and Payment Manager - On Windows
#InvoicePlane #Accounting #Windows
Full steps can be found at https://i12bretro.github.io/tutorials/0816.html
What is Invoice Plane?
[Invoice Plane is a] self-hosted open source application for managing your invoices, clients and payments.- https://www.invoiceplane.com/
Installation
01. Download XAMPP https://sourceforge.net/projects/xampp/files/XAMPP%20Windows/
02. Download Invoice Plane https://github.com/InvoicePlane/InvoicePlane/releases/latest
03. Download Microsoft Visual C++ https://aka.ms/vs/16/release/vc_redist.x64.exe
04. Install Microsoft Visual C++
05. Right click the downloaded XAMPP file ≫ Extract All...
06. Right click the downloaded Invoice Plane .zip file ≫ Extract All...
07. Rename the extracted folder invoiceplane
08. Cut the invoiceplane folder inside the XAMPP/htdocs directory
09. Copy the extracted XAMPP directory to a safe location to run from, C:Program Files for example
10. Navigate into the XAMPP/htdocs/invoiceplane folder
11. Make a copy of the ipconfig.php.example and rename it ipconfig.php
12. Edit ipconfig.php in a text editor
13. Set the IP_URL value to http://DNSorIP/invoiceplane
IP_URL=http://localhost/invoiceplane
14. Save the changes to ipconfig.php and close the text editor
15. Run XAMPP/setup_xampp.bat to update the configuration files with the new server location
16. Run XAMPP/xampp-control.exe
17. Click the Start button next to Apache and MySQL
18. Navigate to XAMPP/mysql/bin
19. Hold the SHIFT key and right click in the white space ≫ Open PowerShell windows here...
20. Type the following in the PowerShell window to setup the database
.mysql -u root
CREATE DATABASE invoice_plane;
CREATE USER invoice_plane_rw@localhost IDENTIFIED BY Inv0!c3Pl@n3!;
GRANT ALL ON invoice_plane.* TO invoice_plane_rw@localhost;
FLUSH PRIVILEGES;
exit;
exit
Invoice Plane Web Installer
01. Open a web browser and navigate to http://DNSorIP/invoiceplane
02. The Invoice Plane Installation web installer should be load
03. Click the Setup button
04. Select a Language ≫ Click Continue
05. Click Continue on the Prerequisites page
06. Complete the Database Details form as follows
Hostname: localhost
Port: 3306
Username: invoice_plane_rw
Password: Inv0!c3Pl@n3!
Database: invoice_plane
07. Click the Try Again button then click Continue
08. Complete the Create User Account form ≫ Click Continue
09. Back in File Explorer, navigate to XAMPP/htdocs/invoiceplane and edit ipconfig.php
10. Find the DISABLE_SETUP setting and change the value to true
11. Save the changes to ipconfig.php and close the text editor
12. Back in the browser, click the Login button
13. Login with the Email and Password setup during the installation
14. Welcome to Invoice Plane
Source: https://wiki.invoiceplane.com/en/1.0/getting-started/installation
### Connect with me and others ###
★ Discord: https://discord.com/invite/EzenvmSHW8
★ Reddit: https://reddit.com/r/i12bretro
★ Twitter: https://twitter.com/i12bretro Install Invoice Plane - Invoice and Payment Manager - On Windows](https://i.ytimg.com/vi/oQkHqsJeIVM/mqdefault.jpg)
![Installing RedMine Project Management Software on Linux
#Redmine #Linux
Full steps can be found at https://i12bretro.github.io/tutorials/0226.html
01. Log into the Debian device
02. Run the following commands in a terminal:
# update repositories
sudo apt update
# install available software updates
sudo apt upgrade
# install Apache2, Ruby, MySQL/MariaDB and redmine dependencies
sudo apt install ruby-dev apache2 libapache2-mod-passenger mariadb-server build-essential libxslt1-dev libmariadb-dev libxml2-dev zlib1g-dev imagemagick libmagickwand-dev curl
# configure the MySQL database
sudo su
mysql_secure_installation
03. Press Enter to login as root
04. Type Y and press Enter to set a root password, type the password twice to confirm
05. Type Y and press Enter to remove anonymous users
06. Type Y and press Enter to disallow root login remotely
07. Type Y and press Enter to remove the test database
08. Type Y and press Enter to reload privilege tables
09. Run the following command to login into MySQL:
mysql -u root -p
10. Authenticate with the root password set earlier
11. Run the following commands to create the Redmine database and database user
CREATE DATABASE redmine CHARACTER SET utf8mb4;
GRANT ALL ON redmine.* to redmine@localhost IDENTIFIED BY R3dM1n3!!;
FLUSH PRIVILEGES;
EXIT;
exit
12. Continue with the following commands to download and extract Redmine
# create redmine user
sudo useradd -r -m -d /opt/redmine -s /usr/bin/bash redmine
# add redmine user to www-data group
sudo usermod -aG redmine www-data
# download latest redmine version
sudo wget -O redmine.tar.gz https://www.redmine.org/releases/redmine-4.1.2.tar.gz
# extract redmine.tar.gz
sudo -u redmine tar xzf redmine.tar.gz -C /opt/redmine/ strip-components=1
# authenticate as the redmine user
sudo su - redmine
# create copies of example configuration files
cp /opt/redmine/config/configuration.yml{.example,}
cp /opt/redmine/public/dispatch.fcgi{.example,}
cp /opt/redmine/config/database.yml{.example,}
# edit database.yml
nano /opt/redmine/config/database.yml
13. Update the following values in database.yml
production:
adapter: mysql2
database: redmine
host: localhost
username: redmine
password: R3dM1n3!!
14. Press CTRL+O, Enter, CTRL+X to write the changes to database.yml
15. Continue with the following commands
# exit redmine login
exit
# cd to /opt/redmine
cd /opt/redmine
# install bundler
sudo gem install bundler
# authenticate as the redmine user
sudo su - redmine
# install dependencies
bundle install without development test path vendor/bundle
# generate store secret
bundle exec rake generate_secret_token
# create database objects
RAILS_ENV=production bundle exec rake db:migrate
# insert database data
RAILS_ENV=production REDMINE_LANG=en bundle exec rake redmine:load_default_data
# reset permissions
chmod -R 755 /opt/redmine
# exit redmine login
exit
# cd to /opt/redmine
cd /opt/redmine
# start the redmine server
sudo bundle exec rails server webrick -e production
# create redmine apache2 conf
sudo nano /etc/apache2/sites-available/redmine.conf
16. Paste the following configuration into redmine.conf
Listen 3000
≪VirtualHost *:3000≫
ServerName redmine.kifarunix-demo.com
RailsEnv production
DocumentRoot /opt/redmine/public
≪Directory /opt/redmine/public≫
Allow from all
Require all granted
≪/Directory≫
ErrorLog ${APACHE_LOG_DIR}/redmine_error.log
CustomLog ${APACHE_LOG_DIR}/redmine_access.log combined
≪/VirtualHost≫
17. Press CTRL+O, Enter, CTRL+X to write the changes to redmine.conf
18. Continue with the following commands to enable the site and restart Apache:
# enable the required Apache modules
sudo a2enmod passenger
# enable redmine site
sudo a2ensite redmine
# restart apache2 service for the changes to take effect
sudo systemctl restart apache2
19. Open a web browser and navigate to http://DNSorIP:3000
20. Log in with the username admin and password admin
21. Enter the password admin and set and confirm a new password for the admin user
22. Welcome to Redmine
....Full steps can be found on GitHub [link at the top]
### Connect with me and others ###
★ Discord: https://discord.com/invite/EzenvmSHW8
★ Reddit: https://reddit.com/r/i12bretro
★ Twitter: https://twitter.com/i12bretro Installing RedMine Project Management Software on Linux](https://i.ytimg.com/vi/oksnfQ7zVSE/mqdefault.jpg)


![Run AdGuard Home - Cross Platform Pi Hole Alternative - in Docker
#AdGuard #AdBlocker #Docker
*** Updated 06/03/2023
Full steps can be found at https://i12bretro.github.io/tutorials/0429.html
What is AdGuard Home?
AdGuard Home is a network-wide software for blocking ads and tracking. After you set it up, itll cover ALL your home devices, and you dont need any client-side software for that.
It operates as a DNS server that re-routes tracking domains to a “black hole”, thus preventing your devices from connecting to those servers. Its based on software we use for our public AdGuard DNS servers, and both share a lot of code. - https://github.com/AdguardTeam/AdguardHome
Installing Docker
01. Log into the Linux host and run the following commands in a terminal window
# update software respositories
sudo apt update
# install available software updates
sudo apt upgrade -y
# install prerequisites
sudo apt install apt-transport-https ca-certificates curl gnupg2 software-properties-common -y
# add docker gpg key
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
# add docker apt repository
sudo apt-add-repository deb [arch=amd64] https://download.docker.com/linux/debian buster stable
# install docker
sudo apt install docker -y
# add the current user to the docker group
sudo usermod -aG docker $USER
# reauthenticate for the new group membership to take effect
su - $USER
Running AdGuard Home Container
01. Continue with the following commands in a terminal window
# make adguard working directories
mkdir ~/docker/adguard/work -p && mkdir ~/docker/adguard/conf -p
# run the adguardhome docker image
docker run name adguardhome -v ~/docker/adguard/work:/opt/adguardhome/work -v ~/docker/adguard/conf:/opt/adguardhome/conf -p 53:53/tcp -p 53:53/udp -p 80:80/tcp -p 3000:3000/tcp restart unless-stopped -d adguard/adguardhome
02. Open a web browser and navigate to http://localhost:3000
03. Click the Get Started button
04. Set the Admin Web Interface and DNS Server network interfaces and ports ≫ Click Next
05. Enter an admin username and password ≫ Click Next
06. Click Next on page 4
07. Click Open Dashboard on the Congratutations page
08. Log in using the admin username and password created during the install
09. Welcome to AdGuardHome running as a Docker container
Source: https://github.com/AdguardTeam/AdGuardHome/wiki/Docker
### Connect with me and others ###
★ Discord: https://discord.com/invite/EzenvmSHW8
★ Reddit: https://reddit.com/r/i12bretro
★ Twitter: https://twitter.com/i12bretro Run AdGuard Home - Cross Platform Pi Hole Alternative - in Docker](https://i.ytimg.com/vi/p4jBY4WvJ6w/mqdefault.jpg)


![Run miniPaint - Browser Based Image Editor - on Linux
#miniPaint #ImageEditor #Linux
Full steps can be found at https://i12bretro.github.io/tutorials/0895.html
What is miniPaint?
[miniPaint is an] online image editor lets you create, edit images using HTML5 technologies. No need to buy, download, install or have obsolete flash. No ads. Key features: layers, filters, HTML5, open source, Photoshop alternative.
miniPaint operates directly in the browser. You can create images, paste from the clipboard (ctrl+v) or upload from the computer (using menu or drag & drop). Nothing will be sent to any server. Everything stays in your browser. - https://github.com/viliusle/miniPaint
Installing NodeJS
01. Log into the Linux device
02. Run the following commands in a terminal window
# add nodejs software repository
curl -sL https://deb.nodesource.com/setup_20.x | sudo bash -
# install nodejs
sudo apt install nodejs -y
# test node is working
node -v
# test npm is working
npm -v
Running miniPaint
01. Continue with the following commands:
# install git
sudo apt install git -y
# cd back to home
cd ~
# clone minipaint github repo
git clone https://github.com/viliusle/miniPaint.git ./miniPaint
# cd into git clone
cd miniPaint
# install dependencies
npm install
# build minipaint
npm run build
# run minipaint
npm run server
02. Open a web browser and navigate to http://DNSorIP:8080
03. Welcome to miniPaint
Source: https://github.com/viliusle/miniPaint/wiki/Build-instructions
### Connect with me and others ###
★ Discord: https://discord.com/invite/EzenvmSHW8
★ Reddit: https://reddit.com/r/i12bretro
★ Twitter: https://twitter.com/i12bretro Run miniPaint - Browser Based Image Editor - on Linux](https://i.ytimg.com/vi/r6Etqtdn4E4/mqdefault.jpg)

