User Tools

Site Tools


archive:blog

My Mini-Blog

Devuan apt update error

Running apt update on my Devuan machine today results in these:

# apt update
Get:1 https://deb.devuan.org/merged chimaera InRelease [33.9 kB]
Err:1 https://deb.devuan.org/merged chimaera InRelease
  The following signatures were invalid: EXPKEYSIG BB23C00C61FC752C Devuan Repository (Amprolla3 on Nemesis) <repository@devuan.org>
Get:2 https://deb.devuan.org/merged chimaera-security InRelease [26.5 kB]
Err:2 https://deb.devuan.org/merged chimaera-security InRelease
  The following signatures were invalid: EXPKEYSIG BB23C00C61FC752C Devuan Repository (Amprolla3 on Nemesis) <repository@devuan.org>
Get:3 https://deb.devuan.org/merged chimaera-updates InRelease [26.5 kB]
Err:3 https://deb.devuan.org/merged chimaera-updates InRelease
  The following signatures were invalid: EXPKEYSIG BB23C00C61FC752C Devuan Repository (Amprolla3 on Nemesis) <repository@devuan.org>
Fetched 86.9 kB in 1s (88.4 kB/s)
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
All packages are up to date.
W: An error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: https://deb.devuan.org/merged chimaera InRelease: The following signatures were invalid: EXPKEYSIG BB23C00C61FC752C Devuan Repository (Amprolla3 on Nemesis) <repository@devuan.org>
W: An error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: https://deb.devuan.org/merged chimaera-security InRelease: The following signatures were invalid: EXPKEYSIG BB23C00C61FC752C Devuan Repository (Amprolla3 on Nemesis) <repository@devuan.org>
W: An error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: https://deb.devuan.org/merged chimaera-updates InRelease: The following signatures were invalid: EXPKEYSIG BB23C00C61FC752C Devuan Repository (Amprolla3 on Nemesis) <repository@devuan.org>
W: Failed to fetch https://deb.devuan.org/merged/dists/chimaera/InRelease  The following signatures were invalid: EXPKEYSIG BB23C00C61FC752C Devuan Repository (Amprolla3 on Nemesis) <repository@devuan.org>
W: Failed to fetch https://deb.devuan.org/merged/dists/chimaera-security/InRelease  The following signatures were invalid: EXPKEYSIG BB23C00C61FC752C Devuan Repository (Amprolla3 on Nemesis) <repository@devuan.org>
W: Failed to fetch https://deb.devuan.org/merged/dists/chimaera-updates/InRelease  The following signatures were invalid: EXPKEYSIG BB23C00C61FC752C Devuan Repository (Amprolla3 on Nemesis) <repository@devuan.org>
W: Some index files failed to download. They have been ignored, or old ones used instead.

It turns out that the keyring has been rebuilt (read post #7). More than one way to fix it - I choose this one:

rm -rf /var/lib/apt/lists/*
apt update --allow-insecure-repositories
apt install devuan-keyring --allow-unauthenticated

note: removing all in list may be overkill - maybe try removing just deb.devuan.org_merged_dists_chimaera_InRelease instead? keep in mind that some pc may still use pkgmaster.devuan.org

All is well now… and that is all I have to say about that.

2023/08/29 13:04

Revisiting MinGW (for sdcc build)

I want to build sdcc for NMK322 so that my students can use EXACTLY what I have. So, here we go again:

Installing MinGW:

  • Get the 'package manager' from here
  • Pick a location and extract the zip file
    • I choose C:\Users\Public\Tool
    • change the folder name so that we have C:\Users\Public\Tool\mingw\bin\mingw-get.exe
  • Prepare to use mingw-get binary
    • cd C:\Users\Public\Tool\mingw\var\lib\mingw-get\data\
    • copy defaults.xml profile.xml
  • Open a command prompt and update catalogue
    • cd C:\Users\Public\Tool\mingw\bin\
    • mingw-get.exe update
  • Get stuffs (compiler with Unix-like environment) without using GUI
    • mingw-get.exe install gcc g++ gmp mpfr mpc msys msys-wget-bin
  • To get GUI interface install mingw-get (apparently, we are NOT running mingw-get! 8-))
    • mingw-get.exe install mingw-get
    • now, a window will come up when you run mingw-get

Note20220808 Current software versions {gcc:9.2.0,binutils:2.32}

Some useful things to do:

  • To have git in MinGW shell, install Git-for-Windows at C:\Users\Public\Tool\Git
    • edit C:\Users\Public\Tool\mingw\msys\1.0\etc\profile and insert
      MY1GITPATH="/c/users/public/tool/git/bin"
      [ -d "$MY1GITPATH" ] && PATH="$MY1GITPATH:$PATH"

      before the block containing an export PATH line(s)

  • Get helper script(s) - I wrote that for personal use
    • copy everything (except LICENSE, README.md and msys2.vbs) to C:\Users\Public\Tool\mingw
    • allows environment to be used on shared computer (no need for admin account)
  • Running msys.vbs (*Hint*: double-click) will install (or remove if already installed) a pop-up context menu entry (MinGW Shell) whenever you right-click on a folder in Windows Explorer
    • edit C:\Users\Public\Tool\mingw\msys\1.0\etc\profile and comment (place '#' at the beginning of) the last line with cd $HOME command
  • If you want to use normal Windows command prompt to run stuff, these two scripts are you friend (you may ignore them otherwise)
    • Running mingw-setup.bat sets up normal command prompt for command-line compilation
      • place mingw-term.bat script (form tools folder) in any folder - when executed, it will open a command prompt (with MinGW path properly configured) in that folder
    • Running mingw-clear.bat cleans up settings created by mingw-setup.bat
2023/08/29 13:04

RGB 80x160 OLED ST7735S

I bought this display module a while back, but never got the chance to test it out. I have multiple platforms to test it with: (1) Pi Zero (2) 8051:stc12 (3) Maker Uno (4) ESP32 (5) Pi Pico. While I figure out what I am going with, I just want to put some basic info so I can refer to it later.

Interface Pins (info from the link above):

  • GND (Power ground)
  • VCC (Power +3.3 or 5V)
  • SCL (SPI clock line)
  • SDA (SPI data line)
  • RES (LCD reset, LCD needs to be reset once after power-on)
  • DC (SPI data/command selection pin)
  • BLK (LCD backlight control, the default can be left floating, low level to turn off the backlight)

Although the pin labels suggests I2C interface, it is actually recommended to use SPI (as stated on the board itself). So, for 8051 I may try I2C - but since this is said to be a fast display (timing specs at ns range), I want to try it on Pi Zero/Pico. We shall see…

2023/08/29 13:04

Useful desktop entry for my personal use

Place this in $HOME/.local/share/application

gedit-standalone.desktop
[Desktop Entry]
Version=1.0
Type=Application
Name=gEdit (Standalone)
Comment=Edit text files
Exec=gedit -s %U
Icon=org.gnome.gedit
Terminal=false
Categories=GNOME;GTK;Utility;TextEditor;
MimeType=text/plain;text/x-chdr;text/x-csrc;text/x-c++hdr;text/x-c++src;text/x-java;text/x-dsrc;text/x-pascal;text/x-perl;text/x-python;application/x-php;application/x-httpd-php3;application/x-httpd-php4;application/x-httpd-php5;application/xml;text/html;text/css;text/x-sql;text/x-diff;
StartupNotify=true
Keywords=Text;Editor;
geany-workspace.desktop
[Desktop Entry]
Version=1.0
Type=Application
Name=Geany (WorkSpace)
Comment=A fast and lightweight IDE using GTK+
Exec=/home/azman/.local/bin/geany_space %F
Icon=geany
Terminal=false
Categories=GTK;Development;IDE;TextEditor;
MimeType=text/plain;text/x-chdr;text/x-csrc;text/x-c++hdr;text/x-c++src;text/x-java;text/x-dsrc;text/x-pascal;text/x-perl;text/x-python;application/x-php;application/x-httpd-php3;application/x-httpd-php4;application/x-httpd-php5;application/xml;text/html;text/css;text/x-sql;text/x-diff;
StartupNotify=true
Keywords=Text;Editor;
Name[en_US]=Geany (WorkSpace)
android-studio.desktop
[Desktop Entry]
Version=1.0
Type=Application
Name=Android Studio
Comment=
Exec=/home/share/appx/android-studio/bin/studio.sh
Icon=/home/share/appx/android-studio/bin/studio.png
Path=/home/share/appx/android-studio/bin
Categories=Development;IDE;
Terminal=false
StartupWMClass=jetbrains-studio
StartupNotify=true
arduino.desktop
[Desktop Entry]
Name=Arduino
Comment=Arduino IDE
Exec=/home/share/appx/arduino/arduino
Path=/home/share/appx/arduino
Icon=/home/share/appx/arduino/lib/arduino_icon.ico
Terminal=false
Type=Application
Categories=Utility;Application;Development;
2023/08/29 13:04

Re-Post: Cron

Note: This is taken from my previous blog - Published on: Jul 11, 2011 @ 10:35

Sounds very computer-ish isn't it? Well, it is… it's actually a scheduling table, something that computer system admins are very familiar with. It's nothing fancy, I could have written this in my wiki, which is what I usually would have done. But, since it's been quite a while since I last write something in this blog, I just feel like putting the info here. I know I'm going to regret this and spend more time transferring this to my wiki later… but I'll do it anyways :-p

A task/job is made of 1 line with 6 items - 5 items/numbers represent time, and the last one is the job/task to be executed. Check it out…

*    *    *    *    *    job/task_to_be_executed
┬    ┬    ┬    ┬    ┬
│    │    │    │    │
│    │    │    │    │
│    │    │    │    └─── weekday (0 - 7) 0/7 => Sunday
│    │    │    └──────── month (1 - 12)
│    │    └───────────── day (1 - 31)
│    └────────────────── hour (0 - 23)
└─────────────────────── minute (0 - 59)

I got the above 'figure' from wikipedia (with minor personal adjustments). To view your current cron jobs, type

crontab -l

So, how do we 'install' a new job? Type

crontab -e

which will open your default terminal editor (e.g. vi) and enter a task in the given format, then save. Voila!

Update20220307 So, after more than 10 years, I finally manged to transfer this to my wiki's mini-blog. Yay! 8-) Here are some additional info..

Some examples:

  • To run binary tool every hour:
    0 * * * * /path/to/tool <args>...

Special cases:

  • To run binary tool every 5 minutes:
    */5 * * * * /path/to/tool <args>...
  • To run binary tool on reboot/startup:
    @reboot /path/to/tool <args>...
2023/08/29 13:04

Latest HC06 AT firmware

I am trying to create an 8051 code library for HC06 bluetooth module. I have done one for my my1barepi library, so I thought that would be easy. Boy! Was I wrong! It turned out that the AT firmware on the latest HC06 module have been upgraded. The old ones do not need any CR/LF pair (the new ones do) and the AT command for changing name requires a ':' i.e. AT+NAME:<name> instead of just AT+NAME<name>. I am using AT firmware version 3.0-20170609 - not sure when this was changed. Maybe I need to update my my1barepi code? Since I no longer handle that paper, that is not in my priority list at the moment.

That is all I have to say about that.

2023/08/29 13:04

Working on a repository with 3-branches

I have a repository with 3 branches:

  • master - main project
  • upstream - upstream project
  • work - working copy of project with current semester data

In order to update (merge) upstream into master, I need to

# git checkout upstream
# git pull /path/to/upstream/repo
# git checkout master
# git merge upstream
# git checkout work
# git merge master

I would prefer to do this without doing those multiple checkouts. SO, I found a way to do just that…

# git fetch /path/to/upstream/repo master:upstream
# git fetch . upstream:master 
# git merge master

However, this only work IF updating master involves purely fast-forward merge.

That is all I have to say about that.

2023/08/29 13:04

Moved to a new server

Due to a problem on the older server provided by my Uni's ICT department, I decided to move this wiki to the newer server. However, now I am having problems updating (some of?) my wiki pages. Need some time to check this out, but at the moment I think I am affected by this. Anyway, if this is NOT fixable, I may have to revert the old server… if they still keep that one running. Hopefully we can make it work on this new server.

2023/08/29 13:04

A New Hope

Starting to use this as my little notebook - putting in notes that I want to refer to and have a timestamp on it =) I hope this one sticks… who knows? Maybe this will grow in to a full blog and replace my currently dormant blog :-P

2023/08/29 13:04
archive/blog.txt · Last modified: 2023/08/29 10:43 by 127.0.0.1