<p>In this tutorial we're going to look at how you can contribute to the opsec blog, we'll look into how the work is being organized, and how to contribute via gitea. We'll also look into how you can run the blog yourself since it's entirely public domain (Creative Commons Zero license).</p>
<p>First, look at all the blogposts that are yet to be completed from the <ahref="../index.html">opsec index page</a> to see if there are some you'd like to do:</p>
<imgsrc="1.png"class="imgRz">
<p>Each tutorial (even if completed) has it's own assigned issue on <ahref="https://git.nowhere.moe/nihilist/blog-contributions/issues">gitea</a>:</p>
<imgsrc="1.5.png"class="imgRz">
<p>You can pick one that you'd like to do, if you see one that has a red cross you can click on it, it will redirect you to it's assigned gitea issue (example: <ahref="https://git.nowhere.moe/nihilist/blog-contributions/issues/61">Easy Private Chats - SimpleX</a> you are free to brainstorm it further like so:</p>
<imgsrc="2.png"class="imgRz">
<p>The idea being that each issue needs to have a clear todolist to bring clarity on what needs to be done in it. <b> Please check if the tutorial is already assigned to someone already or not:</b></p>
<imgsrc="3.png"class="imgRz">
<p>At first, I am assigning only <b>one contributor per tutorial</b>, and only <b>one tutorial per contributor</b> at a time, with a <b>default deadline of 1 month</b>. to complete the assigned tutorial. (if you want to extend the deadline, you'll have to contact me first).</p>
<p>In short, please <b>choose a tutorial that is neither done, nor assigned yet</b>, you can check the status of each tutorial on the project board <ahref="https://git.nowhere.moe/nihilist/blog-contributions/projects/1">here</a>:</p>
<imgsrc="4.png"class="imgRz">
<p>The list of tutorials that are not assigned yet are in the second column, once you have chosen one just ping me on <ahref="https://simplex.chat/contact#/?v=2-5&smp=smp%3A%2F%2F1OwYGt-yqOfe2IyVHhxz3ohqo3aCCMjtB-8wn4X_aoY%3D%40smp11.simplex.im%2FsM96T2YMg4As7FiVoUVEttBgZQVPxWnb%23%2F%3Fv%3D1-2%26dh%3DMCowBQYDK2VuAyEAsKONXcyHAFEd79i13QZf8vDRUU5dVgQKQqUy_0S7ay4%253D%26srv%3D6ioorbm6i3yxmuoezrhjk6f6qgkc4syabh7m3so74xunb5nzr4pwgfqd.onion">SimpleX</a> or in the <ahref="https://simplex.chat/contact#/?v=2-7&smp=smp%3A%2F%2FL5jrGV2L_Bb20Oj0aE4Gn-m5AHet9XdpYDotiqpcpGc%3D%40nowhere.moe%2FH4g7zPbitSLV5tDQ51Yz-R6RgOkMEeCc%23%2F%3Fv%3D1-3%26dh%3DMCowBQYDK2VuAyEAkts5T5AMxHGrZCCg12aeKxWcpXaxbB_XqjrXmcFYlDQ%253D&data=%7B%22type%22%3A%22group%22%2C%22groupLinkId%22%3A%22c3Y-iDaoDCFm6RhptSDOaw%3D%3D%22%7D">Opsec SimpleX group chat</a>.</p>
<p>You can also submit a suggestion to me directly if you think this blog is missing something crucial, such as a brand new blogpost idea <b>(although make sure it remains on topic for Privacy / Anonymity / Deniability) i am NOT looking for regular Sysadmin tutorials here.</b></p>
<p>If you think one of the existing tutorials is missing something, feel free to criticize them in their assigned issues (ping me when you do so, so i don't miss it):</p>
<imgsrc="5.png"class="imgRz">
<p>After discussing with me what task you want to do, we'll confirm on the price for that tutorial and after i get your confirmation i'll assign it to you, and that's when you can start to work on it.</p>
<p><u>Disclaimer:</u> if you're not used to writing technical stuff, please aim for the tutorials that are labeled as "Simple" and that you actually understand. Don't try to bite more than you can chew, otherwise i might refuse further contributions coming from you. You should be at least familliar with the topic you intend to talk about.</p>
<p>Now you first need to sign up on gitea, if you want to maintain your anonymity feel free to get yourself a mailbox anonymously such as signing up on <ahref="https://account.proton.me/mail/signup">protonmail</a> using the tor browser. and then use that email to sign up onto <ahref="https://git.nowhere.moe/user/sign_up">gitea</a> aswell:</p>
<imgsrc="6.png"class="imgRz">
<imgsrc="6.5.png"class="imgRz">
<imgsrc="7.png"class="imgRz">
<imgsrc="8.png"class="imgRz">
<p>From there, you can fork the repository, from your new account:</p>
<imgsrc="9.png"class="imgRz">
<p>You can leave everything as default as shown below: </p>
<imgsrc="10.png"class="imgRz">
<p>Now from there you continue from the commandline, do a git clone the repository you just forked, and do the edits you need to do:</p>
<p>and you can also view your edits in real time from your browser of choice, just put the complete path to the index.html file to view it in real time, for me it is as follows: <b>/home/nihilist/Documents/blog-contributions/opsec/newtutorial/index.html</b> (just hit F5 to refresh in the browser, everytime you save (:w) in vim)</p>
<p>Make sure that you follow the quality standard i described <ahref="../tutorial/index.html">here</a>: <b>start with the Why, then the What, then the How</b>. to describe how to do things, you can use images and screenshots like so: </p>
<p>To take screenshots like i do, you can use <ahref="../compilation/index.html">flameshot</a>, it has everything you need for screenshots. When you take screenshots, dont forget to draw arrows to mention where the user needs to click, add text if something needs to be clarified, etc. and then save your screenshot in the same folder as your blogpost contribution (in this case, in <b>blog-contributions/opsec/new-tutorial</b>)</p>
<pre><codeclass="nim">
apt install flameshot -y
flameshot
</pre></code>
<imgsrc="30.png"class="imgRz">
<p>If you are showcasing a complex tutorial please put into a graph what you are talking about. I used to make graphs using yEd Graphs (but it's closed source) so instead as of q3 2024 i'm using Drawio to make them, both tools have got everything you need to write complex graphs.</p>
<pre><codeclass="nim">
[ mainpc ] [ /dev/pts/3 ] [blog/opsec/manifesto]
→ apt search draw.io
Sorting... Done
Full Text Search... Done
draw.io/now 24.7.17 amd64 [installed,local]
draw.io desktop
[ mainpc ] [ /dev/pts/3 ] [blog/opsec/manifesto]
→ apt install draw.io
[ mainpc ] [ /dev/pts/3 ] [blog/opsec/manifesto]
→ drawio
</pre></code>
<imgsrc="31.png"class="imgRz">
<imgsrc="32.png"class="imgRz">
<imgsrc="33.png"class="imgRz">
<imgsrc="34.png"class="imgRz">
<imgsrc="35.png"class="imgRz">
<p>If you want to use my logos for onymity, surveillance, centralisation, complexity, etc you can find them in the <b>blog-contributions/opsec/logos/</b> directory:</p>
<imgsrc="36.png"class="imgRz">
<p>Then, i'll let you go through the <ahref="https://www.drawio.com/doc/">drawio documentation</a> to learn how to use it, as there's alot to cover to add logos, change shapes, add text, add arrows, etc:</p>
<imgsrc="37.png"class="imgRz">
<p>But in the end you should have a good looking graph like this one:</p>
<p>and if there are any commands to be shown, just copy paste from your terminal directly into the index.html file, into the <b>pre code blocks</b>:</p>
<pre><codeclass="nim">
<<b></b>pre><<b></b>code class="nim">
[ mainpc ] [ /dev/pts/20 ] [~/Nextcloud/blog]
→ vim index.html
<<b></b>/pre><<b></b>/code>
</pre></code>
<pre><codeclass="nim">
[ mainpc ] [ /dev/pts/20 ] [~/Nextcloud/blog]
→ vim index.html
</pre></code>
<p>Preferably copy paste the command outputs into the pre code blocks, so we i can save on storage space as images take alot more space than regular text.</p>
<imgsrc="13.png"class="imgRz">
<p>Then once your tutorial is finished, don't forget to edit the footer to contain your contact details, your links if you have any, and your monero donation address.</p>
To https://git.nowhere.moe/6dv9lk1pbaflulau/blog-contributions
7c759d3..7067b5c main -> main
</pre></code>
<p>Now you have pushed your changes to your <ahref="https://git.nowhere.moe/6dv9lk1pbaflulau/blog-contributions">forked respository</a>, from there you can make a Pull request (asking me to pull in your changes, to the <ahref="https://git.nowhere.moe/nihilist/blog-contributions">main repository</a>) as follows:</p>
<imgsrc="14.png"class="imgRz">
<imgsrc="15.png"class="imgRz">
<imgsrc="16.png"class="imgRz">
<p>now from there your pull request is created, and i'll review it as soon as i get the time:</p>
<imgsrc="17.png"class="imgRz">
<p>If it's not complete, i'll comment in there asking you to add what's missing, <b>changes that you must actually finish before the deadline.</b> To add further changes simply add more commits to it</p>
<p>As you may have noticed, the entire blog is Public Domain (Creative Commons Zero license), which means that you can not only save the files for yourself, but you can also run it under your own clearnet or onion domain.</p>
<p>To do so you can just git clone it on a VPS like so :</p>
<pre><codeclass="nim">
[ Datura ] [ /dev/pts/0 ] [~]
→ cd /srv
[ Datura ] [ /dev/pts/0 ] [/srv]
→ git clone https://git.nowhere.moe/nihilist/blog-contributions blog
</pre></code>
<p>And then using nginx you can make it publicly accessible over clearnet, or over Tor. Feel free to reuse my nginx config if you want to host it, just change the domains to be your instead.</p>