<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>desktop &amp;mdash; Paul Sutton</title>
    <link>https://personaljournal.ca/paulsutton/tag:desktop</link>
    <description>Personal Blog</description>
    <pubDate>Tue, 05 May 2026 18:14:34 +0000</pubDate>
    <item>
      <title>Xfce4 multiscreen support</title>
      <link>https://personaljournal.ca/paulsutton/xfce4-multiscreen-support</link>
      <description>&lt;![CDATA[Xfce4 multiscreen support&#xA;&#xA;As my netbook is running Debian 10 + XFCE 4 desktop then plugging in a vga cable which is attached to my TV gives me the option to use the TV as a display too.&#xA;&#xA;multiscreen&#xA;&#xA;So this gives various options, extending the display will then allow windows to be dragged over, so I can watch a full screen peertube video on the tv for example. &#xA;&#xA;Clicking the advanced option gives you the ability to fine tune this setup&#xA;&#xA;advanced&#xA;&#xA;Note Upon plugging in the VGA cable, the screen resolution will change and the dialogue box mentioned above will be displayed,  removing the cable should restore the display. &#xA;&#xA;As with anything Your mileage may vary with this*, but it seems to work really well. &#xA;&#xA;This article will be shared via rss and on Mastodon, if you need any help then I will do my best to help with this, but you may want to follow XFCE on Mastodon&#xA;&#xA;#debian,#buster,#xfce4,#desktop,#windowmanager,#gui,#screen,#multiscreen,#peertube,#video.&#xA;&#xA;a rel=&#34;license&#34; href=&#34;http://creativecommons.org/licenses/by-sa/4.0/&#34;img alt=&#34;Creative Commons Licence&#34; style=&#34;border-width:0&#34; src=&#34;https://i.creativecommons.org/l/by-sa/4.0/88x31.png&#34; //abr /This work is licensed under a a rel=&#34;license&#34; href=&#34;http://creativecommons.org/licenses/by-sa/4.0/&#34;Creative Commons Attribution-ShareAlike 4.0 International License/a&#xA;&#xA;hr&#xD;&#xA;&#xD;&#xA;table&#xD;&#xA;thead&#xD;&#xA;trtda rel=&#34;me&#34; href=&#34;https://qoto.org/@zleap&#34;Mastodon/a/td&#xD;&#xA;tda href=&#34;https://wiki.ircnow.org/?n=Shelllabs.Intro&#34;ShellLabs/td&#xD;&#xA;tda href=&#34;https://joinmastodon.org/&#34;Join Mastodon/a/td/tr/thead/table&#xD;&#xA;center&#xD;&#xA;AI statement : b Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. /b&#xD;&#xA;/center&#xD;&#xA;&#xD;&#xA;a href=&#34;https://liberapay.com/PaulSutton/donate&#34;img alt=&#34;Donate using Liberapay&#34; src=&#34;https://liberapay.com/assets/widgets/donate.svg&#34;/a&#xD;&#xA;]]&gt;</description>
      <content:encoded><![CDATA[<p>Xfce4 multiscreen support</p>

<p>As my netbook is running Debian 10 + XFCE 4 desktop then plugging in a vga cable which is attached to my TV gives me the option to use the TV as a display too.</p>

<p><img src="https://salsa.debian.org/zleap-guest/screenshots/-/raw/master/WindowManager/xfce4-multiscreen.png" alt="multiscreen"></p>

<p>So this gives various options, extending the display will then allow windows to be dragged over, so I can watch a full screen <a href="https://joinpeertube.org/" rel="nofollow">peertube</a> video on the tv for example.</p>

<p>Clicking the advanced option gives you the ability to fine tune this setup</p>

<p><img src="https://salsa.debian.org/zleap-guest/screenshots/-/raw/master/WindowManager/multidisplay-advanced.png" alt="advanced"></p>

<p><strong>Note</strong> Upon plugging in the VGA cable, the screen resolution will change and the dialogue box mentioned above will be displayed,  removing the cable <em>should</em> restore the display.</p>

<p>As with anything <em>Your mileage may vary</em> with this*, but it seems to work really well.</p>

<p>This article will be shared via rss and on Mastodon, if you need any help then I will do my best to help with this, but you may want to follow <a href="https://xfce.org/" rel="nofollow">XFCE</a> on <a href="https://fosstodon.org/@Xfce4me" rel="nofollow">Mastodon</a></p>

<p><a href="/paulsutton/tag:debian" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">debian</span></a>,<a href="/paulsutton/tag:buster" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">buster</span></a>,<a href="/paulsutton/tag:xfce4" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">xfce4</span></a>,<a href="/paulsutton/tag:desktop" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">desktop</span></a>,<a href="/paulsutton/tag:windowmanager" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">windowmanager</span></a>,<a href="/paulsutton/tag:gui" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">gui</span></a>,<a href="/paulsutton/tag:screen" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">screen</span></a>,<a href="/paulsutton/tag:multiscreen" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">multiscreen</span></a>,<a href="/paulsutton/tag:peertube" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">peertube</span></a>,<a href="/paulsutton/tag:video" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">video</span></a>.</p>

<p><a href="http://creativecommons.org/licenses/by-sa/4.0/" rel="nofollow"><img alt="Creative Commons Licence" style="border-width:0" src="https://i.creativecommons.org/l/by-sa/4.0/88x31.png"/></a><br/>This work is licensed under a <a href="http://creativecommons.org/licenses/by-sa/4.0/" rel="nofollow">Creative Commons Attribution-ShareAlike 4.0 International License</a></p>

<hr>

<p><table>
<thead>
<tr><td><a href="https://qoto.org/@zleap" rel="nofollow">Mastodon</a></td>
<td><a href="https://wiki.ircnow.org/?n=Shelllabs.Intro" rel="nofollow">ShellLabs</td>
<td><a href="https://joinmastodon.org/" rel="nofollow">Join Mastodon</a></td></tr></thead></table>

AI statement : <b> Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. </b>
</p>

<p><a href="https://liberapay.com/PaulSutton/donate" rel="nofollow"><img alt="Donate using Liberapay" src="https://liberapay.com/assets/widgets/donate.svg"></a></p>
]]></content:encoded>
      <guid>https://personaljournal.ca/paulsutton/xfce4-multiscreen-support</guid>
      <pubDate>Mon, 14 Dec 2020 07:30:00 +0000</pubDate>
    </item>
    <item>
      <title>FreeBSD 7</title>
      <link>https://personaljournal.ca/paulsutton/freebsd-7</link>
      <description>&lt;![CDATA[FreeBSD 7&#xA;&#xA;Further to my previous post I have been on IRC #freebsd in order to ask about what would be good to use for taking screen shots of desktop applications for example.   &#xA;&#xA;Scrot : is easy to use and you cam use this to take a picture of the whole screen,  this will be useful going forward with these posts.&#xA;&#xA;pkg install scrot&#xA;&#xA;For basic usage just type scrot at the console or in a terminal window. &#xA;&#xA;I have also installed simpleviewer, with&#xA;&#xA;pkg install simpleviewer&#xA;&#xA;However running this at the cli did do anything, you need to find the actual binary executable for this.  &#xA;&#xA;info -lx simpleviewer &#xA;&#xA;reveals sviewgl as the program you need to run.&#xA;&#xA;I am now pretty much set up for taking screenshots and being able to view then.  &#xA;&#xA;#bsd, #desktop, ##freebsd, #twm, #screenshots, #graphics, #viewing, #console, #gui&#xA;&#xA;Resources&#xA;&#xA;FreeBSD&#xA;Freenode &#xA;Freshports&#xA;&#xA;You can find me on Friendica at zleap@social.isurf.ca&#xA;&#xA;---&#xA;&#xA;cc-by logo&#xA;&#xA;Licenced under Attribution 4.0 International (CC BY 4.0)&#xA;&#xA;hr&#xD;&#xA;&#xD;&#xA;table&#xD;&#xA;thead&#xD;&#xA;trtda rel=&#34;me&#34; href=&#34;https://qoto.org/@zleap&#34;Mastodon/a/td&#xD;&#xA;tda href=&#34;https://wiki.ircnow.org/?n=Shelllabs.Intro&#34;ShellLabs/td&#xD;&#xA;tda href=&#34;https://joinmastodon.org/&#34;Join Mastodon/a/td/tr/thead/table&#xD;&#xA;center&#xD;&#xA;AI statement : b Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. /b&#xD;&#xA;/center&#xD;&#xA;&#xD;&#xA;a href=&#34;https://liberapay.com/PaulSutton/donate&#34;img alt=&#34;Donate using Liberapay&#34; src=&#34;https://liberapay.com/assets/widgets/donate.svg&#34;/a&#xD;&#xA;]]&gt;</description>
      <content:encoded><![CDATA[<p>FreeBSD 7</p>

<p>Further to my <a href="https://personaljournal.ca/paulsutton/freebsd-6" rel="nofollow">previous post</a> I have been on IRC <a href="/paulsutton/tag:freebsd" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">freebsd</span></a> in order to ask about what would be good to use for taking screen shots of desktop applications for example.</p>

<p>Scrot : is easy to use and you cam use this to take a picture of the whole screen,  this will be useful going forward with these posts.</p>

<p><strong>pkg install scrot</strong></p>

<p>For basic usage just type <strong>scrot</strong> at the console or in a terminal window.</p>

<p>I have also installed simpleviewer, with</p>

<p><strong>pkg install simpleviewer</strong></p>

<p>However running this at the cli did do anything, you need to find the actual binary executable for this.</p>

<p><strong>info -lx simpleviewer</strong></p>

<p>reveals <strong>sviewgl</strong> as the program you need to run.</p>

<p>I am now pretty much set up for taking screenshots and being able to view then.</p>

<p><a href="/paulsutton/tag:bsd" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">bsd</span></a>, <a href="/paulsutton/tag:desktop" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">desktop</span></a>, #<a href="/paulsutton/tag:freebsd" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">freebsd</span></a>, <a href="/paulsutton/tag:twm" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">twm</span></a>, <a href="/paulsutton/tag:screenshots" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">screenshots</span></a>, <a href="/paulsutton/tag:graphics" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">graphics</span></a>, <a href="/paulsutton/tag:viewing" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">viewing</span></a>, <a href="/paulsutton/tag:console" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">console</span></a>, <a href="/paulsutton/tag:gui" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">gui</span></a></p>

<p>Resources</p>
<ul><li><a href="https://www.freebsd.org/" rel="nofollow">FreeBSD</a></li>
<li><a href="http://www.freenode.net" rel="nofollow">Freenode</a></li>
<li><a href="https://www.freshports.org/" rel="nofollow">Freshports</a></li></ul>

<p><a href="https://social.isurf.ca/profile/zleap" rel="nofollow">You can find me on Friendica at zleap@social.isurf.ca</a></p>

<hr>

<p><img src="https://raw.githubusercontent.com/zleap/blogmedia/master/88x31.png" alt="cc-by logo"></p>

<p><a href="https://creativecommons.org/licenses/by/4.0/" rel="nofollow">Licenced under Attribution 4.0 International (CC BY 4.0)</a></p>

<hr>

<p><table>
<thead>
<tr><td><a href="https://qoto.org/@zleap" rel="nofollow">Mastodon</a></td>
<td><a href="https://wiki.ircnow.org/?n=Shelllabs.Intro" rel="nofollow">ShellLabs</td>
<td><a href="https://joinmastodon.org/" rel="nofollow">Join Mastodon</a></td></tr></thead></table>

AI statement : <b> Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. </b>
</p>

<p><a href="https://liberapay.com/PaulSutton/donate" rel="nofollow"><img alt="Donate using Liberapay" src="https://liberapay.com/assets/widgets/donate.svg"></a></p>
]]></content:encoded>
      <guid>https://personaljournal.ca/paulsutton/freebsd-7</guid>
      <pubDate>Sun, 22 Mar 2020 11:51:46 +0000</pubDate>
    </item>
    <item>
      <title>FreeBSD 6</title>
      <link>https://personaljournal.ca/paulsutton/freebsd-6</link>
      <description>&lt;![CDATA[FreeBSD 6&#xA;&#xA;Further to my previous post or probably more specifically the post before that I am sharing a little more about setting up twm. &#xA;&#xA;I have been trying to find a way to share my config files here.  The easiest way to this, so I thought, would be to copy the files to a removable media,  this failed.  So this morning I created a github repository and uploaded copies of the two files there. &#xA;&#xA;So firstly there is the xinitrc file as below&#xA;&#xA;!/bin/sh&#xA;&#xA;userresources=$HOME/.Xresources&#xA;usermodmap=$HOME/.Xmodmap&#xA;sysresources=/usr/local/etc/X11/xinit/.Xresources&#xA;sysmodmap=/usr/local/etc/X11/xinit/.Xmodmap&#xA;&#xA;merge in defaults and keymaps&#xA;&#xA;if [ -f $sysresources ]; then&#xA;&#xA;    xrdb -merge $sysresources&#xA;&#xA;fi&#xA;&#xA;if [ -f $sysmodmap ]; then&#xA;    xmodmap $sysmodmap&#xA;fi&#xA;&#xA;if [ -f &#34;$userresources&#34; ]; then&#xA;    xrdb -merge &#34;$userresources&#34;&#xA;&#xA;fi&#xA;&#xA;if [ -f &#34;$usermodmap&#34; ]; then&#xA;    xmodmap &#34;$usermodmap&#34;&#xA;fi&#xA;&#xA;start some nice programs&#xA;&#xA;if [ -d /usr/local/etc/X11/xinit/xinitrc.d ] ; then&#xA;&#x9;for f in /usr/local/etc/X11/xinit/xinitrc.d/?.sh ; do&#xA;&#x9;&#x9;[ -x &#34;$f&#34; ] &amp;&amp; . &#34;$f&#34;&#xA;&#x9;done&#xA;&#x9;unset f&#xA;fi&#xA;twm &amp;&#xA;afterstep&#xA;xclock -geometry 50x50-1+1 &amp;&#xA;xterm -geometry 40x25+494-0 &amp;&#xA;exec xterm -geometry 40x25+0+0 -name login&#xA;&#xA;The end section of this tells the X11 system to load twm as the window manager,  the last line creates a special xterm window that, if exited will exit the X11 system too.&#xA;&#xA;Following on from this is the system.twmrc file which is sets up the twm system.&#xA;&#xA;Default twm configuration file; needs to be kept small to conserve string&#xA;space in systems whose compilers don&#39;t handle medium-sized strings.&#xA;&#xA;Sites should tailor this file, providing any extra title buttons, menus, etc.&#xA;that may be appropriate for their environment.  For example, if most of the&#xA;users were accustomed to uwm, the defaults could be set up not to decorate&#xA;any windows and to use meta-keys.&#xA;&#xA;NoGrabServer&#xA;RestartPreviousState&#xA;DecorateTransients&#xA;TitleFont &#34;-adobe-helvetica-bold-r-normal---120------&#34;&#xA;ResizeFont &#34;-adobe-helvetica-bold-r-normal---120------&#34;&#xA;MenuFont &#34;-adobe-helvetica-bold-r-normal---120------&#34;&#xA;IconFont &#34;-adobe-helvetica-bold-r-normal---100------&#34;&#xA;IconManagerFont &#34;-adobe-helvetica-bold-r-normal---100---*&#34;&#xA;ClientBorderWidth&#xA;&#xA;Color&#xA;{&#xA;    BorderColor &#34;slategrey&#34;&#xA;    DefaultBackground &#34;rgb:2/a/9&#34;&#xA;    DefaultForeground &#34;gray85&#34;&#xA;    TitleBackground &#34;rgb:2/a/9&#34;&#xA;    TitleForeground &#34;gray85&#34;&#xA;    MenuBackground &#34;rgb:2/a/9&#34;&#xA;    MenuForeground &#34;white&#34;&#xA;    MenuBorderColor &#34;black&#34;&#xA;    MenuTitleBackground &#34;gray70&#34;&#xA;    MenuTitleForeground &#34;rgb:2/a/9&#34;&#xA;    IconBackground &#34;rgb:2/a/9&#34;&#xA;    IconForeground &#34;gray85&#34;&#xA;    IconBorderColor &#34;gray85&#34;&#xA;    IconManagerBackground &#34;rgb:2/a/9&#34;&#xA;    IconManagerForeground &#34;gray85&#34;&#xA;}&#xA;&#xA;Define some useful functions for motion-based actions.&#xA;&#xA;MoveDelta 3&#xA;Function &#34;move-or-lower&#34; { f.move f.deltastop f.lower }&#xA;Function &#34;move-or-raise&#34; { f.move f.deltastop f.raise }&#xA;Function &#34;move-or-iconify&#34; { f.move f.deltastop f.iconify }&#xA;&#xA;#&#xA;Set some useful bindings.  Sort of uwm-ish, sort of simple-button-ish&#xA;&#xA;Button1 = : root : f.menu &#34;defops&#34;&#xA;&#xA;Button1 = m : window|icon : f.function &#34;move-or-lower&#34;&#xA;Button2 = m : window|icon : f.iconify&#xA;Button3 = m : window|icon : f.function &#34;move-or-raise&#34;&#xA;Button3 = m : window|icon : f.quit &#34;quit application&#34;&#xA;&#xA;Button1 = : title : f.function &#34;move-or-raise&#34;&#xA;Button2 = : title : f.raiselower&#xA;&#xA;Button1 = : icon : f.function &#34;move-or-iconify&#34;&#xA;Button2 = : icon : f.iconify&#xA;&#xA;Button1 = : iconmgr : f.iconify&#xA;Button2 = : iconmgr : f.iconify&#xA;&#xA;And a menus with the usual things&#xA;&#xA;menu &#34;defops&#34;&#xA;{&#xA;&#34;Twm&#34;&#x9;f.title&#xA;&#34;Iconify&#34;&#x9;f.iconify&#xA;&#34;Resize&#34;&#x9;f.resize&#xA;&#34;Move&#34;&#x9;&#x9;f.move&#xA;&#34;Raise&#34;&#x9;&#x9;f.raise&#xA;&#34;Lower&#34;&#x9;&#x9;f.lower&#xA;&#34;&#34;&#x9;&#x9;f.nop&#xA;&#34;Focus&#34;&#x9;&#x9;f.focus&#xA;&#34;Unfocus&#34;&#x9;f.unfocus&#xA;&#34;Show Iconmgr&#34;&#x9;f.showiconmgr&#xA;&#34;Hide Iconmgr&#34;&#x9;f.hideiconmgr&#xA;&#34;&#34;&#x9;&#x9;f.nop&#xA;&#34;Nethack&#34;&#x9;f.exec &#34;exec vulture-nethack &amp;&#34;&#xA;&#34;Doom&#34;&#x9;&#x9;f.exec &#34;exec prboom &amp;&#34;&#x9;&#xA;&#34;Xterm&#34;&#x9;f.exec &#34;exec xterm &amp;&#34;&#xA;&#34;LXTerminal&#34;&#x9;f.exec &#34;exec lxterminal &amp;&#34;&#xA;&#34;Thunar&#34;&#x9;f.exec &#34;exec thunar &amp;&#34;&#xA;&#xA;&#34;XCalc&#34;&#x9;&#x9;f.exec &#34;exec xcalc &amp;&#34;&#xA;&#34;&#34;&#x9;&#x9;f.nop&#xA;&#34;Kill&#34;&#x9;&#x9;f.destroy&#xA;&#34;Delete&#34;&#x9;f.delete&#xA;&#34;&#34;&#x9;&#x9;f.nop&#xA;&#34;Restart&#34;&#x9;f.restart&#xA;&#34;Exit&#34;&#x9;&#x9;f.quit&#xA;}&#xA;&#xA;IconManagers{&#xA;&#34;Frame&#34;&#x9;&#34;=100x50+100+100&#34;&#x9;1&#xA;&#34;XTerm&#34;&#x9;&#34;=300x50+120+100&#34;&#x9;2&#xA;&#xA;It is fairly basic at the moment, but feel free to git clone from here. &#xA;&#xA;I am sharing as they are more of a guide rather than something that should be just used. &#xA;&#xA;#bsd, #config, #desktop, #settings, #configuration, #tool, #freebsd, #twm, #window, #icoms, #xinitrc, #system.twmrc&#xA;&#xA;You can find me on Friendica at zleap@social.isurf.ca&#xA;&#xA;---&#xA;&#xA;cc-by logo&#xA;&#xA;Licenced under Attribution 4.0 International (CC BY 4.0)&#xA;&#xA;hr&#xD;&#xA;&#xD;&#xA;table&#xD;&#xA;thead&#xD;&#xA;trtda rel=&#34;me&#34; href=&#34;https://qoto.org/@zleap&#34;Mastodon/a/td&#xD;&#xA;tda href=&#34;https://wiki.ircnow.org/?n=Shelllabs.Intro&#34;ShellLabs/td&#xD;&#xA;tda href=&#34;https://joinmastodon.org/&#34;Join Mastodon/a/td/tr/thead/table&#xD;&#xA;center&#xD;&#xA;AI statement : b Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. /b&#xD;&#xA;/center&#xD;&#xA;&#xD;&#xA;a href=&#34;https://liberapay.com/PaulSutton/donate&#34;img alt=&#34;Donate using Liberapay&#34; src=&#34;https://liberapay.com/assets/widgets/donate.svg&#34;/a&#xD;&#xA;]]&gt;</description>
      <content:encoded><![CDATA[<p>FreeBSD 6</p>

<p>Further to my <a href="https://personaljournal.ca/paulsutton/freebsd-5" rel="nofollow">previous post</a> or probably more specifically the post <a href="https://personaljournal.ca/paulsutton/freebsd-4" rel="nofollow">before that</a> I am sharing a little more about setting up twm.</p>

<p>I have been trying to find a way to share my config files here.  The easiest way to this, so I thought, would be to copy the files to a removable media,  this failed.  So this morning I created a github repository and uploaded copies of the two files there.</p>

<p>So firstly there is the <strong>xinitrc</strong> file as below</p>

<pre><code>#!/bin/sh

userresources=$HOME/.Xresources
usermodmap=$HOME/.Xmodmap
sysresources=/usr/local/etc/X11/xinit/.Xresources
sysmodmap=/usr/local/etc/X11/xinit/.Xmodmap

# merge in defaults and keymaps

if [ -f $sysresources ]; then

    xrdb -merge $sysresources

fi

if [ -f $sysmodmap ]; then
    xmodmap $sysmodmap
fi

if [ -f &#34;$userresources&#34; ]; then
    xrdb -merge &#34;$userresources&#34;

fi

if [ -f &#34;$usermodmap&#34; ]; then
    xmodmap &#34;$usermodmap&#34;
fi

# start some nice programs

if [ -d /usr/local/etc/X11/xinit/xinitrc.d ] ; then
	for f in /usr/local/etc/X11/xinit/xinitrc.d/?*.sh ; do
		[ -x &#34;$f&#34; ] &amp;&amp; . &#34;$f&#34;
	done
	unset f
fi
twm &amp;
#afterstep
#xclock -geometry 50x50-1+1 &amp;
#xterm -geometry 40x25+494-0 &amp;
exec xterm -geometry 40x25+0+0 -name login

</code></pre>

<p>The end section of this tells the X11 system to load twm as the window manager,  the last line creates a special xterm window that, if exited will exit the X11 system too.</p>

<p>Following on from this is the <strong>system.twmrc</strong> file which is sets up the twm system.</p>

<pre><code>#
# Default twm configuration file; needs to be kept small to conserve string
# space in systems whose compilers don&#39;t handle medium-sized strings.
#
# Sites should tailor this file, providing any extra title buttons, menus, etc.
# that may be appropriate for their environment.  For example, if most of the
# users were accustomed to uwm, the defaults could be set up not to decorate
# any windows and to use meta-keys.
#

NoGrabServer
RestartPreviousState
DecorateTransients
TitleFont &#34;-adobe-helvetica-bold-r-normal--*-120-*-*-*-*-*-*&#34;
ResizeFont &#34;-adobe-helvetica-bold-r-normal--*-120-*-*-*-*-*-*&#34;
MenuFont &#34;-adobe-helvetica-bold-r-normal--*-120-*-*-*-*-*-*&#34;
IconFont &#34;-adobe-helvetica-bold-r-normal--*-100-*-*-*-*-*-*&#34;
IconManagerFont &#34;-adobe-helvetica-bold-r-normal--*-100-*-*-*&#34;
#ClientBorderWidth

Color
{
    BorderColor &#34;slategrey&#34;
    DefaultBackground &#34;rgb:2/a/9&#34;
    DefaultForeground &#34;gray85&#34;
    TitleBackground &#34;rgb:2/a/9&#34;
    TitleForeground &#34;gray85&#34;
    MenuBackground &#34;rgb:2/a/9&#34;
    MenuForeground &#34;white&#34;
    MenuBorderColor &#34;black&#34;
    MenuTitleBackground &#34;gray70&#34;
    MenuTitleForeground &#34;rgb:2/a/9&#34;
    IconBackground &#34;rgb:2/a/9&#34;
    IconForeground &#34;gray85&#34;
    IconBorderColor &#34;gray85&#34;
    IconManagerBackground &#34;rgb:2/a/9&#34;
    IconManagerForeground &#34;gray85&#34;
}

#
# Define some useful functions for motion-based actions.
#
MoveDelta 3
Function &#34;move-or-lower&#34; { f.move f.deltastop f.lower }
Function &#34;move-or-raise&#34; { f.move f.deltastop f.raise }
Function &#34;move-or-iconify&#34; { f.move f.deltastop f.iconify }

#
# Set some useful bindings.  Sort of uwm-ish, sort of simple-button-ish
#
Button1 = : root : f.menu &#34;defops&#34;

Button1 = m : window|icon : f.function &#34;move-or-lower&#34;
Button2 = m : window|icon : f.iconify
#Button3 = m : window|icon : f.function &#34;move-or-raise&#34;
Button3 = m : window|icon : f.quit &#34;quit application&#34;

Button1 = : title : f.function &#34;move-or-raise&#34;
Button2 = : title : f.raiselower

Button1 = : icon : f.function &#34;move-or-iconify&#34;
Button2 = : icon : f.iconify

Button1 = : iconmgr : f.iconify
Button2 = : iconmgr : f.iconify

#
# And a menus with the usual things
#
menu &#34;defops&#34;
{
&#34;Twm&#34;	f.title
&#34;Iconify&#34;	f.iconify
&#34;Resize&#34;	f.resize
&#34;Move&#34;		f.move
&#34;Raise&#34;		f.raise
&#34;Lower&#34;		f.lower
&#34;&#34;		f.nop
&#34;Focus&#34;		f.focus
&#34;Unfocus&#34;	f.unfocus
&#34;Show Iconmgr&#34;	f.showiconmgr
&#34;Hide Iconmgr&#34;	f.hideiconmgr
&#34;&#34;		f.nop
&#34;Nethack&#34;	f.exec &#34;exec vulture-nethack &amp;&#34;
&#34;Doom&#34;		f.exec &#34;exec prboom &amp;&#34;	
#&#34;Xterm&#34;	f.exec &#34;exec xterm &amp;&#34;
&#34;LXTerminal&#34;	f.exec &#34;exec lxterminal &amp;&#34;
&#34;Thunar&#34;	f.exec &#34;exec thunar &amp;&#34;

&#34;XCalc&#34;		f.exec &#34;exec xcalc &amp;&#34;
&#34;&#34;		f.nop
&#34;Kill&#34;		f.destroy
&#34;Delete&#34;	f.delete
&#34;&#34;		f.nop
&#34;Restart&#34;	f.restart
&#34;Exit&#34;		f.quit
}

IconManagers{
&#34;Frame&#34;	&#34;=100x50+100+100&#34;	1
&#34;XTerm&#34;	&#34;=300x50+120+100&#34;	2
</code></pre>

<p>It is fairly basic at the moment, but feel free to git clone <a href="https://github.com/zleap/FreeBSD" rel="nofollow">from here</a>.</p>

<p>I am sharing as they are more of a guide rather than something that should be just used.</p>

<p><a href="/paulsutton/tag:bsd" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">bsd</span></a>, <a href="/paulsutton/tag:config" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">config</span></a>, <a href="/paulsutton/tag:desktop" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">desktop</span></a>, <a href="/paulsutton/tag:settings" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">settings</span></a>, <a href="/paulsutton/tag:configuration" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">configuration</span></a>, <a href="/paulsutton/tag:tool" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">tool</span></a>, <a href="/paulsutton/tag:freebsd" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">freebsd</span></a>, <a href="/paulsutton/tag:twm" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">twm</span></a>, <a href="/paulsutton/tag:window" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">window</span></a>, <a href="/paulsutton/tag:icoms" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">icoms</span></a>, <a href="/paulsutton/tag:xinitrc" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">xinitrc</span></a>, <a href="/paulsutton/tag:system" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">system</span></a>.twmrc</p>

<p><a href="https://social.isurf.ca/profile/zleap" rel="nofollow">You can find me on Friendica at zleap@social.isurf.ca</a></p>

<hr>

<p><img src="https://raw.githubusercontent.com/zleap/blogmedia/master/88x31.png" alt="cc-by logo"></p>

<p><a href="https://creativecommons.org/licenses/by/4.0/" rel="nofollow">Licenced under Attribution 4.0 International (CC BY 4.0)</a></p>

<hr>

<p><table>
<thead>
<tr><td><a href="https://qoto.org/@zleap" rel="nofollow">Mastodon</a></td>
<td><a href="https://wiki.ircnow.org/?n=Shelllabs.Intro" rel="nofollow">ShellLabs</td>
<td><a href="https://joinmastodon.org/" rel="nofollow">Join Mastodon</a></td></tr></thead></table>

AI statement : <b> Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. </b>
</p>

<p><a href="https://liberapay.com/PaulSutton/donate" rel="nofollow"><img alt="Donate using Liberapay" src="https://liberapay.com/assets/widgets/donate.svg"></a></p>
]]></content:encoded>
      <guid>https://personaljournal.ca/paulsutton/freebsd-6</guid>
      <pubDate>Sun, 08 Mar 2020 11:35:43 +0000</pubDate>
    </item>
    <item>
      <title>FreeBSD 5</title>
      <link>https://personaljournal.ca/paulsutton/freebsd-5</link>
      <description>&lt;![CDATA[FreeBSD 5&#xA;&#xA;Carrying on directly from my previous post I have found a nice video tutorial to explain how to edit the .twmrc file.  This can be found at:&#xA;&#xA;TWM Config Youtube video&#xA;&#xA;While this is a short video, it is easy to follow and comprehensive.&#xA;&#xA;This links is provided with the video   &#xA;&#xA;#bsd, #config, #desktop, #settings, #configuration, #tool, #freebsd, #twm, #window, #icoms.&#xA;&#xA;You can find me on Friendica at zleap@social.isurf.ca&#xA;&#xA;---&#xA;&#xA;cc-by logo&#xA;&#xA;Licenced under Attribution 4.0 International (CC BY 4.0)&#xA;&#xA;hr&#xD;&#xA;&#xD;&#xA;table&#xD;&#xA;thead&#xD;&#xA;trtda rel=&#34;me&#34; href=&#34;https://qoto.org/@zleap&#34;Mastodon/a/td&#xD;&#xA;tda href=&#34;https://wiki.ircnow.org/?n=Shelllabs.Intro&#34;ShellLabs/td&#xD;&#xA;tda href=&#34;https://joinmastodon.org/&#34;Join Mastodon/a/td/tr/thead/table&#xD;&#xA;center&#xD;&#xA;AI statement : b Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. /b&#xD;&#xA;/center&#xD;&#xA;&#xD;&#xA;a href=&#34;https://liberapay.com/PaulSutton/donate&#34;img alt=&#34;Donate using Liberapay&#34; src=&#34;https://liberapay.com/assets/widgets/donate.svg&#34;/a&#xD;&#xA;]]&gt;</description>
      <content:encoded><![CDATA[<p>FreeBSD 5</p>

<p>Carrying on directly from my <a href="https://personaljournal.ca/paulsutton/freebsd-4" rel="nofollow">previous post</a> I have found a nice video tutorial to explain how to edit the <strong>.twmrc</strong> file.  This can be found at:</p>
<ul><li><a href="https://www.youtube.com/watch?v=68LNCVyd3-M" rel="nofollow">TWM Config Youtube video</a></li></ul>

<p>While this is a short video, it is easy to follow and comprehensive.</p>
<ul><li><a href="http://www.custompc.plus.com/twm/twmrc.htm" rel="nofollow">This links is provided with the video</a><br></li></ul>

<p><a href="/paulsutton/tag:bsd" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">bsd</span></a>, <a href="/paulsutton/tag:config" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">config</span></a>, <a href="/paulsutton/tag:desktop" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">desktop</span></a>, <a href="/paulsutton/tag:settings" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">settings</span></a>, <a href="/paulsutton/tag:configuration" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">configuration</span></a>, <a href="/paulsutton/tag:tool" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">tool</span></a>, <a href="/paulsutton/tag:freebsd" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">freebsd</span></a>, <a href="/paulsutton/tag:twm" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">twm</span></a>, <a href="/paulsutton/tag:window" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">window</span></a>, <a href="/paulsutton/tag:icoms" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">icoms</span></a>.</p>

<p><a href="https://social.isurf.ca/profile/zleap" rel="nofollow">You can find me on Friendica at zleap@social.isurf.ca</a></p>

<hr>

<p><img src="https://raw.githubusercontent.com/zleap/blogmedia/master/88x31.png" alt="cc-by logo"></p>

<p><a href="https://creativecommons.org/licenses/by/4.0/" rel="nofollow">Licenced under Attribution 4.0 International (CC BY 4.0)</a></p>

<hr>

<p><table>
<thead>
<tr><td><a href="https://qoto.org/@zleap" rel="nofollow">Mastodon</a></td>
<td><a href="https://wiki.ircnow.org/?n=Shelllabs.Intro" rel="nofollow">ShellLabs</td>
<td><a href="https://joinmastodon.org/" rel="nofollow">Join Mastodon</a></td></tr></thead></table>

AI statement : <b> Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. </b>
</p>

<p><a href="https://liberapay.com/PaulSutton/donate" rel="nofollow"><img alt="Donate using Liberapay" src="https://liberapay.com/assets/widgets/donate.svg"></a></p>
]]></content:encoded>
      <guid>https://personaljournal.ca/paulsutton/freebsd-5</guid>
      <pubDate>Tue, 03 Mar 2020 20:14:23 +0000</pubDate>
    </item>
    <item>
      <title>FreeBSD 4</title>
      <link>https://personaljournal.ca/paulsutton/freebsd-4</link>
      <description>&lt;![CDATA[FreeBSD 4&#xA;&#xA;Carrying on from my previous post. I am now turning my attention to configuring the twm desktop [1]&#xA;&#xA;twm is set as the default window manager in:-&#xA;&#xA;/usr/local/etc/X11/xinit/&#xA;file : xinitrc&#xA;&#xA;After finding some information on how to configure the twm desktop [2]. This document seems to be from around 1989.  &#xA;&#xA;I tried to find the configuration files in my local home directory structure on bsd but was unable to.  However there is one &#xA;&#xA;/usr/local/share/X11/twm/system.twmrc&#xA;&#xA;Which, I think is more of a global configuration.  Given the only two users are myself and root is fine. &#xA;&#xA;I used this to add a second icon manager to the desktop.  &#xA;&#xA;I have also found some other documentation [3] which explains how add items to the menu.  &#xA;&#xA;So to add menu entry to menu for vulture-nethack&#xA;&#xA;edit /usr/local/share/X11/twm/system.twmrc&#xA;&#xA;&#34;Nethack&#34;  f.exec &#34;exec vulture-nethack &amp;&#34;&#xA;&#xA;the &amp; is important &#xA;&#xA;If you need more help you may want to ask on IRC: &#xA;freebsd which is hosted freenode. [4]&#xA;I am on IRC as zleap but also frequent a few other channels. &#xA;&#xA;References&#xA;&#xA;twm Desktop&#xA;An Overview of twm (Tom’s Window Manager)&#xA;Customizing twm&#xA;Freenode IRC&#xA;&#xA;#bsd, #config, #desktop, #settings, #configuration, #tool, #freebsd, #twm, #window, #icoms.&#xA;&#xA;You can find me on Friendica at zleap@social.isurf.ca&#xA;&#xA;---&#xA;&#xA;cc-by logo&#xA;&#xA;Licenced under Attribution 4.0 International (CC BY 4.0)&#xA;&#xA;hr&#xD;&#xA;&#xD;&#xA;table&#xD;&#xA;thead&#xD;&#xA;trtda rel=&#34;me&#34; href=&#34;https://qoto.org/@zleap&#34;Mastodon/a/td&#xD;&#xA;tda href=&#34;https://wiki.ircnow.org/?n=Shelllabs.Intro&#34;ShellLabs/td&#xD;&#xA;tda href=&#34;https://joinmastodon.org/&#34;Join Mastodon/a/td/tr/thead/table&#xD;&#xA;center&#xD;&#xA;AI statement : b Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. /b&#xD;&#xA;/center&#xD;&#xA;&#xD;&#xA;a href=&#34;https://liberapay.com/PaulSutton/donate&#34;img alt=&#34;Donate using Liberapay&#34; src=&#34;https://liberapay.com/assets/widgets/donate.svg&#34;/a&#xD;&#xA;]]&gt;</description>
      <content:encoded><![CDATA[<p>FreeBSD 4</p>

<p>Carrying on from my <a href="https://personaljournal.ca/paulsutton/freebsd-3" rel="nofollow">previous post</a>. I am now turning my attention to configuring the twm desktop [1]</p>

<p>twm is set as the default window manager in:-</p>

<p>/usr/local/etc/X11/xinit/
file : xinitrc</p>

<p>After finding some information on how to configure the twm desktop [2]. This document seems to be from around 1989.</p>

<p>I tried to find the configuration files in my local home directory structure on bsd but was unable to.  However there is one</p>

<p>/usr/local/share/X11/twm/system.twmrc</p>

<p>Which, I think is more of a global configuration.  Given the only two users are myself and root is fine.</p>

<p>I used this to add a second icon manager to the desktop.</p>

<p>I have also found some other documentation [3] which explains how add items to the menu.</p>

<p>So to add menu entry to menu for vulture-nethack</p>

<p>edit /usr/local/share/X11/twm/system.twmrc</p>

<p>“Nethack”  f.exec “exec vulture-nethack &amp;”</p>

<p>the &amp; is <strong>important</strong></p>

<p>If you need more help you may want to ask on IRC:
* <a href="/paulsutton/tag:freebsd" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">freebsd</span></a> which is hosted freenode. [4]
I am on IRC as zleap but also frequent a few other channels.</p>

<p><strong>References</strong></p>
<ol><li><a href="http://www.xwinman.org/vtwm.php" rel="nofollow">twm Desktop</a></li>
<li><a href="http://www.lastrange.com/work/twm.pdf" rel="nofollow">An Overview of twm (Tom’s Window Manager)</a></li>
<li><a href="https://www.oreilly.com/library/view/x-window-system/9780937175149/Chapter10.html" rel="nofollow">Customizing twm</a></li>
<li><a href="http://www.freenode.net" rel="nofollow">Freenode IRC</a></li></ol>

<p><a href="/paulsutton/tag:bsd" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">bsd</span></a>, <a href="/paulsutton/tag:config" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">config</span></a>, <a href="/paulsutton/tag:desktop" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">desktop</span></a>, <a href="/paulsutton/tag:settings" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">settings</span></a>, <a href="/paulsutton/tag:configuration" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">configuration</span></a>, <a href="/paulsutton/tag:tool" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">tool</span></a>, <a href="/paulsutton/tag:freebsd" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">freebsd</span></a>, <a href="/paulsutton/tag:twm" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">twm</span></a>, <a href="/paulsutton/tag:window" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">window</span></a>, <a href="/paulsutton/tag:icoms" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">icoms</span></a>.</p>

<p><a href="https://social.isurf.ca/profile/zleap" rel="nofollow">You can find me on Friendica at zleap@social.isurf.ca</a></p>

<hr>

<p><img src="https://raw.githubusercontent.com/zleap/blogmedia/master/88x31.png" alt="cc-by logo"></p>

<p><a href="https://creativecommons.org/licenses/by/4.0/" rel="nofollow">Licenced under Attribution 4.0 International (CC BY 4.0)</a></p>

<hr>

<p><table>
<thead>
<tr><td><a href="https://qoto.org/@zleap" rel="nofollow">Mastodon</a></td>
<td><a href="https://wiki.ircnow.org/?n=Shelllabs.Intro" rel="nofollow">ShellLabs</td>
<td><a href="https://joinmastodon.org/" rel="nofollow">Join Mastodon</a></td></tr></thead></table>

AI statement : <b> Consent is NOT granted to use the content of this blog for the purposes of AI training or similar activity.  Consent CANNOT be assumed, it has to be granted. </b>
</p>

<p><a href="https://liberapay.com/PaulSutton/donate" rel="nofollow"><img alt="Donate using Liberapay" src="https://liberapay.com/assets/widgets/donate.svg"></a></p>
]]></content:encoded>
      <guid>https://personaljournal.ca/paulsutton/freebsd-4</guid>
      <pubDate>Sun, 01 Mar 2020 19:39:45 +0000</pubDate>
    </item>
  </channel>
</rss>