5 ms·
Note that the dependencies aren't because of setting the colour temperature, but to get your location information (see geoclue in the list). geoclue has severa
by rogerbinns 11y ago
Note that the dependencies aren't because of setting the colour temperature, but to get your location information (see geoclue in the list). geoclue has several providers, but a common one for desktop machines is to connect to a network service that does geoip. Consequently most of the dependencies arrive due to that (eg proxies, crypto, glue code for object models to do all that, and some innocent bystanders).
The location information is used so that redshift can alter the colour temperature during the day (less needed) and dusk, evening and night (very needed).
- cvwright 11y agoWait, what? Why does it need to know location? If you want to know what time it is, why not just call localtime()?
- swsieber 11y agoIt doesn't want to know the time - it wants to know the natural light levels outside. It wants to know the location to know what the light is like outside at the given time.
- cvwright 11y agoThank you, that makes sense.
- rogerbinns 11y agoBecause it uses sunset times to change your colour temperature around dusk. Localtime is not sufficient to work out dusk with any degree of accuracy. Those of us using Redshift are not doing so for a one off colour temperature set, but because it is continually updated through the day and night. You can tell it your location manually or have it done automatically. Redshift is open source. It does not have binary blobs, patents, a business model and similar crud that f.lux does. Adjust your paranoia/expectations as needed.
- coldtea 11y ago>Because it uses sunset times to change your colour temperature around dusk. Localtime is not sufficient to work out dusk with any degree of accuracy. So, why not just ask for the location instead of bundling 200MB of crap to get it?
- rogerbinns 11y agoThe "crap" is primarily from geoclue which supports numerous methods of getting your location. Some of them such as geoip require making network connections. https://en.wikipedia.org/wiki/GeoClue https://en.wikipedia.org/wiki/GeoClue It would be absurd for Redshift to include its own networking (don't forget proxies and SSL), GPS, and other code. On Linux (Ubuntu especially), all those dependencies are installed by default and used by many other components. "crap" is the last thing to describe it. OpenBSD doesn't have them by default which is why they show up. Redshift does support specifying your location on the command line or config file. gentoo has use flags where you can explicitly include (eg +geoclue) or exclude (eg -geoclue) components. I suspect OpenBSD doesn't, so it came down to whoever authored their port deciding to use geoclue by default. It is an entirely reasonable decision. You use this software on personal machines (ie not servers), and people move around. Defaulting to something that usually works right is fine. You are of course welcome to do a competitor, and show us all how much better it could be :-)
- plaguuuuuu 11y agoI don't really care either way about this, but to me, seems like a classic case of bloat, where the program is doing too many things at once. It makes more sense to have a core app that does the basic functionality and can be run from CLI, and then separate out the the various components that perform different duties and require more dependencies etc, in a modular architecture. It's just better software design and you avoid a lot of pitfalls and hassle to end-users and integrators - just like the issue described by the OP.
- yhager 11y ago
- deleted 11y ago[deleted]
- kharms 11y agoTo expand a bit on why the localtime() is not enough, two factors are at play. First, the solar noon can be as much as two hours displaced from the timezone. This is basically time zone vs longitude. Second, depending on time of year and attitude you can go from having no daylight in the winter to no darkness in the summer. Solar noon details here: http://blog.poormansmath.net/images/SolarTimeVsStandardTimeV2.png http://blog.poormansmath.net/images/SolarTimeVsStandardTimeV...
- detaro 11y ago> Second, depending on time of year and attitude you can go from having no daylight in the winter to no darkness in the summer. Isn't this a perfect example where using more than localtime() is pointless? Just because it's dark all the time outside you don't want your screen to be red-ish all the time. And in summer you want the effect if you try to sleep, even if the sun is still relatively high.
- cstrahan 11y agoI actually like that it's "red-ish all the time" because I'd prefer that my circadian rhythm match the outside lighting conditions. My eyes (and most others I know) adjust, and it no longer looks orange (in fact, non-adjusted screens start to look blue). Of course the lights around my apartment adjust too, otherwise the screen would continue to look off. I generally have a hard time getting to sleep, and most mornings feel like I've been run over by a steamroller, so I don't mind a little red tint if it makes even a tiny difference in the quality of my sleep.
- diqu 11y agoSaying you want your circadian rhythm match the outside light, then adding that you generally can't get to sleep while being steamrolled in the morning, sounds an aweful lot like you're not sleeping in accordance with your biological clock. Are you aware of delayed sleep phase syndrom?[0]? I have the same "issue" and it took me years to find a name for it, so I'd rather throw this at you, even if you knew. [0] https://en.wikipedia.org/wiki/Delayed_sleep_phase_disorder https://en.wikipedia.org/wiki/Delayed_sleep_phase_disorder
- lispit 11y agoThis is a valid question, not sure why you're being downvoted.
- gpvos 11y agoI almost (but not quite) voted it down. I think it's mostly the tone, especially the "wait, what?" for something that is patently obvious to some people.
- abrowne 11y agoAnd it looks like it includes redshift-gtk to give it graphical controls. Most packages I've used (Fedora, Ubuntu) split them up as redshift and redshift-gtk, and I've only never installed redshift-gtk, despite running a full Gnome desktop.
- coderholic 11y agoIt could use a single http lookup to http://ipinfo.io http://ipinfo.io instead!