Coder Social home page Coder Social logo

thinstation / thinstation Goto Github PK

View Code? Open in Web Editor NEW
757.0 757.0 187.0 20.25 GB

A framework for making thin and light Linux based images for x86 based machines and thinclients.

Home Page: https://www.thinstation.net/

Shell 75.21% Perl 1.38% Smarty 7.73% HTML 0.08% PHP 9.62% JavaScript 0.36% CSS 0.13% C 1.81% Batchfile 0.07% C++ 0.22% Roff 3.16% Makefile 0.19% BitBake 0.04%

thinstation's Introduction

ThinStation

README - Displaying of this file can be disabled by touching /ts/etc/READ

Visit the ThinStation Wiki

This env was created for you by Donald A. Cupp Jr. from Crux and ThinStation

ThinStation itself has many many many contributors, but much thanx goes out to Mike Eriksen, Trevor Batley, Miles Roper and Marcos Amorim

Work To Do / Work in Progress: mail to developer list if you can help

  • We could really use some help on the documentation. A lot has changed since 2.2, and I am afraid the documentation has not kept up. Please create a wiki account and help others with your knowledge.

Note that several modules have been moved inside the kernel

Installation

Just run ./setup_chroot. The first time this is run, it will expand all binary packages into the right place. It will then populate all the packages that build will use to make images. Afterwards, it will just start the chroot session.

Running

You will need to make sure you are in the chroot Development Environment by running ./setup-chroot. You should then be able to cd /build and run ./build to start making images. Edit build.conf and thinstation.conf.buildtime to make changes

Compiling

First off, this is a very advanced and not required at all to use ThinStation.

The CFLAGS and CXXFLAGS can be changed by editing /ts/etc/pkgmk.conf and then exiting and re-entering the chroot. If you change the flags, you might want to rebuild all installed packages with rebuild-all command. You can make a single package like this prt-get depinst [Package Name] or update it with prt-get update [Package name]. You can remove a package with prt-get remove [Package Name]. You can also go to the actual port directory like cd /ts/ports/components/busybox-TS and then do pkgmk -kw (keep work) if you want to examine the working compile and perhaps edit a .config file. If you upgrade a version or change a .config, you will need to run pkgmk -um to update md5 checksums on source files. If the file layout changes, you will need to run pkgmk -uf to update the footprint of the results.

Ports

The available ports directories can be changed by editing /ts/etc/prt-get.conf and then exiting and re-entering chroot. A "Generic" Pkgfile is located in /ts/ports. Copy this file into your new port directory and rename to Pkgfile. You can update the official crux ports with ports -u and then do a prt-get sysup to update all packages in chroot. Other ports may be availabe, but should only be used as a template from http://crux.nu/portdb/. Doing an update will sometimes give undesired results. Be patient and read the log files for package builds.(/var/log/pkgbuild)

Updating ThinStation

The update command will read a .dna file and extract the latest and greatest from compressed binary packages into the working TS packages folder.

Source

Some package sources were not available in any crux port. In those instances, I made my own port, BUT I did not install the resulting binaries into the chroot, but rather jailed them in /ts/components. Ports where I could not locate the source anywhere else but in the old TS chroot are in /ts/ports/static-source. You could compile all static source packages with a line like:

for pkg in `ls --color=never /ts/ports/static-source/`; do
    prt-get install $pkg
done

This will also work with the components directory.

WARNING

Never edit the ports in /usr/ports/. You will likely lose your work. If you need to edit a port, bring it into the /ts/ports/(something appt) directory and make your own package. Everything else you might need is in /ts/TS_ENVand /ts/bin

thinstation's People

Contributors

beimhoff avatar crose-project avatar dobromyr avatar donald-cupp avatar doncuppjr avatar ecoutinho avatar fanuelsen avatar geoffhouse avatar hadyos avatar jackburton79 avatar jens-maus avatar jshaw-pipe avatar justinchevrier avatar map7 avatar marcuseyre avatar mzimmerman avatar nneul avatar paepke avatar panaceya avatar retrry avatar robkegeenen avatar rohrbachger avatar ropetry avatar shweew avatar silviogarbes avatar sqnoc avatar teha-at avatar thinstation avatar trentasis avatar ts-michaelk avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

thinstation's Issues

Ica Client download failure

Hello! When i try to build the thinstation image it cancels with this error:
cp: cannot stat '//home/installs/linuxx86_12.1.0.203066.tar.gz': No such file or directory

Error has occured copying file
Build Aborted

HDMI/DisplayPort based audio sporadically not working after boot up...

Since a few kernel versions (I think since 3.11.x) we are having problems with thinstation in combination with intel NUC based thin clients and HDMI/DisplayPort audio output being recognized on boot up.

After some investigation it bounds down to seeing the following in "dmesg" output if HDMI output is not being recognized:

...
snd_hda_intel 0000:00:1b.0: irq 59 for MSI/MSI-X
hda-i915: get_power symbol get fail
hda-intel Error request power-well from i915
input: HDA Intel PCH Headphone as /devices/pci0000:00/0000:00:1b.0/sound/card1/input5
input: HDA Intel PCH Mic as /devices/pci0000:00/0000:00:1b.0/sound/card1/input4
[drm] Memory usable by graphics device = 2048M
i915 0000:00:02.0: setting latency timer to 64
i915 0000:00:02.0: irq 60 for MSI/MSI-X
...

Please note the get_power symbol get fail message and that only two audio devices (headphone and mic are recognized. As a results pulseaudio then ends up showing only these devices and omitting the HDMI/DisplayPort connected devices.

However, with no particular logic/reason sometimes the boot up of the same machine setup results in working HDMI/DisplayPort audio output . In these cases the dmesg output shows correctly all audio devices:

...
i915 0000:00:02.0: setting latency timer to 64
i915 0000:00:02.0: irq 59 for MSI/MSI-X
...
snd_hda_intel 0000:00:1b.0: irq 60 for MSI/MSI-X
snd_hda_intel 0000:00:03.0: irq 61 for MSI/MSI-X
Switched to clocksource tsc
input: HDA Intel HDMI HDMI/DP,pcm=7 as /devices/pci0000:00/0000:00:03.0/sound/card0/input6
input: HDA Intel HDMI HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:03.0/sound/card0/input5
input: HDA Intel PCH Headphone as /devices/pci0000:00/0000:00:1b.0/sound/card1/input8
input: HDA Intel PCH Mic as /devices/pci0000:00/0000:00:1b.0/sound/card1/input7
...

Please note the difference in the order of i915 setup (different irq assignments even) and that there are two snd_hda_intel assignments if the HDMI/DP setup works.

Question is now, why does it sometimes fail and sometimes it works? In fact, when booting the latest Ubuntu 14.04 version (with kernel 3.13.0) it always works no matter how often the system is rebooted.

So any hint in fixing or even debugging the issue a bit more is very welcome. Please find attached the corresponding dmesg outputs for the working and broken case including the pactl outputs showing that only one sink is available in case no HDMI/DP audio is setup. Please also not that, despite not seeing the second snd_hda_intel device in the dmesg message it always shows up in the "lspci" output.

/bin/Xorg has incorrect permissions

Recently our Thinstation installation stopped working for certain thin clients. After investigation we found that these clients are using ATI Radeon cards and thus are loading the radeon driver for Xorg:

...
[   179.936] (II) RADEON(0): EXA: Driver will allow EXA pixmaps in VRAM
[   179.936] (==) RADEON(0): DPI set to (96, 96)
[   179.937] (II) Loading sub module "fb"
[   179.937] (II) LoadModule: "fb"
[   179.939] (II) Loading /usr/lib/xorg/modules/libfb.so
[   179.942] (II) Module fb: vendor="X.Org Foundation"
[   179.942]    compiled for 1.17.1, module version = 1.0.0
[   179.943]    ABI class: X.Org ANSI C Emulation, version 0.4
[   179.943] (II) Loading sub module "ramdac"
[   179.943] (II) LoadModule: "ramdac"
[   179.944] (II) Module "ramdac" already built-in
[   179.944] (II) UnloadModule: "modesetting"
[   179.945] (II) Unloading modesetting
[   179.945] (II) UnloadModule: "fbdev"
[   179.946] (II) Unloading fbdev
[   179.946] (II) UnloadSubModule: "fbdevhw"
[   179.947] (II) Unloading fbdevhw
[   179.948] (--) Depth 24 pixmap format is 32 bpp
[   179.948] Unable to retrieve master
[   179.949] (EE) 
Fatal server error:
[   179.950] (EE) AddScreen/ScreenInit failed for driver 0
[   179.950] (EE) 
[   179.951] (EE) 
Please consult the ThinStation made by Don Cupp support 
     at http://www.thinstation.org
 for help. 
[   179.952] (EE) Please also check the log file at "/home/tsuser/.local/share/xorg/Xorg.0.log" for additional information.
[   179.953] (EE) 
[   180.024] (EE) Server terminated with error (1). Closing log file.

After investigation via 'strace' we found:

open("/dev/dri/card0", O_RDWR|O_LARGEFILE) = 11
ioctl(11, 0xc0106407, 0xff94daf0)       = 0
...
ioctl(11, 0xc018645c, 0xff94dc48)       = 0
ioctl(11, 0x641e, 0)                    = -1 EACCES (Permission denied)

After some searching on the web we found the following reference to the exact same problem:

http://unix.stackexchange.com/questions/178883/running-x-without-root

There people were having the same problem when starting Xorg in non-root mode. Thus, we further investigated and identified that compare to our old thinstation version the latest master branch of thinstation also starts Xorg as 'tsuser' and not as 'root. Thus, we investigated regarding the reasons for that:

Old Xorg file permission are:

# ls -la /bin/Xorg 
-rwsr-xr-x    1 root     root       2233228 May 20 11:37 /bin/Xorg

Latest master branch of thinstation shows:

# ll /bin/Xorg 
-rwxr-xr-x    1 tsuser   tsuser     2233228 Jun 10 13:56 /bin/Xorg

Thus, the suid bit and user binding to 'root' have been removed.

The following change does, however, restore this old permission setup and get Xorg working again for the thin clients with radeon cards:

hzdr@d5309c2

Would be great to identify the root of the issue appearing and to proper fix it in the upstream version of thinstation. Any idea what this might cause?

freerdp upgrade and bug

Hi,

We have detected some problems with latest versions of rdekstop 1.8.3, and seems that latest versions of freerdp (git from master) has solved this issues, it will be great to upgrade freerdp to latest master branch

Also, we have detected that during test of freerdp appears a dialog "preparing to run freerdp", I have tested removing files:
./ts/build/packages/freerdp/build/extra/etc/cmd/freerdp.getuser
./ts/build/packages/freerdp/etc/cmd/freerdp.getuser

and then withi dialog has disappeared

With rdekstop was working OK, without dialog and double auth

Can you remove both files and upgrade freerdp to latest master branch?

PKG file used to upgrade

Description: Free RDP client

URL: http://www.freerdp.com/

Maintainer: Donald A. Cupp Jr. (don cupp jr at ya hoo dot com)

Depends on: xorg-libx11

name=freerdp
version=2.0-dev
release=master

build() {
git clone git://github.com/FreeRDP/FreeRDP.git -b ${release}
cd FreeRDP
cmake . -DCMAKE_INSTALL_PREFIX=/usr
-DCMAKE_INSTALL_LIBDIR=lib
-DDOCBOOKXSL_DIR=/usr/share/sgml/docbook/xsl-ns-stylesheets
-DCMAKE_BUILD_TYPE=Release
-DWITH_PCSC=ON
-DBUILD_SHARED_LIBS=ON
-DWITH_CHANNELS=ON
-DWITH_CHANNELS_PRINT=ON
-DWITH_SERVER=OFF
-DWITH_CLIENT=ON
-DWITH_PULSE=ON
-DWITH_ALSA=ON
-DWITH_CUPS=ON
-DWITH_FFMPEG=ON
-DCHANNEL_URBDRC_CLIENT=ON
-DWITH_GSTREAMER=ON
-DWITH_DIRECTFB=OFF
-DWITH_XINERAMA=ON
-DWITH_CUNIT=OFF
-DWITH_JPEG=ON
-DWITH_IPP=OFF
-DWITH_NPP=OFF
-DWITH_MANPAGES=ON
-DWITH_SAMPLE=ON

    make
    make DESTDIR=$PKG install

}

and then
pkgmk -u -d -um
pkgmk -u
pkgmk -uf
pkgmk -u
update freerdp

Latest version freerdp solved many errors, for example allow rdp to w2003

Can you upgrade freerdp and then delete freerdp.getuser that generates problems with freerdp dialog?

Thanks

hwlister not working?

Looks like something is broken in latest thinstation builds. After system is loaded - there are no files like /var/log/firmware.log. In addition, i modified file /etc/udev/scripts/firmwarelog.sh to:

!/bin/sh
echo "check!" >> /var/log/firmware.log
if [ "`echo $@ |cut -d '.' -f1 |grep -c -e '/'`" -gt "0" ]; then
    echo "firmware `echo $@ |cut -d '.' -f1 |cut -d '/' -f2`" >> /var/log/firmware.log
else
    echo "firmware `echo $@ |cut -d '.' -f1`" >> /var/log/firmware.log
fi
exit 0

... and looks like it not executed at all - file /var/log/firmware.log still not exists. However, firmware is loaded and i need to get full list of needed firmware.

last change to splash_comm_send() causes login to stall

I have just noticed that you latest change to splash_comm_send() causes that a ssh login or console login to be stalled because the /lib/splash/cache/.splash fifo file is still present and the /etc/profile file tries to ensure that the splash screen is not active due to enforcing splash_exit() again. This end up in a login to stall.

With the following change I tried to compensate for that, but IMHO it is not perfect to assign tsuser rights to the fifo file:

hzdr@8ee93eb

A better approach would be if the splash daemon itself could remove the fifo or at least the corresponding pid file so that within splash_comm_send() we can check if the daemon is still running by checking if the pid file still exists. Or do you have any other smoother idea in mind?

"parallel: Error: Cannot write to /home/XXX/.parallel/ignored_vars"

The recent 'master' branch of thinstation causes the following errors to appear:

Adding Library Dependencies

parallel: Error: Cannot write to /home/XXX/.parallel/ignored_vars
parallel: Error: Run 'parallel --record-env' in a clean environment first.
[...]

It seems that the root of the cause is, that ${HOME} within chroot doesn't point to /root but to the directory of the user issuing the 'sudo' command. After modiying /ts/TS_ENV to contain

export HOME=/root

everything works fine again.

CVE-2015-0235: glibc "GHOST" vulnerability

I see that the Thinstation 5.3-Stable branch currently has glibc 2.13, which is listed as vulnerable to the GHOST issue (CVE-2015-0235). I realise that the potential impact for a client system (especially a thin client) is pretty low, but is there a plan to patch ThinStation to fix the issue?

(guess who's having to write up a formal report for the auditor about our company's response...)

unsquashfs: error while loading library 'liblzma.so.5'

when building PXE images with the current 'master' branch of thinstation unsquashing of the lib.squash file fails because initrd seems to be missing the required liblzma.so.5 library file, thus the "unsquashfs" command throws an error accordingly.

Autoconnection SAMBA folder

In thinstation there is no smbmount.
For automatic connection of the samba folder it is necessary to change in the packages/netfiles/etc/init.d/filesystem_network file

if ! pkg_initialized $PACKAGE; then
if [ -n "$NET_SMB_SERVER" ]
&& [ -e /bin/smbmount ]
&& [ -e /bin/smbmnt ]; then
mkdir /mnt/smb
smbmount $NET_SMB_SERVER /mnt/smb -n -o
username=$NET_SMB_USER,
password=cat /etc/.storage,
workgroup=$NET_SMB_WORKGROUP

to

if ! pkg_initialized $PACKAGE; then
if [ -n "$NET_SMB_SERVER" ]; then
mkdir /mnt/smb
mount -t cifs -o user=$NET_SMB_USER,
password=cat /etc/.storage
$NET_SMB_SERVER /mnt/smb

to uncomment in build.conf.example module cifs and package samba-client, and to set param storagepasswd.

Nvidia nouveau driver missing library

When I add nouveau driver to thinstation error is shown about missing library and Xorg fails to start:
Adding library dependencies for nouveau_dri.so
Could not find libdrm_nouveau.so.1 !
Adding library dependencies for nouveau_vieux_dri.so
Could not find libdrm_nouveau.so.1 !

Building thinstation gives lots of errors and fails since beginning of May

Since your latest changes to thinstation building it shows now the following error:

[...]
Adding Library Dependencies

perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
    LANGUAGE = "POSIX",
    LC_ALL = (unset),
    LC_COLLATE = "POSIX",
    LC_CTYPE = "en_US.UTF-8",
    LC_TIME = "C",
    LANG = "C"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").

[...]

find: `boot-images/pkg-packages/ca-bundle/lib': No such file or directory
rm: missing operand
Try 'rm --help' for more information.
find: `boot-images/pkg-packages/ca-bundle/lib': No such file or directory
find: `boot-images/pkg-packages/ca-bundle/lib': No such file or directory
rm: missing operand
Try 'rm --help' for more information.
find: `boot-images/pkg-packages/ca-bundle/lib': No such file or directory
rm: missing operand
Try 'rm --help' for more information.

[...]

+ Adding splash boot logo

1024x768

Stripping Enabled
    RAM Usage before stripping  251088 KiloBytes
./setup-chroot: line 143: 14263 Segmentation fault      (core dumped) chroot /$PWD /bin/bash --rcfile ./ts/TS_ENV

As you can see there seem to be 3 problems:

  1. While search/adding library dependencies perl complains about a missing en_US.UTF-8 locale. However, nothing has changed here.
  2. we are adding 'ca-bundle' as a pkg here in our conf file and it seems something is not working correctly anymore with that approach
  3. When preparing the final images thinstation segfaults now when stripping binaries.

Would be good if these problems could be solved quickly, especially the 3. issue seems to be quite worse.

splash screen not shut down correctly?!?

Since a few weeks we are having trouble with some of our thin clients using thinstation (HZDR fork). The problem users were reporting is that they could not press "F2" as they will always end up in the splash screen being displayed without being able to exit that situation.

After some investigation we found that the splash screen daemon (fbsplashd) is still running for these systems and as soon as we did a remote ssh connection the splash screen immediately disappeared. After further investigation we found that within /etc/profile the exit of splash screen is enforced by explicitly calling 'splash_exit'. That's the reason why the splash screen disappears when login in via ssh.

After some more investigation we finally added a workaround to our startup script by explicitly sending an "exit" command to the fbsplash daemon via its fifo pipe. This workaround is shown here:

hzdr@512b81e

Now everything works as expected and the F2 key is not reserved for switching to/from the splash screen. They question remains, however, why this happens. To me it seems to be a runtime problem as some client are more prone to this problem than others. In addition, the problem didn't exist several weeks ago when we did our last official HZDR-fork release (1.7). In fact, at the end of April it seems everything was still working fine without having this F2 problem.

thinstation 5.2 + thinlinc = no correct multi-monitor setup in remote session

Please note the following reported issues to the makers of ThinLinc:

https://www.cendio.com/bugzilla/show_bug.cgi?id=5182

Here I reported a problem with the latest Thinstation version 5.2 which comes with Xorg 7.7 and doesn't seem to correctly setup multi-monitor sessions. I would be curious if someone can reproduce the problem with ThinLinc and Thinstation 5.2 and see where the problem might be originating from. Also note that running freerdp in the same multi-monitor setup doesn't show that problem seeing a correct multi-monitor freerdp session being setup.

Hints on how to debug this situation are welcome.

using "pkg" instead of "package" in build.conf doesn't install packages anymore...

When using "pkg" instead of "package" in build.conf thin station should build external package in so-called *.pkg files. This worked fine a few month ago but now it doesn't work anymore and just creates almost empty *.pkg files.

Just try to define "pkg firefox" in build.conf which should trigger a download of firefox following a normal package install. Now with 5.2 (latest master branch in git) this doesn't seem to work anymore and will not download the correct external package file.

pulseaudio daemon dies unexpectedly

I updated thinstation to 79853bf and got strange issue with pulseaudio (before i use only alsa as sound engine). After system startup sound works fine, but after a few starts of any program, that used audio output (freerdp, mplayer, etc) - pulseaudio daemon process terminated and then i got errors like:

MPlayer SVN-r33996-snapshot-4.5.3 (C) 2000-2011 MPlayer Team

Playing stereo-test.wav.

Cache fill:  0.00% (0 bytes)   

Audio only file format detected.
Load subtitles in ./
==========================================================================
Opening audio decoder: [pcm] Uncompressed PCM audio decoder
AUDIO: 44100 Hz, 2 ch, s16le, 1411.2 kbit/100.00% (ratio: 176400->176400)
Selected audio codec: [pcm] afm: pcm (Uncompressed PCM)
==========================================================================
[AO_ALSA] alsa-lib: pulse.c:243:(pulse_connect) PulseAudio: Unable to connect: Connection refused

[AO_ALSA] Playback open error: Connection refused
Failed to initialize audio driver 'alsa'
Could not open/initialize audio device -> no sound.
Audio: no sound
Video: no video


Exiting... (End of file)

Here is pulseaudio debug log (from restart to abnormal exit): http://pastebin.com/rXjYRXFJ
Got them by command # pulseaudio --log-level=debug --log-target=stderr --log-time=true >> /var/log/pulse.log 2>&1

AMD Radeon based ThinClient stopped working with kernel 4.1.1

After having upgraded to your latest changes with integrating kernel 4.1.1 some of our AMD Radeon-based thin clients stopped working properly. These clients are Fujistu Futro S700 systems which have an AMD Radeon HD 6250 graphics card embedded.

Right after loading the kernel from the PXE server these systems end up with a plain black screen and the monitor shows no connection after a certain time.

After some testing I found out that I can set "radeon.modeset=0" and the client will then keep its monitor connection, will not show the splash screen and then stops with an error loading X11 because the radeon driver is of course not setup correctly.

Before I am going to dive deeper in this situation, perhaps you have some idea which kernel config parameter might be the reason why the radeon frame buffer stopped working with kernel 4.1.1? Would be really good to get these systems running again with thinstation.

sd card or usbdevice

We can upgrade Thinstation 5.4 because TS5.4 and executing df -h any device is showed with our config, we use ts-classic, we have tried with default config build.conf and thinstation.conf.builtime from defautl config and with this config seems OK, appears /mnt/mnt/usbdevice/sda1 device but we can't fins where is the problem...
what package or config is needed to obtain mount point for sd card or usbdevices with df -h ?

Thanks

Isolinux chokes on Older Machines

Hello, this project looks very promising.

I ran across this issue the other day while testing this on several older machines. I realize this issue is with ISOLinux however I thought you should be aware of it as well since it will impact users of this project if they are not aware of it, and have similar hardware to what I was using.

The issue is that the bootloader (ISOLinux) would fail to boot and hang.
The Motherboard was a G31T-M V1.0. AMI Bios release 2010. The CD-Rom drives were IDE cabled from Dell. The same issue occurs with the Optiplex 210L as well and most likely with the Dell Optiplex line motherboards older than Optiplex 320, and/or with their CD-Roms.

It is recommended in the FAQ to use the Smart Boot Manager bootloader as an alternative for these machines, unfortunately it was not entirely straightforward on how to successfully integrate this into a working Thinstation CD on these machines. Additionally it didn't help matters that there is a lot of misinformation out there when researching any solution related to bootable cd images.

In the end I simply didn't have the time to pursue a solution further. I have included what I attempted in the hope it saves time for whoever is seeking a solution moving forward.

Several attempts were made with the Smart Boot Manager that failed, the build appeared to be successful and would work on the newer machines with no issue, however; these specific machines would not boot, (hang).

The next promising solution was to use Grub4Dos to wrap the ISO but unfortunately this fails at the initrd stage which is understandable since it is an experimental feature and there appears to be a known issue addressing the device once the isolinux bootloader enters protected mode.

This was very close and I feel like a solution might be forthcoming given enough time. It would boot and load the isolinux bootloader and vmlinuz kernel however it hangs at the initrd phase which is more than any other solution I tried.

Varying configurations below were attempted to bypass this issue, however; none worked:

For devices, hd32 and 0xFF were tried, the +1 syntax was tried for chainloader (both omitting boot and including) to load the entire partition. map --mem was also attempted once to determine if the boot issue was due to non-contiguous files, it was not.

Title Thinstation
map (bd)/TS.iso (hd32)
map --hook
root (hd32)
chainloader (hd32)
boot //removed for chainloader+1

Best Regards,
D.

Flash download wget complains about certificate

INSTALLING FLASH
FLASH is not installed, we need to setup binary file.
This only needs to be done once.

Continue? (Y/N)
y

Downloading from Net.....
--2015-07-13 22:03:40-- https://fpdownload.adobe.com/get/flashplayer/pdc/11.2.202.468/install_flash_player_11_linux.i386.tar.gz
Resolving fpdownload.adobe.com (fpdownload.adobe.com)... 184.27.87.92
Connecting to fpdownload.adobe.com (fpdownload.adobe.com)|184.27.87.92|:443... connected.
ERROR: cannot verify fpdownload.adobe.com's certificate, issued by /C=NL/L=Amsterdam/O=Verizon Enterprise Solutions/OU=Cybertrust/CN=Verizon Akamai SureServer CA G14-SHA1': Unable to locally verify the issuer's authority. To connect to fpdownload.adobe.com insecurely, use--no-check-certificate'.

Error has occured downloading file
Build Aborted

Temporary workaround, change url to http in /thinstation/ts/build/build.urls
param flashurl http://....

Probably figure why wget doesn't like this Akami certificate is better solution.

SCREEN_X_FONT_SERVER causing Xorg segfaults

Today I tried to set a font server via the SCREEN_X_FONT_SERVER option in thinstation.conf.buildtime and found that the Xorg server immediately exists after quickly showing some progress. It exits with an error and automatically shutdown the machine afterwards.

After some investigation and log file checking I found that Xorg was exited with a segfault which might point at some more severe problem within the Xorg port in thinstation.

Here are the relevant portions of the Xorg.log file:

X.Org X Server 1.11.4
Release Date: 2012-01-27
[    89.600] X Protocol Version 11, Revision 0
[    89.600] Build Operating System: ThinStation 5.0 Thinstation
[    89.600] Current Operating System: Linux fwpnuc33 3.10.27TS_SMP #1 SMP PREEMPT Tue Jan 21 20:07:37 UTC 2014 i686
[    89.600] Kernel command line: initrd=thinstation/initrd video=uvesafb:800x600-16,mtrr:0,ywrap splash=silent,theme:default console=tty1 loglevel=3 LM=3 BOOT_IMAGE=thinstation/vmlinuz 
[    89.600] Build Date: 13 March 2012  04:51:16AM
[    89.600] Donald A. Cupp Jr. 
...
[    89.601] (++) FontPath set to:
    tcp/149.220.4.19:7100
...
[    91.440] 
Backtrace:
[    91.440] 0: Xorg (xorg_backtrace+0x3b) [0x81bc86b]
[    91.440] 1: Xorg (0x8048000+0x178335) [0x81c0335]
[    91.440] 2: (vdso) (__kernel_rt_sigreturn+0x0) [0x7778140c]
[    91.440] 3: Xorg (ProcessWorkQueue+0x30) [0x80795a0]
[    91.440] 4: Xorg (WaitForSomething+0x6e) [0x81b99fe]
[    91.440] 5: Xorg (0x8048000+0x2cb7e) [0x8074b7e]
[    91.440] 6: Xorg (0x8048000+0x1afda) [0x8062fda]
[    91.440] 7: /lib/libc.so.6 (__libc_start_main+0xe6) [0x77315de6]
[    91.440] 8: Xorg (0x8048000+0x1abb1) [0x8062bb1]
[    91.440] Segmentation fault at address (nil)
[    91.440] 
Fatal server error:
[    91.440] Caught signal 11 (Segmentation fault). Server aborting
[    91.440] 
[    91.441] 
Please consult the ThinStation made by Don Cupp support 
     at http://www.thinstation.org
...
[    91.493] Server terminated with error (1). Closing log file.

Question is, can you reproduce that problem? Any hints?

Default install of /ts/ports/binary-core/firmware failed.

I just recognized that in a completely fresh thinstation checkout some firmware files were missing when the build job finished. After checking "/var/log/firmware.log" log file I could see the following:

-- cut here --
[...]
=======> WARNING: Footprint ignored.
=======> Building '/ts/ports/binary-core/firmware/firmware#git-1.pkg.tar.gz' succeeded.
prt-get: Using PKGMK_PACKAGE_DIR: /ts/ports/binary-core/firmware
prt-get: installing firmware git-1
prt-get: /usr/bin/pkgadd firmware#git-1.pkg.tar.gz
prt-get: build done Mon Nov 9 10:48:13 2015

lib/firmware/ath10k/QCA6174/hw2.1/board.bin
lib/firmware/ath10k/QCA6174/hw2.1/firmware-5.bin
lib/firmware/ath10k/QCA6174/hw3.0/board.bin
lib/firmware/ath10k/QCA6174/hw3.0/firmware-4.bin
lib/firmware/ath10k/QCA6174/hw3.0/notice_ath10k_firmware-4.txt
lib/firmware/ath10k/QCA988X/hw2.0/board.bin
pkgadd: listed file(s) already installed (use -f to ignore and overwrite)
-- cut here --

so it seems some other package is already installing some of these files which the main firmware file tries to install during build.

Also within the chroot I then got the same error:

-- cut here --
[root@TS_chroot]/ts/ports/binary-core/firmware# pkgadd firmware#git-1.pkg.tar.gz
lib/firmware/ath10k/QCA6174/hw2.1/board.bin
lib/firmware/ath10k/QCA6174/hw2.1/firmware-5.bin
lib/firmware/ath10k/QCA6174/hw3.0/board.bin
lib/firmware/ath10k/QCA6174/hw3.0/firmware-4.bin
lib/firmware/ath10k/QCA6174/hw3.0/notice_ath10k_firmware-4.txt
lib/firmware/ath10k/QCA988X/hw2.0/board.bin
pkgadd: listed file(s) already installed (use -f to ignore and overwrite)
-- cut here --

Using "-f" in the pkgadd job solved the problem and it overwrote the duplicate files accordingly and the subsequent build then didn't complain about missing firmware files when generating the pxe images.

USB Printer Redirection

i have installed thinstation on my thin client and i have connected HP Laserjet 1200 series to that through USB port.
and aslo i have selected these packages in bulid.conf to install:
package lp_server
package lpr
package lprng

in my tftp server set this parameters in file thinstation.conf.network

PRINTER_1_NAME="usb"
PRINTER_1_DEVICE=/dev/usb/lp0
PRINTER_1_TYPE=U

when i run this command lp_server show this messege:

"tcp_open: bind to '0.0.0.0 port 9100' failed - Address already in use"

Now my question are:
1-how can i use printer redirection feature in freerdp?
2-when i use wbar ms windows shortcut to use freerdp to connect rds win2008 system halt and shut it down

Running ThinStation on a Raspberry Pi

Hello, I have recently been getting more involved in virtualization and Raspberry Pis.
I was wondering if anyone has tried running Thinstation on a Raspberry Pi, if so were there any special steps that need to be taken to use Thinstation on it? Or if no one knows if it's been done, do you believe it's possible to be done?

with last git version of freerdp unable to load pulse plugin with error 4317

Hello,

based on Thinstation 5.4 I have updated freerdp to the last git version version 2.0.0-dev (git 8ba1b1c) (older versions i.e. 1.2.5 .show the same error)

If I try to start with the pulse-plugin I get the error code 4317

command: xfreerdp /sec-rdp /rfx /sound:sys:pulse /v:server

[10:49:21:750] [8696:8697] [INFO][com.freerdp.core.capabilities] - bitmapCodecCount: 1
[10:49:21:750] [8696:8697] [INFO][com.freerdp.core.capabilities] - codecGuid: 0x
[10:49:21:750] [8696:8697] [INFO][com.freerdp.core.capabilities] - 76772F12BD724463AFB3B73C9C6F7886
[10:49:21:750] [8696:8697] [INFO][com.freerdp.core.capabilities] - (CODEC_GUID_REMOTEFX)
[10:49:21:750] [8696:8697] [INFO][com.freerdp.core.capabilities] - codecId: 3
[10:49:21:750] [8696:8697] [INFO][com.freerdp.core.capabilities] - codecPropertiesLength: 49
[10:49:21:750] [8696:8697] [INFO][com.freerdp.core.capabilities] - Sending
[10:49:21:750] [8696:8697] [INFO][com.freerdp.core.capabilities] - FrameAcknowledgeCapabilitySet (length 8):
[10:49:21:750] [8696:8697] [INFO][com.freerdp.core.capabilities] - frameAcknowledge: 0x00000002
[10:49:21:822] [8696:8699] [ERROR][com.freerdp.channels.rdpsnd.client] - pulse entry returns error 4317
[10:49:21:822] [8696:8699] [ERROR][com.freerdp.channels.rdpsnd.client] - unable to load the pulse subsystem plugin because of error 4317
[10:49:21:822] [8696:8699] [ERROR][com.freerdp.channels.rdpsnd.client] - error connecting sound channel
[10:49:21:823] [8696:8697] [ERROR][com.freerdp.core] - rdpsnd_virtual_channel_client_thread reported an error. Error was 4317
[10:49:21:823] [8696:8697] [INFO][com.freerdp.client.x11] - Network disconnect!
[10:49:21:823] [8696:8697] [ERROR][com.freerdp.client.x11] - Failed to check FreeRDP file descriptor

If I use the last taged version 1.2: 1.2.0-beta1+android9 everything is OK.

With other dstros like Ubuntu I can compile and use freerdp the latest version without any problems. I guess there is different in pulselib between the dristros.

error 404 firmware-libertas

link broken

Installing Port firmware-libertas Could not find an archive.
Would you like to try and build it now? Y/N:yprt-get: installing /ts/ports/binary-core/firmware-libertas
=======> Downloading 'ftp://downloads.netgear.com/files/wn311t_4_2_setup.exe'.
--2015-10-05 08:09:41-- ftp://downloads.netgear.com/files/wn311t_4_2_setup.exe
=> `/ts/ports/binary-core/firmware-libertas/wn311t_4_2_setup.exe.partial'

Thinstation 5.2: hwclock not functional

In Thinstation 5.2 hwclock is not functional, I guess the rtc driver is missing.

ts_test:/etc/init.d# hwclock -r
hwclock: can't open '/dev/misc/rtc': No such file or directory
ts_test:/etc/init.d# find /dev -name rtc
ts_test:/etc/init.d#

In Thinstation 5.1:
ts_test:# hwclock -r
Wed May 21 09:21:15 2014 0.000000 seconds
ts_test:
# find / -name rtc
/proc/driver/rtc
/sys/devices/pnp0/00:06/rtc
/sys/class/rtc
/run/udev/links/rtc
/dev/rtc
ts_test:~#

incorrect permissions /dev/lp0 and /dev/usb/lp0

With 5.4 versión printer devices /dev/lp0 and /dev/usb/lp0 work if printers are attached and up before to boot thinstation, because in
ts / build / packages / lprng / etc / init.d / lprng

exist this:
chmod 666 /dev/lp0
chmod 666 /dev/usb/lp0

Our problem is if you attached or start your printer after thinstation boot, in this siutation printer can't work until thinstation is rebooted. We have tried with 2.2 versions and was working and problem is with permissions that are incorrect. I have searched but I can't find the issue...

Where is the problem?

Thanks

NET_NFS_SERVER dont work

build.conf
...
package netfiles
module autofs4 # Automount and autofs support
module ext4 # Ext4 file system support
module nfs # NFS file system support
module cifs # CIFS support (use either this or smbfs - not both)
...
thinstation.conf.buildtime
NET_NFS_SERVER="10.10.4.1:/home/thinstation"

BUT! when i deleted "lsmod | grep nfs &&" in
thinstation/ts/5.1/packages/netfiles/etc/init.d/filesystem_network
all work's fine

Submission: machine profiles

Attempting to attach machine profiles for HP t5710 and NeoWare Capio 508 I'm submitting for inclusion in Thinstation.

freerdp option with coma is not parse correctly

i use lastest git master.

I use this freerdp option:
SESSION_0_FREERDP_OPTIONS="/cert-ignore /sound /drive:*,hotplug"

In the rdp session explorer: i see this drive : "* on thinclient" (thinclient is my hostname) with nothing inside, and hotplug is not working.

in the root shell i see the ck-launch-session which is correct :
ck-launch-session xfreerdp /f /cert-ignore /sound /drive:*,hotplug /u:user
but for the xfreerdp process, the comma has been replace by a space:
xfreerdp /f /cert-ignore /sound /drive:* hotplug /u:user

I've try to escape the coma (/drive:*,hotplug) with no success.

Xorg tries to autoconfigure nv even if it's not available

I made a thinstation image which does not contain nv, but nouveau. However, when booted on PCs with nVidia graphics, Xorg tries to autoconfigure using the nv driver, which is not available.

As a workaround, I've done this hack, which works well, but I'm still wondering why it would autoconfigure nv if it's not even available.

diff --git a/ts/5.1/packages/xorg7/etc/init.d/xconf b/ts/5.1/packages/xorg7/etc/init.d/xconf
index 142e33d..cb94fb0 100755
--- a/ts/5.1/packages/xorg7/etc/init.d/xconf
+++ b/ts/5.1/packages/xorg7/etc/init.d/xconf
@@ -29,6 +29,10 @@ device_ ()
                done
        done

+       if [ -z "$X_DRIVER_NAME" ] && [ -e /sys/module/nouveau ] ; then
+               X_DRIVER_NAME="nouveau"
+       fi
+
        if [ -n "$X_DRIVER_NAME" ] || [ -n "$X_DRIVER_BUSID" ] || [ -s /tmp/x_Device ]; then
        CONF=/etc/X11/xorg.conf.d/07-device.conf
                                                echo -e "Section \"Device\""                    > $CONF

Thinstation tries to execute "quiet" from kernel command line

When I add "quiet" to the kernel command line (mainly to have a nice splash screen all the way from pxelinux vesamenu to the final X without any messages), there are lots of messages that "quiet" is being interpreted as a command and cannot be found.

Problems with upgrade 2.2 to 5.4

We are tying to upgrade from thinstation 2.2 to latest 5.4 and we have detected some problems:

1.- we use as ts workstation in session 0,and with thinstation 2.2 all boot log was recorded in ctrl+alt+f1, but with this version any is showed after the boot in f1 session, how can I do this?
2.- we need to reduce as possible size and boot time, as similar as possible to 2.2 version. Now we are using xfce and rdesktop with hwlister, how can we reduce size and boot? Fastboot, initr compression,...? We only use thinstation as rdesktop client, and with new versions I'm not sure if we can disable any windowsmanager, icewm, xfwm, trueteype fonts in build.conf and only keep session_0 as rdesktop sessions with printers... we only need this..
3.-with package www we have an administartion site on port 6800 as it was described in 2.2, but with 5.4 without a shortcut to vnc remote control. We have enabled xorgvnc, how can we recover a shortcut from www to 5800 site?

Thanks

package dmidecode

It is possible to add dmidecode as package in thinstation, I have checked that in crux this package exist, can you add or detail how can I add?

Thanks

errors.txt contains 2 errors

Hi,

With Thinstation 5.4 we have detected that in /var/log/errors.txt cotnains 2 errors:

Sep 23 12:38:39 (none) user.err kernel: devpts: called with bogus options
Sep 23 12:38:39 (none) user.err kernel: bbswitch: version magic '3.18.20TS preempt mod_unload 686 ' should be '3.18.20TS_SMP SMP preempt mod_unload 686 '

I don't know where is the source of this problems, what can I do to solve?

Thanks

can't chroot

Hi, i followed the instructions on a centos 6 machine.

I get:
./setup-chroot
chroot: failed to run command `/ts/TS_ENV': No such file or directory

The file is there and executable. What's wrong?

Not work param keyfile ./id_rsa

In a script of build the skel folder is passed (the way of ./tmp-tree/etc/.ssh needs to be changed to ./tmp-tree/etc/skel/.ssh)

echo -e "Checking for Key File"

if [ -e $PACDIR/keyfile.param ]; then
if [ -e "$ts_keyfile" ] ; then
if [ ! -e ./tmp-tree/etc/skel/.ssh ] ; then
mkdir -p ./tmp-tree/etc/skel/.ssh
fi
cp $ts_keyfile ./tmp-tree/etc/skel/.ssh
else
echo "Key file not found, build aborted."
remove_files
exit 1
fi
fi

FLASH Problem

here is my terminal output

FLASH is not installed, we need to setup binary file.
This only needs to be done once.

Continue? (Y/N)
y

Downloading from Net.....
Using system proxy, or not using any proxy to connect to Internet.
WARNING: timestamping does nothing in combination with -O. See the manual
for details.

--2015-11-25 04:27:09-- http://fpdownload.adobe.com/get/flashplayer/pdc/11.2.202.481/install_flash_player_11_linux.i386.tar.gz
Resolving fpdownload.adobe.com (fpdownload.adobe.com)... 23.49.10.146
Connecting to fpdownload.adobe.com (fpdownload.adobe.com)|23.49.10.146|:80... connected.
HTTP request sent, awaiting response... 404 Not Found
2015-11-25 04:27:10 ERROR 404: Not Found.

WARNING: timestamping does nothing in combination with -O. See the manual
for details.

--2015-11-25 04:27:10-- http://fpdownload.adobe.com/get/flashplayer/pdc/11.2.202.481/install_flash_player_11_linux.i386.tar.gz
Resolving fpdownload.adobe.com (fpdownload.adobe.com)... 23.49.10.146
Connecting to fpdownload.adobe.com (fpdownload.adobe.com)|23.49.10.146|:80... connected.
HTTP request sent, awaiting response... 404 Not Found
2015-11-25 04:27:11 ERROR 404: Not Found.

Error has occured downloading file
Build Aborted

Unable to connect HP usb printer in thinstation 5.2

I have booted a client with thinstation 5.2. A printer (HP 2300 Laser Jet) is connected to that machine
I am unable to find out that how this printer will be redirected through rdesktop or anyother war around that i can access that printer into my remote machine

Assistance will be highly appreciated

missing 'ts/5.1/packages/base/etc/rc2.d/S02profile_setup' breaks net_files functionality

In one of your recent commits (71efa01) you have removed the "ts/5.1/packages/base/etc/rc2.d/S02profile_setup" link in the hope to generate smaller builds. However, this caused that when using the "netfiles" package, e.g. the /home/tsuser/ directory is not existing when the get_ssh_known_hosts() function in ts/5.1/packages/netfiles/etc/init.d/network_files tries to generate the .ssh directory for storing the known_hosts file. Thus we reverted that change and restored the S02profile_setup link and everything is working fine again.

So I am curious why you removed that link initially and kept S126profile_setup only.

add perl to thinstation from ports

I have a problem about ports with thinstation, I have searched in thinstation list and wiki and I can't find any information about how to install a package from a port, for example I need to install perl and some modules of perl, for example
Digest::MD5
XML::Simple
Net::IP:
LWP

It seems that this software is in default ports of thinstation, but I can't find how to install and configure, I have tried with package perl and package perl or package perl-digest-md5 in build.conf but we always receive package not found, where is my problem?

Thanks

dmidecode buil error permission denied

During build with dmidecode package we receive:
./build: line 1053: ./packages/dmidecode/build/install: Permission denied

If we manually assigna chmod 775 to
./packages/dmidecode/build/install
./packages/dmidecode/build/remove

then works, but I can't find where I have to assign this permissions to correct this bug...

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.