Hacker News new | past | comments | ask | show | jobs | submit login
I just released F.lux for Ubuntu (fades your screens at night) (kilianvalkhof.com)
91 points by kilian on July 26, 2010 | hide | past | web | favorite | 46 comments

A similar program for automatically changing the color temperature, Redshift [1], was recently highlighted by Lifehacker and others as an alternative to the commandline-only XFlux, inspired by F.lux.

EDIT: One advantage Redshift has is that it automatically determines your lng/lat based on your current "home" location in the Clock applet.

[1]: http://jonls.dk/redshift/

redshift is also open source and thus works on other platforms, where f.lux is closed source.

It works on other platforms because it's open source? Isn't that a bit of an overstatement? For the fun of it, I just downloaded this and tried to compile on my Linux box:

  ~/tmp/tmp# uname -a
  Linux susie #1 SMP 2009-11-23 12:57:38 +0100 x86_64 x86_64 x86_64 GNU/Linux
  ~/tmp/tmp# cat /etc/SuSE-release
  openSUSE 11.1 (x86_64)
  VERSION = 11.1

  ~/tmp/tmp# wget http://launchpad.net/redshift/trunk/1.4.1/+download/redshift-1.4.1.tar.bz2
  ~/tmp/tmp# tar xf redshift-1.4.1.tar.bz2
  ~/tmp/tmp# cd redshift-1.4.1/
  ~/tmp/tmp/redshift-1.4.1# ./configure
   redshift 1.4.1

      prefix:             /usr/local
      compiler:           gcc -std=gnu99
      cflags:             -g -O2

      Adjustment methods:
      RANDR:              yes
      VidMode:            yes
      WinGDI:             no

      Location providers:
      GNOME Clock:        no

      GUI:                statusicon

  ~/tmp/tmp/redshift-1.4.1# make
  ~/tmp/tmp/redshift-1.4.1# make
  make  all-recursive
  make[1]: Entering directory `/root/tmp/tmp/redshift-1.4.1'
  Making all in src
  make[2]: Entering directory `/root/tmp/tmp/redshift-1.4.1/src'
  Making all in gtk-redshift
  make[3]: Entering directory `/root/tmp/tmp/redshift-1.4.1/src/gtk-redshift'
  sed -e "s|\@gui_module\@|statusicon|g" gtk-redshift.in > gtk-redshift
  make[3]: Leaving directory `/root/tmp/tmp/redshift-1.4.1/src/gtk-redshift'
  make[3]: Entering directory `/root/tmp/tmp/redshift-1.4.1/src'
    CC     redshift.o
  In file included from redshift.c:60:
  gamma-randr.h:33: error: expected specifier-qualifier-list before xcb_randr_crtc_t
  make[3]: *** [redshift.o] Error 1
  make[3]: Leaving directory `/root/tmp/tmp/redshift-1.4.1/src'
  make[2]: *** [all-recursive] Error 1
  make[2]: Leaving directory `/root/tmp/tmp/redshift-1.4.1/src'
  make[1]: *** [all-recursive] Error 1
  make[1]: Leaving directory `/root/tmp/tmp/redshift-1.4.1'
  make: *** [all] Error 2
This is Linux mind you, not some AIX box on which it will never compile, even though it has X11 installed. (And yes, I know I can disable RANDR in the above case and it will compile, that's beside the point)

The point is not that it works out of the box on all platforms, but that if it doesn't work on your platform, you have the source code available, so you can make it work on your platform by changing the software. You can't do that with closed-source binaries.

With that I can mostly agree (but the comment implied otherwise).

But - and this is sometimes a huge but - open source software (OSS) is more and more dependant on other OSS, making it sometimes next to impossible to port it to other platforms. Try building VLC from scratch and you'll see what I mean (you can use Linux). Furthermore, API changes are quite common for OSS even in minor version updates and that creates an additional mess (dependency hell), as was clearly demonstrated in my example above.

It's not all black and white.

this discussion is completely pointless, but yes, it can work on other platforms because it's open source.

i was able to compile it just fine on my openbsd laptop.

There's a huge difference between "thus works on other platforms" and "it can work on other platforms".

f.lux works as advertised. Love it. Use it. Highly recommend it. More so, now that is has nice GUI and all.

The fact that it is closed source should not be a problem unless you are RMS!

The fact that it is closed source should not be a problem unless you are RMS!

um, or unless you use an operating system or architecture for which they don't build a binary, so you can't use it no matter how well it works as advertised.

Sure. OSS is great and I am a big fan. But which major OS is f.lux not available for, again?

Your argument in the present context is exactly what I was referring to when I mentioned RMS!

Also, f.lux does work as advertised on the OSs that it is available for.


> But which major OS is f.lux not available for, again?


> f.lux does work as advertised on the OSs that it is available for.

I started using F.lux a month or so ago to help with insomnia. It's helped a lot, thank you for writing it.

I've been holding out on buying an iPad to read in bed, precisely because F.lux has helped me so much on OSX. Is there a flux equivalent for iOS? Is it possible to write one?

Would be possible for an application to mimic Flux, but there is no way (except on a Jailbroken device) to do system wide Flux. Could be a nice niche for a browser or RSS reader though.

I have a bunch of hacks, but nothing that actually works right on iOS yet.

Is there a version for Jailbroken devices?

Thanks! To be fair, Michael Herf ('herf' here on HN) did most of the work, I just made a pretty GUI :)

Man, I would love a F.lux for the iPad! Shame that's not possible unless Apple built it into the OS themselves.

F.lux adjusts the color of your computer's monitor to match the time of day. It's warm at night and like sunlight during the day.

I've been using F.lux for a couple of months on OS X. The orange color at night looked a odd to me at first, but now I don't notice it.

F.lux can help you sleep better: http://www.stereopsis.com/flux/research.html

I will chime in with the chorus and say I've been using F.lux for at least a month and it works great! Thank you!

Has anyone figured out how to get this to work on a multi-display configuration? I tried it and found it only affected my primary screen.

It's probably of no help to you, but I use a dualscreen nVidia setup (twinview), and it just works.

I've been using flux and find it works as advertised on helping my sleep patterns. Thanks for your work on it.

I use f.lux backwards. I leave it on normally, but when I need to wake up to re-focus and get stuff done (and it's dark out), I turn it off, and I feel more awake again.

It's probably all in my head, but I'm going with it for now ;)

no, that really does work, at least it seems so for me; I have it set to the default settings but if I'm working late and feeling tired I switch it off and enjoy the "brightness kick".

One of the greatest features of f.lux for me is that I actually start feeling more tired after it kicks in, so it really does encourage me to get to bed earlier.

It complained about not supporting my color depth (although nvidia-settings is set to 24 bit).

before (last 100 chars): we only support 24/32-bit displays right now. XF86VidModeGetGammaRampSize returned 2048 entries.

xflux does the same. It's a new laptop - i7 in 64bit mode, so I don't know if that's at fault. I loved xflux on the old (32bit, nvidia) laptop, though.

Redshift as mentioned by paulsmith works great.


I've been a huge fan of F.lux on OS X for a very long time. The beautiful thing about the recent "gradual change" feature is that now I don't even notice it when I'm working late at night -- unless I have to turn off the application for some reason, and then I find myself squinting and fleeing.

Anyway, just wanted to take a moment out to thank you for helping so many people out.

I've been using it for a month or two on Windows and am quite surprised how much I like it.

Flux didn't change the appearance enough for me -- what I really want is to have light text on a dark background at night. One ugly hack is to use the Windows 7 magnifier tool to invert video. The colors are atrocious but you can pretend they are neon lights for night mode ;)

That's awesome!! Thank you! I just gave up my Windows machine for Ubuntu and F.lux was one of the things I missed most. Is there a .deb I can download directly? I don't think I can add new repositories on my work computer.

you can install a deb package, but not add a source? That seems like an odd configuration to me.

agreed, but i wasn't the one to make that decision :o)

I e-mailed the author months ago about a bug where the glibc command-line version would stay alive and peg to 100% CPU usage after logout. It seems to have never been fixed.

Any chance you could ping him about that?

Fix is posted: https://secure.herf.org/flux/xflux.tgz

I wasn't able to find this in the old build, but the current one definitely has the bug. Let me know how it works.

Thank you! Testing now.

Redshift is nice. But, the colours in xflux feel better. Nothing quantifiable though.

I spent a little bit of time a few months ago trying to dump the gamma tables to compare. Only accomplished reminding myself why I hate low-level X.

I didn't get that email! But I'll look into it right now.

The last version of XFlux I used reset the screen brightness every second, which made the screen flicker uncontrollably during fades (eg on lock, logout, screen saver etc). Does that still happen?

It does this if you're running more than one instance of XFlux, they, uhm, seem to fight with each other ;). F.lux for Ubuntu prevents you from starting the app more than once :)

I installed the osx version of flux ages ago and never looked back, stunningly unintrusive.

Although waking up in the morning to find your beautiful late design is bright cyan is a bit of a shocker sometimes.

I have been using it for almost a year and it is on my list of must install programs. And I am very picky about what I run in the system tray.

xflux is included as a binary in the package source. I'm sure you mean well, but this is a security risk and breaks the terms of use for the Launchpad PPA (as it is not distributed under a permitted licence). You could host the package elsewhere, though.

Why is it only for Ubuntu? Or is it also runnable on, say, any GNOME setup?

It's using an appindicator, which is (for now) a Ubuntu only thing. I really hope other distributions pick it up, because it's absolutely wonderful.

There's a github link, so presumably it's only packaged for Ubuntu. I'm hoping I can get it running on OpenSUSE/KDE4.

If it has appindicator support, it'll run. I'm not sure if any other distributions already support it though. If you could let me know if you can get it to work on openSUSE/KDE4, (email in my profile) that'd be great!

Appindicator does seem to be the critical bit; I'm still on OpenSUSE 11.2 which definitely has zero support, planning to upgrade to 11.3, which might, at the weekend. I'll keep you updated. My Python isn't so great unfortunately, so it'd probably take me too long to port it to something more widely supported.

I love it.

I use the OS X version of this to combat my sleeping disorder - and reducing the amount of blue light during the mandatory "bedtime hacking" definitely does help to sedate me.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact