Thinstation / thinstation

A framework for making thin and light Linux based images for x86 based machines and thinclients.
https://www.thinstation.net/
804 stars 187 forks source link

3rd Party Package Installation Errors #753

Open Theknight2015 opened 1 year ago

Theknight2015 commented 1 year ago

I have recently found Thinstation as a possible solution to thin client remote desktop protocol for remoting into Windows PC's on a domain joined network for a proof of concept test on a organizational network infrastructure. My problem is, I'm trying to find a RDP package that will connect to windows 10+ versions that can be added to Thinstation as a package.

I have tried to use several of the basic built in packaged like freerdp and rdesktop but for some reason freerdp does not show on the client side and rdesktop does not allow a connection to anything. There are errors every time. Same for the VNC viewers. I was able to get a package for ThinLinc going after changing the built in URL to the correct URL but it also does not allow the connections due to certificate and authentication errors.

I tried installing Remmina by adding it to the build.conf file and the build URL file and it launches on the dev station when trying to build the client (I don't think it is supposed to do that) but doesn't show up in the client build once booted.

I'm also doing all of this over PXE boot through the lpxelinux and lpxelinux.0 files

My main goal is to figure out how to install Remmina or something similar to it so that it displays on the client side and can be utilized for RDP connections. I would also like to have 2 icons - 1 to connect to one server and a 2nd to connect to another server so that the end user who may not be technically inclined is able to simply click on the icon they want and it open the corresponding server in RDP.

I'm open to suggestions on what programs to use as well. I would like it to be a seamless experience that once the thin client boots up, it is as simple as picking the right server and getting to work.

Any help would be greatly appreciated and I will provide any information needed.

Build.conf file entry - package remmina # Remmina Client buildurl file entry - param remmina https://www.mizrahi.com.ve/crux/ports/#remmina remmina

Using the build function from the start menu on the dev station, build starts, adds modules, firmware and packages then adds packages to file tree. During file tree process, Remmina opens on Dev Station (Probably Not Supposed To Do That) and install continues to completion. Boot up client using PXE and client boots fine. Once on desktop, Thinlinc, chrome and firefox are all enabled so they show up but Remmina does not show up and is not listed in the applications menu.

Thanks again in advance for any help.

Thinstation commented 1 year ago

https://github.com/Thinstation/thinstation/wiki/Certificates

Theknight2015 commented 1 year ago

Just to clarify, this is to add the Host certificate of the RDP client to the RDP sessions of FreeRDP, Rdesktop and VNC correct? Or does the certificate process allow me to install Remmina and the certificates are why Remmina isn't actually getting installed? Apologies if this seems low level for you. I am just now getting into Linux systems and Thinstation.

Thinstation commented 1 year ago

This is to add a CA certificate to a system wide resource. ThinLinc will pick this up. FreeRDP will pick these up. RDesktoP won't. Remmina is already a standard package for ThinStation. You don't need an RPM or a build url. Just add package remmina to build.conf

Theknight2015 commented 1 year ago

This is to add a CA certificate to a system wide resource. ThinLinc will pick this up. FreeRDP will pick these up. RDesktoP won't. Remmina is already a standard package for ThinStation. You don't need an RPM or a build url. Just add package remmina to build.conf

I was actually able to figure that out after my last reply. I appreciate your help. I now have Remmina working on the client through PXE boot. My next 2 problems are the thinstation.conf.buildtime and the build.conf files. According to the instructions within the thinstation.conf.sample file, I should be able to use that file for configuring thinstation. My problem is, when I change thinstation.conf.sample to thinstation.conf.buildtime or thinstation.conf.network, I get the following errors-

When changing to thinstation.conf.buildtime from thinstation.conf.sample - On boot, I get error ".lib is not mountable" and it drops to shell with no boot (I checked with both Network manager and Autonet independently after building both times and it still does it on both) When changing to thinstation.conf.network from thinstation.conf.sample - On boot the operation appears to work because the thinclient boots from PXE but it does not actually use the thinstation.conf.network file for any config options. I know this because the only thing I changed was the screen blackout time.

Any additional help on why this would be ignoring .network file placed in /thinstation/build or why the .buildtime file when overwritten by the .sample file causes a boot failure? I'm guessing I'm missing something in one of the files but I can't tell what. And just to be clear, the only things I'm changing in the .buildtime and .network files no matter which way I go with Network Manager or Autonet in build.config is the screen blank time. Maybe there is a link of some sort I'm just not understanding or missing?

I thank you in advance for any assistance you may provide.

Thinstation commented 1 year ago

thinstation.conf.sample is like every possible setting that could be applied to a build. I doubt it ever worked as an actual config. Best to just use it for reference. set NET_FILE_ENABLED=true in .buildtime, and include package netfiles in build.conf. Your .network file will need to be readable under your tftp folder structure. Check logs to see where things are being hunted for.

Theknight2015 commented 1 year ago

thinstation.conf.sample is like every possible setting that could be applied to a build. I doubt it ever worked as an actual config. Best to just use it for reference. set NET_FILE_ENABLED=true in .buildtime, and include package netfiles in build.conf. Your .network file will need to be readable under your tftp folder structure. Check logs to see where things are being hunted for.

Maybe I'm not understanding correctly so I tried 2 different things.

First: The original thinstation.conf.buildtime file does not contain the option NET_FILE_ENABLED=XXXX but it is in the thinstation.conf.sample file. When I use the thinstation.conf.sample file and rename it to thinstation.conf.buildtime and build the images I run into the issue of it not working correctly during boot. I get the error of "/lib is not mountable" I tried setting "NET_FILE_ENABLED=true" in the thinstation.conf.sample file and renaming it to thinstation.conf.buildtime - I then got the error of "/lib is not mountable" and right before that screen a quick flash screen of an error of "could not retreive global config file". After that I copied the original thinstation.conf.sample file (Not the one with modified NET_FILE_ENABLE=true) and renamed it thinstation.conf.network and gave read, write and execute permissions to it in the /thinstation/build/ directory for all users. I also had the original thinstation.conf.buildtime file. It does not pull any settings from the thinstation.conf.network file.

Second: After confirming all of this, I added the "NET_FILE_ENABLED=Off" parameter from the thinstation.conf.sample file to the original thinstation.conf.buildtime file and changing the parameter to "NET_FILE_ENABLED=true" like you suggested. I did this on the stock thinstation.conf.buildtime file hoping that I was just misunderstanding the original solution and that once I did this it would pull from the modified thinstation.conf.sample file that I copied and renamed to thinstation.conf.network. Unfortunately it does not. After doing that I tried simply copying the settings I wanted to change from the thinstation.conf.sample file to the thinstation.conf.buildtime file and again I got a "/lib not mountable" error due to those parameters not being able to be read in that file I'm assuming.

I'm guessing I'm not modifying the correct .buildtime file and that maybe there is a different .buildtime file somewhere that you are referring to and I'm just unaware of it? Or maybe there is a broken file structure with my Dev Station install? I'm really at a loss of what to do at this point.

I have attached 3 files in a .zip archive with this reply:

Again, any help would be much appreciated and I thank you for taking the time out to look over this.

Config Files.zip

Thinstation commented 1 year ago

Not gonna open zips.

Theknight2015 commented 1 year ago

Not gonna open zips.

How would you like me to send them? GitHub says it won't allow me to upload them directly because they aren't a supported file format with their file types being .conf, .buildtime and . network

Thinstation commented 1 year ago

They are text files, you can cut and paste.

Thinstation commented 1 year ago

drop SCREEN_RESOLUTION, pipes are no longer supported.

Thinstation commented 1 year ago

also, thinstation.conf.sample is irrelevant, don't ever send that.

Theknight2015 commented 1 year ago

They are text files, you can cut and paste.

Okay, I'll post tomorrow when I get back to the dev station. I appreciate the info. I'm begining to think I have an outdated version and may need to just start from begining. I'll update tomorrow.

Thinstation commented 1 year ago

I can't keep all the documentation up to date. That would take an army, and free'dom does not command that.

Theknight2015 commented 1 year ago

I can't keep all the documentation up to date. That would take an army, and free'dom does not command that.

My apologies, I did not mean to imply that you aren't doing a fantastic job. I simply meant I'm begining to think I have an outdated/older version of thinstation. I do not believe I have 6.2.13 as the about section of the Dev station only says 6.2 and no additional info.

Thinstation commented 1 year ago

The code is the most current logic. Help and text are likely out of date. I don’t have the resources to convert every code change into a document update. I rely on users to make those changes.

On Tue, Nov 8, 2022 at 6:26 PM Theknight2015 @.***> wrote:

I can't keep all the documentation up to date. That would take an army, and free'dom does not command that.

My apologies, I did not mean to imply that you aren't doing a fantastic job. I simply meant I'm begining to think I have an outdated/older version of thinstation. I do not believe I have 6.2.13 as the about section of the Dev station only says 6.2 and no additional info.

— Reply to this email directly, view it on GitHub https://github.com/Thinstation/thinstation/issues/753#issuecomment-1308114042, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAVW47SRDXBTPLIVACQ26H3WHMDU3ANCNFSM6AAAAAARXFTRY4 . You are receiving this because you commented.Message ID: @.***>

Theknight2015 commented 1 year ago

The code is the most current logic. Help and text are likely out of date. I don’t have the resources to convert every code change into a document update. I rely on users to make those changes. On Tue, Nov 8, 2022 at 6:26 PM Theknight2015 @.> wrote: I can't keep all the documentation up to date. That would take an army, and free'dom does not command that. My apologies, I did not mean to imply that you aren't doing a fantastic job. I simply meant I'm begining to think I have an outdated/older version of thinstation. I do not believe I have 6.2.13 as the about section of the Dev station only says 6.2 and no additional info. — Reply to this email directly, view it on GitHub <#753 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAVW47SRDXBTPLIVACQ26H3WHMDU3ANCNFSM6AAAAAARXFTRY4 . You are receiving this because you commented.Message ID: @.>

Here is the Build.conf file `################################################

--- Thinstation Build Config ---

################################################ # #

This is Thinstation s basic setup file. In this file you decide which

hardware, programs and features to be included in the Thinstation

boot image generated by running "./build".

#

You can customize/limit the possibilities in the thinstation.conf

files later.

#

Anything after a "#" is a comment. You activate "things" by removing

the "#" and remove "things" by putting a "#" in front of them.

#

First we define which modules to include. Modules are hardware

drivers. NEVER include more than necessary - the more modules, the

longer boot time.

########################################################

--- Machine Modules to include in boot image ---

########################################################

A machine profile is a set of modules for a specific set of hardware

components like a thinclient with adapters. It does not include any

filesystem modules, those need to be selected individualy. Making a

a machine profile is a two step process. First you will need to make

an allmodules build like "./build --allmodules" with the extensions-x

package included. Once the client machine is booted with that image

you can open and xterm or telnet in and run "hwlister.sh". hwlister.sh

will compile some lists and attempt to post them to the pxe server assigned

to the client. If the pxe server is this workstation and you are hosting

files directly out of this build env, you can then run

"./mkmachine SOME-MODEL" and the files will be put into the machine folder

under that model name. Now all you have to do is add a line to this file

like "machine SOME-MODEL" and you will no longer have to make

allmodules builds. If this is not the pxe server, you will have to

move stuff around on your own, but the most important files are

modules.list and firmware.list.

################################################

--- Modules to include in boot image ---

################################################

Any modules may be added as "module" or "module_pkg".

If defined as a "module", the driver is included in the boot image.

If defined as a "module_pkg", the driver is added from outside the

image, such as from a tftp server. See note below for more details.

#

Normally you should use "module". Only use "module_pkg" if you want

to dynamically load modules.

Note: If you create a module_pkg network driver, and decide to load it

from a tftp server, it won t work. This is because the image

won t have a network driver to get the module_pkg in the first

place.

!Hardware

!!Machine module list

machine NT-A3500 # Foxconn AMD E-350 Barebone machine NT-535 # Foxconn Intel D525 Barebone machine Dell-FX170 # Dell FX170 D525 Atom Machine machine VMWare # A good set of modules for a VmWare Virtual Machine machine Virtualbox-4.1 # A good set of modules for a Virtualbox Virtual Machine machine qemu machine classic_generic # Big list of modules that you can choose by unremarking them machine foxconn-nT-330i # Foxconn nT 330i Barebone machine foxconn-nT-435 # Foxconn nT 435 Barebone machine foxconn-nT-535 # Foxconn nT 535 Barebone machine foxconn-nT-A3800 # Foxconn nT A3800 Barebone machine foxconn-nT-i2847 # Foxconn nT i2847 Barebone machine foxconn-nT-iBT18 # Foxconn nT iBT18 Barebone machine foxconn-nT-n270 # Foxconn nT n270 Barebone machine Acer-Revo-M1-601 # Acer Revo M1-601 machine Lenovo-T420s # Lenovo T420s Laptop machine Lenovo-T430s # Lenovo T430s Laptop

!!Wireless Stuff

package wpa_supplicant

package wireless

package wifi-connect

!!!Misc Modules

!!Filesystem Support

Every mounted device needs a filesystem, so choose which ones you need.

module usb-storage

module autofs4 # Automount and autofs support

module isofs # ISO9960 file system support for CDRoms module udf # CDRom UDF file system support module vfat # Fat and VFat file system support

module ntfs # NTFS file system support

module ext2 # Ext2 file system support

module ext4 # Ext4 file system support

module nfs # NFS file system support

module cifs # CIFS support (use either this or smbfs - not both)

#################################################

--- Packages to include in boot image ---

#################################################

A package is a program or utility.

Any packages may be added as "package" or "pkg".

If defined as a "package", the program is included in the boot image.

If defined as a "pkg", the program is added from outside the image.

Normally, you should use "package". Only use "pkg" if you want to

dynamically load programs.

--- Packages to include in boot image

--- Packages below may be "package" or "pkg"

!!Miscellaneous

package overlayfs # This is needed in order for squashfs compression mode to work.

package ts-classic # The classic ts logic for network/netfiles/hostname/mounting/telnetd/telnet/playcd

package automount

package netfiles # Adds only this package instead of the whole ts-classic. netfiles lets you get thinstation.conf.xxx files

from the TFTP-server

package udisks package automount package networkmanager

package autonet

package udisks-glue

package ntp # Utility to obtain date & time from network

package firewall # Basic firewall that blocks inbound "attacks"

            # Use with caution if you intend to run servers
            # such as sshd,tftpd,lighttpd on this image

package sound-esd # Enable sound-esd or sound-nasd if you want to be able to control

package sound-nasd # sound on your thin client from another computer or

your remote session.

package alsa

package gnome-core

package gnome-control-center package volumeicon

package kismet

package gst-plugins-base

package gst-plugins-good

package crystalhd

package libva

package iptables # IP Tables support

package cpufreq

package cpuspeed

package wine # Windows Application Execution Platform

!!X related

--- XOrg 7.7

package xorg7-v4l

package xorg7-vesa #A fallback driver that works with almost everything. Does allow resolution changes package xorg7-vmware package xorg7-qxl package xorg7-ati #ATI video driver for most modern ATI chipsets. Usually requires several firmwares package xorg7-amdgpu package xorg7-nouveau #New opensource nvidia driver

package xorg7_nvidia #Proprietary nvidia driver

package xorg7-openchrome #Via Video Chipsets driver package xorg7-intel #Intel video driver for most modern chipsets except the GMA3500/3600

package xorg7-sis

!!Locale or localization files for keyboard and fonts. (Language/Country)

package locale-cs_CZ # Czech

package locale-da_DK # Danish

package locale-de_DE # German

package locale-en_GB # English-Great Britain

package locale-en_US # English-US package locale-es_ES # Spanish

package locale-fi_FI # Finnish

package locale-fr_BE # French Belgium

package locale-fr_CA # French Canadian

package locale-fr_CH # French Switzerland

package locale-fr_FR # French

package locale-hr_HR # Croation

package locale-hu_HU # Hungarian

package locale-it_IT # Italian

package locale-ja_JP # Japanese

package locale-nb_NO # Norwegian (bokmål)

package locale-pl_PL # Polish

package locale-pt_PT # Portuguese

package locale-pt_BR # Portuguese-Brazil

package locale-ru_RU # Russian

package locale-sv_SE # Swedish

package locale-tr_TR # Turkish

!Applications

!!Connection Package types. Choose at least one!

package freerdp # X RDP Client - fork of rdesktop

package rdesktop # X RDP client for Windows Terminal Services (ver 1.7)

package vncviewer # VNC client (vncviewer)

package xorg7vnc # Remote Control Client Workstation

package ica # Citrix ICA client support

package tarantella # Tarantella client support

package xnest # XDM in a window client

package urxvt # Light Xterm Client (vt102)

package xterm # Xterm Client (vt220)

package ssh # Secure Shell client

package tn5250 # 5250 terminal emulator

package dillo # Dillo light web browser

package thinlinc # Cendio ThinLinc client support

package remmina # Remmina client

package xrdp # Xrdp client

package nx # No Machine NX client

package 2x # 2X client

package spice # Redhat Spice Client

package java # Java runtime

package firefox # Firefox current Web Browser

package chrome # Google Chrome Web Browser

package chromium # Chromium Web Browser

package kiosk # Rkiosk Plugin for Firefox

package flash # Flash Current

package filezilla # FileZilla FTP Client for X

package git # GIT Version Control System

package gparted # Gnome Partition Manager

package open-vm-tools

package vboxguest

package medit # Notepad

package mplayer # DVD and video player

package vmview # VMware Open-View Client, PCOIP

package xbmc # XBMC Media Center for X

package evince # X PDF Viewer

package openkiosk # OpenKiosk is a cross platform kiosk web browser based on Mozilla Firefox

package xdmcp-connect # Simple connection to XDMCP server

!!Window Managers. Choose no more than 1 window manager.

Not needed if you don t want to manage windows.

package openbox # A spartin clean/fast window manager.

package xdesktop-kiosk # A locked down desktop kiosk using the openbox wm (See packages/xdesktop-kiosk/build/conf for

            # more help.

package icewm # "ICEWM" window manager. Makes TS a light workstation.

package icewm-theme-xp

package icewm-themes # Extra IceWM themes

package icewm-theme-bernstein

package icewm-theme-bluecrux

package icewm-theme-liquid

package xfwm4

package xfwm4-extra

package xfce4-power-manager package terminal # Terminal emulator for xfwm4 -- Pulls in xfwm4 package thunar # File Manager for xfwm4 -- Pulls in xfwm4

!!Window Manager Utils

package idle-shutdown # Package that lets you specify automatic shutdown settings and logic.

package wbar # Adds icons to desktop

package idesk

!!Other services

package www # Web access to client. From a browser: "http://"

                        #  The standard page is for general user settings, administrative access
                        #  is on port 6800.

package lp_server # Remote printing daemon (JetDirect compatible)

package lpr # LPR Print Server, for use with samba-server package

package lprng # LPRng Print Server, supports network based printing

package cups

package sshd # Dropbear secure shell server

package tftpd # Built in tftpd server. Useful for making a tftpserver

            #  for thinstation on a WAN over a slow link.

package samba-server # Samba server FS Support, allows you to share

                        #  local floppy/cdrom/hd/printer to other Windows
            #  PCs. Needs supermount for removeable media.

package samba-client # Samba smbclient, gives a shell like environment to access an samba server

package hdupdate # Package for updating TS images on a hardisk over a network connection

package scp # Add ability to download files over internet using scp. This package

                        #  adds some networking based options for downloading configuration files or
                        #  in using hdupdate package.

package openvpn # OpenVPN Client Support

package openconnect # VPN support for proprietary VPN clients

            # Cisco AnyConnect, Juniper Network Connect,
            # JunOS Pulse Secure, Palo Alto Global Protect.
            # networkmanager recommended/needed for UI

package vhusbip # The VirtualHere USB Server enables remote access to USB devices over a network.

            # Install the Generic Build of the VirtualHere Server on an unlimited number of computers
            # and share a single USB device per computer server, with no payment required.
            # To share more than one USB device simultaneously from a single server you must purchase an "Unlimited Device License".

!!PCSCD Card Readers

package ccidreader # Generic USB card reader

package asedriveiiie-usb # Drivers for smart cards of readers of AseIIIeUSB and AseIIIeUSB KB

!!Miscellaneous

package gtk-2.0 # Full gtk-2.0 plus clearlooks theme package gtk-3.0 package gtk-theme-adwaita package icons-cursor # Anti Aliased Mouse Cursor Theme package icons-hicolor # Hi-Color icons for some applications and themes. Does not really contain any icons.

package icons-gnome # gnome Hi-Color icons theme. Needed by most other icon themes.

package icons-adwaita

package icons-tango # tango Hi-Color icons theme

package icons-neu # neu Hi-Color icons theme

package fonts-misc

package fonts-jis-misc # Japanese Industrial

package fonts-util

package fonts-cyrillic

package fonts-Speedo-Bitstream

package fonts-TTF-BH # This one works nicely most of the time and is small. package fonts-TTF-vera

package fonts-TTF-MS # Fonts for rendering documents developed on the MS Platform.

                        # Might want to talk to a lawyer before using these.

package fonts-TTF-liberation package fonts-TTF-noto

package fonts-75dpi-Adobe

package fonts-75dpi-Adobe-Utopia

package fonts-75dpi-BH

package fonts-75dpi-BH-Typewriter

package fonts-75dpi-Bitstream

package fonts-100dpi-Adobe

package fonts-100dpi-Adobe-Utopia

package fonts-100dpi-BH

package fonts-100dpi-BH-Typewriter

package fonts-100dpi-Bitstream

package fonts-Type1-Adobe-Utopia

package fonts-Type1-BH

package fonts-Type1-Bitstream

package fonts-Type1-IBM

package fonts-Type1-xfree86

package lshw # list hardware

package e3 # Basic vi like Editor

package rox # Basic File Manager

package debug # metapackage to include other debugging packages and stop during bootup to check things.

package extensions # Adds various shell commands, will increase image size.

package extensions-x # Adds various utility s for the X Environment !!!! INCLUDES hwlister.sh !!!!

package eGalax # eGalax TouchKit Drivers/Utility for serial and usb touchscreens by EETI.

package installer # Wipes a drive, makes partitions and downloads thinstation from a pxe server

package devstation # Starts a tftp server that hosts files from the boot-images/pxe folder

package ca-bundle # Adds many standard SSL and PKI root certificats. Include this package if you have issues with certificate trusts.

package set-resolution # Allows the user to change the resolution via the start-menu.

package local-install # Makes it possible to install Thinstation locally on the machine but still have a central image

                        # management via automatic updates and version control when the client boots. For more information
                        # see /ts/build/Documentation/README.local-install and /ts/build/thinstation.conf.sample
                        # (generated during first build)

package custom-idle # Shuts down the client based after X minutes if some applications/sessions are not running.

package custom-background # Allows you to dynamically set a diffrent background in the conf-files when the client boots.

                        #     For example have a background-image in the build with an error-message and then in
                        #     thinstation.conf.network set the "regular" background. This way the user will receive an
                        #     error message on the screen if the client was unable to get the config files from the
                        #     Web- or TFTP-server when it booted.

package hdd-spindown # Sets hard drives into sleep mode (spin down) when they are idle. See thinstation.conf.sample for info.

package openssl # Probably needed by the Citrix Receiver 13.2 version.

Parameters

########################################

--- Miscellaneous Parameters ---

########################################

!!Basic

param fastboot true # Mangles the filesystem a special way as to improve boot speed and reduce

memory utilization. Cool/Dangerous . Harder to dubug other packages. (Finishing Touch)

                        # Set to 'true' to enable or 'lotsofmem' for slightly slower booting but no squash lag on app launch.

param tsuser tsuser # Name of the user that thinstation will run as. param tsuserpasswd pleasechangeme # Do Change! Console/telnet password for non-root

param rootpasswd CHANGED # Do Change! Console/telnet password for root

If this is enabled, Telnetd will be enabled.

param tsadminpasswd pleasechangeme # Admin password of web interface param xorgvncpasswd pleasechangeme # VNC Access Password param storagepasswd pleasechangeme # Password for storage server param dialuppasswd pleasechangeme # Password for dialin account param sambapasswd pleasechangeme # Password for samba shares when using user mode security

param kernelcmdline "radeon.modeset=0" # Add additional kernel command lines. e.g. disable radeon framebuffer

param stripelf yes # Strip extraneous information from elf binaries (Maybe not Safe)

param acpisupport disable # Tells the kernel not to load acpi modules. (Breaks some Intel Chipsets if disabled)

param uvesafb disable # Disable uvesafb (legacy option like modesetfb)

param extra_vid LVDS-1:d # Add an extra video= parameter to kernel cmd line (good for disabling outputs on video cards)

param bootlogo true # Enable or Disable the use of the Boot splash. param boottheme default # Backgound picture during boot

param splash verbose # kernel splash setting (0=off, silent or verbose (default=silent)

param splash silent param fbmtrr 0 # MTRR value for uvesafb (default = 0, 4 is the best) grep your log to make sure you have not set it to high

param fbnocrtc true # This is usually a good thing.

param fbsm ywrap # Window scrolling method (redraw, ypan, ywrap) ywrap is best, but may not work correctly for all people

param fbvtotal 16 # Override Video Bios Reported Memory in MB

param fbmaxhf 67 # Override Video Negotiated Max Horizontal Frequency

param fbmaxvf 61 # Override Video Negotiated Max Vertical Frequency

param fbmaxclk 155 # Override Video Negotiated Max Clock Frequency

param fbnoedid true # Don t do video edid

param bootresolution 1024x600-32 # Resolution used during Thinstation boot.

param bootresolution 1024x768-32 # You can wright your own resolution mode here, if you know it.

param bootresolution 1152x864-32

param bootresolution 1280x768-32

param bootresolution 1366x768-32 # Otherwise, you may want to refer to the vbe_modes.list you created with hwlister.sh

param bootresolution 1280x1024-32 # for modes that your card supports.

param bootresolution 1400x900-32 # It is also used by xrandr if no xrandr options are specified.

param bootresolution 1680x1050-32

param bootresolution 1920x1080-32

param bootresolution 1400x1050-32

param bootresolution 1920x1200-32

param desktop file:./backgrounds/XXXXXXX.jpg # Custom image to load as desktop background param defaultconfig thinstation.conf.buildtime # The file with default setup. No other config file is found

during boot.

param basename thinstation # Used for all config/tftp/scp file names param basepath ts6.2 # Used to determine path to tftp/scp files param baseurl http://www.doncuppjr.net # Used to determine url to wget files

param baseurl http://192.168.78.17 # Used to determine url to wget/http files - your local web server

param baseurl 'http://${SERVER_IP}' # Used to determine url to wget/http files - if you wan't to use a web server on the same server as the TFTP server

param keyfile ./id_rsa # Path for private key file used for ssh/scp

param knownhosts ./known_hosts # Path for ssh known_hosts file for ssh/scp

param localpkgs false # to determine is PKG files are to be loaded locally

param fulllocales true # Use full locale support for packages

param icaencryption false # Use ica encryption support, add 290k to image

param haltonerror false # Will halt on error, default is true param hardlinkfs true param sametimestmp true # When enabled, the timestamps for all files and folders will be set to 00:00 of todays date in your timezone param initrdcmd "gzip" # Compression mode and level of initrd file. none, gzip -9, lzma -9 ,bzip2 -9 param bootverbosity 3 # Increased vebosity when booting TS

0 no verbose messages

                                        #   1 boot
                                        #   2 network
                                        #   4 init
                                        #   8 kernel
                                        #  16 modules
                                        #  32 packages
                                        #  64 email bootlog file to SMTP server & user set in
                                        #     thinstation.conf file.  This will only work
                                        #     if networking is working.
                                        #
                                        #  Combinations can be used (e.g. 24 does Kernel and Module Messages)

!!Advanced

Leave this alone unless you can t download (wget required on your Linux box):

param downloads /downloads

param bootimages "iso syslinux pxe refind"

param bootserver "192.168.1.52" # Used for the pxe image config files to specify where to download

                                        # the syslinux image from. Result is generated in
                                        # /ts/build/boot-images/pxe/boot/lpxelinux/pxelinux.cfg/default
                                        # so that you can specify APPEND initrd=http://<bootserver>/boot/initrd

param syslinuxtheme "default" param grubtheme "default"

param httpproxy http://192.168.1.2:8080

param bootfssize 50% # Modify the size of the tmpfs filesystem

package alltimezone param allres true # Includes a lot of resolution splash images for live-cd s param allfirmware true # Includes a lot of firmwares for live-cd s param earlymicrocode false # Builds microcode initramfs for early loading

by kernel. Needs kernel with MICROCODE_EARLY=y.

param blacklist "snd-pcsp.ko pcspkr.ko"

param mesa_3d disable # The Mesa 3D Graphics Library disable

package my-certificates `

Here is the thinstation.conf.network file `###############################################

-- Thinstation sample configuration file --

############################################### #

This file must be named "thinstation.conf" where can be:

.buildtime Defines the defaults build into the image (note the leading .)

.network Default global config file loaded from the TFTP server.

.user Config file on local storage.

- Specific config file on the TFTP server for the terminal

"name" (e.g. thinstation.conf-paul). Requires thinstation.hosts.

.group- Config file for a group of terminals (e.g. with printer setup

for those terminal with local printers. Requires thinstation.hosts.

- Specific config file on the TFTP server for the terminal with

the IP number specified (e.g. thinstation.conf-10.0.0.9).

- Specific config file on the TFTP server for the terminal with

the MAC address specified (e.g thinstation.conf-112233445566).

--- General Options

#

AUDIO_LEVEL Audio Level for sound, 0-100

MIC_LEVEL Recording level for input devices, 0-100

LOCALE If multiple locales are included in the image, you can use this to

select one during boot with a .conf file.

TIME_ZONE Used to set time zone on a TS client with a zone info file. If multiple

zone-info files are included, this selection can be refined with additional

.conf files.

SYSLOG_SERVER Log server ip address or hostname.

If the work "local" is used, then syslog starts logging locally

If not specified syslogd is not loaded.

USB_STORAGE_SYNC ON Safer writing

OFF Faster writes to USB storage devices

WARNING: This may lead to data corruption when the device is unplugged

before buffers have been flushed

USB_MOUNT_DIR Directory to use for mounting usbdisks (default: /mnt/usbdevice/)

USB_MOUNT_USELABEL Label to use for individual usb disks

default is to use the device name (eg. sda1 - /mnt/usbdevice/sda1)

NO use default ONLY

YES will use label on usb volume if exists or fallback to default

adds suffix of n (1,2,3,etc.) if duplicate labels found

USB_MOUNT_OPTIONS additional mount options for usb devices (eg. utf8,shortname=win95)

see mount documentation for details (man mount)

DISK_STORAGE_SYNC ON Safer writing

OFF Faster writes to USB storage devices

WARNING: This may lead to data corruption when the device is unplugged

before buffers have been flushed

DISK_MOUNT_OPTIONS additional mount options for disk devices (eg. utf8,shortname=win95)

see mount documentation for details (man mount)

CDROM_MOUNT_OPTIONS additional mount options for cdrom devices (eg. utf8,shortname=win95)

see mount documentation for details (man mount)

BIND_MOUNT# A disk label to bind mount point mapping (eg. boot:/boot or home:/root)

DAILY_REBOOT Will reboot server if up over a day and one of the session

types is closed

AUTOPLAYCD If enabled this will autoplay music cds when inserted.

CUSTOM_CONFIG Allows choosing custom boot config, On/Off

RECONNECT_PROMPT This displays the reconnection/shutdown options for when a session is ended

#

OFF No reconnect prompt

ON Reconnect prompt will be displayed

FORCE Just reconnect

AUTO Automatic reconnect

AUTOXX Automatic reconnect attempt after XX seconds - msg is displayed

MENU Shows a menu with a shutdown and reconnection option

MENUXX As MENU option, but the XX is a time period in minutes.

After XX minutes shutdown will occur unless the reconnect option

is choosen

NO_SESSION What to do in the event that all sessions have exited and not reconnected.

POWEROFF Shutdown the terminal.(default)

REBOOT Reboot the terminal.

DEBUGPAUSE Will pause at prompt after load of all modules and packages but before starting

Only works if debug package included

true pause at prompt to allow debug

false don't pause (default)

CRON_JOBx Will add this crontab entry (1 - 9)

FASTBOOT_URL Normally fastboot will try to load lib.squash in the same way that vmlinuz and initrd

were loaded. This will force fastboot to download lib.squash using a specific protocol

and location

AUDIO_LEVEL=100 TIME_ZONE="America/Chicago" SYSLOG_SERVER=local USB_STORAGE_SYNC=On

USB_MOUNT_DIR="/mnt/usbdevice"

USB_MOUNT_USELABEL="Yes"

USB_MOUNT_OPTIONS="utf8,shortname=win95"

BIND_MOUNT0="home:/root" BIND_MOUNT1="boot:/boot" BIND_MOUNT2="tsdev:/thinstation" FASTBOOT_URL="http://www.thinstation.org" DAILY_REBOOT=Off

AUTOPLAYCD=On

CUSTOM_CONFIG=Off RECONNECT_PROMPT=On

DEBUGPAUSE=true

--- Session Defaults

-- Default Settings for all sessions

#

AUTOSTART ON Application will be executed immediately at startup

OFF Application will appear in a menu to be started manually

WORKSPACE Workspace in the window manager to run the application in

ICONMODE MANUAL Default sessions are not created in window manager/idesk or wbar

AUTO Default sessions types are created in window manager/idesk or wbar

ALWAYS_ENTER_SERVER Whether or not the server entry dialog box is always displayed

By default, autostarted sessions have this off and menu sessions have this on

OFF will disable the prompt for everything.

ON will enable the prompt for everything.

ALLOW_EXIT Whether or not a user will be allowed to cancel the server address entry.

By default, autostarted sessions will not be allowed to exit and menu sessions will.

OFF will force entry for everything.

ON will allow exit from everything.

WORKSPACE=1 AUTOSTART=On ICONMODE=AUTO ALWAYS_ENTER_SERVER=Off ALLOW_EXIT=Off

--- Session Details

#

Note: # is a number equal to or greater than 0

#

SESSION_#_TITLE Title description for SESSION. Needed for replimenu.

SESSION_#_TYPE Package type, choose beetwen:

- vncviewer Start vncviewer in X

- rdesktop Start rdesktop in X

- x Start x-terminal session (xdm)

- xnest Start x-terminal session (xdm) from within blackbox

- ssh Start ssh client in linux console

- telnet Start telnet client in linux console

- ica Start Citrix ICA client in X

- ica_wfc Start ICA Manager

- openbox Start openbox window manager session

- icewm Start icewm window manager session

- dillo Start Web Browser in X

- tftpd Start tftp daemon

- tarantella Start tarantella client

- rxvt Start light xterm client

- xterm Start xterm client

- tn5250 Start AS400 client in linux console

- nx Start NX Client Session

SESSION_#_AUTOSTART ON Application will be executed immediately at startup

OFF Application will appear in a menu to be started manually

SESSION_#_CUSTOM_CONFIG ON Allows choosing custom config for when session starts

OFF Session boots normally

SESSION_#_ICON ON Places Icon on Desktop if package xtdesk is selected and

in Window Manager Main Menu

SUBMENU Places Icon on Desktop if package xtdesk is selected and

in a Submenu within the window manager

SESSION_#_WORKSPACE Workspace to run program on in a window manager

SESSION_#_type_SERVER IP address/hostname of the server

SESSION_#_type_OPTIONS Command line options for the session type

SESSION_#_type_USER Specify the user for sessions types that require a user

SESSION_#_type_PASS_ENABLE Can be set to false, to override a session type that wants password input.

#

SESSION_#_type_specific This allows you to specify specific config file details for certain session

types. Currently support is NX and ICA. Any configuration file setting

can be changed with this setting. An example of this is

SESSION_0_NX_GENERAL_DESKTOP="Gnome"

SESSION_0_ICA_APPSRV_USEFULLSCREEN="Yes"

See your application manual for documentation on the settings which

can be used.

Individual Session Settings, override defaults (Likely Depricated)

#

IMPORTANT: Make sure you minimum have a SESSION_0. Otherwise you will get an error

on boot. You may have additional sessions: SESSION_1, SESSION_2 ...

SESSION_0 is on ctrl-alt-F3

SESSION_1 is on ctrl-alt-F4

... etc.

--- LPR Printing Options

#

CUPS_PRINTER_0_NAME Workstation Printer Name, Can be Any Valid Name

If you have turned ICA_PRINTER=ON then this is the

name of the printer driver

CUPS_PRINTER_0_DEVICEURI Workstation printer device (if not specified devices

are not loaded).

#

Requirement:

FileDevice Yes in /etc/cups/cups-files.conf (by default enabled in thinstation)

#

file:///dev/lp[0-2] for parallel ports

file:///dev/usb/lp[0-2] for USB printers

socket://ip_address for network printers

#

CUPS_PRINTER1 See CUPS_PRINTER0

CUPS_PRINTER2 See CUPS_PRINTER0

CUPS_PRINTER3 See CUPS_PRINTER0

If having trouble with autocreate, keep the name "CUPSPRINTER?_NAME" under 15 characters & don't use spaces

Example network printer

CUPS_PRINTER_0_NAME="sample network printer 0"

CUPS_PRINTER_0_DEVICEURI="socket://ip_address"

CUPS_PRINTER_0_DRIVER="drv:///sample.drv/generpcl.ppd"

Example usb printer

CUPS_PRINTER_1_NAME="sample usb printer 1"

CUPS_PRINTER_1_DEVICEURI="file:///dev/usb/lp0"

CUPS_PRINTER_1_DRIVER="drv:///sample.drv/generpcl.ppd"

Example lpt printer

CUPS_PRINTER_2_NAME="sample lpt printer 2"

CUPS_PRINTER_2_DEVICEURI="file:///dev/lp0"

CUPS_PRINTER_2_DRIVER="drv:///sample.drv/generpcl.ppd"

--- Gtk Theme Engine Selection

#

GTK_THEME Selects the theme engine that gtk will use to

render buttons and sliders. Adwaita by default

Set to ALL to include all theme engines.

Available themes:

Adwaita

Crux

Industrial

Mist

Redmond

ThinIce

Xfce if xfwm4 package is included

GTK_THEME=Adwaita

XFWM4_COMPOSITING Boolean that determines whether or not to enable

desktop compositing

XFWM4_BRIGHTNESS Sets the brightness level of the background

0 by default. Range -128 to 127

XFWM4_SATURATION Sets the color saturation level of the background

1.0 by default. Range -10.0 to 10.0

XFWM4_RED Sets the red index for the background color

Used in conjunction with BLUE and GREEN

XFWM4_BLUE Sets the blue index for the background color

Used in conjunction with RED and GREEN

XFWM4_GREEN Sets the green index for the background color

Used in conjunction with RED and BLUE

#

--- Xfwm4 Theme Selection

XFWM4_THEME Selects the theme that xfwm4 will use for window

borders and colors. Default by default

Set to ALL to include all themes. Otherwise....

Available themes:

Adept

Agua

Agualemon

Alternate

Atlanta

Atlanta2

B5

B6

BBS

Basix

Beastie

Biz

Blackwall

Buzz

Coldsteel

Coolclean

Crux

Cruxish

Curve

Daloa

Default

Defcon-IV

Eazel-blue

Elberg

Exocet

Fbx

G2

Galaxy

Gaudy

Gelly

Gnububble

Gorilla

Gtk

Iceg

Kde

Kde1

Keramik

Kindaker

Kleanux

Kokodi

Koynacity

LineArt

Linea

Meenee

Metabox

Microcurve

Microdeck

Microdeck2

Microdeck3

Microgui

Mofit

Moheli

Next

Ops

Opta

Oroborus

Perl

Pills

Piranha

Platinum

Prune

Quiet-purple

Quinx

R9X

Redmond

RedmondXP

Retro

Silverado

Slick

Slimline

Smallscreen

Smoothwall

Symphony

Synthetic

TUX

Tabs

Tgc

Tgc-large

Today

Totem

Trench

Triviality

Tubular

Variation

Waza

Wildbush

Xfce

#

DESKTOP_ICON_SIZE Sets the size of icons on the desktop

DESKTOP_FONT_SIZE Sets the font size for desktop icons

DESKTOP_SHOWTRASH=false hide/display Trash Icon on XFWM Desktop

DEKSTOP_SHOWHOME=false hide/display Home Icon on XFWM Desktop

DESKTOP_SHOWREMOVEABLE=false hide/display Removeable Icon on XFWM Desktop

DESKTOP_SHOWFILESYSTEM=false hide/display Filesystems Icon on XFWM Desktop

PANEL_AUTOHIDE=false hide/display Panel behind Window

PANEL_PAGER=false hide/display The workspace switcher

PANEL_REV_CLOCKSYSTRAY If enabled, the systray will be to the left of the clock

PANEL_USER=false Show the logged in user at the far right of the start bar

XFWM4_START_POSITION="BOTTOM" Put the startbar at the bottom of the screen instead of the top

XFWM4_START_TITLE="Start" Change the text displayed on the start button

XFWM4_START_ICON="freerdp" Change the icon displayed on the start button

XFWM4_START_DISABLE_SUSPEND=off hide/display Suspend button under Session on the start menu

XFWM4_CLOCK_FORMAT=%H:%M Clock Format e.g. European H:M instead of standard US

XFWM4_COMPOSITING=true XFWM4_BRIGHTNESS="-33" XFWM4_SATURATION=1.0 XFWM4_RED=0 XFWM4_BLUE=0 XFWM4_GREEN=0 XFWM4_THEME=Xfce DESKTOP_ICON_SIZE=38 DESKTOP_FONT_SIZE=10

SESSION_#_TYPE=ssh

SESSION_#_SSH_SERVER=192.168.1.2

Various Options for controlling icon preferences

ICONS_COMPOSITE_THEME_ORDER Attempts to save space by compositing icon themes

on top of each other from first to last. The last

theme specified should be the most significant.

#

ICONS_CUT_SIZES Should save some space by dropping some rarely

used icon sizes like scalable and 256x256

#

ICONS_THEME Sets a specific theme to the default when multiple

themes are included. Don't use with COMPOSITE_THEME

ICONS_COMPOSITE_THEME_ORDER="gnome Tango Neu" ICONS_CUT_SIZES="256x256 scalable"

ICONS_THEME=Neu

--- X Server Options

#

SCREEN_RESOLUTION Screen resolutions available in the workstations

SCREEN_COLOR_DEPTH Number of bits per pixel (8,16,24), just use ONE value

SCREEN_HORIZSYNC Monitor horizontal sync frequency in Khz.

If left blank Xorg will try to detect with DDC

SCREEN_VERTREFRESH Monitor vertical refresh frecuency in Hz.

If left blank Xorg will try to detect with DDC

Screen Saver Settings

SCREEN_BLANK_TIME Minutes to X session goes blank

SCREEN_STANDBY_TIME Minutes to X session goes into standby mode

SCREEN_SUSPEND_TIME Minutes to X session goes into suspend mode

SCREEN_OFF_TIME Minutes to X session turn off

DONT_VT_SWITCH_STATE If true, don't allow vt switching in X

DONT_ZAP_STATE If true, don't allow hot key exit from X

#

MOUSE_PROTOCOL Mouse protocol type (Microsoft, PS/2, etc.)

(mouse is autodetected, use this only if it fails)

MOUSE_DEVICE Mouse device: /dev/ttyS0 -> COM1

/dev/ttyS1 -> COM2

/dev/ttyS2 -> COM3

/dev/ttyS3 -> COM4

/dev/psaux -> PS/2 mouse port

/dev/input/mice -> USB mouse (needs USB package)

MOUSE_RESOLUTION Mouse resolution

MOUSE_ACCELERATION Mouse acceleration

X_NUMLOCK Set numlock state on boot

X_COOKIE Will set X Cookie if specified

SCREEN_RESOLUTION="800x600 | 1024x768 | 640x480 | 1920x1080 | 1920x1200 | *" SCREEN_COLOR_DEPTH="24"

SCREEN_HORIZSYNC="30-64 | *"

SCREEN_VERTREFRESH="56-87 | 60 | 56 | 70 | 72 | 75"

SCREEN_BLANK_TIME=0 SCREEN_STANDBY_TIME=0 SCREEN_SUSPEND_TIME=0 SCREEN_OFF_TIME=0

MOUSE_PROTOCOL=PS/2

MOUSE_DEVICE=/dev/psaux

MOUSE_RESOLUTION=100

MOUSE_ACCELERATION=1/2

X_COOKIE=36d71ab65c10ef065702c111a3d31593

X_NUMLOCK=On

-- Advanced XServer Options - Experts Only

X_DRIVER_NAME Driver for X, this will override the autodetection scripts

X_DRIVER_BUSID Screen Card BusID

X_
_OPTIONn Where
=SERVERFLAGS,SERVERLAYOUT,MODULES,FILES,DRI,DEVICE,MONITOR,SCREEN,MODES

X_DEVICE_OPTION1-9 Addditional options for driver

X_MONITOR_OPTION1-9 Addditional options for monitor

X_MONITOR_MODELINE Add user defined ModeLine

X_MONITOR_MODELINE1-9 Add more user defined ModeLines

X_KEYBOARD_OPTION1-9 Add keyboard options

X_MOUSE_OPTION1-9 Add mouse options

USE_XRANDR Use xrandr to set diplay size and orientation

XRANDR_OPTIONS Specific options to pass to xrandr instead of just the bootresolution

-- Advanced Options - Experts Only

X_DRIVER_NAME="mga"

X_DRIVER_BUSID="PCI:1:0:0"

X_DEVICE_OPTION1="swcursor On" USE_XRANDR=TRUE

XRANDR_OPTIONS="-s 1680x1050"

X_DEVICE_OPTION2="ActiveDevice CRT"

X_DEVICE_OPTION3="noDDC Off"

X_DEVICE_OPTION4="UseBios Off"

X_KEYBOARD_OPTION1="XkbModel pc98"

X_KEYBOARD_OPTION2="XkbLayout nec/jp,us"

X_KEYBOARD_OPTION3="XkbOptions grp:alt_shift_toggle"

X_MONITOR_OPTION1="DPMS On"

X_MONITOR_OPTION2="TargetRefresh 60"

X_MONITOR_MODELINE='"1680x1050" 146.2 1680 1784 1960 2240 1050 1053 1059 1089 -HSync -VSync'

--- Samba Options

#

SAMBA_SERVER_ENABLED Enable Samba Server Daemons, On/Off

SAMBA_SECURITY Type of security, USER, DOMAIN, SERVER

SAMBA_SERVER Server for security

SAMBA_WINS Server Name to Enable Samba to be a WINS Client

SAMBA_HARDDISK Enable Harddrive support, On/Off

SAMBA_CDROM Enable CDRom Support, On/Off

SAMBA_FLOPPY Enable Floppy Support, On/Off

SAMBA_PRINTER Enable Printer Support, On/Off

SAMBA_USB Enable USB Support, On/Off

SAMBA_SERVER_ENABLED=Off

SAMBA_WORKGROUP=BigPeople

SAMBA_SECURITY=Server

SAMBA_SERVER=BadMan

SAMBA_WINS=BadMan

SAMBA_HARDDISK=Off

SAMBA_CDROM=On

SAMBA_FLOPPY=On

SAMBA_PRINTER=On

SAMBA_USB=Off

--- PKG Options

#

PKG_PACKAGES Choice of packages to download for PKG

You can also use PKG_PACKAGES1-8 for additional package selections

This is useful for using multiple network group files

PKG_PREFIX Download PKGs from a subdir of /tftpboot or PKG Path if PKG_PATH

is set in thinstation.conf

PKG_PATH Path to PKG files if not using tftpboot

Floppy: /mnt/floppy

CD-ROM: /mnt/cdrom

HD: /mnt/disc/hdX/part1 (first disc, first partition)

NFS: /mnt/nfs

Samba: /mnt/smb

MOD_PACKAGES Choice of modules to download for MPKG

You can also use MOD_PACKAGES1-8 for additional package selections

This is useful for using multiple network group files

MOD_PREFIX Downloads and insmod's a module from a subdir of /tftpboot

if MOD_PREFIX is set in thinstation.conf

PKG_PACKAGES="blackbox rxvt"

PKG_PREFIX=pkg

PKG_PATH=/mnt/cdrom

MOD_PACKAGES="usb-hid usb-storage"

MOD_PREFIX=modules

--- Networking Options

#

NET_HOSTNAME Hostname to use if not using a thinstation.hosts file, note

that the machine MAC address will replace any * if used.

NET_SMTP_SERVER Email server address for error logs

NET_SMTP_EMAIL Email address of administrator

NET_TIME_SERVER Time server on network with which to sync. NTP Time Server. Recommend .pool.ntp.org

NET_TELNETD Enables built-in telnetd server package

NET_REMOTE_ACCESS_FROM List of hostnames/ip address accepted by the server

for remote control, used by telnetd and www packages

NET_USE Sets which interfaces to try and enable at boot time

LAN Only try and initialize wired interfaces

WLAN Only try and initialize wireless interfaces (You still need to set other parameters)

BOTH Try and enable all interfaces

-- Mounting networked filesystems --

#

NET_NFS_SERVER This is the path to the NFS server, ie

server:/path/to/share.

NET_SMB_SERVER This is the path to the SMB server, ie

server:/path/to/share.

NET_SMB_WORKGROUP Workgroup of samba server

NET_SMB_USER This is the username for SMB mounts, password is

defined at build time in build.conf

NET_LINKWAIT Amount of time to wait for a link.

NET_LINKWAIT=6 NET_USE=BOTH

NET_HOSTNAME=donald

NETHOSTNAME=ts* NET_TIME_SERVER=pool.ntp.org NET_DHCP_TIMEOUT=30

NET_SMTP_SERVER=donald

NET_SMTP_EMAIL=donald@duck.org.nz

NET_TIME_SERVER=mickey

NET_TELNETD_ENABLED=On NET_REMOTE_ACCESS_FROM="duck.quak.org.au 192.168.0.0 .disney.us"

NET_NFS_SERVER=bigserver:/opt/thinstation

NET_SMB_USER=duck

-- For use in thinstation.conf.buildtime only:

#

NET_USE_DHCP Enable DHCP Resolution

ON Use DHCP, fail if it doesn't get a lease

OFF Don't use DHCP, manual configuration required

BOTH Use DHCP in first instance, failing to get a lease, try manual config

NET_IP_ADDRESS IP Address of client

NET_MASK Network mask of client

NET_GATEWAY IP Address of gateway

NET_DHCP_DELAY Delay before continuing script after bringing up interface, only needed if

using spanning tree "port discovery" in a switched environment. Default is 0 seconds.

NET_FILE_METHOD Method to download files. Can be either of the following values: tftp, wget, http, scp.

scp is only available if package ssh is selected in build as a "package".

With the package netfiles you can use NET_FILE_METHOD, NET_FILE_ENABLED and NET_FILE_ALTERNATE

to download configuration files (thinstation.conf.group-, thinstation.conf. etc.)

NET_FILE_ENABLED Use server for config file, On/Off

NET_FILE_USER User to connect to SCP server as

NET_FILE_ALTERNATE Alternate server for vmware or non-standard dhcp servers

NET_DNS1 DNS Server 1

NET_DNS2 DNS Server 2

NET_DNS_SEARCH Default DNS domain to search

NET_USE_DHCP=Off

NET_IP_ADDRESS=192.168.0.1

NET_MASK=255.255.255.0

NET_GATEWAY=192.168.0.254

NET_DHCP_DELAY=30

NET_FILE_ENABLED=On

NET_FILE_METHOD=http

NET_FILE_USER=not_needed_for_tftp

NET_FILE_ALTERNATE=192.168.0.4

NET_DNS1=192.168.0.2

NET_DNS2=192.168.0.3

NET_DNS_SEARCH=cartoons.org.nz

--- Networking Options (NetworkManager)

PROTOCOL INDEPENDENT

#

Maximum transmission unit (for either IPv4 or 6)

NET_MTU=1480

# #

IPV4

#

IPv4 interface mode: auto->DHCP,

manual->static IP

disabled: interface disabled

NET_IPV4_MODE=auto|manual|disabled

#

static IP address to assign (/)

(address & gateway must be provided if "manual" is set)

NET_IPV4_ADDRESS=170.20.20.20/12

NET_IPV4_GATEWAY=170.20.0.1

#

Additional static IP addresses

NET_IPV4_ADDRESS2=

NET_IPV4_GATEWAY2=

#

DNS server(s) to use

NET_IPV4_DNS1=74.82.42.42

NET_IPV4_DNS2=

or

NET_IPV4_DNS="74.82.42.42;78.82.42.43"

#

DNS search suffix

NET_IPV4_DNS_SEARCH=somedomain.org

#

Routes

NET_IPV4_ROUTE1_IP=171.20.20.0/24

NET_IPV4_ROUTE1_GW=170.20.20.32

NET_IPV4_ROUTE1_METRIC=

NET_IPV4_ROUTE2_IP=....

# #

IPV6

#

IPv6 interface mode: auto->stateless autoconfiguration,

manual->static IP

dhcp->stateful DHCP configuration

disabled: interface disabled

NET_IPV6_MODE=auto|manual|dhcp|disabled

NET_IPV6_MODE=manual

static IP address to assign (/)

(address & gateway must be provided if "manual" is set)

NET_IPV6_ADDRESS=2001:470:8:677::92a3/64

NET_IPV6_GATEWAY=2001:470:8:677::2

NET_IPV6_DNS1=2001:470:20::2

NET_IPV6_DNS2=

NET_IPV6_DNS_SEARCH=

NM System Connection Config - IPv4

NET_IPV4_MODE=manual

NET_IPV4_ADDRESS=170.20.20.20/12

NET_IPV4_GATEWAY=170.20.0.1

NET_IPV4_DNS1=74.82.42.42

NET_IPV4_DNS2=

NET_IPV4_DNS_SEARCH=google.com

NM System Connection Config - IPv6

NET_IPV6_MODE=manual

NET_IPV6_ADDRESS=2001:470:8:677::92a3/64

NET_IPV6_GATEWAY=2001:470:8:677::2

NET_IPV6_DNS1=2001:470:20::2

NET_IPV6_DNS2=

NET_IPV6_DNS_SEARCH=

NM System Connection Config - Protocol-independent

NET_MTU=1480

--- Wireless

#

WIRELESS_ESSID # ESSID (extended network name) : My Network, any

WIRELESS_NWID # NWID/Domain (cell identifier) : 89AB, 100, off

WIRELESS_MODE # Operation mode : Ad-Hoc, Managed, Master, Repeater, Secondary, auto

WIRELESS_FREQ # 2.422G, 2.46G (frequency)

WIRELESS_CHANNEL # 1, 2, 3 (channel)

WIRELESS_SENS # Sensitivity (cell size + roaming speed) : 1, 2, 3 ; -70 (dBm)

WIRELESS_RATE # Bit rate : auto, 1M, 11M

WIRELESS_RTS # RTS threshold : off, 500

WIRELESS_FRAG # Fragmentation threshold : off, 1000

WIRELESS_IWCONFIG # Other iwconfig parameters : power off, ap 01:23:45:67:89:AB

WIRELESS_IWSPY # iwspy parameters : + 01:23:45:67:89:AB

WIRELESS_IWPRIV # iwpriv parameters : set_port 2, set_histo 50 60

WIRELESS_KEY # Encryption key : 4567-89AB-CD, s:password

WIRELESS_WPAKEY # WPA/WPA2 pre-shared key (PSK): at least 8 ASCII characters

WIRELESS_DRIVER # Driver name for WPA/WPA2 support

WIRELESS_ESSID="ssid" WIRELESS_NWID="" WIRELESS_MODE="managed"

WIRELESS_FREQ=""

WIRELESS_CHANNEL=""

WIRELESS_SENS=""

WIRELESS_RATE=""

WIRELESS_RTS=""

WIRELESS_FRAG=""

WIRELESS_IWCONFIG="" WIRELESS_IWSPY="" WIRELESS_IWPRIV="" WIRELESS_WPAKEY="" WIRELESS_KEY="abcdef" WIRELESS_WPAKEY="" WIRELESS_DRIVER=wext

RADIUS Configuration

#

WIRED_SUPPLICANT=true

#

RADIUS_ID="" A valid Radius ID

RADIUS_PSK="" A valid Radius PSK

or

CUSTOM_SUPPLICANT_CONF="" Path to wpa_supplicant.conf file

RADIUS_ID="BOB" RADIUS_PSK="I'm a little tea pot"

--- Permanent Storage Options

#

STORAGE_PATH Path to where storage device is mounted to save

profile settings. This should be one of

/mnt/usbdevice/sdX/partX or disc

/mnt/floppy

/mnt/disc/hdX/partX

/mnt/nfs

/mnt/smb

#

Note that the profile settings are stored under

a subfolder for this path. So the path to the

stored settings would be something like

/mnt/floppy/thinstation.profile

See the FAQ on the website for more details on this

#

Also checkout README.IMPORTANT for the valid

config files which you can place here

a typical file to store config file settings is

/mnt/floppy/thinstation.profile/thinstation.conf.user

#

Also note that the .profile can be changed by using

the below STORAGE_PREFIX

STORAGE_PREFIX This is prefex for the folder name to store settings

in on the storage device. You can also use one of the

special characters below.

#

M = Mac Address

H = Hostname

I = Ip Address

#

Note default prefix for storing the profile is

.profile

STORAGE_CONFIG1-8 This is the path for any user defined settings

which will always override the profile path above

The files are tried on order on each device specified

STORAGE_PATH=/mnt/nfs

STORAGE_PREFIX=H

STORAGE_CONFIG1=/mnt/floppy

STORAGE_CONFIG2=/mnt/cdrom

STORAGE_CONFIG3=/mnt/disc/hda/part1

STORAGE_CONFIG4=/mnt/usbdevice/sda/part1

EXPERIMENTAL

Dual Head Support

#

This allows two seperate X sessions to be started with seperate input devices. This allows

effectively two seperate machines within the same PC. You will need seperate screen cards

to enable this. It is best to use with 1 AGP card and 1 PCI card.

Check out http://www.ltn.lv/~aivils/eng-video.html for a list of known compatable screen cards

Input Device support should be:

#

Primary mouse and keyboard PS/2

Secondary mouse and keyboard USB

#

There is some basic detection scripts for this, but these will need to be improved in TS 3.0.

If thinstation doesn't detect both a USB keyboard and mouse it will default back to dual

screen support, not dual head.

#

This is not considered stable. If you exit the session, or try to change to a console screen

with Alt-F1 etc... it will probably crash the machine. If it doesn't work with your hardware

there is nothing that can be done about it.

The kernel Advanced Power Management module is disabled when using dual screen as it causes the

second screen to crash.

Note the below option only supports 1-2, anything more than two won't work. This is provided

for future development, to create a machine with more than two seperate sessions.

SESSION_#_SCREEN_POSITION 1-X When using dual screen support you can specify the position

of each session. This allows to seperate sessions to be on

seperate screens. If only 1 session is in use, this option will

make no differnece. You can specify between 1+ positions

`

Here is the thinstation.conf.buildtime file (Original to Dev Station Install/Stock Build) AUDIO_LEVEL=100 MIC_LEVEL=0 SESSION_0_TYPE=xfwm4 SESSION_0_AUTOSTART=on XFWM4_COMPOSITING=true XFWM4_RED=0 XFWM4_GREEN=0 XFWM4_BLUE=0 XFWM4_START_POSITION="BOTTOM" DESKTOP_ICON_SIZE=48 DESKTOP_FONT_SIZE=10 DESKTOP_SHOWTRASH=false DEKSTOP_SHOWHOME=false DESKTOP_SHOWREMOVEABLE=true DESKTOP_SHOWFILESYSTEM=false GTK_THEME=Adwaita XFWM4_THEME=Default PANEL_PAGER=false PANEL_USER=false PANEL_REV_CLOCKSYSTRAY=true ICONS_THEME="Adwaita" ICONS_CUT_SIZES="256x256 scalable" XFWM4_START_ICON=ThinStation XTERM_CMD="xfce4-terminal" NET_USE=BOTH NET_USE_DHCP=on NET_HOSTNAME=ts_* NET_TELNETD_ENABLED=ON NET_FILE_ENABLED=On TIME_ZONE=America/Chicago NET_TIME_SERVER=us.pool.ntp.org NET_REMOTE_ACCESS_FROM="0.0.0.0" TFTP_BLOCKSIZE=1024 BIND_MOUNT0="storage:/mnt/storage" STORAGE_CONFIG1=/mnt/storage USB_STORAGE_SYNC=on LOCALE=en_US MOUNT_0="LABEL=boot /boot auto x-mount.mkdir,defaults 0 0" MOUNT_1="LABEL=home /home auto x-mount.mkdir,defaults 0 0" MOUNT_2="LABEL=swap swap swap defaults 0 0" SET_RESOLUTION_MULTIMONITOR_EXPAND='mirror' SET_RESOLUTION_MULTIMONITOR_AUTOSCALE='scale'

Notes: Thank you in advance for any help you may proviede. I'm also going to try downloading the newest version of thinstation and installing on a separate VM and see if maybe I have somehow missed something somewhere.