<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">

<channel>

<title>Rosano / entries tagged &#34;notes&#34;</title>



<link>https://rosano.ca/log/tag/notes/</link>

<generator>Hugo</generator>

<language>en-ca</language>



<lastBuildDate>Tue, 14 Apr 2026 08:33:02 +0000</lastBuildDate>

<atom:link href="https://rosano.ca/log/tag/notes/feed" rel="self" type="application/rss" /><item>
  <title>Monday, March 18, 2024 18h28</title>
  <link>https://rosano.ca/log/01hs9tx1ytkp3kb0v03pdpm08a/</link>
  <pubDate>Mon, 18 Mar 2024 18:28:50 -0400</pubDate>
  <guid>https://rosano.ca/log/01hs9tx1ytkp3kb0v03pdpm08a/</guid>
  <description>Finally managed to install a custom app via Cloudron by following the tutorial documentation, and without installing Docker.&#xA;1. Install the Cloudron CLI locally sudo npm install -g cloudron cloudron login my.example.com 2. Setup build tools One-click install the Docker Registry App (replace alfa.bravo below with this app domain) and Build Service App (replace charlie.delta below with this app domain) via your Cloudron App Store. Configure the latter&#39;s credentials in /app/data/docker.json via the File Manager&#xA;</description>
  <content:encoded><![CDATA[
  <div class="post">


<div class="content"><p>Finally managed to install a custom app via Cloudron by following the <a href="https://docs.cloudron.io/packaging/tutorial/">tutorial documentation</a>, and without installing Docker.</p>
<h2 id="1-install-the-cloudron-cli-locally">1. Install the Cloudron CLI locally</h2>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>sudo npm install -g cloudron
</span></span><span style="display:flex;"><span>cloudron login my.example.com
</span></span></code></pre></div><h2 id="2-setup-build-tools">2. Setup build tools</h2>
<p>One-click install the <a href="https://docs.cloudron.io/apps/docker-registry/">Docker Registry App</a> (replace <code>alfa.bravo</code> below with this app domain) and <a href="https://docs.cloudron.io/apps/build-service/">Build Service App</a> (replace <code>charlie.delta</code> below with this app domain) via your Cloudron App Store. Configure the latter's credentials in <code>/app/data/docker.json</code> via the File Manager</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-json" data-lang="json"><span style="display:flex;"><span>{
</span></span><span style="display:flex;"><span>  <span style="color:#f92672">&#34;alfa.bravo&#34;</span>: {
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&#34;username&#34;</span>: <span style="color:#e6db74">&#34;CLOUDRON_USERNAME&#34;</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&#34;password&#34;</span>: <span style="color:#e6db74">&#34;CLOUDRON_PASSWORD&#34;</span>
</span></span><span style="display:flex;"><span>  }
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><p>and restart the app.</p>
<h2 id="3-install-the-pre-packaged-custom-app">3. Install the pre-packaged custom app</h2>
<p>Replace the <a href="https://git.cloudron.io/cloudron/tutorial-nodejs-app">simple tutorial app</a> with yours:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>git clone https://git.cloudron.io/cloudron/tutorial-nodejs-app
</span></span><span style="display:flex;"><span>cd tutorial-nodejs-app
</span></span><span style="display:flex;"><span>cloudron build --build-service-url https://charlie.delta --repository alfa.bravo/echo/foxtrot --tag golf
</span></span><span style="display:flex;"><span>cloudron install --image alfa.bravo/echo/foxtrot:golf
</span></span></code></pre></div><p>If you want to update, run <code>cloudron build</code> again, then call <code>cloudron update</code> like so:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>cloudron build --build-service-url https://charlie.delta --repository alfa.bravo/echo/foxtrot --tag golf
</span></span><span style="display:flex;"><span>cloudron update --image alfa.bravo/echo/foxtrot:golf
</span></span></code></pre></div><h3 id="resources">Resources</h3>
<p>Aside from the <a href="https://docs.cloudron.io/packaging/tutorial/">tutorial documentation</a>, I found some hints in these forum topics:</p>
<ul>
<li><a href="https://forum.cloudron.io/topic/4412/how-to-build-custom-apps-using-the-docker-registry">How to build (custom) apps using the docker-registry</a></li>
<li><a href="https://forum.cloudron.io/topic/6717/how-do-i-do-this">How do I do this??</a></li>
<li><a href="https://forum.cloudron.io/topic/9957/ui-not-working">UI not working</a></li>
</ul>
</div><p>
	<small>Tagged: <a href="/log/tag/notes/">notes</a>.
	</small>
</p>

<hr>
<span class="metadata" data-pagefind-ignore>

	<small>
		<a aria-label="Permalink for 6:28 pm, March 18, 2024" href="/log/01hs9tx1ytkp3kb0v03pdpm08a/"><time datetime="2024-03-18T18:28:50-04:00" data-pagefind-sort="date[datetime]">18h28</time></a>

		
		<span>from <a href="/log/place/toronto/">Toronto</a> / </span>

		<span><a href="/log/country/canada/">Canada</a></span><span>, type:<a href="/log/type/code/">code</a></span></small>

</span>

</div>

  ]]></content:encoded>
</item><item>
  <title>Wednesday, March 6, 2024 12h50</title>
  <link>https://rosano.ca/log/01hrcnygxxj7ar347gheeesdwg/</link>
  <pubDate>Wed, 06 Mar 2024 12:50:00 -0500</pubDate>
  <guid>https://rosano.ca/log/01hrcnygxxj7ar347gheeesdwg/</guid>
  <description>Whisper or &#39;Whisper-Faster&#39; can run as a standalone terminal program on macOS 10.14 with whisper-standalone-win by simply downloading the binary from &#39;releases&#39; and running a single command from the resulting folder:&#xA;./whisper-faster &amp;#34;~/alfa/bravo.mp3&amp;#34; --pp --model base.en --language=en --output_format all --output_dir . This will fetch the model if there isn&#39;t a local copy, and transcribe into about half a dozen formats, including plaintext, JSON, and subtitle files.&#xA;The openai/whisper documentation says:&#xA;The .en models for English-only applications tend to perform better, especially for the tiny.en and base.en models. We observed that the difference becomes less significant for the small.en and medium.en models.&#xA;</description>
  <content:encoded><![CDATA[
  <div class="post">


<div class="content"><p>Whisper or 'Whisper-Faster' can run as a standalone terminal program on macOS 10.14 with <a href="https://github.com/Purfview/whisper-standalone-win">whisper-standalone-win</a> by simply downloading the binary from 'releases' and running a single command from the resulting folder:</p>
<pre tabindex="0"><code>./whisper-faster &#34;~/alfa/bravo.mp3&#34; --pp --model base.en --language=en --output_format all --output_dir .
</code></pre><p>This will fetch the model if there isn't a local copy, and transcribe into about half a dozen formats, including plaintext, JSON, and subtitle files.</p>
<p>The <a href="https://github.com/openai/whisper">openai/whisper</a> documentation says:</p>
<blockquote>
<p>The .en models for English-only applications tend to perform better, especially for the tiny.en and base.en models. We observed that the difference becomes less significant for the small.en and medium.en models.</p></blockquote>
<p>To run it without printing text into the console, use <code>-pp</code> or <a href="https://github.com/Purfview/whisper-standalone-win/discussions/210#discussioncomment-8709934">send to NUL</a></p>
</div><p>
	<small>Tagged: <a href="/log/tag/notes/">notes</a>.
	</small>
</p>

<hr>
<span class="metadata" data-pagefind-ignore>

	<small>
		<a aria-label="Permalink for 12:50 pm, March 6, 2024" href="/log/01hrcnygxxj7ar347gheeesdwg/"><time datetime="2024-03-06T12:50:00-05:00" data-pagefind-sort="date[datetime]">12h50</time></a>

		
		<span>from <a href="/log/place/toronto/">Toronto</a> / </span>

		<span><a href="/log/country/canada/">Canada</a></span><span>, type:<a href="/log/type/code/">code</a></span></small>

</span>

</div>

  ]]></content:encoded>
</item><item>
  <title>Saturday, March 2, 2024 12h56</title>
  <link>https://rosano.ca/log/01hr04ykk93s104vrcs0y7p4qa/</link>
  <pubDate>Sat, 02 Mar 2024 12:56:21 -0500</pubDate>
  <guid>https://rosano.ca/log/01hr04ykk93s104vrcs0y7p4qa/</guid>
  <description>macOS Time Machine exclusions can be managed via the terminal, as documented in Exclude folders by regex (?) from time machine backup, Control Time Machine from the command line, and Scripting Timemachine exclusion lists:&#xA;find `pwd` -maxdepth 3 -type d -name &amp;#39;node_modules&amp;#39; | xargs -n 1 tmutil addexclusion But this doesn&#39;t make it show up in the System Preferences GUI. Writing to defaults seems to do that:&#xA;sudo defaults write /Library/Preferences/com.apple.TimeMachine.plist SkipPaths -array-add &amp;#34;~/.cache&amp;#34; but I&#39;m too paranoid about doing it wrong to see what happens.&#xA;</description>
  <content:encoded><![CDATA[
  <div class="post">


<div class="content"><p>macOS Time Machine exclusions can be managed via the terminal, as documented in <a href="https://superuser.com/questions/1161038/exclude-folders-by-regex-from-time-machine-backup">Exclude folders by regex (?) from time machine backup</a>, <a href="https://www.macworld.com/article/220774/control-time-machine-from-the-command-line.html">Control Time Machine from the command line</a>, and <a href="https://apple.stackexchange.com/questions/122504/scripting-timemachine-exclusion-lists">Scripting Timemachine exclusion lists</a>:</p>
<pre tabindex="0"><code>find `pwd` -maxdepth 3 -type d -name &#39;node_modules&#39; | xargs -n 1 tmutil addexclusion
</code></pre><p>But this doesn't make it show up in the System Preferences GUI. Writing to <code>defaults</code> seems to do that:</p>
<pre tabindex="0"><code>sudo defaults write /Library/Preferences/com.apple.TimeMachine.plist SkipPaths -array-add &#34;~/.cache&#34;
</code></pre><p>but I'm too paranoid about doing it wrong to see what happens.</p>
<p><a href="https://github.com/stevegrunwell/asimov">Asimov</a> is another option (installed via homebrew) to &quot;Automatically exclude development dependencies from Apple Time Machine backups&quot;.</p>
</div><p>
	<small>Tagged: <a href="/log/tag/notes/">notes</a>.
	</small>
</p>

<hr>
<span class="metadata" data-pagefind-ignore>

	<small>
		<a aria-label="Permalink for 12:56 pm, March 2, 2024" href="/log/01hr04ykk93s104vrcs0y7p4qa/"><time datetime="2024-03-02T12:56:21-05:00" data-pagefind-sort="date[datetime]">12h56</time></a>

		
		<span>from <a href="/log/place/toronto/">Toronto</a> / </span>

		<span><a href="/log/country/canada/">Canada</a></span><span>, type:<a href="/log/type/code/">code</a></span></small>

</span>

</div>

  ]]></content:encoded>
</item><item>
  <title>Saturday, February 17, 2024 22h25</title>
  <link>https://rosano.ca/log/01hpx3yz4q8d7ybdzntg14s8a6/</link>
  <pubDate>Sat, 17 Feb 2024 22:25:39 -0500</pubDate>
  <guid>https://rosano.ca/log/01hpx3yz4q8d7ybdzntg14s8a6/</guid>
  <description>Forked cors-anywhere to replace cors-proxy.fringe.zone with cors.rosano.ca in Joybox, OSFeedbox, and home.&#xA;</description>
  <content:encoded><![CDATA[
  <div class="post">


<div class="content"><p>Forked <a href="https://github.com/rosano/cors-anywhere">cors-anywhere</a> to replace cors-proxy.fringe.zone with cors.rosano.ca in <a href="https://github.com/rosano/joybox/commit/1cd924e7686a96985dac6838a1d8b1a085bd31bd">Joybox</a>, <a href="https://github.com/olsk/OSFeedbox/commit/2d0d0e94c1d9a9c48a6ca6d27bd35f84d06f6e10">OSFeedbox</a>, and <a href="https://github.com/rosano/home/commit/de0769f7f8ecde24fb6d7d6593c09752504050e2">home</a>.</p>
</div><p>
	<small>Tagged: <a href="/log/tag/notes/">notes</a>.
	</small>
</p>

<hr>
<span class="metadata" data-pagefind-ignore>

	<small>
		<a aria-label="Permalink for 10:25 pm, February 17, 2024" href="/log/01hpx3yz4q8d7ybdzntg14s8a6/"><time datetime="2024-02-17T22:25:39-05:00" data-pagefind-sort="date[datetime]">22h25</time></a>

		
		<span>from <a href="/log/place/toronto/">Toronto</a> / </span>

		<span><a href="/log/country/canada/">Canada</a></span><span>, type:<a href="/log/type/code/">code</a></span></small>

</span>

</div>

  ]]></content:encoded>
</item><item>
  <title>Saturday, February 17, 2024 21h34</title>
  <link>https://rosano.ca/log/01hpx11f7vvz5m3tysfmezhj71/</link>
  <pubDate>Sat, 17 Feb 2024 21:34:35 -0500</pubDate>
  <guid>https://rosano.ca/log/01hpx11f7vvz5m3tysfmezhj71/</guid>
  <description>YunoHost has an &#39;Edit&#39; button on their homepage which lets you directly modify the content and send them a &#39;patch&#39;.&#xA;I wasn&#39;t able to submit my change because of a &#39;File not found&#39; error, but still find it fascinating to not require people to use GitHub or Git in order to contribute.&#xA;The logic is in the seemingly random &#39;gertrude&#39; repository (which has not much of a README or description for what it is, and it looks like the &#39;patch&#39; is just the full HTML page content; perhaps someone can manually integrate it later. They claim to require email verification to catch spam before actually sending the change.&#xA;</description>
  <content:encoded><![CDATA[
  <div class="post">


<div class="content"><p><a href="https://yunohost.org">YunoHost</a> has an 'Edit' button on their homepage which lets you directly modify the content and send them a 'patch'.</p>
<p>I wasn't able to submit my change because of a 'File not found' error, but still find it fascinating to not require people to use GitHub or Git in order to contribute.</p>
<p>The logic is in the seemingly random '<a href="https://github.com/YunoHost/gertrude/blob/master/frontend/static/_js/app.js">gertrude</a>' repository (which has not much of a README or description for what it is, and it looks like the 'patch' is just the full HTML page content; perhaps someone can manually integrate it later. They claim to require email verification to catch spam before actually sending the change.</p>
<p>If it was possible to put a <code>mailto</code> on the internet without spam, it could remove friction from this kind of collaboration and create steps for people to do larger things.</p>
</div><p>
	<small>Tagged: <a href="/log/tag/notes/">notes</a>, <a href="/log/tag/contribute/">contribute</a>, <a href="/log/tag/inclusive/">inclusive</a>.
	</small>
</p>

<hr>
<span class="metadata" data-pagefind-ignore>

	<small>
		<a aria-label="Permalink for 9:34 pm, February 17, 2024" href="/log/01hpx11f7vvz5m3tysfmezhj71/"><time datetime="2024-02-17T21:34:35-05:00" data-pagefind-sort="date[datetime]">21h34</time></a>

		
		<span>from <a href="/log/place/toronto/">Toronto</a> / </span>

		<span><a href="/log/country/canada/">Canada</a></span><span>, type:<a href="/log/type/code/">code</a></span></small>

</span>

</div>

  ]]></content:encoded>
</item>



</channel>

</rss>
