- Users are expected to have at least two devices, and often 3 or 4: A smart phone and a laptop for sure. Likely a tablet as well, and perhaps a second laptop. (one laptop could be more of a work horse, and the second, a lightweight device)
- Adding a new client or re-installing a client device should become quick & painless. So we are moving more towards ''cattle"" in the pets vs cattle analogy. But our server apps are treated as pets.
- Data should live on the server and the client device may have a copy (depending on data type, disk space, connectivity, etc.)
- Data created on the client device should sync to the server, via ActiveSync or Syncthing
- Client devices should be encrypted on boot. If lost or damaged, no data should be lost. Client devices become disposable
- A client device should have a limited amount of software, as most functionality is provided via the browser by one of the server apps (ex.: Tiki)
- For laptops / desktops, a traditional desktop metaphor is preferred
- All devices should run a supported OS. And we shouldn't be throwing out still functional hardware. Thus, converting PCs that run Windows XP (unsupported since 2014-04) to GNU/Linux is an explicit goal.
- Standards (ex: XMPP) are to be used as much as possible to permit alternate client apps.
- Client device apps should ideally be cross-platform (Windows, MacOS X, GNU/Linux and ideally Android as well)
- so as to reduce overhead (training, documentation, support, etc.)
- If a user has several computer with different OSs, or switches from one OS to another, the transition is smoother than having to learn new apps / interfaces
- Software should be easy to install / update
- It's great if it's possible to move / backup simply by moving the files, as we do with data files. (Such as with PortableApps.com)
- While the Tiki Suite client device strategy lets users keep using Windows or MacOS X, if they want to use GNU / Linux on the desktop, we want this to be as smooth as possible. While users can pick among hundreds of GNU / Linux distros, in the spirit of focus, we are recommending a distro. ClearOS is first & foremost a server OS. However, you can use as a desktop as well. However, as of 2014-11, it is not mature enough and not much energy is expected in that direction given the DNA of the ClearOS community. An important decision in picking a GNU / Linux distro is the desktop manager. Given the goals above (especially supporting older hardware which had Windows XP, and the traditional desktop metaphor), LXDE has been picked. Ideally, we would go with Fedora LXDE to be closer to ClearOS (both use RPMs), however,
- It's very rare we need to install the same software on the server and client OS. We need for Syncthing
- As of 2014-11, Lubuntu better supports the desktop apps of the suite.
- Lubuntu offers an LTS version which Fedora presumably never will.
- CentOS doesn't have a LXDE "spin" or community
- Lubuntu future is bright: http://wiki.lxde.org/en/Merge_LXDE-Qt_and_Razor-Qt
- LXLE, an easy-to-use lightweight desktop Linux distribution based on Lubuntu, is looking very interesting
Since client devices are designed to be disposable, it should be easy to revisit this decision in a few years. Will things converge? (likely), but how?
- FirefoxOS, so everything HTML / JS
- Will Android or CyanogenMod become a mainstream OS for laptops & desktops? http://www.android-x86.org/
- Will Ubuntu Phone be able to replace Android? So would a phone edition of LXLE be an alternative to Android / CyanogenMod ?
In any case, adding devices to our mix should be:
- Set up new client device (apps & data sync)
- Start using
- When all is fine on the new device, wipe & repurpose the old one.
In terms of installing / updating apps, Zero Install is on the radar.
Below are some related notes. See also:
- WinXP support ended in 2014-04
- Convert these live instances to be a virtual machine within a lightweight GNU/Linux distro
- Use GNU/Linux as the main distro but you can fire up WinXP for access to legacy apps
- Get VMware vCenter Converter Standalone
- https://code.google.com/p/touchfreeze/ Really, the OS should handle this... Another annoyance: pop-ups that happen while we type. They could have waited a few seconds instead...