summaryrefslogtreecommitdiff
path: root/abdul-blog
diff options
context:
space:
mode:
authorW. Kosior <koszko@koszko.org>2024-05-27 12:19:19 +0200
committerW. Kosior <koszko@koszko.org>2024-05-27 12:29:59 +0200
commitee8fac8ab8529e2d105c7e55c2c9b28aefd19b46 (patch)
tree7f7559d0ba91710624eb2c76a9765587595d8153 /abdul-blog
parent2d05ae83321cdf8aa3abab6acdd69f331ef4b89a (diff)
downloadAGH-ctf-course-2024-magister.tar.gz
AGH-ctf-course-2024-magister.zip
Update and add remaining files.HEADmagister
Diffstat (limited to 'abdul-blog')
-rw-r--r--abdul-blog/Makefile22
-rw-r--r--abdul-blog/hello-world.gmi5
-rw-r--r--abdul-blog/hello-world.html49
-rw-r--r--abdul-blog/index.gmi35
-rw-r--r--abdul-blog/index.html49
-rw-r--r--abdul-blog/learning-guix-home.gmi49
-rw-r--r--abdul-blog/learning-guix-home.html49
-rw-r--r--abdul-blog/matterbridge-in-tildeserver.gmi174
-rw-r--r--abdul-blog/matterbridge-in-tildeserver.html49
-rw-r--r--abdul-blog/mine-guix-shell.gmi19
-rw-r--r--abdul-blog/mine-guix-shell.html49
-rw-r--r--abdul-blog/minetest-server.gmi105
-rw-r--r--abdul-blog/minetest-server.html49
-rw-r--r--abdul-blog/sorry-gemini-only.gmi4
14 files changed, 707 insertions, 0 deletions
diff --git a/abdul-blog/Makefile b/abdul-blog/Makefile
new file mode 100644
index 0000000..efa6127
--- /dev/null
+++ b/abdul-blog/Makefile
@@ -0,0 +1,22 @@
+GEMINI_ONLY = \
+ minetest-server \
+ matterbridge-in-tildeserver
+GEMINI_AND_HTML = \
+ index \
+ hello-world \
+ mine-guix-shell \
+ learning-guix-home
+
+all: $(addsuffix .html,$(GEMINI_ONLY) $(GEMINI_AND_HTML))
+.PHONY: all
+
+%.html: %.gmi
+ if printf %s '$(GEMINI_ONLY)' | grep -q $*; then \
+ ./convert_gemtext_file.py sorry-gemini-only.gmi > $@; \
+ else \
+ ./convert_gemtext_file.py $< > $@; \
+ fi
+
+clean:
+ rm -rf *.html
+.PHONY: clean
diff --git a/abdul-blog/hello-world.gmi b/abdul-blog/hello-world.gmi
new file mode 100644
index 0000000..ca3848f
--- /dev/null
+++ b/abdul-blog/hello-world.gmi
@@ -0,0 +1,5 @@
+# Hello, World!
+
+I just discovered server ctftilde.koszko.org. It seems the first public tilde server with available GNU Guix for the users. And also it has Gemini server ^^ What an wonderful opportunity to start an blog!
+
+=> /~abdul/index.gmi back into blog index
diff --git a/abdul-blog/hello-world.html b/abdul-blog/hello-world.html
new file mode 100644
index 0000000..0c938e6
--- /dev/null
+++ b/abdul-blog/hello-world.html
@@ -0,0 +1,49 @@
+
+<head>
+ <style>
+ html {
+ font-size: 16px;
+ line-height: 1.6;
+ color: #1E4147;
+ background-color: #AAC789;
+ --width: calc(100vw - 20px);
+ --height: calc(100vh - 20px);
+ width: var(--width);
+ height: var(--height);
+ border: #8A8A69 solid 10px;
+ overflow-y: hidden;
+ }
+
+ body {
+ margin: 0 auto;
+ max-width: var(--width);
+ max-height: var(--height);
+ overflow-y: scroll;
+ }
+
+ main {
+ max-width: 920px;
+ padding: 1rem 2rem;
+ }
+
+ pre {
+ background-color: #eee;
+ margin: 0 -1rem;
+ padding: 1rem;
+ overflow-x: auto;
+ }
+
+ a {
+ color: #AA2E00;
+ }
+
+ a:visited {
+ color: #802200;
+ }
+ </style>
+</head>
+<body>
+ <main>
+<h1>Hello, World!</h1><p>I just discovered server ctftilde.koszko.org. It seems the first public tilde server with available GNU Guix for the users. And also it has Gemini server ^^ What an wonderful opportunity to start an blog!</p><p><a href='/~abdul/index.html'>back into blog index</a></p>
+ </main>
+</body>
diff --git a/abdul-blog/index.gmi b/abdul-blog/index.gmi
new file mode 100644
index 0000000..d4c5585
--- /dev/null
+++ b/abdul-blog/index.gmi
@@ -0,0 +1,35 @@
+# Abdul's technology blog
+
+Hi, I'm Abdul El-Ihn-Ohn-Ih. I'm a enthusiast in programming. Lisp is mine favourite language. I also enjoy to write (I write about stuff I do on an computer).
+Below is my index of mine blog entries. If something there is interesting you, feel free emailing me at abdul2007@pm.me.
+Note: some of articles are avaiable only in gemini://. Use an gemini browser for view that.
+
+=> gemini://geminiprotocol.net/
+=> gemini://geminiprotocol.net/software/
+
+## Mine entries
+### 2024-03-15
+
+=> /~abdul/matterbridge-in-tildeserver.gmi Matterbridge in tildeserver
+
+### 2024-02-29
+
+=> /~abdul/minetest-server.gmi Mine Minetest
+
+### 2024-02-25
+
+=> /~abdul/learning-guix-home.gmi Learning Guix Home
+
+### 2024-02-20
+
+=> /~abdul/mine-guix-shell.gmi Mine Guix shell
+
+### 2024-02-11
+
+=> /~abdul/hello-world.gmi Hello, World!
+
+## Other peoples blogs
+
+I would like to writing links to other cool Tilde Server blogs here. If you did maked the blog on ctftilde.koszko.org like I did maked, please tell me an link to this and I will write it below.
+
+=> https://ctftilde.koszko.org/registration Registration to Tilde Server
diff --git a/abdul-blog/index.html b/abdul-blog/index.html
new file mode 100644
index 0000000..1ea4af8
--- /dev/null
+++ b/abdul-blog/index.html
@@ -0,0 +1,49 @@
+
+<head>
+ <style>
+ html {
+ font-size: 16px;
+ line-height: 1.6;
+ color: #1E4147;
+ background-color: #AAC789;
+ --width: calc(100vw - 20px);
+ --height: calc(100vh - 20px);
+ width: var(--width);
+ height: var(--height);
+ border: #8A8A69 solid 10px;
+ overflow-y: hidden;
+ }
+
+ body {
+ margin: 0 auto;
+ max-width: var(--width);
+ max-height: var(--height);
+ overflow-y: scroll;
+ }
+
+ main {
+ max-width: 920px;
+ padding: 1rem 2rem;
+ }
+
+ pre {
+ background-color: #eee;
+ margin: 0 -1rem;
+ padding: 1rem;
+ overflow-x: auto;
+ }
+
+ a {
+ color: #AA2E00;
+ }
+
+ a:visited {
+ color: #802200;
+ }
+ </style>
+</head>
+<body>
+ <main>
+<h1>Abdul's technology blog</h1><p>Hi, I'm Abdul El-Ihn-Ohn-Ih. I'm a enthusiast in programming. Lisp is mine favourite language. I also enjoy to write (I write about stuff I do on an computer).</p><p>Below is my index of mine blog entries. If something there is interesting you, feel free emailing me at abdul2007@pm.me.</p><p>Note: some of articles are avaiable only in gemini://. Use an gemini browser for view that.</p><p><a href='https://geminiprotocol.net/'>https://geminiprotocol.net/</a></p><p><a href='https://geminiprotocol.net/software/'>https://geminiprotocol.net/software/</a></p><h2>Mine entries</h2><h3>2024-03-15</h3><p><a href='/~abdul/matterbridge-in-tildeserver.html'>Matterbridge in tildeserver</a></p><h3>2024-02-29</h3><p><a href='/~abdul/minetest-server.html'>Mine Minetest</a></p><h3>2024-02-25</h3><p><a href='/~abdul/learning-guix-home.html'>Learning Guix Home</a></p><h3>2024-02-20</h3><p><a href='/~abdul/mine-guix-shell.html'>Mine Guix shell</a></p><h3>2024-02-11</h3><p><a href='/~abdul/hello-world.html'>Hello, World!</a></p><h2>Other peoples blogs</h2><p>I would like to writing links to other cool Tilde Server blogs here. If you did maked the blog on ctftilde.koszko.org like I did maked, please tell me an link to this and I will write it below.</p><p><a href='https://ctftilde.koszko.org/registration'>Registration to Tilde Server</a></p>
+ </main>
+</body>
diff --git a/abdul-blog/learning-guix-home.gmi b/abdul-blog/learning-guix-home.gmi
new file mode 100644
index 0000000..ca3c98c
--- /dev/null
+++ b/abdul-blog/learning-guix-home.gmi
@@ -0,0 +1,49 @@
+# Learning Guix Home
+
+Today I just learnt to use
+
+```
+guix home
+```
+
+command to reconfigure my home environment with functional package manager in Guix. I written this script on my UNIX Tilde account.
+
+```
+(use-modules ((gnu home) #:select (home-environment))
+ ((gnu home services) #:select
+ (home-files-service-type service))
+ ((gnu home services shells) #:select
+ (home-bash-configuration home-bash-service-type))
+ ((gnu system shadow) #:select (%default-dotguile))
+ ((guix gexp) #:select (file-append gexp local-file plain-file)))
+
+(home-environment
+ (services
+ (list
+ (service home-bash-service-type
+ (home-bash-configuration
+ (bash-profile (list (plain-file
+ "bash_ps1"
+ "export PS1=\"\n↓← $PS1\n→ \"")))))
+
+ (service home-files-service-type
+ `((".guile" ,%default-dotguile))))))
+```
+
+I written it in home-config.scm and then I run
+
+```
+guix home reconfigure home-config.scm
+```
+
+Now I having better bash shell which taking less characters, so I can write more command in one line.
+## Mine currently working
+I am currently working to serving Minetest Server on Tilde Server. I installed it by
+
+```
+guix shell minetest
+```
+
+and I will to write about in mine next blog post.
+
+=> /~abdul/index.gmi back into blog index
diff --git a/abdul-blog/learning-guix-home.html b/abdul-blog/learning-guix-home.html
new file mode 100644
index 0000000..42dcf9d
--- /dev/null
+++ b/abdul-blog/learning-guix-home.html
@@ -0,0 +1,49 @@
+
+<head>
+ <style>
+ html {
+ font-size: 16px;
+ line-height: 1.6;
+ color: #1E4147;
+ background-color: #AAC789;
+ --width: calc(100vw - 20px);
+ --height: calc(100vh - 20px);
+ width: var(--width);
+ height: var(--height);
+ border: #8A8A69 solid 10px;
+ overflow-y: hidden;
+ }
+
+ body {
+ margin: 0 auto;
+ max-width: var(--width);
+ max-height: var(--height);
+ overflow-y: scroll;
+ }
+
+ main {
+ max-width: 920px;
+ padding: 1rem 2rem;
+ }
+
+ pre {
+ background-color: #eee;
+ margin: 0 -1rem;
+ padding: 1rem;
+ overflow-x: auto;
+ }
+
+ a {
+ color: #AA2E00;
+ }
+
+ a:visited {
+ color: #802200;
+ }
+ </style>
+</head>
+<body>
+ <main>
+<h1>Learning Guix Home</h1><p>Today I just learnt to use</p><pre>guix home</pre><p>command to reconfigure my home environment with functional package manager in Guix. I written this script on my UNIX Tilde account.</p><pre>(use-modules ((gnu home) #:select (home-environment))((gnu home services) #:select(home-files-service-type service))((gnu home services shells) #:select(home-bash-configuration home-bash-service-type))((gnu system shadow) #:select (%default-dotguile))((guix gexp) #:select (file-append gexp local-file plain-file)))(home-environment(services(list(service home-bash-service-type(home-bash-configuration(bash-profile (list (plain-file"bash_ps1""export PS1=\"\n↓← $PS1\n→ \"")))))(service home-files-service-type`((".guile" ,%default-dotguile))))))</pre><p>I written it in home-config.scm and then I run</p><pre>guix home reconfigure home-config.scm</pre><p>Now I having better bash shell which taking less characters, so I can write more command in one line.</p><h2>Mine currently working</h2><p>I am currently working to serving Minetest Server on Tilde Server. I installed it by</p><pre>guix shell minetest</pre><p>and I will to write about in mine next blog post.</p><p><a href='/~abdul/index.html'>back into blog index</a></p>
+ </main>
+</body>
diff --git a/abdul-blog/matterbridge-in-tildeserver.gmi b/abdul-blog/matterbridge-in-tildeserver.gmi
new file mode 100644
index 0000000..f7e3e03
--- /dev/null
+++ b/abdul-blog/matterbridge-in-tildeserver.gmi
@@ -0,0 +1,174 @@
+# Matterbridge in tildeserver
+
+Hello friends, today I maked a bridge with Matterbridge program for Discord and Matrix room I talk in. It is cool because I run this in Guix functional package manager with UNIX Tilde server.
+
+## Config .scm
+
+I added 1 line to mine home config to using new modules
+
+```
+ ((gnu packages messaging) #:select (matterbridge))
+```
+
+And I has added more lines down under
+
+```
+(define home-matterbridge-services
+ (const
+ (list (shepherd-service
+ (provision '(mattermost))
+ (modules '((shepherd support))) ;for '%user-log-dir'
+ (start #~(make-forkexec-constructor
+ '(#$(file-append matterbridge "/bin/matterbridge")
+ "--conf"
+ #$(local-file "config.toml"))
+ #:log-file (string-append %user-log-dir
+ "/matterbridge.log")))
+ (stop #~(make-kill-destructor))
+ (documentation "Start local matterbridge.")))))
+
+(define home-matterbridge-service-type
+ (service-type
+ (name 'home-matterbridge)
+ (extensions
+ (list (service-extension home-shepherd-service-type
+ home-matterbridge-services)))
+ (description "Bridge messaging platforms using matterbridge.")
+ (default-value #f)))
+```
+
+That define service, that I use in home environment, like this
+
+```
+ (service home-matterbridge-service-type)
+```
+
+This is similar to Minetest Server service.
+
+=> /~abdul/minetest-server.gmi mine Minetest Server blog post
+
+## Matterbridge config .toml
+
+I use also an .toml file to configuring the Matterbridge program. It have this
+
+```
+[matrix.noevil-pl]
+Server="https://matrix.noevil.pl"
+Login="abdul"
+Password="***************"
+RemoteNickFormat="[{PROTOCOL}] <{NICK}> "
+NoHomeServerSuffix=false
+
+[discord.cyber]
+Server="3333333333333333333"
+Token="000000000000000000000000.111111.22222222222222222222222222222222222222"
+RemoteNickFormat="[{PROTOCOL}] <{NICK}> "
+PreserveThreading=true
+
+[[gateway]]
+name="secret_room"
+enable=true
+
+[[gateway.inout]]
+account="matrix.noevil-pl"
+channel="!HNiADouYMzLGUUxtxw:noevil.pl"
+
+[[gateway.inout]]
+account="discord.cyber"
+channel="ID:1207786885481500702"
+```
+
+There I replace an real password with "***************".
+
+## Full config .scm
+
+This is mine config full
+
+```
+(use-modules ((gnu home) #:select (home-environment))
+ ((gnu home services) #:select
+ (home-activation-service-type home-files-service-type service
+ service-extension service-type))
+ ((gnu home services shells) #:select
+ (home-bash-configuration home-bash-service-type))
+ ((gnu home services shepherd) #:select
+ (home-shepherd-service-type shepherd-service))
+ ((gnu packages messaging) #:select (matterbridge))
+ ((gnu packages minetest) #:select (minetest-server))
+ ((gnu system shadow) #:select (%default-dotguile))
+ ((guix gexp) #:select (file-append gexp local-file plain-file)))
+
+(define home-matterbridge-services
+ (const
+ (list (shepherd-service
+ (provision '(mattermost))
+ (modules '((shepherd support))) ;for '%user-log-dir'
+ (start #~(make-forkexec-constructor
+ '(#$(file-append matterbridge "/bin/matterbridge")
+ "--conf"
+ #$(local-file "config.toml"))
+ #:log-file (string-append %user-log-dir
+ "/matterbridge.log")))
+ (stop #~(make-kill-destructor))
+ (documentation "Start local matterbridge.")))))
+
+(define home-matterbridge-service-type
+ (service-type
+ (name 'home-matterbridge)
+ (extensions
+ (list (service-extension home-shepherd-service-type
+ home-matterbridge-services)))
+ (description "Bridge messaging platforms using matterbridge.")
+ (default-value #f)))
+
+(define home-minetest-services
+ (const
+ (list (shepherd-service
+ (provision '(minetest))
+ (modules '((shepherd support))) ;for '%user-log-dir'
+ (start #~(make-forkexec-constructor
+ '(#$(file-append minetest-server "/bin/minetestserver")
+ "--gameid" "minetest"
+ "--config" #$(local-file "abdultest.conf"))
+ #:environment-variables
+ (cons
+ (format #f "MINETEST_SUBGAME_PATH=~a/share/minetest/games"
+ #$(@@ (gnu packages minetest) minetest-data))
+ (default-environment-variables))
+ #:log-file (string-append %user-log-dir
+ "/minetest.log")))
+ (stop #~(make-kill-destructor))
+ (documentation "Start Minetest block game like Minecraft.")))))
+
+(define home-minetest-activation
+ (const #~(mkdir-p "/home/ctftilde/ctftilde-abdul/.local/minetest/abdultest")))
+
+(define home-minetest-service-type
+ (service-type
+ (name 'home-minetest)
+ (extensions
+ (list (service-extension home-shepherd-service-type
+ home-minetest-services)
+ (service-extension home-activation-service-type
+ home-minetest-activation)))
+ (description "Minetest block game like Minecraft.")
+ (default-value #f)))
+
+(home-environment
+ (services
+ (list
+ (service home-bash-service-type
+ (home-bash-configuration
+ (bash-profile (list (plain-file
+ "bash_ps1"
+ "export PS1=\"\n↓← $PS1\n→ \"")))))
+
+ (service home-files-service-type
+ `((".guile" ,%default-dotguile)))
+
+ (service home-matterbridge-service-type)
+
+ (service home-minetest-service-type))))
+```
+
+=> /~abdul/index.gmi back into blog index
diff --git a/abdul-blog/matterbridge-in-tildeserver.html b/abdul-blog/matterbridge-in-tildeserver.html
new file mode 100644
index 0000000..ca128da
--- /dev/null
+++ b/abdul-blog/matterbridge-in-tildeserver.html
@@ -0,0 +1,49 @@
+
+<head>
+ <style>
+ html {
+ font-size: 16px;
+ line-height: 1.6;
+ color: #1E4147;
+ background-color: #AAC789;
+ --width: calc(100vw - 20px);
+ --height: calc(100vh - 20px);
+ width: var(--width);
+ height: var(--height);
+ border: #8A8A69 solid 10px;
+ overflow-y: hidden;
+ }
+
+ body {
+ margin: 0 auto;
+ max-width: var(--width);
+ max-height: var(--height);
+ overflow-y: scroll;
+ }
+
+ main {
+ max-width: 920px;
+ padding: 1rem 2rem;
+ }
+
+ pre {
+ background-color: #eee;
+ margin: 0 -1rem;
+ padding: 1rem;
+ overflow-x: auto;
+ }
+
+ a {
+ color: #AA2E00;
+ }
+
+ a:visited {
+ color: #802200;
+ }
+ </style>
+</head>
+<body>
+ <main>
+<h1>Gemini-only page</h1><p>Sorry, that page is unavaiable for viewing in HTTPS. Please use Gemini instead of.</p><p><a href='/~abdul/index.html'>back into blog index</a></p>
+ </main>
+</body>
diff --git a/abdul-blog/mine-guix-shell.gmi b/abdul-blog/mine-guix-shell.gmi
new file mode 100644
index 0000000..eca28fa
--- /dev/null
+++ b/abdul-blog/mine-guix-shell.gmi
@@ -0,0 +1,19 @@
+# Mine guix shell
+
+An
+
+```
+guix shell
+```
+
+command is very cool. Today I maked Lagrange Gemini client installed in an shell. I can do that by
+
+```
+guix shell lagrange
+```
+
+=> https://gmi.skyjake.fi/lagrange/ Lagrange Browser Website
+
+I display many interesting Gemini websites under Lagrange. I can even reading Wikipedia on Gemini. It's cool and I'd like to more people use Gemini instead of HTTPS.
+
+=> /~abdul/index.gmi back into blog index
diff --git a/abdul-blog/mine-guix-shell.html b/abdul-blog/mine-guix-shell.html
new file mode 100644
index 0000000..442aac7
--- /dev/null
+++ b/abdul-blog/mine-guix-shell.html
@@ -0,0 +1,49 @@
+
+<head>
+ <style>
+ html {
+ font-size: 16px;
+ line-height: 1.6;
+ color: #1E4147;
+ background-color: #AAC789;
+ --width: calc(100vw - 20px);
+ --height: calc(100vh - 20px);
+ width: var(--width);
+ height: var(--height);
+ border: #8A8A69 solid 10px;
+ overflow-y: hidden;
+ }
+
+ body {
+ margin: 0 auto;
+ max-width: var(--width);
+ max-height: var(--height);
+ overflow-y: scroll;
+ }
+
+ main {
+ max-width: 920px;
+ padding: 1rem 2rem;
+ }
+
+ pre {
+ background-color: #eee;
+ margin: 0 -1rem;
+ padding: 1rem;
+ overflow-x: auto;
+ }
+
+ a {
+ color: #AA2E00;
+ }
+
+ a:visited {
+ color: #802200;
+ }
+ </style>
+</head>
+<body>
+ <main>
+<h1>Mine guix shell</h1><p>An</p><pre>guix shell</pre><p>command is very cool. Today I maked Lagrange Gemini client installed in an shell. I can do that by</p><pre>guix shell lagrange</pre><p><a href='https://gmi.skyjake.fi/lagrange/'>Lagrange Browser Website</a></p><p>I display many interesting Gemini websites under Lagrange. I can even reading Wikipedia on Gemini. It's cool and I'd like to more people use Gemini instead of HTTPS.</p><p><a href='/~abdul/index.html'>back into blog index</a></p>
+ </main>
+</body>
diff --git a/abdul-blog/minetest-server.gmi b/abdul-blog/minetest-server.gmi
new file mode 100644
index 0000000..0a0c819
--- /dev/null
+++ b/abdul-blog/minetest-server.gmi
@@ -0,0 +1,105 @@
+# Mine Minetest
+
+Haha, 2x "Mine", I hope you see an joke.
+I write to explain you how I setup minetest server under this Tilde UNIX server. Also is this mine first blog post which only is on Gemini and not on HTTPS. You have to installed a Gemini client to reading it.
+
+## Guix config
+
+Mine Guix Home config has growing a lot and this is now
+
+```
+(use-modules ((gnu home) #:select (home-environment))
+ ((gnu home services) #:select
+ (home-files-service-type service service-extension
+ service-type))
+ ((gnu home services shells) #:select
+ (home-bash-configuration home-bash-service-type))
+ ((gnu home services shepherd) #:select
+ (home-shepherd-service-type shepherd-service))
+ ((gnu packages minetest) #:select (minetest-server))
+ ((gnu system shadow) #:select (%default-dotguile))
+ ((guix gexp) #:select (file-append gexp local-file plain-file)))
+
+(define home-minetest-services
+ (const
+ (list (shepherd-service
+ (provision '(minetest))
+ (modules '((shepherd support))) ;for '%user-log-dir'
+ (start #~(make-forkexec-constructor
+ '(#$(file-append minetest-server "/bin/minetestserver")
+ "--gameid" "minetest"
+ "--config" #$(local-file "abdultest.conf"))
+ #:log-file (string-append %user-log-dir
+ "/minetest.log")))
+ (stop #~(make-kill-destructor))
+ (documentation "Start Minetest block game like Minecraft.")))))
+
+(define home-minetest-activation
+ (const #~(mkdir-p "/home/ctftilde/ctftilde-abdul/.local/minetest/abdultest")))
+
+(define home-minetest-service-type
+ (service-type
+ (name 'home-minetest)
+ (extensions
+ (list (service-extension home-shepherd-service-type
+ home-minetest-services)
+ (service-extension home-activation-service-type
+ home-minetest-activation)))
+ (description "Minetest block game like Minecraft.")
+ (default-value #f)))
+
+(home-environment
+ (services
+ (list
+ (service home-bash-service-type
+ (home-bash-configuration
+ (bash-profile (list (plain-file
+ "bash_ps1"
+ "export PS1=\"\n↓← $PS1\n→ \"")))))
+
+ (service home-files-service-type
+ `((".guile" ,%default-dotguile)))
+
+ (service home-minetest-service-type))))
+```
+
+But this is no all, and I had advice to writing Minetest Server map config in a new file abdultest.conf. This is inside that
+
+```
+map-dir = /home/ctftilde/abdul/.local/minetest/abdultest
+server_name = Abdul & friends
+motd = I and mine friends build of blocks
+port = 20030
+```
+
+Then I use
+
+```
+#$(local-file "abdultest.conf")
+```
+
+to putting the file into Guix and it put an path to .conf file in Minetest Server command. (I had been said this helps because Guix can "declaratively" define the system)
+
+## Adding to Cron
+
+Services from .scm configuration file are runned by shepderd who is started when user logins. So yeah, I want a initial shepherd process starting when reboot and a Minetest Server process starting by shepherd then. For that I edit crontab like
+
+```
+crontab -e
+```
+
+and write line like
+
+```
+* * * * * bash -l
+```
+
+## Thanks
+
+I wanted to thank to Wojtek Kosior for helping me 2x to write Guix home configs and write cron configs. Thank you and you also for wanting to reading my blog.
+
+## Mine currently working
+
+I am now plan to using matterbridge software to connecting Matrix and Discord. I try to doing this similar to doing the Minetest Server and to using Guix Home functional package manager to doing that.
+
+=> /~abdul/index.gmi back into blog index
diff --git a/abdul-blog/minetest-server.html b/abdul-blog/minetest-server.html
new file mode 100644
index 0000000..ca128da
--- /dev/null
+++ b/abdul-blog/minetest-server.html
@@ -0,0 +1,49 @@
+
+<head>
+ <style>
+ html {
+ font-size: 16px;
+ line-height: 1.6;
+ color: #1E4147;
+ background-color: #AAC789;
+ --width: calc(100vw - 20px);
+ --height: calc(100vh - 20px);
+ width: var(--width);
+ height: var(--height);
+ border: #8A8A69 solid 10px;
+ overflow-y: hidden;
+ }
+
+ body {
+ margin: 0 auto;
+ max-width: var(--width);
+ max-height: var(--height);
+ overflow-y: scroll;
+ }
+
+ main {
+ max-width: 920px;
+ padding: 1rem 2rem;
+ }
+
+ pre {
+ background-color: #eee;
+ margin: 0 -1rem;
+ padding: 1rem;
+ overflow-x: auto;
+ }
+
+ a {
+ color: #AA2E00;
+ }
+
+ a:visited {
+ color: #802200;
+ }
+ </style>
+</head>
+<body>
+ <main>
+<h1>Gemini-only page</h1><p>Sorry, that page is unavaiable for viewing in HTTPS. Please use Gemini instead of.</p><p><a href='/~abdul/index.html'>back into blog index</a></p>
+ </main>
+</body>
diff --git a/abdul-blog/sorry-gemini-only.gmi b/abdul-blog/sorry-gemini-only.gmi
new file mode 100644
index 0000000..ce34f26
--- /dev/null
+++ b/abdul-blog/sorry-gemini-only.gmi
@@ -0,0 +1,4 @@
+# Gemini-only page
+Sorry, that page is unavaiable for viewing in HTTPS. Please use Gemini instead of.
+
+=> /~abdul/index.gmi back into blog index