<xmp><!-- <body><!--'"</title></head>--> <script type="text/javascript"> //OwnerIQ var __oiq_pct = 50; if( __oiq_pct>=100 || Math.floor(Math.random()*100/(100-__oiq_pct)) > 0 ) { var _oiqq = _oiqq || []; _oiqq.push(['oiq_addPageBrand','Lycos']); _oiqq.push(['oiq_addPageCat','Internet > Websites']); _oiqq.push(['oiq_addPageLifecycle','Intend']); _oiqq.push(['oiq_doTag']); (function() { var oiq = document.createElement('script'); oiq.type = 'text/javascript'; oiq.async = true; oiq.src = document.location.protocol + '//px.owneriq.net/stas/s/lycosn.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(oiq, s); })(); } //Google Analytics var _gaq = _gaq || []; _gaq.push(['_setAccount','UA-21402695-19']); _gaq.push(['_setDomainName','tripod.com']); _gaq.push(['_setCustomVar',1,'member_name','trcmdisk01',3]); _gaq.push(['_trackPageview']); (function() { var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); })(); //Lycos Init function getReferrer() { var all= this.document.cookie; if (all== '') return false; var cookie_name = 'REFERRER='; var start = all.lastIndexOf(cookie_name); if (start == -1) return false; start += cookie_name.length; var end = all.indexOf(';', start); if (end == -1) end = all.length; return all.substring(start, end); } function getQuery() { var rfr = getReferrer(); if (rfr == '') return false; var q = extractQuery(rfr, 'yahoo.com', 'p='); if (q) return q; q = extractQuery(rfr, '', 'q='); return q ? q : ""; } function extractQuery(full, site, q_param) { var start = full.lastIndexOf(site); if (start == -1) return false; start = full.lastIndexOf(q_param); if (start == -1) return false; start += q_param.length; var end = full.indexOf('&', start); if (end == -1) end = full.length; return unescape(full.substring(start, end)).split(" ").join("+"); } function generateHref(atag, template){ atag.href=template.replace('_MYURL_', window.location.href.replace('http://', '')).replace('_MYTITLE_','Check%20out%20this%20Tripod%20Member%20site!'); } var lycos_ad = Array(); var lycos_onload_timer; var cm_role = "live"; var cm_host = "tripod.lycos.com"; var cm_taxid = "/memberembedded"; var tripod_member_name = "trcmdisk01"; var tripod_member_page = "trcmdisk01/linux/ndslu01.htm"; var tripod_ratings_hash = "1714052330:1c33ed2aa9f4cf1329e6af7a7805e458"; var lycos_ad_category = null; var lycos_ad_remote_addr = "209.202.244.9"; var lycos_ad_www_server = "www.tripod.lycos.com"; var lycos_ad_track_small = ""; var lycos_ad_track_served = ""; var lycos_search_query = getQuery(); </script> <script type="text/javascript" src="https://scripts.lycos.com/catman/init.js"></script> <script type='text/javascript'> var googletag = googletag || {}; googletag.cmd = googletag.cmd || []; (function() { var gads = document.createElement('script'); gads.async = true; gads.type = 'text/javascript'; var useSSL = 'https:' == document.location.protocol; gads.src = (useSSL ? 'https:' : 'http:') + '//www.googletagservices.com/tag/js/gpt.js'; var node = document.getElementsByTagName('script')[0]; node.parentNode.insertBefore(gads, node); })(); </script> <script type='text/javascript'> googletag.cmd.push(function() { googletag.defineSlot('/95963596/TRI_300X250_dfp', [300, 250], 'div-gpt-ad-1450204159126-0').addService(googletag.pubads()); googletag.defineSlot('/95963596/TRI_above_728x90_dfp', [728, 90], 'div-gpt-ad-1450204159126-1').addService(googletag.pubads()); googletag.defineSlot('/95963596/TRI_below_728x90_dfp', [728, 90], 'div-gpt-ad-1450204159126-2').addService(googletag.pubads()); googletag.pubads().enableSingleRequest(); googletag.enableServices(); }); </script> <script type="text/javascript"> (function(isV) { if( !isV ) { return; } var adMgr = new AdManager(); var lycos_prod_set = adMgr.chooseProductSet(); var slots = ["leaderboard", "leaderboard2", "toolbar_image", "toolbar_text", "smallbox", "top_promo", "footer2", "slider"]; var adCat = this.lycos_ad_category; adMgr.setForcedParam('page', (adCat && adCat.dmoz) ? adCat.dmoz : 'member'); if (this.lycos_search_query) { adMgr.setForcedParam("keyword", this.lycos_search_query); } else if(adCat && adCat.find_what) { adMgr.setForcedParam('keyword', adCat.find_what); } for (var s in slots) { var slot = slots[s]; if (adMgr.isSlotAvailable(slot)) { this.lycos_ad[slot] = adMgr.getSlot(slot); } } adMgr.renderHeader(); adMgr.renderFooter(); }((function() { var w = 0, h = 0, minimumThreshold = 300; if (top == self) { return true; } if (typeof(window.innerWidth) == 'number' ) { w = window.innerWidth; h = window.innerHeight; } else if (document.documentElement && (document.documentElement.clientWidth || document.documentElement.clientHeight)) { w = document.documentElement.clientWidth; h = document.documentElement.clientHeight; } else if (document.body && (document.body.clientWidth || document.body.clientHeight)) { w = document.body.clientWidth; h = document.body.clientHeight; } return ((w > minimumThreshold) && (h > minimumThreshold)); }()))); window.onload = function() { var f = document.getElementById("FooterAd"); var b = document.getElementsByTagName("body")[0]; b.appendChild(f); f.style.display = "block"; document.getElementById('lycosFooterAdiFrame').src = '/adm/ad/footerAd.iframe.html'; // DOM Inj Ad (function(isTrellix) { var e = document.createElement('iframe'); e.style.border = '0'; e.style.margin = 0; e.style.display = 'block'; e.style.cssFloat = 'right'; e.style.height = '254px'; e.style.overflow = 'hidden'; e.style.padding = 0; e.style.width = '300px'; var isBlokedByDomain = function( href ) { var blockedDomains = [ "ananyaporn13000.tripod.com", "xxxpornxxx.tripod.com" ]; var flag = false; for( var i=0; i<blockedDomains.length; i++ ) { if( href.search( blockedDomains[ i ] ) >= 0 ) { flag = true; } } return flag; } var getMetaContent = function( metaName ) { var metas = document.getElementsByTagName('meta'); for (i=0; i<metas.length; i++) { if( metas[i].getAttribute("name") == metaName ) { return metas[i].getAttribute("content"); } } return false; } var getCommentNodes = function(regexPattern) { var nodes = {}; var nodesA = []; var preferredNodesList = ['a', 'c', 'b']; (function getNodesThatHaveComments(n, pattern) { if (n.hasChildNodes()) { if (n.tagName === 'IFRAME') { return false; } for (var i = 0; i < n.childNodes.length; i++) { if ((n.childNodes[i].nodeType === 8) && (pattern.test(n.childNodes[i].nodeValue))) { var areaName = pattern.exec(n.childNodes[i].nodeValue)[1]; nodes[areaName] = n; } else if (n.childNodes[i].nodeType === 1) { getNodesThatHaveComments(n.childNodes[i], pattern); } } } }(document.body, regexPattern)); for (var i in preferredNodesList) { if (nodes[preferredNodesList[i]]) { if( isTrellix && nodes[preferredNodesList[i]].parentNode.parentNode.parentNode.parentNode ) { nodesA.push(nodes[preferredNodesList[i]].parentNode.parentNode.parentNode.parentNode); } else { nodesA.push( nodes[preferredNodesList[i]] ); } } } return nodesA; } var properNode = null; var areaNodes = getCommentNodes( new RegExp( '^area Type="area_(\\w+)"' ) ); for (var i = 0; i < areaNodes.length; i++) { var a = parseInt(getComputedStyle(areaNodes[i]).width); if ((a >= 300) && (a <= 400)) { properNode = areaNodes[i]; break; } } var propertyName = getMetaContent("property") || false; if( isTrellix && (properNode) ) { e.src = '/adm/ad/injectAd.iframe.html'; properNode.insertBefore(e, properNode.firstChild); } else if( isTrellix && !( properNode ) ) // Slap the ad eventhought there is no alocated slot { e.src = '/adm/ad/injectAd.iframe.html'; e.style.cssFloat = 'none'; var cdiv = document.createElement('div'); cdiv.style = "width:300px;margin:10px auto;"; cdiv.appendChild( e ); b.insertBefore(cdiv, b.lastChild); } else if( !isBlokedByDomain( location.href ) ) { var injF = document.createElement('iframe'); injF.style.border = '0'; injF.style.margin = 0; injF.style.display = 'block'; injF.style.cssFloat = 'none'; injF.style.height = '254px'; injF.style.overflow = 'hidden'; injF.style.padding = 0; injF.style.width = '300px'; injF.src = '/adm/ad/injectAd.iframe.html'; if( b && ( !isTrellix || ( typeof isTrellix == "undefined" ) ) ) // All other tripod props { var cdiv = document.createElement('div'); cdiv.style = "width:300px;margin:10px auto;"; cdiv.appendChild( injF ); b.insertBefore(cdiv, b.lastChild); } } }( document.isTrellix )); } </script> <div id="tb_container" style="background:#DFDCCF; border-bottom:1px solid #393939; position:relative; z-index:999999999!important"> <!--form name="search" onSubmit="return searchit()" id='header_search' > <input type="text" placeholder="Search" size=30 name="search2" value=""> <input type="button" value="Go!" onClick="searchit()"> </form> <style> form#header_search { width: 916px; margin: 0 auto 8px; position: relative; } form#header_search input { height: 40px; font-size: 14px; line-height: 40px; padding: 0 8px; box-sizing: border-box; background: #F4F2E9; border: 1px solid #BBB8B8; transition: background-color 300ms ease-out, color 300ms ease; } form#header_search input[type="text"] { width: 100%; } form#header_search input[type="text"]:focus { border-color: #A2D054; background-color: #fff; box-shadow: 0 0px 12px -4px #A2D054; } form#header_search input[type="button"] { position: absolute; top: 1px; right: 1px; opacity: 1; background: #DFDCCF; color: #463734; width: 125px; cursor: pointer; height: 38px; border: none; } form#header_search input[type="text"]:focus ~ input[type='button']:hover, form#header_search input[type='button']:hover { background-color: #A5CE56; color: #fff; } form#header_search input[type="text"]:focus ~ input[type='button'] { background-color: #52AEDF; color: #fff; } </style> <script> function searchit(){ // determine environment var search_env if (lycos_ad_www_server.indexOf(".pd.") > -1) { search_env = 'http://search51.pd.lycos.com/a/'; } else if (lycos_ad_www_server.indexOf(".qa.") > -1) { search_env = 'http://search51.qa.lycos.com/a/'; } else { search_env = 'http://search51.lycos.com/a/'; } var search_term = encodeURIComponent(document.search.search2.value) var search_url = search_env+search_term; window.open(search_url); return false } </script--> <style> .adCenterClass{margin:0 auto} </style> <div id="tb_ad" class="adCenterClass" style="display:block!important; overflow:hidden; width:916px;"> <div id="ad_container" style="display:block!important; float:left; width:728px "> <script type="text/javascript"> if (typeof lycos_ad !== "undefined" && "leaderboard" in lycos_ad) { document.write(lycos_ad['leaderboard']); } </script> </div> </div> </div> <script type="text/javascript"> if (typeof lycos_ad !== "undefined" && "slider" in lycos_ad) { document.write(lycos_ad['slider']); } </script> <!-- added 7/22 --> <div id="FooterAd" style="background:#DFDCCF; border-top:1px solid #393939; clear:both; display:none; width:100%!important; position:relative; z-index:999999!important; height:90px!important"> <div class="adCenterClass" style="display:block!important; overflow:hidden; width:916px;"> <div id="footerAd_container" style="display:block!important; float:left; width:728px"> <iframe id="lycosFooterAdiFrame" style="border:0; display:block; float:left; height:96px; overflow:hidden; padding:0; width:750px"></iframe> </div> </div> </div> --></xmp>


Linux logo

DSL utilities.

Home :: Info :: kurl :: runrman :: kopenvt :: shnetrik :: shlivecd :: bootuci :: Credits :: &c.


+++ kurl
#!/bin/sh
#========

echo ooo
echo external network protocol handler for firefox / opera
date +%G%b%d%a.%P%H:%M:%S
uname -srm

echo $1
KPROT=${1%%://*}
KHOST=${1##*://}
KHOST=$(echo ${KHOST} | sed "s_/__g")

# echo ${KPROT} :// ${KHOST}

# firefox passes the whole URL; opera strips the telnet://
case "${KPROT}" in
  "ping" ) aterm --title ${KPROT} -e $(zkp)/sh/runping ${KHOST} ;;
       * ) aterm --title ${KPROT} -e telnet ${KHOST} ;;
esac

exit 0


+++ runrman
#!/bin/sh
#========

echo ooo
# KPU=$(zkp)

# CircleOmega DSL driver for rman manpage formatter
# installs if necessary; checks if input is in gnuzip format
# VFU / midcomm integration: optional 2nd argument allows
# passing --dump parm to LYNX for flatfile viewers

INPUT=$1
LPARM=$2

RES=/opt/rman/usr/bin/rman
[ -f ${RES} ] || iwmenu rman --norun

echo executing ${RES} ...
${RES} -v
type ${RES} &>/dev/null || exit 1

PPROC=cat 
gunzip -c ${INPUT} &>/dev/null && PPROC="gunzip -c"

RMTMP=/tmp/rmantmp.html
${PPROC} ${INPUT} | ${RES} -S -f HTML >${RMTMP}

exec $(zkp)/sh/runlynx ${LPARM} ${RMTMP}
exit 0


+++ Virtual Console Manager
#!/bin/sh
#========

# kopenvt - general purpose script to disentangle the DSL console catastrophe
#           Screaming CuckooBroad Associates 2009
# no parms: issues openvt w/ switching, substitutes user & executes shell
#           (this creates an ordinary VT console for the DSL user)
# parm -u : (experimental resource) like default but only user passed to su
# parm -0 : issues deallocvt to clear out opened & exited VTs
# parm -x : invokes xinit in native, background mode, freeing the issuing console
#           (this mode permits X to start in the absence of an .xinitrc)
# parm -z : brings up in Shingledecker mode (cleanedup DSL startx)
#           legacy looping schema intended to support "switcher.lua"
# invocations: commandline, VFU, midcomm, Lynx

if [ -z $1 ]
then
  sudo openvt -s -- su - dsl -c bash
  exit 0
elif [ "$1" == "-u" ]
then
  shift
  sudo openvt -s -- su - dsl $@
  exit 0
elif [ "$1" == "-0" ]
then
  deallocvt
  exit 0
fi

# this is so it doesnt miss the XTdesktop icons
cd ~

# startx # (whatever)

if   [ "$1" == "-x" ]
then
  xinit &
elif [ "$1" == "-z" ]
then
# a la /usr/X11R6/bin/startx: hung in loop
# name retained for backward compatability
  BSKLUDGE=/tmp/xvesa
  touch ${BSKLUDGE}
  while [ -f ${BSKLUDGE} ]
  do
    rm -f ${BSKLUDGE}
    xinit &>/dev/null
  done
else
  echo $0 : undefined function
fi

exit 0


+++ shnetrik
#!/bin/sh
#========

echo ooo
echo netrik ...

KURL=$(zkp)/local/htm/ktux000.htm
[ -z $1 ] || KURL=$1
[ -z $2 ] || KURL=http://linux.die.net/man/1/$2

# canonical 0     1   2     3      4    5       6    7     (normal)
#  colors   black red green yellow blue magenta cyan white
#   are     8     9   10    11     12   13      14   15     (bold)

# netriks are hozed
# (normal): form / images / bold / link (remote) / main text
# (bold):   tab? / link (local) / header (big) / header

exec aterm \
  --color1 magenta \
  --color2 red     \
  --color5 yellow  \
  --color6 green   \
  --color7 cyan    \
                   \
  --color11 blue   \
  --color14 green  \
  --color13 white  \
  --color15 cyan   \
-name netrik       \
--title netrik     \
-e netrik --ignore-broken ${KURL} &

exit 0


+++ LiveCD ISO generator
#!/bin/sh
#========

echo ooo
echo CircleOmega Linux LiveCD ISO generator for DSL v1.02
date +%G%b%d%a.%P%H:%M:%S
uname -srm

# onepass mode creates bootable ISO image of frugal install from hda6
# interrupted then restarted "--genonly" allows augmentation of data areas
# clearing hda8 before execution is left to the operator

SYSTEM=/mnt/hda6
SOURCE=/mnt/hda8
TARGET=/mnt/hda8
ISONAM=gnulinux.iso

mount ${SOURCE} &>/dev/null

if [ "$1" != "--genonly" ]
then
  DSLROM=/mnt/auto/cdrom
  mount ${DSLROM} &>/dev/null

  echo "prepared to copy files to ${SOURCE}"
  echo 'press any key to continue (^C to abort)...'
  read aparm
  echo "copying files ..."

  cp -rp ${DSLROM}/KNOPPIX       ${SOURCE}
  cp -rp ${DSLROM}/boot          ${SOURCE}

  cp -rp ${SYSTEM}/backup.tar.gz ${SOURCE}
  cp -rp ${SYSTEM}/kpZone        ${SOURCE}
  cp -rp ${SYSTEM}/mydsl         ${SOURCE}
  cp -rp ${SOURCE}/mydsl/startup/bootuci.uci ${SOURCE}/mydsl

  sudo chmod -R 777 ${SOURCE}/boot
  rm -rf ${SOURCE}/boot/isolinux/german.kbd
  cp -rp ${SYSTEM}/kpZone/kData/unx/skel/isolinux/* ${SOURCE}/boot/isolinux

  ls -al ${SOURCE}
  umount  ${DSLROM} &>/dev/null
fi

echo "prepared to gen ISO on ${TARGET}"
echo 'press any key to continue (^C to abort)...'
read aparm
echo "genning ISO ..."

rm -rf ${TARGET}/${ISONAM} &>/dev/null

cd ${SOURCE}
sudo chown -R dsl.staff *
sudo chmod -R 777 *

mkisofs $2 -pad -l -r -J -V CircleOmega -no-emul-boot -boot-load-size 4 -boot-info-table -b boot/isolinux/isolinux.bin -c boot/isolinux/boot.cat -hide-rr-moved -o ${TARGET}/${ISONAM} ${SOURCE}

ls -al ${TARGET}
exit 0


+++ Bootable UCI generator
#!/bin/sh
#========

echo ooo
echo Bootable UCI bundler for DSL v3.01
date +%G%b%d%a.%P%H:%M:%S
uname -srm

# Script creates a user.tar.gz containing /opt/bootlocal.sh
# & bundles it into a UCI of size greater than 2048 bytes.
# Placed in /mydsl on a remastered LiveCD this UCI can bring up
# the user environment without a restore= parm in isolinux.cfg

echo
echo 'NB: to create bootuci.uci this script temporarily renames'
echo 'your *real* /opt/bootlocal.sh (!). Be sure it is backed up.'
echo 'press any key to continue (^C to abort)...'
read aparm

echo $0 proceeding ...
cd /opt
mv bootlocal.sh bootlocal.bak

cat > bootlocal.sh << :EOF:

#!/bin/sh

# Screaming CuckooBroad Associates 2009
# bootlocal.sh for DSL LiveCD UCI boot
# explicitly restores from user backup & transfers control

# in fond memory of Robert Shingledecker & John Murga
# please be sure to get on the internet sometime
# & read the GNU general public license in its entirety

KDSL=\$(cat /etc/sysconfig/mydsl.mount)
[ "\${KDSL}" == "/tmp" ] && KDSL=/cdrom

  tar -C / -xzf \${KDSL}/backup.tar.gz
  sudo umount /opt/bootuci &>/dev/null

/opt/bootlocal.sh &

exit 0

:EOF:

  sudo chmod 777 /opt/bootlocal.sh

  UCI=/opt/bootuci
  sudo umount ${UCI} &>/dev/null
  mkdir       ${UCI} &>/dev/null

  cp -p $(zkp)/local/img/DSLtux.png /opt
  sudo tar -C / opt/bootlocal.sh opt/DSLtux.png -czvf ${UCI}/user.tar.gz

  cp -p bootlocal.sh  bootlocaluci.sh
  rm    bootlocal.sh
  mv    bootlocal.bak bootlocal.sh

mkisofs -R -hide-rr-moved ${UCI} | create_compressed_fs - 65536 >/tmp/bootuci.uci

  sudo chmod 777 /tmp/bootuci.uci
  ls -al /tmp/boot*

exit 0


GPL
© 2011 TRCM TranceRave Capital Management

Screaming CuckooBroad Associates part of the CircleOmega organisation TRCM
<noscript> <!-- ooo