Redshift 配置 - 如何设置固定过渡时间?

Redshift 配置 - 如何设置固定过渡时间?

是否可以配置 Redshift,以便屏幕颜色在固定时间变化,而不管太阳的实际位置如何?我在 Ubuntu 16.04 和 GNOME 上使用 Redshift 1.10-5ubuntu1。

答案1

Redshift 确实在 redshift 配置文件中提供了自定义固定转换时间。~/.config/redshift.conf要设置这些时间,请添加字段dawn-timedusk-time添加时间来设置时间段。例如,我的配置文件如下所示:

[redshift]
dawn-time=04:00-05:30
dusk-time=21:00

根据这个拉取请求

这些选项可以指定一个时间间隔,如 04:00-05:30 或瞬间 18:00(相当于 18:00-18:00)。白天和夜晚色温之间的转换发生在指定的时间间隔内。目前必须以 24 小时格式指定时间,黎明的开始必须在午夜之后,黄昏的结束必须在午夜之前。当指定基于时间的调整时,不需要位置提供程序,因此不会初始化和使用它。

答案2

Redshift 不提供设置白天和夜晚时间的选项。

我所做的就是建立一个cron任务设置色温X分钟,按照小时计算。

我使用的命令:

redshift -O TEMPERATURE

仅设置一次温度TEMPERATURE(如果要一直改变温度,Redshift 将不会在后台运行进行计算)。

如何设置 cron 任务

  1. 如果你不知道如何使用 Vim(如果你知道,可以跳过这一步),打开终端(Ctrl++ )并通过运行更改默认编辑器AltT

    echo "export EDITOR=nano" >>  ~/.bashrc
    

    现在关闭你的终端以进行应用。

  2. 打开一个新终端并运行

    crontab -e
    

    编辑你的 cron 任务表。

  3. 转到文件末尾并添加以下行:

    */5 17-7 * * * DISPLAY=:0 redshift -O NIGHT_TEMP >> /home/USER/cron.log 2>&1
    */5 8-16 * * * DISPLAY=:0 redshift -O DAY_TEMP >> /home/USER/cron.log 2>&1
    
    • */5是间隔分钟(每分钟能被 5 整除)
    • 17-7并且8-16小时范围(夜间 5 点至早上 7 点之间每小时一次,白天 8 点至下午 4 点之间每小时一次)
    • * * *是日期(因此每个[每月],每个,并且每一个一周中的天)。

    因此,在我的示例中,第一个命令(用于夜间)每天 17:00 至 7:59 之间每 5 分钟(0、5、...、55)执行一次,第二个命令(用于白天)每天 8:00 至 16:59 之间每 5 分钟执行一次。

    以下命令是在(之前)指定的时间执行的命令:

    • DISPLAY=:0用于在显示器上运行命令(否则它将在后台运行,在我们的例子中是无用的)。不要改变它除非您使用外接显示器,否则大多数情况下默认显示端口是:0
    • redshift -O TEMPERATURE当然是我们上面看到的命令改变 DAY_TEMP以及NIGHT_TEMP您想要的白天和夜晚的温度。
    • >> /home/USER/cron.log 2>&1将(错误)消息重定向至/home/USER/cron.log(如果您的显示器未打开则此功能很有用:0)。改变 /home/USER到您的主目录。
  4. 退出编辑器:如果你确实执行了1.,然后按Ctrl+ ,最后按。XYEnter

不要忘记从启动应用程序中删除 Redshift。

现在你已经完成了。

一些副作用你是没有 GUI暂停或禁用 Redshift;将会有没有过渡(它将直接从 变为DAY_TEMPNIGHT_TEMP这可能会令人惊讶,甚至令人不快......

相关内容