Skip to content

Audio "too loud" and volume switch not working in Ubuntu

Installed my new laptop, and everything seemed to work, out of the box. Almost everything.

The audio was quite annoying. First of all, every application got it's own volume setting. In theory that is a nice idea, and you can control and manage the volume for every application separately. In practice, this is a nightmare: try changing the volume of an application which only once in a while sends a short notification. Or try changing the volume of the sound when you close the laptop lid. On top of that, the volume for applications like Chome and Firefox seem to be stuck at 100%. Every time I change the volume, the setting is back on "loud" the next time the browser plays something.

Second the global volume settings (Fn+"Volume up" or Fn+"Volume down") seem to have no effect at all.



Continue reading "Audio "too loud" and volume switch not working in Ubuntu"

SMART error (ErrorCount) detected on host - but the NVRAM disk is perfectly fine

Recently I got a new system with a NVRAM disk (nice and fast). Upon installing smartmontools, it started reporting that the error counter for the disk is increasing. For a brand new disk?


Continue reading "SMART error (ErrorCount) detected on host - but the NVRAM disk is perfectly fine"

webhook service with TLS and Let's Encrypt certificate

For a number of services, I need a system/service which can receive web hooks, and act when such a trigger is received.

Just a few examples:

  • GitHub can send web hooks when something changes in a repo (in any repository you administer, go to "Settings" -> "Webhooks", and add your own hook)
  • Tasker for Android can send HTTP(s) requests
  • JIRA can send web hooks when certain events occur
  • openHAB can send messages to other services

Now it would be useful to have your own receiver for web hooks, and run any task you want. There are a number of tools out there, which can solve this problem. I settled with "webhook". In addition, I deploy everything using Ansible, therefore I had to write a bit of code in order to automate this process.


Continue reading "webhook service with TLS and Let's Encrypt certificate"

Geocaching in Cuba

GC Kuba BadgeGeocaching in Cuba is not very common, which may be due to limited Internet offerings, and the partially poorly developed infrastructure. Most caches exist in and around major cities and well-known resorts (Havana, Cayo Santa María, Guardalavaca, Cardenas, Pinar del Río). There are also some caches in and around Guantánamo Bay, but these can only be reached from the local Naval Base. Not for tourists ...


Continue reading "Geocaching in Cuba"

Geocaching in Kuba

GC Kuba Badge

Geocaching in Kuba ist nicht sehr verbreitet, was vielleicht auch den Einschränkungen des Internetangebots sowie der teilweise schlecht ausgebauten Infrastruktur geschuldet sein dürfte. Die meisten Caches gibt es in und um einigen größeren Städten und bekannten Urlaubsgebieten (HavannaCayo Santa MaríaGuardalavacaCardenasPinar del Río). Weiterhin gibt es einige Caches in und um Guantánamo Bay, aber diese sind nur von der dortigen Naval Base aus zu erreichen. Also nichts für Urlauber ...


Continue reading "Geocaching in Kuba"

Ansible: Just mount an existing filesystem

There is no easy way to "just mount" an existing filesystem in Ansible, using the "mount" module. I just want to mount an already defined mount point, and don't really care about all the configuration here. But if I try this:

- name: Mount /backup filesystem
    path: "/backup"
    state: mounted

I end up with the following error message:

TASK [Mount /backup filesystem] ********************
fatal: []: FAILED! => {"changed": false, "msg": "state is mounted but all of the following are missing: src, fstype"}

Ansible requires to configure the mount point all the way. Also specified in the documentation:

  • "fstype" is required when state is "present" or "mounted"
  • "state" == "mounted": the device will be actively mounted and appropriately configured in fstab. If the mount point is not present, the mount point will be created.

Not what I want here!


Continue reading "Ansible: Just mount an existing filesystem"