Page 19 of 26 FirstFirst ... 91718192021 ... LastLast
Results 181 to 190 of 251

Thread: Is there a knoppix Web Kiosk?

  1. #181
    Member registered user
    Join Date
    Sep 2004
    Posts
    70
    I am Sooooo satisified to actually have the custom disk I need.

    I remastered Morphix Firefox LiveCD, vff4.iso . My requirements are that it boots quietly, runs a browser in full screen from my web server only, and reboots on exit.

    Getting the browser to take my custom prefs was a bit tricky. I chroot, apt-get remove mozilla-firefox. Then I downloaded Firefox 1.0 from www.getfirefox.com . The tricky part was that I had to install the firefox...gz to my dev workstation. I put it in the /usr/lib directory. I did a firefox -install-global-extension on autohide.xpi . I copied the complete /usr/lib/firefox directory to my morph_hd source /usr/lib .

    In order to get my prefs to take effect I had to wait until just before Firefox started up. Then create the user profile without actually starting the browser. Once that is done it is straight forward to append to the prefs.js file without messing anything up.

    Here is the firefox.sh script I ended up with.

    #!/bin/bash

    /usr/lib/firefox/firefox -createprofile morphuser

    FDIR=`ls -d /home/morph/.mozilla/firefox/*.morphuser`

    cat >> $FDIR/prefs.js << EOFP

    user_pref("browser.download.lastDir", "/home/morph");
    user_pref("browser.preferences.lastpanel", 0);
    user_pref("browser.startup.homepage", "http://my.website.edu/");
    user_pref("browser.startup.homepage_override.mston e", "rv:1.7.5");
    user_pref("extensions.autohide.bars.PersonalToolba r", true);
    user_pref("extensions.autohide.bars.PersonalToolba r.always", false);
    user_pref("extensions.autohide.bars.nav-bar.always", false);
    user_pref("extensions.autohide.bars.tabbar.always" , false);
    user_pref("extensions.autohide.bars.toolbar-menubar", true);
    user_pref("extensions.autohide.bars.toolbar-menubar.always", false);
    user_pref("extensions.autohide.closedFull", true);
    user_pref("extensions.autohide.context", false);
    user_pref("extensions.autohide.openNewFullscreen", false);
    user_pref("extensions.autohide.statfloat", false);
    user_pref("extensions.autohide.status-bar", false);
    user_pref("extensions.disabledObsolete", true);
    user_pref("extensions.lastAppVersion", "1.0");
    user_pref("intl.charsetmenu.browser.cache", "UTF-8, ISO-8859-1");
    user_pref("network.cookie.prefsMigrated", true);
    user_pref("network.proxy.ftp", "my.website.edu");
    user_pref("network.proxy.ftp_port", 80);
    user_pref("network.proxy.gopher", "my.website.edu");
    user_pref("network.proxy.gopher_port", 80);
    user_pref("network.proxy.http", "my.website.edu");
    user_pref("network.proxy.http_port", 80);
    user_pref("network.proxy.share_proxy_settings", true);
    user_pref("network.proxy.ssl", "my.website.edu");
    user_pref("network.proxy.ssl_port", 80);
    user_pref("network.proxy.type", 1);
    user_pref("xpinstall.whitelist.add", "");

    EOFP

    /usr/lib/firefox/firefox -fullscreen $1

    sudo cp /sbin/halt /home/morph/reboot
    sudo /bin/umount -l /cdrom
    sudo /usr/bin/eject /dev/cdrom
    sudo /home/morph/reboot -f

    #end of firefox.sh


    Because the Firefox LiveCD doesn't have a morph user profile for firefox until firefox is started the first time, it is impossible to append to the prefs.js file because it doesn't exist at any point before that. The way I did it lets me completly and reliably control the browser behavior. Note: I tried to use the "-p morphuser" command line option to firefox on the second execution so that the browser would be forced to use the profile I just created, but it seems that the -p option now causes the firefox script to attempt to run a ".pure" version of firefox. It looks like a developer feature for testing has been left in the distribution. I found that I didn't need to specify it as there is only one profile and firefox is happy to use it without complaint.

    p.s. morphix.org dev guys, should I cross post this to the morphix forum? Feel free to describe it in any firefox on LiveCD docs, etc..

  2. #182
    Senior Member registered user
    Join Date
    Apr 2003
    Posts
    220
    you always have /etc/skel/...

  3. #183
    Junior Member registered user
    Join Date
    May 2004
    Posts
    21
    Steve, good work man! Is the .iso available for others to check out? Your skills are way beyond mine, but I'd like to see the finished product. Maybe that will help me along.

    Ghandalfar, what do you mean by "you always have /etc/skel/..."? May be a dumb question, but you never know until you ask.

    Thanks,

    Bob

  4. #184
    Senior Member registered user
    Join Date
    Apr 2003
    Posts
    220
    >> Because the Firefox LiveCD doesn't have a morph user profile for firefox until firefox is started the first time, it is impossible to append to the prefs.js file because it doesn't exist at any point before that.


    You can alwasy append it to /etc/skel .. it's the same as /home/user/morph , it just exists all the time (and gets copied to morph user at some point)

  5. #185
    Member registered user
    Join Date
    Sep 2004
    Posts
    70
    Ah, but the important part is that it gets copied 'at some point'. If you try to copy the prefs.js or append to it in /home/morph/.mozilla/firefox you will actually end up creating all the directories from .mozilla down and they will have root owner and group. When Firefox starts up and tries to access the morph profile it will act like the profile is already in use and you won't be able to do anything. You can't use the existing modified profile and you can't create a new one because firefox running under user morph does not have permission to write to those directories. You can put a script in /exec to change the owner and group but now you are talking about placing the whole user profile there. It added about 15 to 20 seconds to the boot time to copy the whole profile to /home/morph/.mozilla and you will also have to make the profile on your workstation first. That means creating a user morph, logging in as morph, start firefox to get a profile created, then copy it to the distro /copy directory. You will have to run a script to change the owner and group, etc. The easiest reliable solution is to have firefox create an initial profile, modify it however you want, then run firefox.

    I tried putting the profile in the /home/morph directory of the source but it wasn't there after the CD booted. I guess the overlay filesystem doesn't include the /home directory. I was reading about cowloop being able to overlay the whole file system and allow read access to everything and store writes on the ramdisk but I don't think it is released on LiveCD yet. I could be wrong and also I don't know much about it.

  6. #186
    Member registered user
    Join Date
    Sep 2004
    Posts
    70
    The iso I made has my secure testing server URL embedded in the prefs. It also reboots the computer after using Firefox one time. This isn't a general purpose type iso and it wouldn't run outside of my university intranet.

    The part of my post that is of paticular interest is adding to /usr/bin/firefox.sh the call to firefox with -createprofile, changing the prefs.js file, then calling firefox to run as a browser. The first two can be put outside the loop block in the firefox.sh script (as written by Ghandalfar).

    Adding the autohide.xpi extension was done manually. If you want a LiveCD with your own extensions, you will have to do more than talk the talk. Get into the Firefox and Mozilla installation and operation docs. Also, the Morphix all.pdf doc explains all you need to know to undo an iso, change it, iso'fize it and burn it to a CD. I started 6 months ago without a clue. It was weird and tough at first. I kept hovering around the docs afraid to actually try anything. My first attempts were horrible. Eventually I started to get the hang of it. You can do these things too. Just take your first step.

    The reboot on terminate is pretty basic chroot on the source, apt-get sudo and eject, and add the lines as in my previous post but I can't imagine why anyone would want that in their distribution.

    Ghandalfar, if there is a lot of interest in userprefs, maybe adding to your distribution where the users prefs are put into a file called ffuprefs.js in the /copy directory with the path /copy/home/morph/ffuprefs.js . Add to firefox.sh a check for this file and if it exists have firefox create the profile, modify the prefs.js with the contents of ffuprefs.js and then go into the loop block. I think files in the /copy directory end up as root owner and group but have other as read only so it should work. On the other hand, anyone who can take apart the distro can make the changes directly and either way they would have to take the distro apart to add user prefs.

    I just realized that the ffuprefs.js thing might be a good idea after all. Undoing the iso to add a file to the /copy directory is easier than also having to undo the mainmod to edit the firefox.sh file. It would save having to re-compress the mainmod which is more time consuming than building the iso for burning.

  7. #187
    Junior Member registered user
    Join Date
    Jan 2005
    Posts
    11
    Quote Originally Posted by Steve F
    Ah, but the important part is that it gets copied 'at some point'.
    AFAIK The point of /etc/skel is that it is the basic file system that is created as /home/<user>/
    so if the /home/morph does not exist but is created at boot time it should be created from this.

    Also if the /copy dir is coppied to the root file system before the ~morph dir is created (which I'm guessin is the case from your comments) then files in /copy/etc/skel should get coppied to /etc/skel and then to /home/morph when the users home dir is created.

  8. #188
    Member registered user
    Join Date
    Sep 2004
    Posts
    70
    Ah, I get your point. The correct way to populate a /home/user directory from the CD /copy directory is to put it is /etc/skel. It will be copied as part of the boot process and before the application is run.

  9. #189
    Junior Member registered user
    Join Date
    Jan 2005
    Posts
    11
    I've only just started looking at creating LIVE CD's but thats what I would expect to happen.

    By the way, Whats the best way to edit the ISO to get files in to the /copy dir??

  10. #190
    Member registered user
    Join Date
    Sep 2004
    Posts
    70
    Regarding the /copy directory, on vff4.iso if I put any file there, the boot process creates an X lock file to delay X from starting until the copy (and I guess /exec) are completed. Even with a very small file this added about 10-15 seconds to the boot time. The idea of putting many megs of firefox profile first in /copy to be copied to /etc/skel, which will then be copied a second time to /home is less desirable (provided of course there is better way). With the firefox profile, since is doesn't exist until the first time firefox is run, trying to modify or replace the prefs.js will cause firefox to misbehave when it starts. You would have to copy a complete profile to get it to work correctly.

    On editing ISO's, there are some very good interactive scripts like iBuild and TROM. I prefer working with the details first so I can understand what is going on 'under the hood'. The document All.pdf on the morphix.org or wiki site is where I learned the commands and their options for uncompressing an ISO, uncompressing the mainmod, making changes, then compressing everything back up to a single ISO I can use with Roxio to write the CD. I tried using canned build scripts for KNOPPIX, but like the linux distributions, sometimes there are version dependencies and the scripts haven't been updated to work with the latest ISO. Trying to fix somebody else's scripts without a solid understanding of the basics of remastering or the specifics of that distribution can be very, very frustrating. I have had the most success by building up my own scripts from the basic commands and adding the specific customizations I want on a specific ISO version. When a new ISO is released, I copy my scripts to a new work directory for the new version and run/debug the scripts until they work correctly for that version. Anyway, that's what works for me.

Page 19 of 26 FirstFirst ... 91718192021 ... LastLast

Similar Threads

  1. knoppix for kiosk, how?
    By pinoylinux in forum General Support
    Replies: 2
    Last Post: 01-05-2005, 11:52 AM
  2. Kiosk Hardware
    By dragonwheels in forum Hardware & Booting
    Replies: 1
    Last Post: 11-22-2004, 07:17 PM
  3. hd-installed knoppix with kiosk mode twm
    By Eero in forum General Support
    Replies: 1
    Last Post: 09-29-2004, 01:23 AM
  4. Kiosk
    By sn0wflake in forum General Support
    Replies: 3
    Last Post: 12-05-2003, 04:13 AM
  5. Kiosk Knoppix for public libraries.
    By adamm in forum Customising & Remastering
    Replies: 30
    Last Post: 06-13-2003, 09:12 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  


Dell PowerEdge HBA330 LP PCI-E 12GBs RAID SAS Controller Adapter J7TNV picture

Dell PowerEdge HBA330 LP PCI-E 12GBs RAID SAS Controller Adapter J7TNV

$18.95



Broadcom MegaRAID 9480-8e Fujitsu PRAID EP540e SAS RAID Card (Replac 9380-8e) 8i picture

Broadcom MegaRAID 9480-8e Fujitsu PRAID EP540e SAS RAID Card (Replac 9380-8e) 8i

$228.00



G-Technology G-SPEED Studio XL 48TB Thunderbolt 2 Storage - Housing Only picture

G-Technology G-SPEED Studio XL 48TB Thunderbolt 2 Storage - Housing Only

$200.00



OWC Mercury Elite Pro 2 Bay RAID Enclosure with USB 3.2  for Dual 3.5 inch HDDs picture

OWC Mercury Elite Pro 2 Bay RAID Enclosure with USB 3.2 for Dual 3.5 inch HDDs

$87.99



Broadcom LSI 9305-16i 12Gbps SAS-3 PCIe x8 HBA 16-Ports Raid Controller picture

Broadcom LSI 9305-16i 12Gbps SAS-3 PCIe x8 HBA 16-Ports Raid Controller

$64.99



LSI 9305-16i SATA SAS 12Gbs Controller card PCIe 3.0 IT-Mode w/SAS SATA cable US picture

LSI 9305-16i SATA SAS 12Gbs Controller card PCIe 3.0 IT-Mode w/SAS SATA cable US

$111.30



Inspur LSI YZCA-00424-101 Raid Card 12Gbps HBA HDD Controller 9300-8i picture

Inspur LSI YZCA-00424-101 Raid Card 12Gbps HBA HDD Controller 9300-8i

$16.99



WAVLINK RAID 2 Bay Hard Drive Docking Station SATA 2.5/3.5'' SSD HDD Enclosure picture

WAVLINK RAID 2 Bay Hard Drive Docking Station SATA 2.5/3.5'' SSD HDD Enclosure

$119.99



Intel VROC Premium RAID Controller Card PCIe Add-On Module VROCPREMMOD picture

Intel VROC Premium RAID Controller Card PCIe Add-On Module VROCPREMMOD

$265.00



Areca ARC-1882IX-24 (16i4e)24-Port RAID Controller Card w/BBU /HDD Monitor Board picture

Areca ARC-1882IX-24 (16i4e)24-Port RAID Controller Card w/BBU /HDD Monitor Board

$202.46