Compare commits

...

2 Commits

Author SHA1 Message Date
ayham 386eb6d03b
add new article 2021-12-29 20:14:13 +03:00
ayham 908aae371b
add new article 2021-12-28 20:45:00 +03:00
10 changed files with 177 additions and 7 deletions

View File

@ -0,0 +1,59 @@
A Minimal Linux Display Manager
There is this itch that tiling window manager users feel. Whether it is caused
by surfing the world of reddit or the want for change, it might be useful to
have a way to easily switch between window managers. This article shows how to
achieve this using already installed applications on your system.
# A BASH on the head.
On most *sane* Linux distributions, BASH is provided as a default shell script
interpreter, I will be using that. When I said minimal, I meant *minimal*. With
barely 38 lines, I know no other contestant. For a bonus, I will also use
```sx``` & ```ssh-agent```.
```
#!/bin/bash
DwmOption="DWM"
EXWMOption="EXWM"
MATEOption="MATE"
EnlightenmentOption="Enlightenment"
ConsoleOption="Console"
menu=("$DwmOption" "$EXWMOption" "$MATEOption" "$EnlightenmentOption" "$ConsoleOption")
echo "Which WM would you like to run?"
select opt in "${menu[@]}"
do
case $opt in
$DwmOption)
exec ssh-agent sx sh ~/.config/X11/dwm-xinit
break
;;
$EXWMOption)
exec ssh-agent sx sh ~/.config/X11/exwm
break
;;
$MATEOption)
exec ssh-agent sx mate-session
break
;;
$EnlightenmentOption)
exec ssh-agent sx sh ~/.config/X11/enlightenment
break
;;
$ConsoleOption)
exec zsh
break
;;
*) echo "invalid option $REPLY"
esac
done
```
That's it! For adding extra entries:
- create a new 'Option' variable,
- then add it to the ```menu``` array,
- adding the extra option to the 'cases' clause appropriately.
Enjoy!

View File

@ -0,0 +1,89 @@
<!DOCTYPE html>
<html>
<head>
<title>A Minimal Linux Display Manager</title>
<link rel="stylesheet" href="../style.css">
<link rel="shortcut icon" type="image/jpg"
href="https://ayham.xyz/pix/pfp.ico"/>
<meta name="viewport" content="width=device-width, initial-scale=1">
<script type="text/javascript" src="js/partials.js" async></script>
<link rel="preload" href="font.woff" as="font" type="font/woff" crossorigin="anonymous">
</head>
<body>
<center>
<h1 style=font-size:xxx-large>A Minimal Linux Display Manager</h1>
</center>
<div id=partial_header></div>
<main>
<p>There is this itch that tiling window manager users feel. Whether it is caused
by surfing the world of reddit or the want for change, it might be useful to
have a way to easily switch between window managers. This article shows how to
achieve this using already installed applications on your system.</p>
<h1>A BASH on the head.</h1>
<p>On most <em>sane</em> Linux distributions, BASH is provided as a default shell script
interpreter, I will be using that. When I said minimal, I meant <em>minimal</em>. With
barely 38 lines, I know no other contestant. For a bonus, I will also use
<code>sx</code> &amp; <code>ssh-agent</code>.</p>
<pre><code>#!/bin/bash
DwmOption="DWM"
EXWMOption="EXWM"
MATEOption="MATE"
EnlightenmentOption="Enlightenment"
ConsoleOption="Console"
menu=("$DwmOption" "$EXWMOption" "$MATEOption" "$EnlightenmentOption" "$ConsoleOption")
echo "Which WM would you like to run?"
select opt in "${menu[@]}"
do
case $opt in
$DwmOption)
exec ssh-agent sx sh ~/.config/X11/dwm-xinit
break
;;
$EXWMOption)
exec ssh-agent sx sh ~/.config/X11/exwm
break
;;
$MATEOption)
exec ssh-agent sx mate-session
break
;;
$EnlightenmentOption)
exec ssh-agent sx sh ~/.config/X11/enlightenment
break
;;
$ConsoleOption)
exec zsh
break
;;
*) echo "invalid option $REPLY"
esac
done
</code></pre>
<p>That&rsquo;s it! For adding extra entries:</p>
<ul>
<li>create a new &lsquo;Option&rsquo; variable,</li>
<li>then add it to the <code>menu</code> array,</li>
<li>adding the extra option to the &lsquo;cases&rsquo; clause appropriately.</li>
</ul>
<p>Enjoy!</p>
<center>
Unique Users:
<a href="https://www.digits.net" target="_blank" rel="noopener">
<img src="https://counter.digits.net/?counter={a6716c2f-04eb-a304-452c-7a2b69889a6f}&template=simple"
alt="Hit Counter by Digits" border="0" />
</a>
</center>
</main>
<div align=center id=partial_footer></div>
</body>
</html>

View File

@ -2,16 +2,28 @@
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
<title type="text">ayham's blog</title>
<subtitle type="text">probably interesting stuff</subtitle>
<updated>2021-12-17T20:03:57Z</updated>
<updated>2021-12-29T20:13:48Z</updated>
<link rel="alternate" type="text/html" href="articles.ayham.xyz"/>
<id>articles.ayham.xyz/atom.xml</id>
<link rel="self" type="application/atom+xml" href="articles.ayham.xyz/atom.xml"/>
<entry>
<title type="text">A Minimal Linux Display Manager</title>
<link rel="alternate" type="text/html" href="articles.ayham.xyz/a-minimal-linux-display-manager.html"/>
<id>articles.ayham.xyz/a-minimal-linux-display-manager.html</id>
<published>2021-12-28T20:45:00Z</published>
<updated>2021-12-28T20:45:00Z</updated>
<author><name>ayham</name></author>
<summary type="text">There is this itch that tiling window manager users feel. Whether it is caused
by surfing the world of reddit or the want for change, it might be useful to
have a way to easily switch between window managers. This article shows how to
achieve this using already installed applications on your system.</summary>
</entry>
<entry>
<title type="text">My site is Now Installable as a Web App!</title>
<link rel="alternate" type="text/html" href="articles.ayham.xyz/install-ayhamxyz-pwa.html"/>
<id>articles.ayham.xyz/install-ayhamxyz-pwa.html</id>
<published>2021-12-17T19:59:54Z</published>
<updated>2021-12-17T19:59:54Z</updated>
<updated>2021-12-17T20:04:11Z</updated>
<author><name>ayham</name></author>
<summary type="text">Recently, I have updated my site to offer a Web App option for viewing. You can
install PWA Web Apps on chromium-based browsers, by first accessing

View File

@ -17,7 +17,7 @@
<div id=partial_header></div>
<main>
<p>Tags:<a href="@ANDROID.html">ANDROID</a>, <a href="@GUIDE.html">GUIDE</a>, <a href="@LINUX.html">LINUX</a>, <a href="@SECURITY.html">SECURITY</a>, <a href="@UPDATE.html">UPDATE</a>, <a href="@WEBSITE.html">WEBSITE</a></p><li><a href="install-ayhamxyz-pwa.html">2021/12/17 My site is Now Installable as a Web App!</a></li><li><a href="true-full-disk-encryption.html">2021/12/10 True Full Disk Encryption On Linux</a></li><li><a href="hardening-the-one-macro.html">2021/11/30 Hardening the Moto One Macro</a></li><li><a href="blogit-to-blog-it.html">2021/11/26 blogit: A Complete Guide</a></li><li><a href="first-article.html">2021/10/01 The Beginning of a series!</a></li></ul>
<p>Tags:<a href="@ANDROID.html">ANDROID</a>, <a href="@GUIDE.html">GUIDE</a>, <a href="@LINUX.html">LINUX</a>, <a href="@SECURITY.html">SECURITY</a>, <a href="@UPDATE.html">UPDATE</a>, <a href="@WEBSITE.html">WEBSITE</a></p><li><a href="a-minimal-linux-display-manager.html">2021/12/28 A Minimal Linux Display Manager</a></li><li><a href="install-ayhamxyz-pwa.html">2021/12/17 My site is Now Installable as a Web App!</a></li><li><a href="true-full-disk-encryption.html">2021/12/10 True Full Disk Encryption On Linux</a></li><li><a href="hardening-the-one-macro.html">2021/11/30 Hardening the Moto One Macro</a></li><li><a href="blogit-to-blog-it.html">2021/11/26 blogit: A Complete Guide</a></li><li><a href="first-article.html">2021/10/01 The Beginning of a series!</a></li></ul>
<center>
Unique Users:

View File

@ -32,7 +32,7 @@
</li>
<li>
<a href="https://ayham.xyz/setup.htm">
🖥 Seup
🖥 Setup
</a>
</li>
<li>

View File

@ -5,6 +5,16 @@
<link>articles.ayham.xyz</link>
<description>probably interesting stuff</description>
<item>
<title>A Minimal Linux Display Manager</title>
<link>articles.ayham.xyz/a-minimal-linux-display-manager.html</link>
<guid>articles.ayham.xyz/a-minimal-linux-display-manager.html</guid>
<pubDate>Tue, 28 Dec 2021 20:45:00 +0300</pubDate>
<description>There is this itch that tiling window manager users feel. Whether it is caused
by surfing the world of reddit or the want for change, it might be useful to
have a way to easily switch between window managers. This article shows how to
achieve this using already installed applications on your system.</description>
</item>
<item>
<title>My site is Now Installable as a Web App!</title>
<link>articles.ayham.xyz/install-ayhamxyz-pwa.html</link>
<guid>articles.ayham.xyz/install-ayhamxyz-pwa.html</guid>

View File

@ -19,7 +19,7 @@
<meta name="msapplication-TileColor" content="#FFFFFF">
<script type="text/javascript" src="js/partials.js" async></script>
<link rel="preload" href="font.woff" as="font" type="font/woff" crossorigin="anonymous">
<link rel="preload" href="courier.woff" as="font" type="font/woff" crossorigin="anonymous">
</head>
<body>
<center>

View File

@ -32,7 +32,7 @@
</li>
<li>
<a href="https://ayham.xyz/setup.htm">
🖥 Seup
🖥 Setup
</a>
</li>
<li>

View File

@ -32,7 +32,7 @@
</li>
<li>
<a href="https://ayham.xyz/setup.htm">
🖥 Seup
🖥 Setup
</a>
</li>
<li>

View File