Ferdi SEVER's picture

Hello Friends;

I want to make new customized linux appliance via TKLDEV. I'm searching forums but i didn't found solution yet.

1.How can i customize first boot screen ( i mean setup screen Install, boot options and especially customized boot logo )

2.How can i install additional linux packages automatically on the setup process?

3. How can i add php extensions like zend,ioncube etc.. ?

Thank you in advance for your answers.

Regards;

 

Forum: 
Jeremy Davis's picture

You'll find this doc page provides links to all the different docs and sources of info.

In specific answer to your questions:
1) TBH I'm not sure... It's actually not documented AFAIK. I assume that you'll need to hack the cd files (if you follow the setting up docs in the full docs you should see what I mean.
2) Extra packages (assuming that they come from default repos) go in the plan.
3) Any other stuff that you want installed or configured goes into a conf.d script.

Reading all the docs and having a little play should make the 2nd 2 obvious. The first though will take a bit of hacking but I'm sure can be done...

Ken Robinson's picture

I too am tinkering with TKLDev the last 2-3 weeks. You just have to download it and hack away and read the docs, thats what did it for me. 

According to this document the cdroot has the cdfiles on them (To allow it to boot from CD). This would be files from /turnkey/fab/cdroots on the TKLDev app.

While I was hacking around I did find the logo file in PCX format at /turnkey/fab/cdroots/gfxboot-turnkey/isolinux/splash.pcx

Feel free to keep posting your questions. I'll help where I can 

 

Regards,

Ken  
":0)

http://www.github.com/DocCyblade

Ferdi SEVER's picture

Hello;

I don't want to use Turnkey Hub option. ( Because it's local development and not using internet access on the appliance ) Can we remove this option from install steps and new appliance? )

 

Jeremy Davis's picture

Assuming that my memory is correct, you should be able to remove/disable it pretty easily.
Ferdi SEVER's picture

Hello again,

I want to remove some packages from my build. How can i do this?
Regards;

 

Jeremy Davis's picture

So in conf.d (either include it in main or have a new script) use something like this:

apt-get remove --purge -y <package-name> <another-package-name> <etc>

This is off the top of my head so you may need to tinker with it a little. apt-get also accepts the -q (quiet) switch but that's probably overkill (as you'll probably want to see what it's doing). Also there is an environmental variable for apt-get (actually it's for dpkg but anyway...) which is DEBIAN_FRONTEND=noninteractive but as that allows you to skip install config screens I wouldn't think that there would be any value in setting it (although it probably wouldn't hurt either...)

FYI whilst this is a specific answer to a specific question; the underlaying theory can apply generally too. Anything you want to do, work out how to do it non-interactively from the commandline or a bash script (google is invaluable there) and add it to a conf.d script.

And another FYI: Generally something like the apt-get above would be fine going into the conf.d/main script, but if things get complicated it's nicer if you break it up into separate scripts. They will execute sequentially - in alpha-numeric order; e.g. 10first before 20second, ascript before bscript, etc.

Ferdi SEVER's picture

Thanks for helps Jeremy;

My thanks to you progressed quite. Could you please help last few thinks? :)

1. I don't want to use DHCP in the new deployment. How can i define static ip in configuration? For example : 192.168.x.x / 24 

2.How can i customize First Inithook ( root and mysql password defination screen ) I want to localize.

Ken, Also thanks for helps
Regards;
 

Jeremy Davis's picture

1. I know that this situation is slightly different, but essentially, it's like I said in my last post; anything that you want to do, you just work out a way to script it. Difference is that obviously you want to be able to get input this time.

Basically you'll want an inithook script to ask the IP and then set it. Currently the inithooks consist of:

Add new comment