forked from rolsf/rolsf.xyz
Compare commits
2 commits
c24311b9d2
...
8781c0aa47
Author | SHA1 | Date | |
---|---|---|---|
|
8781c0aa47 | ||
|
0efa840821 |
2 changed files with 55 additions and 2 deletions
54
dist/distrocrafting.html
vendored
Normal file
54
dist/distrocrafting.html
vendored
Normal file
|
@ -0,0 +1,54 @@
|
|||
<head>
|
||||
<link rel="stylesheet" href="style.css">
|
||||
</head>
|
||||
<body>
|
||||
<div class="main">
|
||||
<h1>DISTROCRAFTING</h1>
|
||||
<h2>Beggining</h2>
|
||||
<h3>Are you wondering wether you should distrocraft a linux distro? (here's why you should and you shouldn't anyway)</h3>
|
||||
<h3>Distrocrafting is a complicated process, so if you quit things easily, DON'T. TRY. DISTROCRAFTING. SERIOUSLY.</h3>
|
||||
<br>
|
||||
<h2>Writing a PACKAGE MANAGER</h2>
|
||||
<br>
|
||||
Yes, the dreaded <b>Package Manager</b> (scarrry)<br>
|
||||
No distro is complete without it. <i>Unless you are a psycho</i>.<br>
|
||||
<h3>A modern package manager typically implements these things:</h3>
|
||||
* <b>Dependency Tracking</b><br>
|
||||
* <b>File tracking for removal</b><br>
|
||||
* <b>Conflicts</b> (a very IMPORTANT part of packaging)<br>
|
||||
* <b>Lockfiles</b> to prevent multiple instances that work on the same files<br>
|
||||
* <b>Package Manager Configuartion</b> that should be in something like ini or json, two readable standards<br>
|
||||
* <b>Checksums</b> to check whether the file has been downloaded correctly<br>
|
||||
<br>
|
||||
Unless you want nobody to use your distro, a package manager is recommended. Try avoiding shell as it has for example a <i>billion</i> sha256sum binaries, all differing slightly.
|
||||
<br>
|
||||
<h2>Packaging things</h2>
|
||||
<br>
|
||||
Now, for the most difficult process of distrocrafting, <b>packaging</b><br>
|
||||
<h3>A distro isn't a distro without software like:</h3>
|
||||
|
||||
* <b>A bootloader</b> to boot your distro<br>
|
||||
* <b>A kernel</b>, configure it wisely, but broadly.<br>
|
||||
* <b>A text editor</b> to configure things on your distro<br>
|
||||
* <b>A window manager/DE</b> to use your distro as a daily driver<br>
|
||||
* <b>A display server/protocol</b> to render the <i>WM or DE</i><br>
|
||||
* <b>A browser</b><br>
|
||||
* <b>An audio server</b><br>
|
||||
* <b>An init system, service manager and journal</b><br>
|
||||
<br>
|
||||
You can write a script to automate packaging. As packaging is slow, this is recommended<br>
|
||||
<br>
|
||||
<h2>Wayland or X11/Xorg</h2>
|
||||
<br>
|
||||
Wayland is the way to the future, if you want your distro to live, use Wayland, less things to maintain.<br>
|
||||
<b>Fun fact about Xorg:</b> Most of the people working on X11/Xorg have moved to Wayland, thus making X11/Xorg older and older, and less usable by each day.<br>
|
||||
<b><i>But what about Nvidia users?</b></i><br>
|
||||
Don't worry, Wayland is much better than it was a couple of months ago, and soon, nvk will make noveau usable (i presume) again.<br>
|
||||
<br>
|
||||
<h2>Configuring the Kernel</h2>
|
||||
<br>
|
||||
Do note that <b>your configuration will take a long time to compile, since it must be broad.</b><br>
|
||||
What you should do is set everything to yes, or modules and then modify as needed<br>
|
||||
</div>
|
||||
</body>
|
||||
|
3
dist/style.css
vendored
3
dist/style.css
vendored
|
@ -5,7 +5,6 @@
|
|||
font-stretch: 75% 125%;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
:root {
|
||||
--bg-1: #dad4c9;
|
||||
--bg: #eeeeee;
|
||||
|
@ -130,7 +129,7 @@ p {margin-bottom: 1rem;}
|
|||
|
||||
h1, h2, h3, h4, h5 {
|
||||
margin: var(--space-sm) 0 var(--space-xs);
|
||||
font-family: 'Poppins', sans-serif;
|
||||
font-family: 'Manrope', sans-serif;
|
||||
font-weight: 400;
|
||||
line-height: 1.3;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue