m3ch4n15m's picture

I must say, Turnkey linux is amazing. For someone who wants to be on top of things server-wise, learning linux is key, and well, having access to software that works the first time around helps a whole let and makes troubleshooting a little less of a headache.


And to help you with with "future" appliances , I offer these three suggestions.


1) File server/print server. I am a bit surprised that it wasn't done already, since Ubuntu server edition actually offers samba as an option. But with the turnkey concept, it would make it even more user-friendly. Also, perhaps even throw in Icecast and make it into a media server?


2) Webcam server. Although Linux and webcams aren't exactly in love with each other, this could be a nice alternative to some commercial network cams who have the unfortunate habit of been hackable (in the bad way) I.E. www.metacafe.com/watch/327094/google_hacking_how_to_watch_and_control_webcams_videotutorial/ . So to have that in linux could make it perhaps more secure and scalable?


3)Primary Domain controller. Although it could be done with Ubuntu server edition, it would be nice to be able to set up an entire domain with just a live CD in case of an emergency. Just a few clicks and done.


Thanks and keep up the good work!!

Liraz Siri's picture

Thanks for the encouragement!

Regarding your suggestions. A NAS-type appliance is already high on our todo list. As is a PDC type appliance. Samba can serve as the basis for both but the default configurations are quite different. I think whether to make this one appliance or two will mainly revolve around usability.

I'm less familiar with the printing side of Samba so I'd have to take a closer look at that to know if its a viable candidate for a new release in the near term.

Also thanks to one of our more industrious community members (szczym), we're working on a new video podcasting appliance that I'm really excited about. Perhaps Icecast would be a good feature to add to that. See "Configuring Samba for a new video publication appliance".

Your idea for a webcam server is very interesting. We hadn't considered that application before (or done any research on it). Any help the community can provide regarding the integration details would be very helpful. Meanwhile, I've added it to our todo list and will be taking a closer look soon.


aplatypus's picture


I also think there are some great ideas in this post.  That said not everyone will want a "web cam" or "widget x" something they need.  I also like the simplicity of a purposed appliance and don't like the idea of a Swiss Army Knife appliance that "does everything" ... are there other ways?

One I thought I'd post is to consider some kind of "plug-in" structure or "option up" from the appliance boot menu.  Such things as a print server could be listed in an options menu.

I think it might be desirable if 3rd-party plugins were feasible too.  Something like a TKL-marketplace for instance where one might download "plugins" that will work with the TKL core or appliance configuration from a repository. 

Ultimately that might mean 'appliances' can be thought of as back-bones that can have extras.  Keeping the main appliance simple and still allowing important extras like a print facility, FAX service, email, etc.

two-cents from,


Jeremy Davis's picture

I agree and we don't really want to go down the path of "Swiss army knife" style standalone appliances.

Under our current model, the closest way to achieve what you suggest is using some sort of higher level hypervisor or container host (such as our LXC appliance or a hypervisor such as Proxmox) and install separate TurnKey appliances for each purpose (although we don't currently have some of these appliances).

Eventually we will move to a containerized model which we have already started work on. It's been tagged "TKLX" (you can get some hints about it from this blog post or looking at the code on GitHub).

The idea is that TurnKey will then only produce a single base appliance and provide some sort of agent. Then the user can add "roles" or "functional components" (each contained within their own docker style container) in a granular way to provide all the services that they wish to use. That will essentially provide the plugin sort of nature that you are suggesting.

The idea of providing an "agent" means that you won't even need to be running a TurnKey server to use TurnKey. You'll just need to install the agent and add the components you wish. Once Docker is natively supported on Windows (if it's not already?) we may even provide a Windows agent?!

aplatypus's picture

G'day Jeremy,

Thanks for that helpful response.  To address one of your points, one of the key reasons I'm asking these questions it that Docker 1.3 for Windows is a 'native'; but using it means you MUST reboot  to use VirtualBox or VMWare.

Jeremy Davis's picture

I didn't realise that Docker on Windows had progressed so far!

TBH though. Since I switched to Debian full time, (about 3-4 years ago now) there's no looking back! I do still have a Windows partition but it runs slow and is a little unstable at times (OEM Win 7 on Gen 1 Lenovo X1 Carbon). Debian runs like a treat. And I don't need to reboot to use Docker and VirtualBox at the same time! ;) Anyway, enough of my fanboy-ness! :)

Seriously though, for me, needing to reboot to use a VM would be a deal breaker. If I were you, I'd rather have a headless Linux VM running with Docker installed. The overhead of a single headless Linux VM is minimal. You can do some cool stuff with VirtuaBox; things like script your VM to run as a background service.

cboecking's picture

I would like to put a vote in for a primary domain controller iso. It has been written multiple times that the config for such a setup is challenging and multifaceted as compared to windows. We need to update our domain, and I am currently looking for a solution. I would love to be able to drop in a DC as a VM.
Jeremy Davis's picture

I think a PDC appliance would be fantastic! I think for the sake of completeness it may be good to include file & printer serving in that appliance. Although in my opinion, using separate VMs (even on the same hardware) for each appliance is not an unreasonable plan. A Linux based VM DC would be awesome.

I have been really busy lately and haven't been able to spend much time on other projects, but I am very keen to work out how the ISOs are put together and do a bit of dev work to share with the community. I know there is a fair bit of info available here.
Liraz Siri's picture

The ISO is just the packaging. Putting it together is usually the last thing we do. We have some links on the wiki about that, but it's really not that critical a part of the development process. You don't have to know how to do that to get involved in appliance development. All you have to do is install TurnKey Core into a virtual machine and then research the integration details, test that it works and document the process.

See community development page for details.

m3ch4n15m's picture

I think combining this with the proposed NAS would be the easiest approach.

Anyone who has ever had the fun of configuring a PDC in linux will find that when configuring the samba.conf, you have much more control.

Mind you for small businesses who don't have IT personnel but have need of that level of security that a domain provides, some point and click interface with some pre-made configs would be just awesome.

What would be the most basic samba.conf for a PDC? Any ideas?

Jeremy Davis's picture

I just had a quick Google and it seems that there is a fair bit of info out there on setting this sort of thing up. I am very keen to get to work on it, but just haven't got the time at the moment...... Soon I hope!
cboecking's picture

I would join a group to help move the project along. I can devote 3 to 4 hours per week on the project. I have two issues to solve (1) NAS (more specifically SAN or iSCSI between two VMWare servers) and (2) PDC.
m3ch4n15m's picture

I too could dedicate some time, although I fear it's a bit erratic with the summer and all, but I will offer my experiences with what is being done. I know I will be downloading core this week-end and start plinking away at it, and see if I can't remaster it into a basic NAS/PDC. If my experience with Ubuntu server edition serves me correctly, this isn't too complicated, just a matter of knowing which package to download.
Alon Swartz's picture

Thanks for all the encouragement and initiatve to help out. I would recommend all those interested subscribe to the relevant blueprints to get updates and so we can coordinate development.

If you already have notes that could assist in development, or could sketch out the required spec, please update the development wiki.
Timothy's picture

Could you Install Samba 4 Onto the Turnkey Domain Controller Appliance? I would like this installed on the Live Installer, and onto the Turnkey Domain Controller Appliance, and also I use your Turnkey Domain Controller Appliance on my home network, and I have to say that the Turnkey Domain Controller Appliance is the best lightweight way to use samba without even installing Linux yourself first

m3ch4n15m's picture

Amazing. In March I make a suggestion. 9 months later, I get not only a PDC, but a fileserver.

Gottah love the open-source movement.

Just amazing. After testing it I was estatic. This is perfect for small businesses and non-profit organizations (Which I cater to). This makes it much much simpler.

And it makes a great tool.

Now for you code-munchers out there, here's a challenge. Try to put Turnkey linux, on a Compact flash card so that with a a CF to IDE/SATA adapter, you end up with a home-grown solid state device and a near industrial-class appliance.



Jeremy Davis's picture

but along similar lines, check this out, pretty nifty!

Guest's picture


I've looked at the major NAS manufacturers (don't want to list them) and I like their software suites (if that is a good term). From what I've seen offered here I believe a NAS Appliance could be made that would litterally make their suites seem weak by comparison.

An alternative NAS software suite I believe would really help those building their own.

Just my thoughts.

Alon Swartz's picture

The closest appliance we current have to NAS is the File Server appliance. What would you change/add to make it fit your needs?
Guest's picture


What I see was/is something like QNap/Synology/Thecus offer as an all in one.

Include PHP and MySQL (LAMP) to allow website hosting. Some form of eMail server as well - must be able to specify ports used due to some ISP's blocking ports - NO NOT for spamming.

Something to include Audio/Video/Photo servers.

DLNA media servers for the Xbox/PS3.

Allow for users to pick and choose what appliances they want to install. Granted this would be for more for real hardware use rather than virtual use.

All I can suggest is look at what the NAS makers above offer in their units and go from there.

I see the value in what specific appliances can do - but we also tend to group appliances together as well, take a kitchen as an example.

With what I see here I believe the makings are here to do this and possibly be many steps ahead of  the manufacturers.

Just my observations.

Thanks for your time.


Liraz Siri's picture

There has been some discussion on the forums (and the development wiki) regarding developing a meta-TurnKey appliance that can run other appliances. I think that would be a great idea, it's just something that needs to be experimented with to figure out what the best combination of software is. As always help from the community would do a great deal to push things forward.

Even if you are not a developer there are quite a few other ways to help (see the community development section).

The same applies for the other features you mentioned. For example, I don't have an XBox/PS3 handy for testing so someone it would help if someone that does would pick up the gauntlet.

Neil Bird's picture

I would love to be able to combine some features from the various virtual appliances as needed.  For example, I have an old server at our church and wish to upgrade to a turnkey solution I am currently testing a couple of appliances in virtual box and certainly like what I see,  but alas, nothing is quite what I need or have in mind.  

wish list:  web server, mail server/groupware, video stream, file server,  mp3 streamer/jukebox and lastly a good CMS to replace the basic pages.  Gasp.. and I would love to add an e-learning tool for study group leaders to produce learning tools.  Although this sounds like we would need multiple machines, the load is (currently) quite low and my personal budget would be for one machine.  The ability to combine appliances would allow me to present ideas, even if they end up as dedicated appliances down the road.

I am not an expert by any means with linux, but know enough to realize your approach is most valuable by providing a way for guys like me to offer service and support to non-profit entities. 

I would love to base our replacement on a turnkey solution but would like to be able to add the extra packages we need, without breaking the turnkey standards in configuration.  I suspect that we could apt-get the packages, but I know I would make errors and am just not that well versed with linux to be able to do it easily.  It would be nice to know that if I use a turnkey virtual appliance to test, that it would be the same if I added the extra package to the meta-appliance.

On the plus side, this would also allow us to introduce quite quickly a dedicated appliance if the need arises ... and no re-learning... I would certainly test a meta-appliance and offer feedback if needed.  as long as my 4 boys give me the time :)

Cheers! and great job on what I have seen... I know I will be introducing these appliances at work also.

Guest's picture


It is good to see there are others intrested in doing the same type of things.

I imagine each application requires different modules (kind of like DLL's in Windows) and to optimize each application would require knowing which modules to load and unload as the application were open/closed.  And as I may have mentioned before I see this application as running on real hardware as opposed to virtually.

Now my son and I could attempt the PS3 usage side, though he has no expierience with that side either. We know though no vital data would be used to test this out.

Now as far as what "the best combination of software" is - I could not even begin to say. Particularly with all the different pieces out there. I am a user of lesser known products which do the same or better job as the major commercial offerings. So something that may not be widely known but works well, will work for me.

Take Care and Enjoy

Jeremy Davis's picture

The vision that I have - which is (at least in part) shared by Liraz and Alon - is of an TKL OS that ideally installs to bare metal and contains a hypervisor type Virtual Environment (think VM ESXi etc) and basically nothing else. Please feel free to read about these ideas more and contribute too over on this thread.

This then forms the basis for a single appliance that is completely customisable by installing individual TKL (or other) 'modules' (appliances as VMs) to fullfill the required functions. There is a level of redundancy with this method but it will also ease requirements for maintenance, upgrade/update, reliability (of install & setup) and scalability will be drastically improved. Also support requirements will be minimised and backing up individual appliances will be very easy. Upgrading appliances will be as simple as installing the new version and migrating your data across.

As for PS3/XBox360 connectivity have a look at MediaTomb. There is an old tutorial here which looks useful if you'd like to have a play. I'm pretty sure I built one on TKL LAMP and it worked great (sorry I probably should have shared that with the community - I'll see if I can find my notes on my home wiki and share with others).

MediaTomb will stream audio and video to PS2, XBox360 and most other uPnP enabled devices (including Vista Media Centre and XBMC). VLC will also play the files but I could not find an easy, nice way to do that (involves a little copy and paste of address in the VLC interface). As I don't have an Xbox or PS I have scrapped this because it doesn't work with my Wii (as I had read but had to find out for myself). Interesting project never the less!

If anyone knows of a (preferably OpenSource) Linux Media Server that will work with a Wii I'd love to hear. Thanks

Neil Bird's picture

Thanks for the thread link.  That would be a fine solution also.  Hmmm, virtual server appliance.  I like that. 

I would still however like to see modules that subscribe to TKL methods/standards so that rather than adding a new server the module could be added (in such a way as to be configured the same as the stand alone TKL servers)... in my case it would allow for proving that it is worth the investment for the church body.



Stas Grishin's picture

I'm new to TKL, well Ubuntu in general (CentOS user currently) and this is my first post. This was one of the first things I thought of when I saw TKL. I currently run CentOS with VMware Server but I am planning to switch to TKL Core and VirtualBox with a web interface. I also have a few more ideas for TKL appliances that I'd like to make.

If I am successful, I will try to either make patches if I can figure out how, or I will post instructions for others to follow. Nothing like necessity for motivation. I want to switch to TKL/VirtualBox ASAP so I hope to be able to come back and post something useful by the end of January.

Liraz Siri's picture

Then post your experience on the forums and we'll try to help. Supporting community development is one of those types of things the core team is very enthusiastic about because we believe that would be an awesome way to add much needed development resources to the project sooner rather than later. A thriving development community can do wonders for any open source project.
Jeremy Davis's picture

Until this proposed TKL Meta Core is developed, I find Proxmox hard to get past (sorry to everyone who has already heard on multiple occasions how much I love it). I think it makes an ideal platform for development.

Its Debian x64 based so you need x64 CPU support. Also if you plan on using KVM you will want a CPU that supports Virtual Extentions (AMD-V/Intel VT). I have read that it actually requires this, but but prior to installing to bare metal, I installed to VM (in VirtualBox if I recall) and it ran fine. I'm pretty sure VirtualBox doesn't emulate this CPU function so it should still work.

The Devs state that it is focused on enterprise use but I find it works great for me. I installed 1.3 from CD (downloaded iso) and have since upgraded to 1.4 (via apt-get upgrade) and it has been brilliant. I borrowed a video card just for install and ever since it sits headless in the corner. I access and administer everything via any computer (web browser) thats connected to the LAN. I have a number of TKL servers and a Windows machine running on it.

The UI is a little old school looking, but its very "no frills" functional and pretty user friendly. It also has a Java based VM VNC console which works quite well, although is a little laggy with Desktop OSs. I found that using Remote Desktop (for Win machines) works much better.

The only modifcations I made to it was installing Webmin - it has some pretty cool clustering tools too which is handy for administering multiple machines - that'll be handy in TKL Meta Core for sure! Proxmox already has SSH and SFTP setup default as far as I recall. As its Debian based, if you've got your head around TKL/Ubuntu it's not that different if you want to customise it. Although personally I prefer to set up container (OpenVZ) VMs for extra functionality. This means that the likelihood of updates/upgrades going trouble free is increased and allows me to play freely when investigating/testing new functionality. If I make a mess of anything, I can hose it down and start again without destroying anything important or requiring an OS reinstall.

Stas Grishin's picture

So I ran into some problems. I was hoping to use vboxweb (http://code.google.com/p/vboxweb/), but from what I understand it requires the VirtualBox SDK which has a proprietary license. I am not a lawyer, but I from what I understand, it would mean the appliance would not be permitted for commercial use. Either way, I would rather not deal with that headache. I tried installing it anway to see if I can and always ran into issues. I am reconsidering the virtualbox route.

I read the TKL Meta Core stuff and it looks interesting. I have always used VMware or VirtualBox, but I'm interested in seeing what develops. I wouldn't mind helping if I can. I have just never used the other programs.

For now I think the easiest thing to do would be just to install VMware Server on TKL Core. The license is not fully GPL but I do not think it restricts commercial use (any lawyers here?). Either way it does restrict redistribution. This means a pre-built appliance would be out of the question, but maybe a script to execute a pre-downloaded installation file and configure it on first boot?

This is for my personal server at home, but I know that others here need something for non-personal use.

Any thoughts?

John Carver's picture

"The generation happens based on the VirtualBox API description (a custom XML format) and in order to make things simpler, we decided to checkin both the generator and the generated code to avoid any kind of dependency on the VirtualBox SDK."

See http://vboxweb.blogspot.com/2009/08/architecture-overview.html

Information is free, knowledge is acquired, but wisdom is earned.

Guest's picture


As for the Wii I stumbled on to this link - http://www.greenpixels.com/articles/features/1719/How-to-Stream-Media-to...

Looks as though it should work.

Have looked at MediaTomb but not closely - and like all reviews there is always a love/hate with everything, so it needs to be looked at fairly/openly.

I guess what we are looking for is something to run on bare metal and allow us to pick and choose the appliances we want to use. At least that is what I am looking for.

It might take having just a core and then the appliances separate to accomplish this. I see it as creating a whole new category for TKL - call it for lack of a better idea - TKLBMNAS - TKL Bare Metal NAS

Just my thoughts.


Jeremy Davis's picture

I have looked at TVersity already and it looks very nice, but unfortunately it only runs on Windows. The Devs have mentioned that a Linux port is somewhere in the pipeline but that has been the case for years and still no port. As I have a (VM) WinXp running on my Proxmox server I may just go ahead with that but I really would much prefer to build a Linux based Media Server. Ultimately I would like to use Linux for everything but there are still a few apps that I use that are only available for Win - perhaps media streaming to the Wii will be another of those .

MediaTomb is not as polished as TVersity looks but it is  quite functional - although I only tested it with XBox360, Vista Media Centre and XBMC (installed on WinXP). It worked fine, it didn't really fullfil the dreams I had. It was fairly easy to set up with quite a few straight forward tutorials around.

Guest's picture


I've read through and have started to "play" with the File Server and the LAMP Server editions of TKL.

To go along with this I've mentioned a full blown NAS.  What I see here in the appliance offerings is very very close to what I have envisioned the NAS TKL may look like for me.  And I don't know if NAS is a proper term to use with this type of a build, but from what I've seen of the NAS manufacturers they include a lot that really does not qualify as a true NAS. Though at least one of the manufacturers will not honor their warrenty if you go into the root of the system and change the config of the system. That is why I'm looking hard at TKL doing this. I believe TKL could and will beat them at their own game. 

Use the TKL core to start, then allow us to pick and choose what appliances to add to the core. Now the appliances may need to be reworked so that the only things needed are what the appliance needs above and beyond what the core already has. In my thinking the appliance would end up being much smaller in file size since the core is NOT included.

Some other things I would like to see added to the bare metal box then would be RAID support, backup support, I've mentioned the DLNA uPNP before, power settings to turn off the box, drives and so forth along with wake up, and reboot on a schedule. Some of this may already be in TKL core, as I have not looked through everything.

Just my thoughts.


James Drew's picture

Hay take a look at openfiler.com to check out a fairly good implimentation of a fully blown NAS appliance.


Add new comment