<?xml version="1.0" encoding="utf-8"?><rss version="2.0">
  <channel>
    <title>Allien.work Notes&#039;n&#039;such</title>
    <link>https://allien.work/en</link>
    <lastBuildDate>Sun, 11 Jan 2026 22:36:25 +0100</lastBuildDate>
        <description>XML-feeding your desire to read my letter-compositions</description>
            <item>
      <title>Sonoff NSPanel Pro locally in Home Assistant</title>
      <link>https://allien.work/en/notes/sonoff-nspanel-pro-locally-in-home-assistant</link>
      <guid>https://allien.work/en/notes/sonoff-nspanel-pro-locally-in-home-assistant</guid>
      <pubDate>Mon, 02 Jun 2025 00:00:00 +0200</pubDate>
      <description><![CDATA[<h2>Intro</h2>
<ul>
<li>Original Blakadder&#8217;s howto is quite old (2022)</li>
<li>Sonoff did push many updates to NS Panel Pro since then (even enabling the panel as Zigbee router - not a coordinator!), one of which updated the shipped WebView to more up-to-date version, so a lot of the Xposed steps are not needed anymore</li>
</ul>
<h2>Guide</h2>
<ol>
<li>Setup NS Panel Pro via Ewelink app</li>
<li>Get all the updates (wait a bit each time before prompted) - after ADB is enabled, updates won&#8217;t come any more</li>
<li>Follow <a href="https://blakadder.com/nspanel-pro-sideload/">https://blakadder.com/nspanel-pro-sideload/</a> but stop before Xposed steps</li>
<li>Download and install <a href="https://apkpure.com/home-assistant/io.homeassistant.companion.android/download">Home Assistant Companion app</a><ul>
<li>create a new HA user and use its credentials to log in from the NS Panel Pro</li>
</ul>
</li>
<li>Get the awesome <a href="https://github.com/seaky/nspanel_pro_tools_apk">NS Panel Pro tools</a> to leverage device&#8217;s proximity sensor, light sensor, and Home Assistant integration. (Again, download and install via ADB.)</li>
</ol>
<h2>Useful commands</h2>
<pre><code class="language-sh"># connect to NS Panel via network/wirelessly
adb connect &lt;IP_ADDRESS&gt; # ie. adb connect 192.168.1.101

# install APKs from current folder ("streamed install")
adb install &lt;APK_FILENAME&gt; # ie. adb install "Home Assistant_2025.6.5-full_APKPure.apk"

# simulate "home" button press
adb shell input keyevent 3

# silmulate "power" button press
adb shell input keyevent 26</code></pre>
<h2>Sources</h2>
<ul>
<li><a href="https://blakadder.com/nspanel-pro-sideload/">NSPanel Pro Sideload Apps</a> (Blakadder)</li>
<li><a href="https://blakadder.com/android-panel-webview/">Android Panel WebView</a> (Blakadder)</li>
<li><a href="https://community.home-assistant.io/t/nspanel-pro-custom-android-apps-working/459563/">NSPanel Pro - Custom android apps (working)</a> (HA Forums)</li>
<li><a href="https://github.com/seaky/nspanel_pro_tools_apk">NS Panel Pro Tools</a> (Github/seaky)</li>
</ul>]]></description>
    </item>
        <item>
      <title>Bed thoughts</title>
      <link>https://allien.work/en/notes/bed-thoughts</link>
      <guid>https://allien.work/en/notes/bed-thoughts</guid>
      <pubDate>Tue, 26 Mar 2024 00:00:00 +0100</pubDate>
      <description><![CDATA[<p>My brain used to get excited while I was falling asleep; it stored all thoughts, experiences and unresolved issues in relevant drawers..</p>
<p>Many times I had a really good idea, but laziness and mainly the inability to record it in half-sleep resulted in the dissolution of the <em>heureka</em> idea somewhere in the void..</p>
<p>It bothered me so much over the years that I tried various tricks like the ubiquitous pencil-paper combo (or cell phone) on the nightstand, etc. – but it never worked anyway.</p>
<p><em>(Cut to present day)</em></p>
<p>Now Jana (my wife) and I take turns putting our almost two year old firstborn to sleep - he sleeps in bed with us (his crib is tucked in next to ours).</p>
<p>When I&#8217;m putting him to sleep, all the fatigue of the day (and yeah, just laugh at me that <em>we only have one for now and it&#8217;s like nothing</em>..) suddenly overwhelms me in the bed and I fall into a few minutes of micro-sleep every time (&#8216;cause you have to throw yourself into the same state you want to get your offspring into, right?).</p>
<p>But it&#8217;s completely different than when I actually go to sleep.. like my head knows that <em>&#8220;it&#8217;s just for show&#8221;</em> or maybe my circadian rhythm knows that I&#8217;m in bed unusually early – like 3 hours early.</p>
<p>In short, the body shuts down pleasantly, but the head keeps running. It&#8217;s dark, quiet and calm - other sensations are perfectly muted - and so it&#8217;s possible to concentrate on anything&#8230;</p>
<p>There may be those who call it <em>meditation</em> – I don&#8217;t know; I haven&#8217;t been there yet.</p>
<p>But I&#8217;m having a great time. One of the other hidden benefits of parenthood. I enjoy discovering and hunting these little bits and pieces.</p>]]></description>
    </item>
        <item>
      <title>Mask your email against spam with aliasases</title>
      <link>https://allien.work/en/notes/mask-email-with-aliasases</link>
      <guid>https://allien.work/en/notes/mask-email-with-aliasases</guid>
      <pubDate>Thu, 03 Aug 2023 20:55:00 +0200</pubDate>
      <description><![CDATA[<h2>What are email aliases</h2>
<p>There are several implementations of email aliases but the principle remains the same. The whole system works on forwarding emails.</p>
<p>You keep your real email address almost secret. Instead, you use email aliases on all kinds of online services and e-shops (shady or not).</p>
<blockquote>
<p>These are mostly paid services with a price of around $50 per year. There are also free plans, but they have so many limitations that the main advantages of using them are lost. (Tips on specific services at the end of the article.)</p>
</blockquote>
<p>Alias looks just like any other email address. Ideally, you use a unique alias for each service or e-shop. A good practice is to name them exactly after the name/domain of the service (so for my site, you would make an alias in the form &#8220;allien.work@alias-example.com&#8221;).</p>
<blockquote>
<p>&#8220;@alias-example.com&#8221; is obviously used here for illustration only and is not a real domain/email/alias.</p>
</blockquote>
<h2>How aliases work</h2>
<p>As time goes by, you have hundreds of aliases, for example:</p>
<ul>
<li>bank.xyz@alias-example.com</li>
<li>allien.work@alias-example.com</li>
<li>insurance-agency.org@alias-example.com</li>
<li>mobile-operator.com@alias-example.com</li>
<li>and so on&#8230;</li>
</ul>
<p><em>&#8220;That&#8217;s all well and good, but so far it just seems to be creating unnecessary work&#8230; why should I use it?&#8221;</em> as I hear you argue. Don&#8217;t worry - the whole process tends to be automated - you don&#8217;t have to set up or manually create anything anywhere.</p>
<p>So what&#8217;s next?</p>
<p>If you&#8217;re surrounded only by good people and entrust your aliases to honest services, nothing really changes. Any email that arrives at the alias address (for example, bank.xyz@alias-example.com) will then be forwarded to your real email. Voilá - email as usual.</p>
<h2>Scammers, spammers, hackers&#8230;</h2>
<p>Finally, some excitement! And the main point of this post and email aliases.</p>
<p>Now consider these two very real scenarios:</p>
<ul>
<li>someone hacked that bizarre e-shop where you bought that one Christmas present 5 years ago and they stole the email database from it</li>
<li>XYZ company makes some additional money by selling the personal data they collect from users of their free service/application</li>
</ul>
<p>Your alias (formerly your real email) is now in the hands of crooks. You&#8217;ll start getting tons of spam and possibly phishing attempts. No one wants to really access a mailbox like that.</p>
<p>But you log into your alias service and simply deactivate the compromised alias. You effectively break the link between the alias and your mailbox. The crook&#8217;s hands are left with a worthless email and you&#8217;re in the clear.</p>
<p>If you use unique aliases for each service, you can beautifully see &#8220;where the wind is blowing from&#8221;. Are you getting ads for magic tablets from the alias of that hotel you booked last holiday? Hmmm&#8230;</p>
<h2>Other benefits</h2>
<p>We&#8217;ve covered the main one in detail. So the rest is in a nutshell.</p>
<h3>Your own domain</h3>
<p>Yes, you can run aliases on your own domain (in paid versions).</p>
<h3>Phishing and spam filter</h3>
<p>Some services can alert you to potential phishing attempts, i.e., when someone is impersonating someone else in an attempt to extort sensitive information from you.</p>
<p>They usually also have an additional anti-spam filter - so you&#8217;re protected on several levels.</p>
<h3>Multiple target addresses</h3>
<p>You don&#8217;t have to pair the aliases you create with just one email address. Some aliases can forward emails to your personal email, for example, others to your work email. Or maybe to your partner&#8217;s email. Or - drumroll please - to both of you!</p>
<p>That means you can also create &#8220;couple&#8221; (<em>family</em> or <em>group</em>, if you like) aliases.</p>
<blockquote>
<p>More on the topic of couple/family lifehacks in my next article: <a href="lifehacks-for-couples">Lifehacks for couples</a></p>
</blockquote>
<h2>Disadvantages of aliases</h2>
<p>Every coin has a flip side. If you run your emails through another service, they will logically have access to them. So it&#8217;s not a good fit if you&#8217;re very paranoid or if you receive sensitive data.</p>
<p>Aliases always work best in tandem with traditional email (no need to give a unique alias to all your friends..).</p>
<p>Another fact is that if you&#8217;d like to take advantage of aliases, it&#8217;s ideal that the crooks don&#8217;t have your real address anymore. This generally means setting up a brand new main email address so you can start with a clean slate.</p>
<h2>Tips on alias services</h2>
<p>Personally, I use <a href="https://simplelogin.io">SimpleLogin.io</a>. This entire post is written based on over a year of experience with this service. And no, (unfortunately) this is not a paid post :)</p>
<p>As an alternative, you can try <a href="https://anonaddy.com/">AnonAddy</a>. Both of these services offer a very stripped down free trial so you can get a feel for them.</p>
<p>And if you&#8217;d like to dig even deeper into the topic, check out <a href="https://www.privacyguides.org/en/email/#email-aliasing-services">Privacy Guides &gt; Email aliasing services</a>.</p>
<hr />
<p>Are you tempted to use aliases and tame junk email?<br />
Or have you already used a method of email masking that saved your neck?</p>
<p>I&#8217;d love to read your stories!</p>]]></description>
    </item>
        <item>
      <title>Lifehacks for couples</title>
      <link>https://allien.work/en/notes/lifehacks-for-couples</link>
      <guid>https://allien.work/en/notes/lifehacks-for-couples</guid>
      <pubDate>Fri, 19 May 2023 00:00:00 +0200</pubDate>
      <description><![CDATA[<p>Alternatively, this post could be introduced by saying:</p>
<blockquote>
<p>An IT guy gives advice on how to make life easier (not only for couples).</p>
</blockquote>
<p>Not all here is definitely for everyone. Think of it as a range – pick and choose what makes sense for you.</p>
<h2>Shared calendar</h2>
<p>An absolute must for starters. You probably already use shared calendars, but if you don&#8217;t, it&#8217;s time to get started.</p>
<p>In practice, you each have your own personal calendar plus one together. In the shared one, you then write down events relating to the whole couple/family – trips, visits or even little things like the delivery dates of your purchases (so that at least one of you is home at the time).</p>
<blockquote>
<p><strong>Tip:</strong> if one of us plans anything without the other being present, we put a question mark after the event name, to mark an unconfirmed event that the other does not necessarily know about, hence not being confirmed by both parties.</p>
</blockquote>
<h2>Shared contacts</h2>
<p>The longer you live together, the more your friends intermingle. So why not apply that sharing to your contacts too?</p>
<p>Create a new contacts directory and share it with the other person. Of course, you don&#8217;t have to share all of your contacts.</p>
<p>The benefits?</p>
<ul>
<li>Bigger chance of actual contact infos (one of you will know that Mr XY has a new number – suddenly both of you benefit)</li>
<li>neither of you will forget your friends&#8217; birthdays (if you save birthday dates to your contacts&#8230; which you should :)</li>
<li>having a contact of a friend with whom the other went for coffee/beer is useful (dead phone etc.)</li>
<li>not to mention it&#8217;s easier to throw secret birthday parties – if that&#8217;s your style</li>
</ul>
<h2>Shopping list</h2>
<p>The original version of this post wanted to recommend shared tasks (sounds a bit repetitive now, doesn&#8217;t it?), but after our experience we&#8217;ve come to the conclusion that - at least for us - it doesn&#8217;t work.</p>
<p>In a time of covid (and our own isolation), we couldn&#8217;t resist the charm of delivering groceries from our local delivery services.</p>
<p>Since then, by far the easiest form of shopping list has been the cart itself on the web/app of said services. Running out of toilet paper? Put it in the cart - it will wait there for the ordering to happen.</p>
<p>That way everyone can neatly participate in the contents of the bags that arrive. (Not counting the person who completes the purchase and is therefore also the &#8220;shopping censor&#8221; who has unlimited power to throw things out of the cart before ordering :)</p>
<h2>Web accounts</h2>
<p>It&#8217;s starting to get hot. If you&#8217;re already functioning together as a household, why not share other accounts?</p>
<p>Do you absolutely need 2 club/membership cards for Ikea, Billa, Tesco, pharmacies&#8230;?</p>
<blockquote>
<ul>
<li>Do you collect points?</li>
<li>We do. Both of us.</li>
</ul>
</blockquote>
<p>You&#8217;ll also appreciate this when one is buying and the other is returning. You&#8217;ll have everything in one place.</p>
<h2>Passwords</h2>
<p>If you choose to share accounts, you will need to share their passwords too. This is not the only thing <a href="https://allien.work/en/notes/bitwarden-opensource-password-manager">password manager, e.g. Bitwarden</a> is great for.</p>
<p><strong>A password manager is an absolute necessity in everyone&#8217;s digital life.</strong> I&#8217;m not exaggerating – if you don&#8217;t use one yet, start today!</p>
<p>If you trust each other in the couple enough (and I believe you do, otherwise it would be a shitty relationship), Bitwarden also offers <a href="https://bitwarden.com/help/emergency-access/">Emergency access</a>. In short, one of you gets badly hurt or worse and the other gets access to your passwords after a set period of time.</p>
<p>Believe me, it&#8217;s very handy. I&#8217;ve been through it myself (albeit in a different context).</p>
<h2>Emails</h2>
<p>Before you rebel – no, I&#8217;m not encouraging you to share inboxes. That&#8217;s where I personally draw the imaginary red line.</p>
<p>But what in the case of the account sharing and more?</p>
<p>There are services for email aliases (e.g. <a href="https://simplelogin.io/">Simplelogin</a>) or in other words &#8220;masked email addresses&#8221;. <del>I&#8217;d like to go into this topic more in depth some next time</del>, <a href="https://allien.work/en/notes/mask-email-with-aliasases">Dedicated SimpleLogin article</a> already available; but briefly:</p>
<ol>
<li>You create an alias, for example with Simplelogin (which is a brand new email address).</li>
<li>You pair it with one (or more!) target mailboxes</li>
<li>You use the alias instead of your real email for the service</li>
<li>When the alias receives an email (e.g. order confirmation), it will be forwarded to the paired addresses (i.e. both of you)</li>
</ol>
<blockquote>
<p><strong>Bonus:</strong> if someone hacks the service or sells your email to spammers, you don&#8217;t have to worry about it because you just deactivate the alias – and nothing spammy ever reaches your inbox.</p>
</blockquote>
<h2>Finance</h2>
<p>Is it possible to blend two people digitally into one even more? Rhetorical question..</p>
<h3>Bank account</h3>
<p>My wife and I think a joint account is another must. Separating personal and family money is great.</p>
<p>Set up a bank account, add the other as a dispositor. There are also banks that can maintain explicit joint accounts.</p>
<p>Use the joint to pay the common – rent or mortgage, utilities, internet, food&#8230; To make sure you have for all that, set up direct standing orders from your personal accounts (right after payday). Keep your personal accounts for your own purchases. Well, just make up your own system.</p>
<h3>Investing</h3>
<p>What to do with the surplus in your account? Or how to collectively provide for your retirement, which is unlikely to be any significant?</p>
<p>There are plenty of investment platforms to choose from. But <a href="https://www.portu.cz/?reference=svobodamEB45">Portu pleasantly surprised me</a> – it offers sending money from joint accounts, where the name of the registered person (with Portu) and the name of the account from which the money is sent do not necessarily need to match.</p>
<hr />
<p>So much for the digital little things that make our family life easier. Feel free to be inspired.</p>
<p>I&#8217;d love to hear your tricks - show them off in the comments below <a href="/en/about">or let me know privately</a>!</p>]]></description>
    </item>
        <item>
      <title>Write beyond ashes</title>
      <link>https://allien.work/en/notes/write-beyond-ashes</link>
      <guid>https://allien.work/en/notes/write-beyond-ashes</guid>
      <pubDate>Mon, 27 Feb 2023 22:35:00 +0100</pubDate>
      <description><![CDATA[<p>Ever since I started making websites I&#8217;ve had this weirdly undying romantic notion that blogging is cool. But I&#8217;ve never been into it, or even good at it.</p>
<p>Then came a certain <a href="https://pavelkralicek.cz/">True Gentleman</a> and his <em>Year in Review</em> - a nice and compact reflection of his past year (maybe even slightly motivational). This intrigued me so much that I decided to shamelessly rip it off.</p>
<p>Maybe it&#8217;ll finally teach me how to write - break the writing paralysis. That&#8217;s what everyone says - if you want to learn to write, write. And it doesn&#8217;t matter what, neither the initial quality of it.</p>
<p>Then I came across <a href="https://obsidian.md/">Obsidian</a>, Logseq, the Zettelkasten methodology, and all this sect of productivity. It&#8217;s way beyond the scope of this post to go into that..</p>
<p>What it did get me though:</p>
<ul>
<li>A tool to connect classic, static notes and my daily notes</li>
<li>my own daily notes structure (which I expected to be able to exploit later in some automation, e.g. <em>show all the days when X happened</em>)</li>
<li>a surprisingly effective nudge to write anything at all - by the way, it&#8217;s private, so I don&#8217;t have to be embarrassed that I sound like an ape and that my syntax is on the level of &#8220;spray and pray&#8221;</li>
</ul>
<p>To better illustrate - I created the following template to be used every day to automatically create a daily note in Obsidian. It greets me every time I open Obsidian. You literally have everything lined up in front of you, you just need to fill it in with letters:</p>
<pre><code># 2023-02-26 (Sun)

[[2023-02-25 (Sat)|&lt;-- Yesterday]] - [[2023-02-27 (Mon)|Tomorrow --&gt;]]

## Stats

(Because I'm a numbers, graphs and stats freak... this section has been replaced by Oura)

- Getting up: (Motivational element for an owl of my caliber to get up earlier)
- Sleeping: 
- Smoking: (Again, but a demotivational element - "beware how much you smoke, whatever you smoke, quit it")

## Highlights

(Or exactly the more important, historical moments that would go into the Year-End Recap á la Pavel Králíček)

## Thoughts

(Daily ramblings, random thoughts, reflections and observations; not necessarily of great telling value)

## Today's notes

(Notes related to today - for example, I'm now walking my son Filip in a stroller, so I have info on how long he sleeps)

## Today's tasks

(E.g. what needs to be bought, done, drilled, ... :)

        query
        path: "Daily Notes" task-todo:""

(This mysterious piece of text retrieves all the unfinished tasks from all the other daily notes and lists them here - or what didn't get done before might get done today)</code></pre>
<p>If you know Markdown, you&#8217;ll feel right at home. If you don&#8217;t, cheerfully ignore the weird characters. Just for the record, anyone can make any template they want.</p>
<p>&#8230;and it&#8217;s worked fine for six months. <em>Till I quit smoking.</em></p>
<p>You know, when you make a line for every cigarette, with a frequency of about 90 minutes, 15 times a day, and just as often have your daily notes gaping with void, there&#8217;s a pretty good chance something noteworthy happened in that last hour.</p>
<p>Today marks 6.5 weeks of me not smoking. In that time, I&#8217;ve only had 7 lame entries. I&#8217;m not saying I managed to post daily before, but multiples more definitely. Out of sight, out of mind&#8230;</p>
<p>And here I&#8217;ll take the liberty of inserting today&#8217;s entry, which indirectly made me write today&#8217;s post:</p>
<blockquote>
<p>End of February, the temperature has dropped below freezing again and so has my writing activity. I have [[2023-02-01 (Wed)|mentioned earlier]] that with the end of smoking I don&#8217;t write that much.</p>
<p>I&#8217;m walking Filip now and so I&#8217;m busy reading articles. And <a href="https://careful.digital/commons/blog/week-notes-25-02-23">one of them</a>, referring to <a href="https://gilest.org/weeknotes-tips.html">Weeknotes by Giles Turnbull</a>, inspired me. Why create hundreds of daily notes a year and then stress about not having as much to write about? Weekly or even perhaps monthly notes would be perfectly adequate.</p>
</blockquote>
<p>I&#8217;m going to take the liberty of tactlessly ending here today. It is too early to give out advice and wisdom in this regard.</p>
<p>But what I would highly recommend to anyone taking notes is the aforementioned <a href="https://obsidian.md/">Obsidian</a> or <a href="https://logseq.com/">Logseq</a> (both have apps for both desktop and mobile). I&#8217;ve been using them for over a year now, and I&#8217;m still fascinated by how much added value just linking a few notes together gives you. You&#8217;re actually building your own mini-Wikipedia. It sounds like a crap idea, but it will fully &#8220;click&#8221; when you use it for a while. Then you&#8217;ll never want to go back.</p>
<figure><img alt="Visualizing the note linking in Obsidian" src="https://allien.work/media/pages/notes/psat-az-za-popel/85e504d095-1740235739/obsidian-note-graph.png"><figcaption>If this jumble of linked notes of mine reminded you of brain synapses, you’d make the developers of Obsidian and Logsequ very happy - that’s exactly what they’re after.</figcaption></figure>]]></description>
    </item>
        <item>
      <title>Bitwarden password manager</title>
      <link>https://allien.work/en/notes/bitwarden-opensource-password-manager</link>
      <guid>https://allien.work/en/notes/bitwarden-opensource-password-manager</guid>
      <pubDate>Sun, 07 Mar 2021 23:20:00 +0100</pubDate>
      <description><![CDATA[<h2>The importance of password management</h2>
<p>When you&#8217;re using weak passwords, or in the worse case, even reusing the same weak password across many services, you&#8217;re risking a lot. <a href="https://haveibeenpwned.com/" title="See for yourself, you might be a victim already">Hacks happen more often than you would thought</a>.</p>
<blockquote>
<p><strong>Honestly, how well is safeguarded your main, personal email?</strong> You know, the one you created many years back and haven&#8217;t reviewed since?</p>
</blockquote>
<p>Email is arguably the center of our digital lives – imagine what damage could one do if they could access it.</p>
<figure><img alt="Insecure: Reusing the same (weak) password" src="https://allien.work/media/pages/notes/bitwarden-opensource-password-manager/a309c1c123-1740235739/bad-reusing-same-password.png"><figcaption>Insecure: Reusing the same (weak) password</figcaption></figure>
<p>That&#8217;s where password managers come into play to save the day.</p>
<h2>How password managers work</h2>
<p>Contrary to their name, password managers don&#8217;t only take care of your passwords. They are a useful tool to keep many of your digital secrets safe:</p>
<ul>
<li><strong>logins</strong> to online services</li>
<li><strong>personal information</strong> (name, address, phone number etc. for shopping purposes)</li>
<li><strong>credit card</strong> info</li>
<li>and even secure notes and attachments</li>
</ul>
<p>Password managers strongly encrypt all these sensitive information and make them very <strong>accessible</strong> as well. Many of them come in various formats – web-based, as plug-ins for web browsers, mobile and standalone apps.</p>
<h3>Main benefits</h3>
<p>The main benefit of using a password manager lies in the fact, that you won&#8217;t need to ever again reuse or remember your usual password(s), however long and secure <em>you think</em> they are.</p>
<p>With a password manager, you will be free to use different and ridiculously long and secure passwords for each service separately.</p>
<p>Are you using 2-factor authentication (2FA)? No problem – password managers can take care of those very elegantly as well.<sup id="fnref1:1"><a href="#fn:1" class="footnote-ref">1</a></sup></p>
<p>In practice, all you will ever need with a password manager is <strong>only one, but very secure and long password</strong> to open it <sup id="fnref1:2"><a href="#fn:2" class="footnote-ref">2</a></sup>.</p>
<h2>Meet Bitwarden</h2>
<p>When I choose my software, I always prefer those that are open source (think transparent and auditable code, so that there&#8217;s not any funky business happening behind the curtain) and as multiplatform as possible (available on ideally all operating systems in case I want to switch).</p>
<p><strong><a href="https://bitwarden.com">Bitwarden</a> excels in all of these.</strong> As a nice cherry on top, it&#8217;s perfectly usable in it&#8217;s free plan, so it won&#8217;t make a hole in your pocket.</p>
<blockquote>
<p>Seriously, if you&#8217;re still not using any password manager, <strong>now is the time to jump in</strong>. Your digital security and possibly your future self will thank you greatly!</p>
</blockquote>
<h3>Secure password generator</h3>
<p>Let&#8217;s start with the obvious. Password managers, like Bitwarden, can generate strong passwords. And by that, I mean ridiculously long and complex passwords like:</p>
<pre><code>9e%j&amp;uqsE^z@^u*8!z!amtgA$h4p*283c!b*GHG5VbY6SW!PH^Z$LMBo&amp;cXRVFk9nC4i%a</code></pre>
<blockquote>
<p>Are your current passwords anything like this?</p>
</blockquote>
<p>So why not to treat yourself to a nice 70+ character password combining the weirdest symbols available? <sup id="fnref1:3"><a href="#fn:3" class="footnote-ref">3</a></sup></p>
<p>What&#8217;s even better is that you <del>can</del> <strong>should have a different password like this for each of the service you&#8217;re using</strong>. This way, even when the worst happens and the service gets compromised, the attacker can&#8217;t exploit the same password on other services you use.</p>
<p>That&#8217;s why using the same passwords everywhere is a very bad idea.</p>
<figure><img alt="Safer: Different strong passwords for each service" src="https://allien.work/media/pages/notes/bitwarden-opensource-password-manager/1a01a016bd-1740235739/better-different-strong-passwords.png"><figcaption>Safer: Different strong passwords for each service</figcaption></figure>
<h3>Auto-fill feature</h3>
<blockquote>
<p>So how do you handle all these various long passwords for each site and app?</p>
</blockquote>
<p>Every time you visit a page for which you have a password saved in Bitwarden, you&#8217;ll get a notification that allows you to use it instantly. It doesn&#8217;t matter if you&#8217;re using Bitwarden on your phone or in your web browser (via plug-in).</p>
<figure><img alt="Bitwarden suggesting login info for current site" src="https://allien.work/media/pages/notes/bitwarden-opensource-password-manager/d6e7cbaaec-1740235739/bitwarden-logins-available.png"><figcaption>Bitwarden suggesting login info for current site</figcaption></figure>
<p>With this approach, not only it saves your time and energy to type in your password, it also prevents you to mistype them.</p>
<p>As mentioned before, Bitwarden takes care of your other digital secrets as well. The same auto-fill feature applies to <strong>credit cards</strong> and your <strong>personal information</strong> (e.g. by auto-filling your name and address when shopping online).</p>
<p>Nobody forces you to use all that though. However the option is there if you need/want it.</p>
<h3>Auto-save</h3>
<p>Of course it also works the other way around. Let&#8217;s say you just signed up on a new site. Bitwarden recognizes the form and asks you if you would like to save your login details right away. Effortless!</p>
<h2>Wrapping up</h2>
<p>I think that should all give you a nice overview of how password managers work and why you definitely need one. Many password managers exist, but Bitwarden is my personal favorite for all the reasons I mentioned.</p>
<p>With a free plan, it doesn&#8217;t cost you anything, except for a bit of your time to go through your services and change their passwords to a unique and secure ones. You can do that gradually, but the sooner the better.</p>
<p>To help out with that, Bitwarden offers a nifty feature called <strong>Reused Passwords Report</strong>, where you can easily see all the services that still share the same weak passwords:</p>
<figure><img alt="Bitwarden's Reused Passwords Report in action" src="https://allien.work/media/pages/notes/bitwarden-opensource-password-manager/acdf5de5bf-1740235739/bitwarden-reused-passwords-report.png"><figcaption>Bitwarden’s Reused Passwords Report in action</figcaption></figure>
<p>Do I sound like I&#8217;m pushing this too hard? Maybe I do.</p>
<p><strong>This is seriously one of the most impactful things to do in the increasingly digital age.</strong> I write all of this from my personal experience.</p>
<p>So, do you really need more reasons to level up security of your digital identities?</p>
<p><a class="button primary" href="https://bitwarden.com" rel="noreferrer" target="_blank">Bitwarden.com</a> <a class="button secondary" href="https://bitwarden.com/pricing" rel="noreferrer" target="_blank">Pricing &amp; features</a> <a class="button secondary" href="https://github.com/bitwarden" rel="noreferrer" target="_blank">GitHub</a></p>
<h2>Support Bitwarden</h2>
<p>As with every open source software, it&#8217;s a nice idea to support the developer giving away their product transparently and for free. <strong><a href="https://bitwarden.com/pricing/">Bitwarden&#8217;s premium plan</a> costs humble $10 a year</strong> and adds some nice features on top of everything mentioned so far:</p>
<ul>
<li>Two-step login (2FA) into Bitwarden itself via hardware security keys (Yubikey, FIDO U2F, Duo)</li>
<li>Support for 2FA one-time codes (TOTP) for password entries</li>
<li>1&#160;GB of encrypted file storage (think attachments for your password entries and other)</li>
<li>Warm feeling for supporting the developer :)</li>
</ul>
<div class="footnotes">
<hr />
<ol>
<li id="fn:1">
<p>Although 2FA code support is included only in the Bitwarden&#8217;s Premium plan (at affordable price of $10 per year)&#160;<a href="#fnref1:1" rev="footnote" class="footnote-backref">&#8617;</a></p>
</li>
<li id="fn:2">
<p>You can secure your password manager even further with use of 2FA like hardware security keys (e.g. Yubikey)&#160;<a href="#fnref1:2" rev="footnote" class="footnote-backref">&#8617;</a></p>
</li>
<li id="fn:3">
<p>Be aware though – some services actually limit their password length, so you might need to trim it down sometimes&#160;<a href="#fnref1:3" rev="footnote" class="footnote-backref">&#8617;</a></p>
</li>
</ol>
</div>]]></description>
    </item>
        <item>
      <title>OnePlus 5/5T: Installing Magisk root &#38; xXx NoLimits ROM</title>
      <link>https://allien.work/en/notes/oneplus5-installing-magisk-root-xxx-nolimits-rom</link>
      <guid>https://allien.work/en/notes/oneplus5-installing-magisk-root-xxx-nolimits-rom</guid>
      <pubDate>Sun, 21 Apr 2019 00:00:00 +0200</pubDate>
      <description><![CDATA[<h2>About xXx NoLimits ROM</h2>
<p><a href="https://forum.xda-developers.com/oneplus-6/development/rom-xxx-nolimits-1-0-speed-ram-optimized-t3799167">xXx NoLimits ROM</a> isn&#8217;t actually a full-on replacement of the default OxygenOS system - it works on top of it and it&#8217;s highly customizable. What this means for you?</p>
<ul>
<li>you <em>can</em> keep all the features you love about OxygenOS</li>
<li>you can debloat everything you&#8217;re not a fan of (Google/system apps) and effectively slim down your system, so your battery lasts longer</li>
<li>all the good features will still work (namely OnePlus&#8217; dual camera with portrait mode!)</li>
</ul>
<p>Let&#8217;s get to it!</p>
<blockquote>
<p><strong>Note:</strong> this article assumes your bootloader is already unlocked and custom TWRP Recovery installed. If not, jump into <a href="https://allien.work/en/notes/oneplus5-unlocking-bootloader-installing-twrp">OnePlus 5/5T: Unlocking bootloader &amp; Installing TWRP Recovery</a> first!</p>
</blockquote>
<h2>Installing Magisk</h2>
<p>Magisk Manager acts like your &#8220;control center&#8221; for all the nice things related to root, hiding rooted state from banking apps (!) and offer extending functionality by various Modules.</p>
<figure><img alt="" src="https://allien.work/media/pages/notes/oneplus-5-5t-installing-magisk-root-xxx-nolimits-rom/6d2cfa6093-1740235739/02-installing-magisk.png"></figure>
<ol>
<li>Download <a href="https://forum.xda-developers.com/apps/magisk/official-magisk-v7-universal-systemless-t3473445">Magisk from official homepage</a> (under Downloads &gt; Latest Stable) and Magisk manager (same page, Downloads &gt; Latest Magisk Manager)</li>
<li>Copy all ZIP files to your phone, if you haven&#8217;t done that already</li>
<li>In your TWRP, select <em>Install</em></li>
<li>Locate and select the Magisk file and <em>Swipe to confirm Flash</em> on the next screen</li>
<li>When done, tap <em>Wipe cache/dalvik</em> (again, swipe to confirm) and then <em>Reboot System</em></li>
<li>Locate the Magisk Manager in your File manager &gt; Storage and install it as well</li>
</ol>
<h2>Installing xXx NoLimits for OnePlus</h2>
<p>Original <a href="https://forum.xda-developers.com/oneplus-5/development/rom-xxx-nolimits-1-1-speed-ram-optimized-t3627121">xXx NoLimits for OnePlus 5/5T</a> versions are end of life unfortunately, but the same ROM <a href="https://forum.xda-developers.com/oneplus-6/development/rom-xxx-nolimits-1-0-speed-ram-optimized-t3799167">for OnePlus 6/6T</a> is still compatible with OnePlus 5.</p>
<h3>Preparation</h3>
<p>Go to <a href="https://forum.xda-developers.com/oneplus-6/development/rom-xxx-nolimits-1-0-speed-ram-optimized-t3799167">official xXx NoLimits ROM thread</a> and download:</p>
<ul>
<li><strong>xXx_NoLimits_5.2_OP6_magisk_rom.zip</strong> (or newer, if available)</li>
<li>xXx.NoLimits.profile (v20)</li>
<li>xXx_NoLimits_uninstaller_2.0.zip</li>
</ul>
<ol>
<li>Make changes to the <code>xXx.NoLimits.profile</code> configuration file (optional)</li>
</ol>
<p>This config is used as a template for your wanted settings in xXx ROM. When you edit and tweak it to your likings (and keep it on your phone), you will retain all your customizations even if you later update to newer version of stock OxygenOS and/or newer xXx ROM.</p>
<p>The config profile is nicely self-documented, so you shouldn&#8217;t have any problem following it and editing it as you please. The golden rule always is <em>&#8220;if you don&#8217;t understand something, don&#8217;t touch it&#8221;</em> ;)</p>
<blockquote>
<p><strong>Warning!</strong> Do NOT select <code>StereoSpeakerMod</code> for installation, as it is not compatible with OnePlus 5! It is turned off by default in the config, so keep it that way.</p>
</blockquote>
<h3>Installation</h3>
<ol start="2">
<li>
<p>When you&#8217;re done and satisfied with your profile, save it and copy all these 3 files (profile, xXx ROM &amp; uninstaller) over to your OnePlus 5, to <code>xXx</code> folder in your root directory (<code>Internal storage/xXx</code>). If the xXx installer won&#8217;t find any profile there, it will use a default one baked into the ROM itself. In other words: if you don&#8217;t find anything worth changing in the profile config, you can safely ignore it.</p>
</li>
<li>
<p>Reboot to TWRP Recovery - long press power button and select Recovery - this will bring you again to the familiar TWRP</p>
</li>
</ol>
<blockquote>
<p>Before going further, <strong>I highly recommend you to do a full system backup in TWRP!</strong> - this will help you in case of any problems along the way. Go to <em>Backup</em>, check all the checkboxes, give your backup some nice, memorable name and back everything up. In case things go south, you can recover this from within TWRP &gt; <em>Restore</em> in the future.</p>
</blockquote>
<ol start="4">
<li>Select <em>Install</em>, enter the <code>xXx</code> folder and select <code>xXx_NoLimits_5.2_OP6_magisk_rom.zip</code> (or whatever else version you have)</li>
<li>Once again, swipe to confirm flash and wait for it to install</li>
<li>Next, <em>Wipe cache/dalvik</em> and <em>Reboot System</em></li>
</ol>
<p>Now comes the moment of truth, if you haven&#8217;t been too aggressive in debloating your OnePlus phone..</p>
<blockquote>
<p>If anything goes wrong, here&#8217;s <a href="https://forums.oneplus.com/threads/oneplus-5-rom-ota-oxygen-os-mirrors-for-official-oxygen-os-roms-and-ota-updates.556580/">official OnePlus 5 OxygenOS ROM</a> on OnePlus forums.</p>
</blockquote>
<h3>Troubleshooting</h3>
<ul>
<li><strong>Can&#8217;t login into some apps after installlation</strong> – some of my apps were crashing right after I tried to login into them. This happens if you removed Google Chrome, as its Webview is needed to display content by some apps. You can easily solve this by updating your <em>Android System WebView</em> system app – just go to Google Play, find the app and hit update.</li>
</ul>
<h3>Re-/un-installation</h3>
<p>If you&#8217;d like to experiment with your <code>xXx.NoLimits.profile</code> and further tweak the ROM to your likings, simply edit the profile file on your PC, copy it over to your OnePlus 5. Then boot into TWRP Recovery and flash <code>xXx_NoLimits..</code> ROM again. It will rebuild the ROM based on your profile again.</p>
<p>In case you want to go back to your stock OxygenOS ROM, all you need is to flash the <code>xXx_NoLimits_uninstaller</code> (as usual, <em>Wipe cache/dalvik</em> afterwards). This will revert the changes <code>xXx</code> made to your system. However, your <code>profile</code> will remain intact (in case you want to install it again) and there might be some leftover apps in your system. Those can be easily uninstalled via Google Play, as normal apps.</p>
<h2>Finale</h2>
<p>Congrats if you made it so far, you&#8217;re now a proud owner of customized OnePlus 5! Don&#8217;t forget to check the <a href="https://forum.xda-developers.com/oneplus-6/development/rom-xxx-nolimits-1-0-speed-ram-optimized-t3799167">official xXx.NoLimits thread on XDA forum</a> and say thanks to the developer for all the work he invested!</p>]]></description>
    </item>
        <item>
      <title>OnePlus 5/5T: Unlocking bootloader &#38; Installing TWRP</title>
      <link>https://allien.work/en/notes/oneplus5-unlocking-bootloader-installing-twrp</link>
      <guid>https://allien.work/en/notes/oneplus5-unlocking-bootloader-installing-twrp</guid>
      <pubDate>Sat, 20 Apr 2019 00:00:00 +0200</pubDate>
      <description><![CDATA[<h2>Requirements &amp; preparation</h2>
<ul>
<li>OnePlus 5 phone, duh!</li>
<li>running stock/default OxygenOS system (updated to latest version)</li>
<li>..which is based on Android 9 Pie (check <em>Settings &gt; About phone</em>)</li>
<li>not rooted</li>
</ul>
<blockquote>
<p>Make sure all of your data on your OnePlus 5 are properly backed up - everything will be erased in this process (you have been warned)!</p>
</blockquote>
<p>If you have custom ROMs (other than stock OxygenOS), this guide won&#8217;t work for you, sorry.</p>
<h3>Phone</h3>
<figure><img alt="" src="https://allien.work/media/pages/notes/oneplus-5-5t-unlocking-bootloader-installing-twrp/f1179c693e-1740235739/01-enabling-developer-options.png"></figure>
<ul>
<li>Settings &gt; About phone &gt; keep tapping on &#8220;Build number&#8221; until you get a notification that &#8220;You&#8217;re a developer&#8221;</li>
<li>Settings &gt; System &gt; Developer options - enable these:<ul>
<li>OEM unlocking</li>
<li>Advanced reboot</li>
<li>USB debugging</li>
</ul>
</li>
</ul>
<h3>Software</h3>
<p><strong>Download and save these for later</strong></p>
<ul>
<li><a href="https://sourceforge.net/projects/cheeseburgerdumplings/files/16.0/cheeseburger/recovery/">TWRP 3.2.3 Recovery</a> - feel free to download the newest or the most popular file</li>
</ul>
<p>Transfer this file to your phone (ie. connect your OnePlus phone via USB to your PC, enable File transfer and copy the files over to your Internal storage).</p>
<h2>Unlocking bootloader</h2>
<blockquote>
<p>You can probably skip steps 1-3 by installing <code>android-sdk-platform-tools</code> from Arch&#8217;s AUR, though I haven&#8217;t tested it myself</p>
</blockquote>
<ol>
<li>Go to <a href="https://developer.android.com/studio#command-tools">Android Studio - Command line tools only</a> and download <code>sdk-tools</code> for your OS</li>
<li>Extract it and navigate to SDK Manager - on Linux: in <code>sdkmanager</code> in <code>tools/bin/</code> folder)</li>
<li>Install SDK Platform Tools:</li>
</ol>
<pre><code class="language-sh">$ ./sdkmanager "platform-tools"</code></pre>
<ol start="4">
<li>Connect your OnePlus 5 via USB cable to your PC</li>
<li>Navigate to newly created <code>platform-tools</code> folder (should be on the same level as <code>tools</code> folder from step 2, ie. go up 2 directories) and check if ADB recognizes your phone:</li>
</ol>
<pre><code class="language-sh">$ cd ../../platform-tools/
$ ./adb devices</code></pre>
<blockquote>
<p><strong>No permissions errror?</strong> If you&#8217;ll get an error about &#8220;no permissions&#8221; and not being a member of pludgev group, fix it by <code>sudo usermod -aG plugdev $LOGNAME</code>. Be sure to logout and login back in after that.</p>
</blockquote>
<blockquote>
<p><strong>Wrong udev rules error?</strong> Install <code>android-udev</code> package (Arch) or <code>adb</code> (Ubuntu) - both of these should contain maintained udev rules for Android under Linux. Restart udevd afterwards: <code>$ sudo systemctl restart systemd-udevd</code>.</p>
</blockquote>
<p>If all goes right, you should see something like this (instead of &#8220;xxxxxxxx&#8221; you&#8217;ll see a different string ~ your serial number):</p>
<pre><code class="language-sh">$ ./adb devices
List of devices attached
xxxxxxxx    device</code></pre>
<ol start="6">
<li>Restart your OnePlus 5 phone into Bootloader - long press power button and select Bootloader.</li>
<li>When you&#8217;ve booted into the Bootloader (&#8220;FastBoot mode&#8221;), go back to your terminal and enter:</li>
</ol>
<pre><code class="language-sh">$ ./fastboot devices
xxxxxxxx    fastboot</code></pre>
<p>As before, if all goes right, you will see your serial number (here &#8220;xxxxxxxx&#8221;) and &#8220;fastboot&#8221;. If you don&#8217;t see this, make sure you have the udev rules correctly set-up.</p>
<ol start="8">
<li>Unlock bootloader (finally!) - in Terminal:</li>
</ol>
<pre><code class="language-sh">$ ./fastboot oem unlock</code></pre>
<p>Your OnePlus 5 will switch screen to a friendly disclaimer - use your volume keys to navigate and power button to confirm that you indeed want to unlock the bootloader. After all, you&#8217;ve come all this way, right?</p>
<p>Now the device will flash and clean, then restarts itself. At this point, your OnePlus 5 will act as a brand new phone, greeting you with the configuration wizard.</p>
<p>Once you&#8217;re done with initial setup, head over again to Settings and repeat steps necessary to enable developer mode, Advanced boot and USB debugging (see <em>Requirements &amp; preparation &gt; Phone</em> at the beginning of this guide).</p>
<h2>Installing TWRP Recovery on OnePlus 5</h2>
<ol>
<li>Download <a href="https://forum.xda-developers.com/oneplus-5/development/recovery-twrp-3-2-1-0-oreo-oxygenos-5-0-t3725723">TWRP for Oneplus 5</a> - be sure to choose the one for Android 9.x (requires Pie firmware) - there are 2 download links available</li>
<li>Reboot to Bootloader (~ FastBoot) again by holding down power button - keep your phone connected to PC</li>
<li>When rebooted into FastBoot, switch over to your Terminal and run fastboot again (still in the <code>platform-tools</code> folder as before):</li>
</ol>
<pre><code class="language-sh">$ ./fastboot devices
xxxxxxxx    fastboot</code></pre>
<ol start="4">
<li>Copy downloaded TWRP file into the same folder as <code>fastboot</code> on your PC (ie. into <code>platform-tools</code> folder)</li>
<li>Flash TWRP to your phone via Terminal (if you&#8217;ve downloaded newer version of TWRP, make sure to adjust file name accordingly):</li>
</ol>
<pre><code class="language-sh">$ ./fastboot flash recovery twrp-3.2.3-0-20190311-codeworkx-cheeseburger.img
Sending 'recovery' (30448 KB)                      OKAY [  0.722s]
Writing 'recovery'                                 OKAY [  0.286s]
Finished. Total time: 1.019s</code></pre>
<ol start="6">
<li>When flashing completed successfully, use the volume keys on your OnePlus again to select &#8220;Recovery mode&#8221; and confirm via power button - this will take you to your fresh TWRP recovery</li>
<li>TWRP will ask you if you will allow it to modify system partition - go ahead and swipe at the bottom to confim</li>
</ol>
<h2>Finale</h2>
<p>Congrats! That&#8217;s it, your bootloader is unlocked and the custom TWRP Recovery installed.</p>
<blockquote>
<p><strong>Next up:</strong> <a href="https://allien.work/en/notes/oneplus5-installing-magisk-root-xxx-nolimits-rom">OnePlus 5/5T: Installing Magisk root &amp; xXx NoLimits ROM</a></p>
</blockquote>]]></description>
    </item>
      </channel>
</rss>