<rss xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title>Linux - Category - JMS Blog</title><link>/categories/linux/</link><description>Linux - Category - JMS Blog</description><generator>Hugo -- gohugo.io</generator><language>en</language><lastBuildDate>Thu, 02 Jul 2026 00:00:00 +0000</lastBuildDate><atom:link href="/categories/linux/" rel="self" type="application/rss+xml"/><item><title>Ollama as user systemd service</title><link>/posts/ollama-local/</link><pubDate>Thu, 02 Jul 2026 00:00:00 +0000</pubDate><author>jms</author><guid>/posts/ollama-local/</guid><description><![CDATA[<p>Sometimes I need a service to run when my user is logged in, otherwise the service can run
like the other services when the machine start, <code>systemd</code> can provide that functionality.</p>
<h2 id="ollama">Ollama</h2>
<p><code>Ollama</code> is one of the tools that allows you to run large language models locally. There are other tools like <code>Unsloth Studio</code>, <code>llama.cpp</code>, <code>LM Studio</code>, but <code>Ollama</code> is the simplest.</p>
<div class="details admonition note open">
    <div class="details-summary admonition-title">
        <i class="icon far fa-pen-to-square" aria-hidden="true"></i>Installation<i class="details-icon fas fa-angle-right" aria-hidden="true"></i>
    </div>
    <div class="details-content">
        <div class="admonition-content"><div class="code-block code-line-numbers open" style="counter-reset: code-block 0">
    <div class="code-header language-sh">
        <span class="code-title"><i class="arrow fas fa-angle-right" aria-hidden="true"></i></span>
        <span class="ellipses"><i class="fas fa-ellipsis-h" aria-hidden="true"></i></span>
        <span class="copy" title="Copy to clipboard"><i class="far fa-copy" aria-hidden="true"></i></span>
    </div><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sh" data-lang="sh"><span class="line"><span class="cl">curl -fsSL https://ollama.com/install.sh <span class="p">|</span> sh</span></span></code></pre></div></div>
<p>By default, running the installation script will attempt to create a user <code>ollama</code> and <code>systemd</code> unit file to run the service when the machine starts.</p>]]></description></item><item><title>Switching to i3wm from Gnome</title><link>/posts/2021-06-19-switch-to-i3/</link><pubDate>Sat, 19 Jun 2021 00:00:00 +0000</pubDate><author>jms</author><guid>/posts/2021-06-19-switch-to-i3/</guid><description>&lt;p>If you like the tiling window manager like i3wm and you want to switch from Gnome there are somethings missing like the network manager applet, the volume control, add/connect bluetooth devices and in some cases the gnome-keyring to handle passwords, private keys and certificates.&lt;/p>
&lt;p>To fix that, there are some config tweaks and programs that would make the switch to i3 better. For this i going to use Fedora 34&lt;/p></description></item><item><title>Markdown Blog</title><link>/posts/2018-02-25-blog-setup/</link><pubDate>Sun, 25 Feb 2018 00:00:00 +0000</pubDate><author>jms</author><guid>/posts/2018-02-25-blog-setup/</guid><description><![CDATA[<p>For this blog, i&rsquo;ve setup a linux KVM vps, using as distro Fedora 27.
Fedora 27 comes with Selinux enforced security policy by default this is OK for
system or apps where you required a high security level, but for my case to serve a
static blog and run a couple of services like OpenSSH and Nginx is ok to set the security
policy on permissive mode.</p>
<p>changing the policy can be done via command or setup in permanent way on the selinux config
in <code>/etc/selinux/config</code></p>]]></description></item><item><title>Markdown Blog</title><link>/posts/2018-02-18-markdown-blog/</link><pubDate>Sun, 18 Feb 2018 00:00:00 +0000</pubDate><author>jms</author><guid>/posts/2018-02-18-markdown-blog/</guid><description>&lt;p>There are many reasons and options to choose a static site generator,
but the main reasons are speed and security. Speed because it can allow more control
over the content you only load what is really required without additional
server side content, for security not having a database that can be compromised and
security updates to apply, reduce the attack vectors and the administration work.&lt;/p>
&lt;p>There are many options for static site generators created on diferent languages like:&lt;/p></description></item><item><title>Checking and validating phone numbers</title><link>/posts/2015-06-09-checking-and-validating-phone-numbers/</link><pubDate>Tue, 09 Jun 2015 00:00:00 +0000</pubDate><author>jms</author><guid>/posts/2015-06-09-checking-and-validating-phone-numbers/</guid><description><![CDATA[<p>In applications sometimes is needed check and verify if a phone number is
valid or possible if the number have all required digits to be valid for this
purpose there are several options to tackle the problem like regular
expressions for example to validate <a href="http://en.wikipedia.org/wiki/E.164" target="_blank" rel="noopener noreffer ">E.164
format</a>, library like the [Google
libphonenumber](http://Google libphonenumber) and API like the <a href="https://www.twilio.com/lookup" target="_blank" rel="noopener noreffer ">Twillio
Lookup</a> for something more complete.</p>
<p>for this post i created a small app for test a demo purpose using the [python
port of the Google library](<a href="https://github.com/daviddrysdale/python-" target="_blank" rel="noopener noreffer ">https://github.com/daviddrysdale/python-</a>
phonenumbers)</p>]]></description></item></channel></rss>