Tuesday, February 10, 2026

Moodle custom reports not being emailed

One of our Moodle instances had this issue being reported, that some newly created custom reports were not being emailed as scheduled. 

The issue was that notifications - including email notifications - were disabled for "Custom report builder schedules" at https://ourserver.org/admin/message.php

After enabling email notifications now for this, "Custom report builder schedules" - the issue was reportedly resolved.

Monday, February 02, 2026

google workspace storage limits

At some point of time, Google Workspace has added a feature to admin.google.com where we can set individual users' storage limits on or off, or change the value on an organizational unit basis. Our current Google workspace now has this feature. One possible catch is that the on/off setting is inherited from the base organizational unit. And it also seems to allow certain users to use 146% of their quota!

Thursday, January 29, 2026

pdfs - make smaller - split or join

There was a requirement to 
1. Make some pdfs smaller than 200 kB to enable uploading on a govt. website
2. Split some pages of the pdf into separate documents.

I used pdfsam - https://pdfsam.org/download-pdfsam-basic/ - to do the separation and merging, 
and the online tool
to compress the pdf size.

Monday, January 26, 2026

troubleshooting dot net server crash on AWS

First, checked if the AWS dashboard has any troubleshooting info for me. But "This user does not have permissions to view AWS Health events" - so I wouldn't get much help from it. Used my earlier post on investigating another Linux server crash as well as ChatGPT for going step by step.

ChatGPT suggested these,
dmesg -T | grep -i oom
journalctl -k | grep -i oom
which had no results. No out-of-memory events seen with those commands.

du -sh /var/log showed 4 GB of journal
journalctl --disk-usage
also showed nearly 4 GB of current and archived logs.

But the system had enough hard disk space left, 
df -h
showed around 30% remaining for the OS disk. 

Checking authentication log with
tail /var/log/auth.log -n4000 | more
found an entry
2026-01-25T14:38:58.186744+05:30 ip-10-0-0-73 systemd-logind[600]: New seat seat0.

But ChatGPT said that's normal, this is apparently done for each login.

Then, copy-pasting the lines just before the crash from syslog, using T13 since the crash was around 13:30

sudo cat  syslog | grep T13 > /home/theadminaccount/syslogsnippet.txt

ChatGPT immediately found the issue. 

ourtestapi.service: Scheduled restart job, restart counter is at 101203
and the reason the service was failing was
The application '/home/thepath/www/ourapi/ourtest.dll' does not exist.

Stopped the service, disabled it, and deleted it from /etc/systemd/system
sudo systemctl stop ourtestapi
sudo systemctl disable ourtestapi
sudo rm /etc/systemd/system/ourtestapi.service

Additionally, as ChatGPT suggested, set up some limits for journalctl's logging by editing
/etc/systemd/journald.conf
and uncommenting these lines and adding values for them - under
[Journal]

SystemMaxUse=900M
SystemKeepFree=1G

RuntimeMaxUse=100M

MaxRetentionSec=30day

and restarted,
sudo systemctl restart systemd-journald

Also vacuumed (removed archived logs) with
sudo journalctl --vacuum-size=3000M
(0 bytes removed - archives were smaller than that)
sudo journalctl --vacuum-size=300M
(500M of archives were removed.)

see who has signed an app on MacOS

Via https://www.youtube.com/watch?v=1UDUtO7LY0k

 Apple Menu > About this Mac > More info button > (Search for System Report on left-hand panel)

In System Report, click the System Report button, then Software > Applications on left-hand panel.

Scroll down to the app in question.

Our self-signed OpenSpace builds show up as "Unknown". Sheepit Mac client also shows "Unknown", so there is a chance that I can edit the manifest of the app to run a script on double-click in order to allow the Mac build to run with a double-click on the app file.

Saturday, January 17, 2026

allowing a non-root user to restart a service on Ubuntu Linux server

As described by ChatGPT, the preferred method was to create sudoers rules for the relevant service(s).

sudo visudo -f /etc/sudoers.d/ourapi

and inside that file, write

deployuser ALL=NOPASSWD: /usr/bin/systemctl restart ourapi.service, \
                         /usr/bin/systemctl start ourapi.service, \
                         /usr/bin/systemctl stop ourapi.service, \
                         /usr/bin/systemctl status ourapi.service

where ourapi.service is the service and deployuser is the non-root user.

Here, we double-checked the location of systemctl using 
which systemctl

After doing this, on logging on as deployuser, we can do things like

sudo systemctl start ourapi.service

where it will prompt for deployuser's password and then carry out the command.

But a caveat - we need to type exactly the same command as mentioned in the custom sudoers file - even equivalent commands like

sudo systemctl start ourapi

will not work unless we add that to the sudoers file also.

Friday, January 16, 2026

some quirks of my KVM setup and Apple keyboard layout

Currently using this product, 

HDMI KVM Switch 4 Port - 

there were some quirks which I had to work around. 
  1. The Dell desktop running Linux Mint needed the USB keyboard to be mapped to it while booting, or else it would boot into Windows instead, even though the default boot sequence was set to Linux. Probably because the "fail-safe" boot option is different, when it beeps to indicate "No keyboard detected."
  2. The KVM switch defaults to number 4 on power up, not number 1. So, the Dell desktop needs to be connected to 4 and not 1, for booting up without having to hit the KVM switch.
  3. The Mac mini can boot OK without having the KVM mapped to it, but if we leave it on and not logged in, the login screen blanks and we can't get the screen to come back to life with the keyboard or mouse - we need to short-press the power button.
  4. The Mac mini default keyboard mapping was showing the Indian rupee symbol instead of the backtick symbol ` for the key to the left of 1 (perhaps after the upgrade to MacOS Tahoe). Since I need ` for markdown on github etc, changed the keyboard layout to "US" from "ABC India" which was the default. For this, following this,
    chose Apple menu > System Settings, then searched for Keyboard in the sidebar. There, Input sources > Edit button, the small + button at the bottom left to add Input sources. Quite easy to miss.

Sunday, December 21, 2025

adding a 'slow-send' functionality for Google Apps mailing list

I've updated the github repo Google-Apps-Script-mailing-list with a script file which does 'slow-send' for large mailing lists which can be sent over several days. 


Features - 
  • time-based trigger, programmatically created and removed
  • sends emails to each recipient individually, ramping up from sending
    24 emails per day (once an hour)
    to 96 (once every 15 minutes)
    to 144 (once every 10 minutes)
    to 288 emails per day (once every 5 minutes). This could be increased further, too.
  • uses GmailApp instead of MailApp, so we can have features like name (of sender), alias, reply-to, etc.