答案1
问题不在于geoclue
软件包。您不需要安装geoclue
。这是因为您尚未配置 Redshift。Redshift 会根据您的位置设置色温。解决此问题最简单的方法是启用位置服务:
系统设置 > 安全和隐私 > 定位服务 > 开启
但您可以手动配置 Redshift 以设置色温和位置的自定义值。为此,请打开浏览器并搜索您所在地区的纬度和经度,例如,纽约经纬度。
获取您所在地区的纬度和经度值后,搜索启动应用程序在您的计算机中。您很可能会看到 Redshift 的条目。单击 Redshift 条目,然后单击编辑。然后在命令部分输入此命令:
redshift-gtk -l [LATITUDE]:[LONGITUDE] -t 6500:3400
用您的值替换[LATITUDE]
和[LONGITUDE]
。例如,我的命令如下:
redshift-gtk -l 20.5937:78.9629 -t 6500:3400
注意:- 如果出于某种原因,你在启动应用程序菜单中没有看到 Redshift 的条目,只需单击添加按钮,而不是编辑按钮,提供一个名称,例如,红移然后输入上述命令。
价值6500和3400分别表示白天和夜晚的色温值。值6500不会改变颜色,屏幕校准完美。如果您还想在白天消除蓝光,请更改值6500到5500。同样,您可以拥有自己的自定义值。只需节省设置和重启应用更改。
答案2
Redshift 在 Ubuntu 16.04 中停止工作(是的,2020 年仍在使用它)。
我把我的内容编辑~/.config/redshift.conf
如下:
[redshift]
temp-night=4500
location-provider=manual
[manual]
lat=55.953
lon=-3.189
注意:我正在使用manual
位置提供商(不是geoclue2
)。
答案3
根据您的窗口管理器,您可能必须手动允许 Redshift 访问 GeoClue。
编辑 GeoClue 的配置
sudo nano /etc/geoclue/geoclue.conf
将以下行附加到/etc/geoclue/geoclue.conf
[redshift]
allowed=true
system=false
users=
然后重启Redshiftkill $(pgrep '[r]edshift*') && redshift-gtk & disown
答案4
"redshift - slove geoclue2 redshift not working error"
#ERROR:
Trying location provider geoclue2'... Using provider geoclue2'.
Unable to connect to GeoClue.
Unable to get location from provider.
#OR:
Unable to start GeoClue client:
GDBus.Error:org.freedesktop.DBus.Error.AccessDenied: Geolocation
disabled for UID 1000. Unable to connect to GeoClue.
Unable to get location from provider.
#solution1) turn on the location:
e.g:
Gnome Settings > Privacy > location
#unfortunatly most Desktop environment settings doesn't have location ON/OFF feature, but dont worry, we can install gnome settings manually:
sudo apt install gnome-control-center
#then enable location services
gnome control center > privacy > location services
#solution2) install geoclue2
e.g:
#on fedora:
sudo dnf install geoclue2 geoclue2-libs geoclue2-devel geoclue2-demos
#on debian:
sudo apt install geoclue-2.0
#solution3) run redshift with sudo
e.g:
sudo redshift
#solution4) add these lines to /etc/geoclue/geoclue.conf:
e.g:
[redshift]
allowed=true
system=false
users=
#then run:
sudo service geoclue restart
#solution5) create a configuaration file(THIS SOLUTION WORKED FOR ME)
e.g:
#YOU NEED TO SET latitude(45th line) and longitude(46th line) manually
#visit this site the file your lat & lon: https://www.latlong.net/
#goto ~/.config directory & created a file "redshift.conf" and put below lines in the redshift configuration file(~/.config/redshift.conf)
; Global settings for redshift
[redshift]
; Set the day and night screen temperatures
temp-day=5700
temp-night=3500
; Enable/Disable a smooth transition between day and night
; 0 will cause a direct change from day to night screen temperature.
; 1 will gradually increase or decrease the screen temperature.
transition=1
; Set the screen brightness. Default is 1.0.
;brightness=0.9
; It is also possible to use different settings for day and night
; since version 1.8.
;brightness-day=0.7
;brightness-night=0.4
; Set the screen gamma (for all colors, or each color channel
; individually)
gamma=0.8
;gamma=0.8:0.7:0.8
; This can also be set individually for day and night since
; version 1.10.
;gamma-day=0.8:0.7:0.8
;gamma-night=0.6
; Set the location-provider: 'geoclue', 'geoclue2', 'manual'
; type 'redshift -l list' to see possible values.
; The location provider settings are in a different section.
location-provider=manual
; Set the adjustment-method: 'randr', 'vidmode'
; type 'redshift -m list' to see all possible values.
; 'randr' is the preferred method, 'vidmode' is an older API.
; but works in some cases when 'randr' does not.
; The adjustment method settings are in a different section.
adjustment-method=randr
; Configuration of the location-provider:
; type 'redshift -l PROVIDER:help' to see the settings.
; ex: 'redshift -l manual:help'
; Keep in mind that longitudes west of Greenwich (e.g. the Americas)
; are negative numbers.
[manual]
lat=48.1
lon=11.6
; Configuration of the adjustment-method
; type 'redshift -m METHOD:help' to see the settings.
; ex: 'redshift -m randr:help'
; In this example, randr is configured to adjust screen 1.
; Note that the numbering starts from 0, so this is actually the
; second screen. If this option is not specified, Redshift will try
; to adjust _all_ screens.
[randr]
screen=0
#solution6) run redshift in background(if above solutions didn't work? you can try this):
#remove redshift-gtk extension from panel and stop autostarting redshift in startup programs
#then add this startup command to run redshift in background after login
redshift -l 7:81 -t 5700:3600 -g 0.8 -m randr -v
#you can change 0.8 to adust brightness(0.1 - 1)
#links:
https://github.com/jonls/redshift/issues/445
https://askubuntu.com/questions/1061453/redshift-permission-error-gdbus-errororg-freedesktop-dbus-error-accessdenied