6 ms·
Wait, what? Why does it need to know location? If you want to know what time it is, why not just call localtime()?
by cvwright 11y ago
Wait, 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 agoThat's exactly how it is. It does not want to figure out the location itself, so it consults other software, which is optional.
- semi-extrinsic 11y agoThis location-based setting sounds clever, but it's a crappy idea if you live further north than ~60°N. Or do you want your screen to go red at 3pm and stay that way until 10am the next day when it's winter? And then in summer it's red from 2am to 4am? I use CF.lumen on Android and Redshift on Linux and I have to regularly shift the fake locations I give them in order to have them do what I want. At least with Redshift on Linux I can script it...
- Sharlin 11y agoYeah. The point should be helping me maintain the sort of circadian rhythm I want, not the one dictated by Earth's rotation.
- maxerickson 11y agoDo you think the idea of basing the timing on location is just bad altogether, or could the implementation be improved? Like mention to users above that latitude that they should set their bedtime, and then factor that into the timings.
- stormbrew 11y agoHell, I live at 53N and I definitely don't want the circadian rhythm dictated by sunrise/sunset. Sunrise right now is 8:00AM and sunset is 4:35PM. At solstice it'll be almost 9AM and just after 4PM.
- rogerbinns 11y agoAt least one of the authors is Danish (~55°N) so they are presumably aware of this to some degree. I am at 37°N and really do want the colour temperature inside to match that outside. In any event it is open source, so you can change the code as you deem fit :)
- cpach 11y ago”Or do you want your screen to go red at 3pm and stay that way until 10am the next day when it's winter? And then in summer it's red from 2am to 4am?” Yep, that’s great!
- 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.