<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:media="http://search.yahoo.com/mrss/"><channel><title><![CDATA[seb[tech]]]></title><description><![CDATA[Random bits about tech I work with]]></description><link>https://sebastian.klaus.com.au/</link><image><url>https://sebastian.klaus.com.au/favicon.png</url><title>seb[tech]</title><link>https://sebastian.klaus.com.au/</link></image><generator>Ghost 4.48</generator><lastBuildDate>Wed, 03 Sep 2025 18:17:17 GMT</lastBuildDate><atom:link href="https://sebastian.klaus.com.au/rss/" rel="self" type="application/rss+xml"/><ttl>60</ttl><item><title><![CDATA[Apple ... always different]]></title><description><![CDATA[<!--kg-card-begin: markdown--><p>Whenever I set up a new Apple device, I can pretty much guarantee that it will end up being completely differently configured from the one it&apos;s replacing.</p>
<p>Right now I&apos;m writing this on a 2018 MacBook Pro, which replaced a 2013 MacBook Pro. I also use</p>]]></description><link>https://sebastian.klaus.com.au/macos-always-new/</link><guid isPermaLink="false">5bbb5b0b49f4510001fc37dd</guid><category><![CDATA[Apple]]></category><category><![CDATA[macOS]]></category><category><![CDATA[iOS]]></category><dc:creator><![CDATA[Sebastian Klaus]]></dc:creator><pubDate>Fri, 06 Aug 2021 13:56:28 GMT</pubDate><media:content url="https://images.unsplash.com/photo-1491933382434-500287f9b54b?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDZ8fGFwcGxlfGVufDB8fHx8MTYyODI1ODE1MQ&amp;ixlib=rb-1.2.1&amp;q=80&amp;w=2000" medium="image"/><content:encoded><![CDATA[<!--kg-card-begin: markdown--><img src="https://images.unsplash.com/photo-1491933382434-500287f9b54b?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDZ8fGFwcGxlfGVufDB8fHx8MTYyODI1ODE1MQ&amp;ixlib=rb-1.2.1&amp;q=80&amp;w=2000" alt="Apple ... always different"><p>Whenever I set up a new Apple device, I can pretty much guarantee that it will end up being completely differently configured from the one it&apos;s replacing.</p>
<p>Right now I&apos;m writing this on a 2018 MacBook Pro, which replaced a 2013 MacBook Pro. I also use a 2019 MacBook Pro.<br>
Add to that a couple of iPads (work and home) and an iPhone (11 at the moment) and we&apos;ve got about 4 devices that are all configured differently from their predecessors.</p>
<p>I&apos;ll give you an example based on macOS.<br>
The idea behind the chosen applications on this MacBook Pro is: use Open Source or free software, where possible.</p>
<p>I used Panic&apos;s Coda for a long time as my primary editor.<br>
That was replaced by Sublime Text, replaced by Atom, which has now been replaced by Visual Studio Code.<br>
Same tasks/ use, different approach and work flow.</p>
<p>This replacing/ changing procedure is not restricted to applications, I do this with any part of the system/ my work flow. And not because I don&apos;t like paying for software, no. I hold valid licenses for the applications I replaced in favour of Open Source/ free software.</p>
<p>The aim is to learn about different apps/ approaches to solve problems.</p>
<p>Some more examples:</p>
<ul>
<li>Browser: Safari -&gt; Firefox -&gt; Google Chrome -&gt; Safari -&gt; Vivaldi -&gt; Safari -&gt; Brave -&gt; Safari &amp; Chromium</li>
<li>git client: Tower -&gt; GitKraken -&gt; Tower -&gt; SourceTree 3/4 &amp; command line</li>
<li>Email client: Mail -&gt; AirMail -&gt; Mail -&gt; Spark &amp; Mail -&gt; Mail</li>
<li>Terminal: Terminal -&gt; iTerm [ZSH] -&gt; Hyper [ZSH] -&gt; iTerm [ZSH] &amp; electerm</li>
<li>Note taking: Evernote -&gt; Apple Notes</li>
<li>Menubar calendar: Fantastical -&gt; popCalendar -&gt; itsycal</li>
<li>Window manager: Divvy -&gt; Spectacle -&gt; Rectangle</li>
<li>App remover: AppZapper -&gt; AppCleaner</li>
<li>Cloud storage: Dropbox -&gt; iCloud &amp; Nextcloud</li>
<li>Bulk file rename: Renamer -&gt; NameChanger</li>
<li>Local Search/ App Loader: Alfred -&gt; Spotlight -&gt; Alfred [Powerpack]</li>
</ul>
<p>I have a very hard time replacing Adobe applications. They are what I learnt on and am comfortable with. But as I just let my Creative Cloud subscription expire, I don&apos;t really have a choice but to find alternatives for all the applications I used out of that!<br>
Let&apos;s see how that goes...<br>
<em>Full disclosure:</em> At work I still have an active subscription to fall back on.</p>
<p>The above detailed app swaps are not always 100% feature identical, but they do what I, personally, need them to do on a daily basis.</p>
<!--kg-card-end: markdown-->]]></content:encoded></item><item><title><![CDATA[Homebridge woes]]></title><description><![CDATA[<p><a href="https://github.com/nfarina/homebridge">Homebridge</a> is an utterly brilliant project and I&apos;ve been relying on it for several years, connecting all the little &quot;smart&quot; things around the house that don&apos;t have native Homekit support.</p><p>Recently an update to 0.4.49 broke the lot. Not the first time</p>]]></description><link>https://sebastian.klaus.com.au/homebridge-woes/</link><guid isPermaLink="false">5ccecc07b0342e000148a7a6</guid><category><![CDATA[Homekit]]></category><category><![CDATA[Apple]]></category><category><![CDATA[Docker]]></category><category><![CDATA[iOS]]></category><category><![CDATA[Homebridge]]></category><dc:creator><![CDATA[Sebastian Klaus]]></dc:creator><pubDate>Sun, 05 May 2019 11:51:24 GMT</pubDate><media:content url="https://images.unsplash.com/photo-1583259033924-50bba7deea82?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDJ8fGhvbWVraXR8ZW58MHx8fHwxNjI4MjU3MjI4&amp;ixlib=rb-1.2.1&amp;q=80&amp;w=2000" medium="image"/><content:encoded><![CDATA[<img src="https://images.unsplash.com/photo-1583259033924-50bba7deea82?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDJ8fGhvbWVraXR8ZW58MHx8fHwxNjI4MjU3MjI4&amp;ixlib=rb-1.2.1&amp;q=80&amp;w=2000" alt="Homebridge woes"><p><a href="https://github.com/nfarina/homebridge">Homebridge</a> is an utterly brilliant project and I&apos;ve been relying on it for several years, connecting all the little &quot;smart&quot; things around the house that don&apos;t have native Homekit support.</p><p>Recently an update to 0.4.49 broke the lot. Not the first time this happened, but this one was different from the times before. It just would not reconnect, not even as a completely empty config.</p><p>I&apos;m not going to go into the details of how to set Homebridge up in this post, I&apos;ll leave that up to you to explore, if you wish. I&apos;m using <a href="https://github.com/oznu/docker-homebridge">oznu/docker-homebridge</a>.</p><p>Anyway, after working on it for the better part of the weekend, I came across a post on <a href="https://www.reddit.com/r/homebridge/comments/aiexkx/problems_connecting_homebridge_to_homekit/">reddit</a> mentioning the same problem(s) I&apos;ve been experiencing, but this one had one additional bit of info in it, none of the other posts included:</p><!--kg-card-begin: markdown--><pre><code class="language-json">&quot;mdns&quot;: {
   &quot;interface&quot;: &quot;[YOUR INTERFACE IP]&quot;
},
</code></pre>
<!--kg-card-end: markdown--><p>Adding this to my config at the very top, with the appropriate IP address, made Homebridge discoverable again!</p><p>Thank you very much <a href="https://www.reddit.com/user/tokeraabjerg">u/tokeraabjerg</a>!</p>]]></content:encoded></item><item><title><![CDATA[Nutanix, IPMI & SSL]]></title><description><![CDATA[<p>OK, I hope this post will help someone avoid what I went through the last few weeks.</p><p>If you have a Supermicro based server that includes an IPMI BMC and you happen to upload a valid SSL certificate, but the IPMI&apos;s web interface does not come back up</p>]]></description><link>https://sebastian.klaus.com.au/nutanix-ipmi/</link><guid isPermaLink="false">5c5147b87dbdb700016eafec</guid><category><![CDATA[Nutanix]]></category><category><![CDATA[IPMI]]></category><category><![CDATA[SSL]]></category><category><![CDATA[Supermicro]]></category><dc:creator><![CDATA[Sebastian Klaus]]></dc:creator><pubDate>Wed, 30 Jan 2019 07:02:08 GMT</pubDate><media:content url="https://images.unsplash.com/photo-1580691746056-4badd831b86e?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDM0fHxzZXJ2ZXJ8ZW58MHx8fHwxNjI4MjU3MzAw&amp;ixlib=rb-1.2.1&amp;q=80&amp;w=2000" medium="image"/><content:encoded><![CDATA[<img src="https://images.unsplash.com/photo-1580691746056-4badd831b86e?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDM0fHxzZXJ2ZXJ8ZW58MHx8fHwxNjI4MjU3MzAw&amp;ixlib=rb-1.2.1&amp;q=80&amp;w=2000" alt="Nutanix, IPMI &amp; SSL"><p>OK, I hope this post will help someone avoid what I went through the last few weeks.</p><p>If you have a Supermicro based server that includes an IPMI BMC and you happen to upload a valid SSL certificate, but the IPMI&apos;s web interface does not come back up after a restart ... you can fix it ... relatively easily.</p><p>Download the IPMI tools from the <a href="https://www.supermicro.com/en/solutions/management-software/ipmi-utilities">Supermicro website</a>, create a DOS (or Linux) based, bootable USB stick and copy the IPMICFG tool onto it.</p><p>Boot from the USB and run the following command to reset the IMPI, clear the SSL certificate and generate a new, locally signed one, while you are at it:</p><!--kg-card-begin: markdown--><pre><code class="language-bash">ipmicfg -r
</code></pre>
<!--kg-card-end: markdown--><p>That&apos;s it.</p><!--kg-card-begin: markdown--><p>Funny enough, the <code>-r</code> option is not documented in the IPMICFG User Manual.<br>
I got that from a very helpful Nutanix technician.</p>
<!--kg-card-end: markdown--><p>Once run, the node reboots and comes back with a functioning web interface, at least it did in my case.</p><p>Unfortunately, I can&apos;t guarantee the above will work for everyone, but for Nutanix NX 3060-G4 nodes, it does.</p>]]></content:encoded></item><item><title><![CDATA[Laravel "artisan" in docker container]]></title><description><![CDATA[<!--kg-card-begin: markdown--><p>At this stage the recommended way of executing the <code>artisan</code> command in a docker environment is to run a container whenever one needs <code>artisan</code>.</p>
<p>The below is my setup on Linux/ macOS.<br>
In <code>~/.zshrc</code> (or <code>~/.bashrc</code> or whatever flavour of console you are running) create the following function:</p>
<pre><code class="language-bash">artisan () {
    docker</code></pre>]]></description><link>https://sebastian.klaus.com.au/laravel-artisan-in-docker-container/</link><guid isPermaLink="false">5bab7cca4eb59b0001569649</guid><category><![CDATA[Laravel]]></category><category><![CDATA[Docker]]></category><dc:creator><![CDATA[Sebastian Klaus]]></dc:creator><pubDate>Wed, 26 Sep 2018 13:15:25 GMT</pubDate><media:content url="https://images.unsplash.com/photo-1608306448197-e83633f1261c?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDZ8fGxhcmF2ZWx8ZW58MHx8fHwxNjI4MjU3NTA0&amp;ixlib=rb-1.2.1&amp;q=80&amp;w=2000" medium="image"/><content:encoded><![CDATA[<!--kg-card-begin: markdown--><img src="https://images.unsplash.com/photo-1608306448197-e83633f1261c?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDZ8fGxhcmF2ZWx8ZW58MHx8fHwxNjI4MjU3NTA0&amp;ixlib=rb-1.2.1&amp;q=80&amp;w=2000" alt="Laravel &quot;artisan&quot; in docker container"><p>At this stage the recommended way of executing the <code>artisan</code> command in a docker environment is to run a container whenever one needs <code>artisan</code>.</p>
<p>The below is my setup on Linux/ macOS.<br>
In <code>~/.zshrc</code> (or <code>~/.bashrc</code> or whatever flavour of console you are running) create the following function:</p>
<pre><code class="language-bash">artisan () {
    docker run \
        -t \
        --rm \
        -v $(pwd):/var/www \
        vcarreira/artisan &quot;$@&quot;
}
</code></pre>
<p>Then run <code>source ~/.zshrc</code> and you&apos;ll be able to execute <code>artisan</code> the same you&apos;re used to it.</p>
<p>The first time you execute the <code>artisan</code> command, docker will pull the image <code>vcarreira/artisan</code>.<br>
The container will run, stop and remove itself as needed.</p>
<p>There are options to <code>vcarreira/artisan</code> on <a href="https://hub.docker.com/search/?q=artisan">Docker Hub</a>.<br>
Pick whichever works for you.</p>
<!--kg-card-end: markdown--><p></p><p></p>]]></content:encoded></item></channel></rss>