I am on Mint XFCE and Redshift is just so inconsistent and I have tried its forks, also inconsistent. So instead I have been using sct in the terminal to adjust the temperature, and have set a command that resets it back to normal every time that I log on. However, I was wondering if there is a way to make it so that “sct 2750” runs every day at 10 pm or during a specific period of time.

Edit: I figured out the solution which was to create a crontab with the following line in it: 0 22 * * * env DISPLAY=:0 XAUTHORITY=$HOME/.Xauthority /usr/bin/sct 2750

  • @[email protected]
    link
    fedilink
    English
    101 year ago

    You seem to have fallen foul of all the SystemD haters in the voting, when this is the best answer. OP’s question was about doing one thing on a timer and a very similar thing on login; SystemD can achieve both of these in one place with proper logging and status displays, whereas Cron cannot.

    Most of the things that you’d want to run on a timer have additional dependencies (I’d like to snapshot the database if the database is running; I’d like to backup up my files to a remote server if the network is up) which as easy to express in SystemD files as anything else it can do. Might as well learn to use the most versatile and powerful tool if you’re going to learn anything. Admittedly, I don’t like its syntax, but it achieves this kind of thing perfectly.

    • rhys the great
      link
      fedilink
      71 year ago

      @addie @Dirk I think you’re spot on. SystemD timers are mildly more inconvenient to create than cron jobs, but massively more convenient to maintain and work with for real.

    • @[email protected]
      link
      fedilink
      English
      11 year ago

      An additional thing is that cronie/cron has no idea about an user desktop session out of the box while systemd user scripts do

      OP edited this solution which needed a special env variable DISPLAY
      this might be common knowledge but it certainly is not for a beginner