<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Morten Johansen</title>
    <description>Bits &amp; Bytes</description>
    <link>https://staging.johansen.foo</link>
    <generator>Tablog</generator>
    <lastBuildDate>Fri, 10 Jan 2025 04:55:27 +0000</lastBuildDate>
    <atom:link href="https://staging.johansen.foo/feed" rel="self" type="application/rss+xml"/>
    <item>
      <title>Cryptgeon</title>
      <link>https://staging.johansen.foo/cryptgeon</link>
      <guid isPermaLink="true">https://staging.johansen.foo/cryptgeon</guid>
      <pubDate>Fri, 10 Jan 2025 00:00:00 +0000</pubDate>
      <description>&lt;h1&gt;Introduction&lt;/h1&gt;
&lt;p&gt;If you are sharing passwords or other sensitive data over IM, email etc. you should take a look at this free web application. The application is called cryptgeon and is developed by a guy called &lt;a href=&quot;https://github.com/cupcakearmy&quot; rel=&quot;noreferrer&quot; target=&quot;_blank&quot;&gt;Nicco&lt;/a&gt;. The application will only keep the shared secrets/files in memory and not write the data to disk. You can have a look at his GitHub repo &lt;a href=&quot;https://github.com/cupcakearmy/cryptgeon&quot; rel=&quot;noreferrer&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt; or see the screenshot below for the UI.&lt;/p&gt;
&lt;figure&gt;&lt;img alt=&quot;&quot; src=&quot;https://staging.johansen.foo/media/pages/cryptgeon/252956e854-1736482878/cryptgeon.png&quot;&gt;&lt;/figure&gt;
&lt;h1&gt;Docker Compose&lt;/h1&gt;
&lt;p&gt;If you are using docker engine and docker-compose here’s the compose file I’m using to run the application.&lt;/p&gt;

&lt;pre class=&quot;phiki github-dark-default&quot; data-language=&quot;yaml&quot; style=&quot;background-color: #0d1117; color: #e6edf3;&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color: #7ee787;&quot;&gt;v&lt;/span&gt;&lt;span style=&quot;color: #7ee787;&quot;&gt;ersion&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span style=&quot;color: #a5d6ff;&quot;&gt;&#039;&lt;/span&gt;&lt;span style=&quot;color: #a5d6ff;&quot;&gt;3.7&lt;/span&gt;&lt;span style=&quot;color: #a5d6ff;&quot;&gt;&#039;&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color: #7ee787;&quot;&gt;s&lt;/span&gt;&lt;span style=&quot;color: #7ee787;&quot;&gt;ervices&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;  &lt;/span&gt;&lt;span style=&quot;color: #7ee787;&quot;&gt;m&lt;/span&gt;&lt;span style=&quot;color: #7ee787;&quot;&gt;emcached&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;    &lt;/span&gt;&lt;span style=&quot;color: #7ee787;&quot;&gt;i&lt;/span&gt;&lt;span style=&quot;color: #7ee787;&quot;&gt;mage&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span style=&quot;color: #a5d6ff;&quot;&gt;m&lt;/span&gt;&lt;span style=&quot;color: #a5d6ff;&quot;&gt;emcached:1-alpine&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;    &lt;/span&gt;&lt;span style=&quot;color: #7ee787;&quot;&gt;e&lt;/span&gt;&lt;span style=&quot;color: #7ee787;&quot;&gt;ntrypoint&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span style=&quot;color: #a5d6ff;&quot;&gt;m&lt;/span&gt;&lt;span style=&quot;color: #a5d6ff;&quot;&gt;emcached -m 128M -I 4M&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span style=&quot;color: #8b949e;&quot;&gt;#&lt;/span&gt;&lt;span style=&quot;color: #8b949e;&quot;&gt; Limit to 128 MB Ram, 4M per entry, customize at free will.&lt;/span&gt;&lt;span style=&quot;color: #8b949e;&quot;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;  &lt;/span&gt;&lt;span style=&quot;color: #7ee787;&quot;&gt;a&lt;/span&gt;&lt;span style=&quot;color: #7ee787;&quot;&gt;pp&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;    &lt;/span&gt;&lt;span style=&quot;color: #7ee787;&quot;&gt;i&lt;/span&gt;&lt;span style=&quot;color: #7ee787;&quot;&gt;mage&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span style=&quot;color: #a5d6ff;&quot;&gt;c&lt;/span&gt;&lt;span style=&quot;color: #a5d6ff;&quot;&gt;upcakearmy/cryptgeon:latest&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;    &lt;/span&gt;&lt;span style=&quot;color: #7ee787;&quot;&gt;d&lt;/span&gt;&lt;span style=&quot;color: #7ee787;&quot;&gt;epends_on&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;      &lt;/span&gt;&lt;span&gt;-&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span style=&quot;color: #a5d6ff;&quot;&gt;m&lt;/span&gt;&lt;span style=&quot;color: #a5d6ff;&quot;&gt;emcached&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;    &lt;/span&gt;&lt;span style=&quot;color: #7ee787;&quot;&gt;e&lt;/span&gt;&lt;span style=&quot;color: #7ee787;&quot;&gt;nvironment&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;      &lt;/span&gt;&lt;span style=&quot;color: #7ee787;&quot;&gt;S&lt;/span&gt;&lt;span style=&quot;color: #7ee787;&quot;&gt;IZE_LIMIT&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span style=&quot;color: #a5d6ff;&quot;&gt;4&lt;/span&gt;&lt;span style=&quot;color: #a5d6ff;&quot;&gt;M&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;    &lt;/span&gt;&lt;span style=&quot;color: #7ee787;&quot;&gt;p&lt;/span&gt;&lt;span style=&quot;color: #7ee787;&quot;&gt;orts&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;      &lt;/span&gt;&lt;span&gt;-&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span style=&quot;color: #a5d6ff;&quot;&gt;8&lt;/span&gt;&lt;span style=&quot;color: #a5d6ff;&quot;&gt;2:5000&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;    &lt;/span&gt;&lt;span style=&quot;color: #7ee787;&quot;&gt;r&lt;/span&gt;&lt;span style=&quot;color: #7ee787;&quot;&gt;estart&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span style=&quot;color: #a5d6ff;&quot;&gt;u&lt;/span&gt;&lt;span style=&quot;color: #a5d6ff;&quot;&gt;nless-stopped&lt;/span&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;</description>
    </item>
    <item>
      <title>Predictive Intellisense in PowerShell</title>
      <link>https://staging.johansen.foo/predictive-intellisense-in-powershell</link>
      <guid isPermaLink="true">https://staging.johansen.foo/predictive-intellisense-in-powershell</guid>
      <pubDate>Thu, 09 Jan 2025 00:00:00 +0000</pubDate>
      <description>&lt;h1&gt;Introduction&lt;/h1&gt;
&lt;p&gt;If you are using PowerShell (pwsh) on a daily basis like me, you should take a look at enabling Predictive IntelliSense in your pwsh prompt. It was announced in &lt;a href=&quot;https://devblogs.microsoft.com/powershell/announcing-psreadline-2-1-with-predictive-intellisense/&quot; rel=&quot;noreferrer&quot; target=&quot;_blank&quot;&gt;late 2020&lt;/a&gt; but I dont think that many people are aware and have it enabled in their pwsh profile. You can think of Predictive IntelliSense like taking tab completion to the next level.&lt;/p&gt;
&lt;h1&gt;How to&lt;/h1&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Check that you have (PSReadLine) minimum version 2.1.0 installed.&lt;/p&gt;

&lt;pre class=&quot;phiki github-dark-default&quot; data-language=&quot;powershell&quot; style=&quot;background-color: #0d1117; color: #e6edf3;&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color: #79c0ff;&quot;&gt;Get-Module&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff7b72;&quot;&gt;-&lt;/span&gt;&lt;span&gt;ListAvailable &lt;/span&gt;&lt;span style=&quot;color: #ff7b72;&quot;&gt;-&lt;/span&gt;&lt;span&gt;Name PSReadLine
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If not install/update it from PowerShell Gallery.&lt;/p&gt;

&lt;pre class=&quot;phiki github-dark-default&quot; data-language=&quot;powershell&quot; style=&quot;background-color: #0d1117; color: #e6edf3;&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color: #79c0ff;&quot;&gt;Find-Module&lt;/span&gt;&lt;span&gt; PSReadLine &lt;/span&gt;&lt;span style=&quot;color: #ff7b72;&quot;&gt;-&lt;/span&gt;&lt;span&gt;Repository PSGallery
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Import the module to your pwsh session.&lt;/p&gt;

&lt;pre class=&quot;phiki github-dark-default&quot; data-language=&quot;powershell&quot; style=&quot;background-color: #0d1117; color: #e6edf3;&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color: #79c0ff;&quot;&gt;Import-Module&lt;/span&gt;&lt;span&gt; PSReadLine
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Set PSReadLine option (add it to your $profile so it will load on each new session).&lt;/p&gt;

&lt;pre class=&quot;phiki github-dark-default&quot; data-language=&quot;powershell&quot; style=&quot;background-color: #0d1117; color: #e6edf3;&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span style=&quot;color: #79c0ff;&quot;&gt;Set-PSReadLineOption&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff7b72;&quot;&gt;-&lt;/span&gt;&lt;span&gt;PredictionSource History &lt;/span&gt;&lt;span style=&quot;color: #ff7b72;&quot;&gt;-&lt;/span&gt;&lt;span&gt;PredictionViewStyle ListView
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h1&gt;Screenshots&lt;/h1&gt;
&lt;p&gt;Find the module on PoserShell Gallery.&lt;/p&gt;
&lt;figure&gt;&lt;img alt=&quot;&quot; src=&quot;https://staging.johansen.foo/media/pages/predictive-intellisense-in-powershell/e762ce3f2f-1736483682/psreadline.png&quot;&gt;&lt;/figure&gt;
&lt;p&gt;Using Predictive IntelliSense from your prompt.&lt;/p&gt;
&lt;figure&gt;&lt;img alt=&quot;&quot; src=&quot;https://staging.johansen.foo/media/pages/predictive-intellisense-in-powershell/b685e26295-1736483682/psreadline2.png&quot;&gt;&lt;/figure&gt;</description>
    </item>
  </channel>
</rss>
