1. Who are the ideal users of Tiny Core Linux? Developers using the system as a base and "remixing" it for other purposes? General-purpose computing users? Those looking for a "dumb" cloud terminal?
We seem to have a few distinct groups, with the common thread being that they're somewhat experienced Linux users.
- those running old or limited hardware
- those needing appliances/VMs for specific purposes
- those who want to tinker and customize
- and some who are just sick of the software bloat trends
I guess I belong to all four. I can spin a new single-purpose VM in minutes, it'll boot fast and take mere tens of megabytes. It's very useful. When running on old laptops, I go for TC first, and then I run it on some current/powerful hw just because I prefer it over the bigger distros.
Core is not really useful for a newbie wanting a normal desktop experience, like Ubuntu or Mint.
2. I know the system is optimized to be run "live" in RAM but an installation image is also provided. The official e-book seems to discourage installation. But for those who want persistence of data/installed applications, wouldn't installation be ideal? It seems a little... convoluted to try to maintain persistence over "live" sessions if installing Tiny Core would simplify this.
It's a difference in terminology, rather than requiring a live cd/usb every time. If you boot CorePlus, you can start the installer, click a few times, and have a Core install on your HD in under a minute. (Another benefit! Last I installed Ubuntu, it took over 10min, and last I installed Windows, it took 1.5h)
It's one of the strong points of Core than we do not do the traditional "scatter" install, where you have a few thousand files scattered all over the disk. Instead, everything is in a few compressed files, making integrity checks rather easy, and avoiding system rot. Robert coined the term "frugal install" for this.
3. How are security updates done? How frequently does the distribution put them out?
As a small distro comprised of volunteers, we have no special procedures for security. Updates to packages happen when the maintainer sends one in, which is why we don't recommend running TC on internet-facing servers.
4. Roughly how strong/involved would you say the development community is? Do one or more people end up doing the "core" (no pun intended) of the work with a few others contributing as much as they can with the time they have? Are there a number of people who do "one-off" contributions and are not heard from again?
We have a good set of regulars contributing, but it's been on a slow waning trend for a few years now. We do get drive-by contributions too, but usually if someone has found Core useful, they will use it again in the future when a similar situation arises.
Some base devs have retired, and some new ones have come up, but it's clear the community is not at its peak. We're not really doing things any different than we were in the 2.x/3.x timeframe, so perhaps it's just natural decrease in the need for something like this.
This is a bit different on the ARM/rpi platform. There the userbase consists of more inexperienced people, and so bmarkus does comparatively more of the work. With the pi being so slow, it's also cumbersome to compile on it, putting further barriers on contributing there.
5. What were the main goals and achievements of the 7.0 distribution over the last version of the 6.x series? I see that there is, for example, a newer version of busybox, an updated glibc and a new kernel, but what would you say are the major changes?
We have a part embedded target, and so we try to keep the kernel unchanged across a major release. This makes it a lot easier for some users who need custom kernel modules. This then leads to a new major release about yearly, updating the kernel and toolchain to more recent versions, so that more recent hw can be supported. 7.0 was like that, just version updates, no logic changes or new features.
In the time-based vs feature-based sense, major versions are closer to time-based, and minor versions happen whenever bugs are fixed. There hasn't been major feature development for a few major versions now, instead it's been more about polishing, speedups, and general fixes.
6. Once 7.0 comes out, what are the team's goals for the project going forward?
Keep running things for those who need this kind of setup
7. Is this forum the best place to participate in Tiny Core's development? Or is there a collaborative source code repository on a site such as GitHub to work with?
Yes, this forum is the main place. We also have an irc channel on Freenode. The core scripts and programs are tracked in git, but not github or other such site right now, just a local cgit instance. We're open to putting everything on Github or another service, there's just been no pressing need to do so, or much clear advantages.
8. What type of help does the project most need?
Evangelism, I'd say. And for ARM, extension maintainers.
Certainly we have the common need to all open source projects, documentation, which all forum users can contribute to (wiki logins are the same as the forum).