Language Selection

English French German Italian Portuguese Spanish

A Month With Fluxbox - Part 1

Filed under
Howtos

In anticipation of the April Gentoo Monthly Screenshots thread on my favorite forum, I've been working on beautifying my desktop for the last several days.

This month I wanted to post something a little different. I've been using KDE for many moons now so my desktops, and the screenshots of it, always look basically the same. The icons, wallpaper, colors, and window decorations have changed, but being a creature of habit and having found what works for me, I never changed the layout much. I had hoped to do that this month. And in keeping with the spirit of the thread, I'm going to run fluxbox all April long and post my thoughts on using it here at tuxmachines at the end. I've been running fluxbox fulltime for not quite a week now as I type this (if you don't count my occasional look around and use of my laptop), which is why this article is entitled "Part 1".



The Setup


  • The Theme

I started with my Plain Jane v. 0.9.12 fluxbox desktop posted last month and the first thing I did was set a new wallpaper. The most fundamental aspect of any desktop is the wallpaper. You can get a glimpse into the personality of folks by the wallpaper they choose. (I'm going to leave that topic there as I could, and might, write an entire article on that.) The wallpaper is the foundation of any theme, it's the basis on which everything should be built. It shapes the colors, the mood, the icons sometimes, and the window decorations. It is also one of the easiest aspects to change in fluxbox.

One has several choices in their method of setting a wallpaper. Fluxbox's own fbsetbg is a popular choice. Although as much as I can tell, it's a wrapper that probably calls to xsetbg to actually do the background. But if you're running fluxbox you should already have those two elements installed. Other options include wmsetbg, Esetroot, and feh.

I chose feh because of some of it's nice features. It can do a simple background set, but it can also do a slideshow, multiple images on the one screen, filelist sorting and loading, loading images via http, montage/collage creation and much much more. So one simply adds their command to the ~/.fluxbox/init file and wha-la > a nice background. For now mine looks like this:

session.screen0.rootCommand: feh
--bg-scale /mnt/oldhome/s/wallpapers/Fleur1280.jpg

For the colors I relied upon the theme manager of fluxbox at this time. I installed gentoo's fluxbox-theme package from an ebuild and had a nice large list of themes to choose from. I chose Nuevat3k-Bluenight. It's a nice bluish-darkgreenish style with small discrete window decorations and great looking menu effects.

I'm primarily using KDE apps, as all my mail is in kde maildir format in my KDE .Mail folder and all my browser bookmarks are in my ~/.kde folder. I'm using the provided Atlas Green color theme that been included with KDE forever. Although my wallpaper has very little (if any real) green in it, the understated green seems to blend well with the aqua in it and the greenish blue of the menus. It's a nice combination I think. My gtk apps are using the default gray color and style for now.

I tried out fluxconf/fluxmenu to try and add entries to my menu. It seemed to work good, but at some point it deleted the main line at the beginning of my .fluxbox/menu file and left the menu crippled. Fortunately I had a backup and just copied and pasted the missing line back. I used it to add the kde apps submenu and openoffice.org to the Office submenu. Fluxmenu seems to be a nice little application for adding menu entries. I installed it using ebuilds, but you can get it and more information here. Then I finished editing the file manually for a couple other entries.


  • Monitoring

Gkrellm used to be the greatest thing since Hershey's kisses, but last year or so it's been quite unstable for me. It seem to freeze up and crash out often. So, I really quit using it. I tried torsmo in kde, but it interfered with the desktop rendering causing blinking and the icons would disappear. However, none of that is a problem in fluxbox. I'm using torsmo most happily in fluxbox now. That configuration was a bit more tedious than gkrellm, but the docs are fairly complete and easy to understand, and there were quite a few examples on the forum to consult. Actually, weather support is supposed to be included in the newest torsmo, but I didn't see too much about it in the gentoo ebuild version (ok, I didn't look too hard). So, I just went with {exec /some/script}.

I actually saw many methods for accomplishing this task, but the one I used was here. I usually like to pull weather info from our local airport and that's what I did in gkrellm. This method pulls from yahoo which in turn pulls from weather.com. I may play with this some more and try other methods, but for now I like the output formatting of Arainach's script.

In addition, I found a tip on how to set a calender in that same thread. I was hunting around looking for an applet to do that, but this method saves on system resources and gives a consistant uncluttered look - as does the date/time string for which I was also originally looking for an applet to display.

That's a wonderful thread if you want some good tips for configuring your torsmo. In fact that entire forum is a wonder resource for just about anything Linux! I've found it indispensable.

I'm still working on my voltage output values tho. I can glean the information from the /sys files as gkrellm did, but I haven't been able to get divisors to work yet. Maybe by the next report I'll have figured it out. The most important thing is to watch for consistency/stability anyway, and this'll serve that purpose for now.

Setiathome outputs seem to be a problem across systems and setups. Apparently it's broken, but at least it's included and will probably be fixed in an upcoming release. So for now I just grepped my seti/state.sah and seti/user_info.sah files.


  • Desktop Icons

It seems idesk is your best choice for desktop icons. I had trouble with gentoo's ebuild version shooting glibc errors. Utilizing several recent versions of glibc and rebuilding did not seem to fix it for me, so I downloaded the source from the site and all is well - and stable.

The two key component here are a ~/.ideskrc file to set up your basic config and actions and an ~/.idesktop directory for all your .lnk files (icons). There's an example of an .ideskrc on idesk's site and I merely copied&pasted then changed a couple things for my use like single clicking. Also the site includes an example of an .lnk file that I used as a template to make all my others. I set the gentoo icon for use in each separate .lnk file. I had always wanted to use the gentoo icon set but they didn't come with a .theme file for easy use in kde. Here was my chance. This process was straight forward and simple, no voodoo required. idesk seems stable and is completely usable. It works. (Please forgive the surprize in my voice.)


  • The Pager

There are many pagers to choose from out there, but I chose fbpager. It was available on the fluxbox site so I figured it'd probably be best for my purposes. The screenshots were nice and it supports transparency. After experimenting with different settings, I have my alpha set at 64. I set the window borders to be white and it looks good on the darker backgrounds I tend to use.

The configuration file is simple and easy to edit. It's located in ~/.fluxbox/fbpager. There is an example on the above linked fbpager page. I just edited a few lines to my taste, ran the
command fbpager, and was in business.


  • Panel

To date I've tried at least 4 panels and have yet to find one I like. I've tried engage and kooldock to name a couple. Documentation being sorely lacking is one of the problems encountered. Engage seems a bit buggy and kooldock only seems to recognize kde apps. I just really prefer the small toolbar that comes with fluxbox myself. I'll probaby do some more experimenting over the course of April and perhaps I'll have some good new on this front next report.


  • Transparency

I looked at KDE's transparency when they recently released their wonderful latest version 3.4. I found it a little limited in it's present state, but look forward to their continued development in this area. However with fluxbox, transparency can be achieved using xcompmgr I installed using gentoo's ebuild and wasn't expecting much. I figured if it even worked, it'd be unstable, resource hungry and completely unusable. I was wrong.

It installed with no problems. I issued the command xcompmgr and wham - instant transparency. It works nicely, looks great and doesn't present any stability issues. It hasn't crashed yet even while changing fluxbox themes over and over.

xcompmgr is easy to set up as it don't seem to use a configuration file instead using start flags or options. Issuing a xcompmgr --help yields the options one can use. I experiment with many of them but I've found I like it best as default and just use xcompmgr &. You need to install transset to get the -o flag to work. One must edit their XFree86 or Xorg config file to enable it by inserting the following lines:


Section "Extensions"
Option "Composite" "Enable"
EndSection


Option "RenderAccel" "true"

and if you use nvidia for opengl:


Option "AllowGLXWithComposite" "true"

Sometimes I get a little artifacting when using mplayer sometimes, but I understand I can eliminate that if I use mplayer without xv. I ran Doom3 last night, the first time since using fluxbox with all the enable eye candy, and it plays wonderfully. xcompmgr didn't seem to effect it in the least. In fact that's about the smoothest play I've had to date, and I'm still using the 6620 drivers cuz I'm having issues with the 7167 release that I haven't had time or the inclination to resolve.

Preliminary Conclusion

By itself fluxbox is a nice and capable window manager. I've used it on my laptop forever because of it's small footprint and light-weight design. Dressing it up by adding icons and other eye candy didn't seem to slow it down. It's always been my backup, but after just a week, I'm already settling in and vow to use fluxbox at least for the month of April. Please look for my report at the end of month for my final conclusions.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Command prompt question

OK, can you please tell me the name of the application that places the command prompt in the upper left hand corner of the screen.Believe it or not, I've been searching for it for a few weeks now, and haven't been able to find it.

Great article, by the way.

Thanks! Tex

re: Command prompt question

Yes, that is Eterm. It's a flexible terminal emulator, much like xterm, konsole (for kde), or gterm (for gnome). When you open Eterm as default, it will look much like xterm and you will need to add some start-up options to the command to get it to look like it's just a "command prompt on the desktop." I use the following in a little file and execute that instead of using it as a command each time. Save it as whatever you wish and chmod a+x. You can play around with the fonts and whatnot to customized as desired. For example:

Eterm --trans -g 75x25 -f white -F '-*-lucidatypewriter-medium-r-normal-sans-16-*-*-*-*-*-*-*' -O --tint=#ffffff --shade 0 --borderless --scrollbar-popup --scrollbar-floating --scrollbar no --double-buffer -a "toggles buttonbar false"

if you have terminus fonts installed, it looks much nicer:

Eterm --trans -g 75x25 -f white -F '-*-terminus-*-*-*-*-20-*-*-*-*-*-*-*' -O --tint=#ffffff --shade 0 --borderless --scrollbar-popup --scrollbar-floating --scrollbar no --double-buffer -a "toggles buttonbar false"

hth. Smile

Thanks!

Thanks a lot for the article! I have been using KDE up until now (new to linux though) and was looking for a good distro to use Fluxbox on. Just wondering if you have any recommendations? (would prefer to do a painless installation (no compiling please Smile)

Anyways, thanks again, great article.

Joe

re: fluxbox distro

A lot of them have it or have it in their repository. There aren't a lot out there that just have or specialize in the fluxbox desktop, except maybe Fluxbuntu Linux. Fluxbox runs well on about anything.

What are you currently running?

fluxbox

At the moment I have been trying out some different distros. Ubuntu, Debian, Slackware, Gentoo, PCLOS etc. (but have had little time with each of them) but mostly with KDE or Gnome. I am going to try out Sabayon today with seems to have Fluxbox as an option for default on installation.

Thanks,
Joe

Any d/l link for that icon set?

I've been looking all over for it and can't find a tarball or other archive. The old links to it on gentoo.org no longer seem to work. It's a very nice icon set!

re: icons?

I got 'em Here, it should be all of 'em. Only thing is, I don't think there is a theme file for kde or anything. If I recall, it's just the icons.

Thanks very much!

And there's more added to the Gentoo collection, by Wolvix, on his ionbox.org site, as well as user-contributed ones in this Gentoo Forum thread.

And to anyone interested in Fluxbox, you might want to check out Damn Small Linux and its slightly bigger brother, Damn Small Linux Not, both tiny (50 - 100 MB) Debian-based live CDs whose main UI is Fluxbox. A good way to look at working configuration files.

More in Tux Machines

today's leftovers

  • Linux Magazine Celebrates 20 Years

    With Issue 240, Linux Magazine is celebrating its 20th year of print publication. Given the transformations that have taken place in Linux, open source, and in publishing during the past 20 years, this is a remarkable achievement. Reflecting on these changes, Linux Magazine editor-in-chief Joe Casad said, “I’m struck by how much Linux has changed since I started this job—and how much the publishing industry has itself remained in a perpetual state of reinvention. It is one thing when the subject of the magazine is continually transforming—and quite another when the very context in which you operate is a moving target.” [...] Linux Magazine has weathered the various industry shifts with consistency of vision and a small, dedicated workforce. Casad credits the internationally distributed team of professionals, “who stay calm under pressure and show up every day with ideas and good energy,” with much of the magazine’s long-running success.

  • Security updates for Thursday

    Security updates have been issued by Fedora (firefox, libproxy, mbedtls, samba, and zeromq), openSUSE (chromium and virtualbox), Red Hat (firefox and kernel), SUSE (cifs-utils, conmon, fuse-overlayfs, libcontainers-common, podman, libcdio, python-pip, samba, and wavpack), and Ubuntu (rdflib). 

  • LibreOffice Documentation Team Status

    While this progress in shortened documentation development time is fairly good, it can be substantially improved by having more contributors on the team. It would be terrific if all contributors were a skilled technical writers, but in reality anyone with a reasonable command of the English language and an eye for detail can make a valuable contribution. No contributor is expected to rewrite entire guide books, although some of our most experienced, long term contributors do exactly that. In fact nothing is expected or demanded of any contributor, other than to let other members of the team know what they what they have chosen to work on. In some cases that might be to update a chapter of an existing guide, or reviewing the work of another team member. Reviewing can take the form of proof reading, or researching the accuracy of the guide information in relation to the software’s actual operation. By identifying yourself as a Docs Team contributor does not mean you are making any permanent or long term commitment, many contributors come and go over long periods according to the demands of their “real” life.

  • Mozilla VR Blog: Firefox Reality 12

    The latest version of Firefox Reality for standalone VR headsets brings a host of long-awaited features we're excited to reveal, as well as improved stability and performance. [...] Look for Firefox Reality 12 available now in the HTC, Pico and Oculus stores. This feature-packed release of Firefox Reality will be the last major feature release for a while as we gear up for a deeper investment in Hubs. But not to worry! Firefox Reality will still be well supported and maintained on your favorite standalone VR platform.

  • Daniel Stenberg: everything curl five years

    At the time of that blog post, the book was already at 13,000 words and 115 written subsections. I still had that naive hope that I would have it nearly “complete” by the summer of 2016. Always the optimist. Today, the book is at over 72,000 words with content in 600 subsections – with just 21 subtitles noted “TBD” to signal that there’s still content to add there. The PDF version of it now clocks in at over 400 pages. I’ve come to realize and accept that it will never be “complete” and that we will just keep on working on it indefinitely since curl itself keeps changing and we keep improving and expanding texts in the book.

  • Amazon announces 'Luna', their own take on cloud game streaming

    Amazon Luna will give you access to certain Channels of games which you subscribe to. The first two announced are Amazon's own Luna+ to get access to a "growing" library and Ubisoft are also confirmed to have their own subscription channel coming to it too. The Luna+ subscription will have 100s of games from big names too like Resident Evil 7, Control, The Surge 2, A Plague Tale: Innocence and a great many more. By the time it launches, it's going to have quite a full library already.

  • How to Install Discord on Ubuntu & Linux Mint (GUI & CLI)
  • Granulate Applies AI to Linux Server Optimization

    Granulate today announced that a platform that leverages machine learning algorithms to optimize Linux server environments running on-premises or in the cloud is now generally available. [...] According to the company, more than 40,000 instances of gAgent have already been deployed by IT teams at PicsArt, Perion, AppsFlyer and Coralogix.

Programming Leftovers

  • In a world where up is down, it's heartwarming to know Internet Explorer still tops list of web dev pain points

    Web developers resent having to deal with Microsoft Internet Explorer and Apple Safari, which they cite among their top three pain points, alongside layout and styling inconsistencies among browsers. This finding comes from the Mozilla Developer Network's 2020 Browser Compatibility Report [PDF], a survey of web development concerns culled from 1,429 responses out of 3,236 – the remainder having been tossed for invalid or missing data. The purpose of the report is to alert the browser vendors to problems so they can be addressed.

  • chemfp's chemistry toolkit I/O API

    This is part of a series of essays about working with SD files at the record and simple text level. In the last two essays I showed examples of using chemfp to process SDF records and to read two record data items. In this essay I'll introduce chemfp's chemistry toolkit I/O API, which I developed to have a consistent way to handle structure input and output when working with the OEChem, RDKit, and Open Babel toolkits.

  • 10 Things We Picked Up From Code Reviewing

    Ever wondered what you could learn from a code review?

  • Mike Driscoll: CodingNomads Tech Talk Series!

    Recently CodingNomads invited me on their Tech Talk series. CodingNomads does online code camps for Python and Java. The Tech Talks are a series of videos that teach or talk about tech. In my case, I got to talk about my favorite programming language, Python!

  • Arm Begins Bringing Up Neoverse N2, Neoverse V1 Support In The GNU Toolchain

    It was just a few days ago that Arm outlined the Neoverse N2 "Perseus" design as a follow-on to the Neoverse N1 and coming concurrently to the next-generation Cortex-A. Now the company has already jumped on beginning their open-source/Linux enablement work around the Neoverse N2. There haven't been any Neoverse N2 additions yet to LLVM/Clang or GCC as the most interesting aspects where it would reveal any new instruction set extensions / capabilities not yet formally announced by Arm (there also isn't any patches out under review on that front either), but a patch out this morning adds Neoverse N2 support to the GNU Assembler (Gas).

  • autoconf-2.69c released [beta]
    We are pleased to announce beta release 2.69c of GNU Autoconf.
    
    This release includes two months of bug fixes since the previous beta,
    2.68b, and eight years of development work since the previous full
    release, 2.69.  See below for the list of significant changes since
    the previous beta.  See the NEWS file for a complete list of
    significant changes since 2.69.
    
    We tentatively plan to make the final release of Autoconf 2.70 at the
    end of October 2020.  Please test this beta with your autoconf
    scripts, and report any problems you find to the Savannah bug tracker:
    
       https://savannah.gnu.org/support/?func=additem&group=autoconf
    
    Please also send general comments and feedback to <autoconf@gnu.org>.
    
    Please also spread this announcement widely, so that as many Autoconf
    users as possible hear about it.
    
    Here are the compressed sources:
      https://alpha.gnu.org/gnu/autoconf/autoconf-2.69c.tar.gz   (2.0MB)
      https://alpha.gnu.org/gnu/autoconf/autoconf-2.69c.tar.xz   (1.3MB)
    
    Here are the GPG detached signatures[*]:
      https://alpha.gnu.org/gnu/autoconf/autoconf-2.69c.tar.gz.sig
      https://alpha.gnu.org/gnu/autoconf/autoconf-2.69c.tar.xz.sig
    
    Use a mirror for higher download bandwidth:
      https://www.gnu.org/order/ftp.html
    
    [*] Use a .sig file to verify that the corresponding file (without the
    .sig suffix) is intact.  First, be sure to download both the .sig file
    and the corresponding tarball.  Then, run a command like this:
    
      gpg --verify autoconf-2.69c.tar.gz.sig
    
    If that command fails because you don't have the required public key,
    then run this command to import it:
    
      gpg --keyserver keys.gnupg.net --recv-keys 384F8E68AC65B0D5
    
    and rerun the 'gpg --verify' command.
    
    This release was bootstrapped with the following tools:
      Automake 1.16.2
    
    Noteworthy changes and bug fixes since the previous beta (2.69b):
    
    * A performance regression in AC_PROG_CXX has been corrected.
      See https://savannah.gnu.org/support/index.php?110285 for details.
    
    * AC_PROG_YACC has been reverted to using ‘bison -y’.  After 2.70,
      we will instead add an AC_PROG_BISON macro for programs that
      require Bison extensions.
      See https://savannah.gnu.org/support/index.php?110266 for details.
    
    * AC_PROG_LEX no longer looks for a library providing the function
      ‘yywrap’.  LEXLIB will only be set to ‘-lfl’ or ‘-ll’ if a
      scanner that defines both ‘main’ and ‘yywrap’ itself still needs
      something else from that library.
    
      Packages should define yywrap themselves, or use %noyywrap.
    
    * When ‘$CC -E’ doesn’t run the C preprocessor, AC_PROG_CPP now looks
      in $PATH for ‘cpp’ before falling back to ‘/lib/cpp’.
    
    * AC_TYPE_PID_T now gives pid_t the correct definition on 64-bit
      native Microsoft Windows.
    
    * AC_INIT now trims extra white space from its arguments.  For instance,
    
        AC_INIT([  GNU  Hello  ], [1.0])
    
      will set PACKAGE_NAME to “GNU Hello”.
    
    * autoreconf will now run gtkdocize and intltoolize when appropriate.
    
    * autoreconf now avoids complaints from subsidiary tools about
      unknown warning categories.  For example, ‘autoreconf -Wcross’
      will no longer cause complaints from (current released versions of)
      aclocal and automake.
    
    * Generated configure scripts no longer fail catastrophically when
      stdin, stdout, or stderr is closed on startup.
    
    * Many bugs related to building Autoconf itself have been corrected.
      These mostly affected non-GNU operating systems and situations where
      optional tools are not available.
    
    * The obsolete macros AC_DIAGNOSE, AC_FATAL, AC_WARNING, and
      _AC_COMPUTE_INT are now replaced with modern equivalents by
      autoupdate.
    
    * The macro AC_OBSOLETE is obsolete.  Autoupdate will replace it with
      m4_warn([obsolete], [explanation]).  If possible, macros using
      AC_OBSOLETE should be converted to use AU_DEFUN or AU_ALIAS instead,
      which enables autoupdate to replace them, but this has to be done by
      hand and is not always possible.
    
    * AC_FC_LINE_LENGTH now documents the maximum portable length of
      "unlimited" Fortran source code lines to be 250 columns, not 254.
    
    * Warnings about obsolete constructs are now on by default.
      They can be turned off with '-Wno-obsolete'.
    
    * autoconf will now issue warnings (in the ‘syntax’ category) if the
      input file is missing a call to AC_INIT and/or AC_OUTPUT.
    
    * AC_INIT will now issue warnings (in the “syntax” category) for a
      non-literal URL argument, and for a TARNAME argument which is either
      non-literal or contains characters that should not be used in file
      names (e.g. ‘*’).
    

JDK 16: What’s coming in Java 16

Although not due to arrive until March 2021, Java Development Kit (JDK) 16 has begun to take shape, with proposed features including concurrent thread-stack processing for garbage collection, support for C++ 14 language features, and an “elastic metaspace” capability to more quickly return unused class metadata memory to the OS. JDK 16 will be the reference implementation of the version of standard Java set to follow JDK 15, which arrived September 15. The six-month release cadence for standard Java would have JDK 16 arriving next March. Read more

Linux Kernel Latest Developments and New Linux Foundation Report

  • AMD Ryzen 9 3900XT CPUFreq Governor Comparison With Linux 5.9

    One of the most frequent questions received at Phoronix in recent times is whether the "schedutil" governor is ready for widespread use and if it can compare in performance to, well, the "performance" governor on AMD Linux systems. Here are some benchmarks of an AMD Ryzen 9 3900XT using the latest Linux 5.9 development kernel in looking at the performance differences between the CPUFreq governor options of Ondemand, Powersave, Performance, and Schedutil.

  • Intel Engineers Begin Landing Open-Source Support For TDX, Intel Key Locker

    Last month Intel published a whitepaper on TDX as Trust Domain Extensions as a means of better securing virtual machines. TDX allows for isolating VMs from the hypervisor and other non-VMM system software. Intel TDX builds off other recent work around MKTME memory encryption and other features. We are now beginning to see that software side support roll-out along with the also-new Key Locker instructions.

  • HPE Preparing SGI UV5 Support For The Linux Kernel

    Recent hardware enablement work on the Linux kernel is HPE bringing up UV5 support. Succeeding the SGI UV4 support is now UV5 under the ownership of HPE. UV5 is the latest iteration of their x86_64 based supercomputer architecture.

  • Linux 5.10 To Support Nitro Enclaves For Security-Critical Applications

    The kernel support for Nitro Enclaves landed this week in char-misc-next ahead of the Linux 5.10 cycle kicking off next month. Nitro Enclaves is a capability of Amazon AWS' EC2 cloud for protecting highly sensitive data. Nitro Enclaves provide additional isolation and security by punting the sensitive work/data off to an isolated virtual machine without persistent storage access and other reductions to possible attack surfaces while also providing cryptographic attestation for ensuring only trusted/authorized code is running.

  • Linux Foundation Adds Entry-Level Certification

    The Linux Foundation has announced the development of a new entry-level certification exam to complement their existing Linux Foundation Certified Sysadmin (LFCS) and Linux Foundation Certified Engineer (LFCE) exams. This new certification, the Linux Foundation Certified IT Associate (LFCA), targets people just moving into systems administration.

  • How open-source software transformed the business world [Ed: Today ZDNet deletes GNU and Free software from history, citing this 'report' from LF (made using proprietary software)]

    The Linux Foundation goes into many examples, but I'm going to focus on telecommunications and networking since it's a field I know well. 

  • Software-defined vertical industries: transformation through open source

    What do some of the world’s largest, most regulated, complex, centuries-old industries such as banking, telecommunications, and energy have in common with rapid development, bleeding-edge innovative, creative industries such as the motion pictures industry? They’re all dependent on open source software.  That would be a great answer and correct, but it doesn’t tell the whole story. A complete answer is these industries not only depend on open source, but they’re building open source into the fabric of their R&D and development models. They are all dependent on the speed of innovation that collaborating in open source enables.