Protecting my sleep

My another attempt to break the habit of being up until very late into the night and as such very tired the next day.

For years I thought of configuring my computer to suspend at around night time so I will be somehow forced to go to sleep. Well, the main problem with this was that I only thought about it and never actually did any research on this subject.

At normal times under my normal user I suspend my machine with elogind loginctl command and this works fine but there might be a problem with sessions and stuff around that which I refuse to work with. So I searched a bit and found out that there is nice system API to manage power state.

The system/kernel API consist of a file located at /sys/power/state.
When I try to print the content of this file it shows the currently available states (or values it accepts) which is my case are:

$ cat /sys/power/state
freeze mem disk

And when I looked at the printed values I saw mem option which is probably what I want (I was lazy and did not look at any docs) to suspend my machine into RAM. The power state can be changed by writing desired state into /sys/power/state file.

$ echo "mem" > /sys/power/state

Sure, you need to be root to do so, but so what? This is my machine and I can. Since I figured this out I put it into a file, set it executable and configured cron to start it at 23:00 from Sunday to Thursday like this.

0 23 * * 0-4 root /usr/scripts/suspend

And done, now I hope it can help me get my desired rest.

Articles from blogs I follow:

Unbroken!

Calamares is a distro- and desktop-agnostic Linux installer. It’s my day job. It is named for squid, in particular battered squid rings from the Mediterranean sea, Calamares. There’s lots of ways to catch squid and octopuses. One way is to use an octopus …

via [bobulate] October 11, 2021

How reflection works in ****

Note: this is a redacted copy of a blog post published on the internal development blog of a new systems programming language. The name of the project and further details are deliberately being kept in confidence until the initial release. You may be able to…

via Drew DeVault's blog October 5, 2021

About Logging

TL;DR: This post also talks about the problems I faced while working on my logging. To log to syslog from within my containers that do not support configuring a remote syslog server, I had syslog-ng expose a unix domain socket and mounte…

via PapaTutuWawa's Blog April 16, 2021

Generated by openring