aboutsummaryrefslogtreecommitdiff
path: root/carbslinux.org
diff options
context:
space:
mode:
Diffstat (limited to 'carbslinux.org')
-rw-r--r--carbslinux.org84
1 files changed, 59 insertions, 25 deletions
diff --git a/carbslinux.org b/carbslinux.org
index 5916129..21b8117 100644
--- a/carbslinux.org
+++ b/carbslinux.org
@@ -69,8 +69,10 @@ with your favorite pager. You can install either the @command{info} or
- [[#init-system][Init System]]
- [[#configuring-init][Configuring Init]]
- [[#changing-init-program][Changing Init Program]]
- - [[#display-systems][Display Systems]]
- - [[#wayland][Wayland]]
+ - [[#wayland][Wayland]]
+ - [[#enabling-the-wayland-repository][Enabling the Wayland repository]]
+ - [[#switching-from-xorg][Switching from Xorg]]
+ - [[#installing-a-compositor][Installing a Compositor]]
- [[#contribution-guidelines][Contribution Guidelines]]
- [[#conventions][Conventions]]
- [[#shell-conventions][Shell Conventions]]
@@ -86,7 +88,7 @@ with your favorite pager. You can install either the @command{info} or
:COPYING: t
:END:
-Copyright \copy 2020-2022 Cem Keylan
+Copyright \copy 2020-{{{time(%Y)}}} Cem Keylan
#+BEGIN_QUOTE
Permission is granted to copy, distribute and/or modify this document
@@ -106,7 +108,7 @@ Documentation License."
#+NAME: pubkey
#+begin_src sh :exports none
-PUBKEY=carbslinux-2021.08.pub
+PUBKEY=carbslinux-2023.02.pub
#+end_src
These are the step-by-step instructions for installing Carbs Linux. It can be
@@ -174,8 +176,8 @@ curl -L https://dl.carbslinux.org/releases/x86_64/carbs-rootfs.tar.xz.sig
#+end_src
#+RESULTS:
-: untrusted comment: verify with carbslinux-2021.08.pub
-: RWTK4GFDD7JiohUHBeJXuKw+/P3K4ZRR8jQud0iOxNDbn7WCFxQsxt9FUNSEiXfLjkm1Ez8c3esRG8oydrsFUFpBGtekFt5obgo=
+: untrusted comment: verify with carbslinux-2023.02.pub
+: RWTe38zmx+iyuKEL5T84MJ5Y24jqenkTtQLJxbaMzOBS/NkGVl5J+Vn2B6vTV/gJK7LYBPS+IOXV5sEf+YLGCMcBYAGHCcP4xQ8=
Grab the key (which probably should be the latest one) that is written on the
file from [[https://dl.carbslinux.org/keys/]] so you can verify the signature. The
@@ -200,7 +202,6 @@ If everything went alright, this should output:
Signature Verified
#+end_example
-
*** Extracting the tarball
:PROPERTIES:
:DESCRIPTION: Extracting the root filesystem to the desired location
@@ -264,7 +265,7 @@ Carbs Linux rsync repositories live in rsync://carbslinux.org/repo. In
order to obtain it, run the following:
#+BEGIN_SRC sh
-rsync -avc rsync://carbslinux.org/repo $HOME/repos/carbs
+rsync -avc rsync://vaylin.carbslinux.org/repo $HOME/repos/carbs
#+END_SRC
**** Making the package manager use the repositories
@@ -275,7 +276,7 @@ following lines:
#+BEGIN_SRC sh
CPT_PATH=$HOME/repos/carbs/core
CPT_PATH=$CPT_PATH:$HOME/repos/carbs/extra
-CPT_PATH=$CPT_PATH:$HOME/repos/carbs/xorg
+CPT_PATH=$CPT_PATH:$HOME/repos/carbs/wayland
CPT_PATH=$CPT_PATH:$HOME/repos/carbs/community
export CPT_PATH
#+END_SRC
@@ -723,20 +724,23 @@ currently running on your system and not the one you are switching to.
| runit | =runit-init 6= |
| shinit/sinit | =kill -s INT 1= |
-** TODO Display Systems
-
-Carbs Linux supports both Xorg and Wayland in the distribution repositories.
-This section serves as a guide to set up your preferred display server. Follow
-the subsection for the display server you want to setup.
+** Wayland
+:PROPERTIES:
+:DESCRIPTION: Maintaining a Wayland display system
+:END:
-*** Wayland
+Carbs Linux only supports Wayland displays as of January 2023. If your system
+makes use of the X.org display system, read the section [[*Switching from Xorg][Switching from Xorg]].
Wayland is a modern display server protocol intended as a replacement for Xorg.
Wayland has a much simpler architecture compared to X by its careful design and
implementation. Users who want to use a Wayland compositor should follow this
section.
-**** Enabling the Wayland repository
+*** Enabling the Wayland repository
+:PROPERTIES:
+:DESCRIPTION: Including the wayland repository in your repository path
+:END:
The =wayland= repository requires packages from =xorg= and =extra= repositories.
So you should set your =$CPT_PATH= so that =core= and =extra= repositories
@@ -748,7 +752,6 @@ your repository.
CPT_PATH=$REPOSITORY/core
CPT_PATH=$CPT_PATH:$REPOSITORY/extra
CPT_PATH=$CPT_PATH:$REPOSITORY/wayland
-CPT_PATH=$CPT_PATH:$REPOSITORY/xorg
export CPT_PATH
#+end_src
@@ -759,23 +762,35 @@ After you have enabled your repositories, go ahead and install =wayland= and
cpt-build wayland wayland-protocols
#+end_src
-**** Switching from Xorg
+*** Switching from Xorg
+:PROPERTIES:
+:DESCRIPTION: Rebuilding system packages for wayland
+:END:
If you are already an Xorg user, you will need to rebuild some packages so that
they support =wayland=. If you don't have an =xorg= system, feel free to skip
this step. The packages that need a rebuild are:
-- gtk+3
-- gtk4
-- mesa
-- xorg-server (for Xwayland support)
-- webkit2gtk
+- =gtk+3=
+- =gtk4=
+- =mesa=
+- =webkit2gtk=
+
+For xorg support inside wayland sessions, you need to install the =xwayland=
+package.
-**** TODO Installing a Compositor
+*** Installing a Compositor
+:PROPERTIES:
+:DESCRIPTION: Getting wayland ready for your system
+:END:
The =wayland= repository currently only contains =sway= as a Wayland compositor,
but you can package something else for your own.
+#+begin_src sh
+cpt bi sway
+#+end_src
+
* Contribution Guidelines
:PROPERTIES:
:DESCRIPTION: Contribute to Carbs Linux
@@ -857,7 +872,7 @@ themselves. Here are the things to keep in mind:
ahead.
- {{{contid(2020)}}} :: Prefer sources without a dependency to =automake=. There
are usually distribution tarballs that are =autoconf='ed. Don't submit tarballs
- with an automake dependency unless you are =sure= there is no alternative.
+ with an automake dependency unless you are *sure* there is no alternative.
- {{{contid(2030)}}} :: Avoid these packages:
- dbus :: Usually can be disabled by ~--disable-dbus~.
- gettext :: Usually can be disabled by ~--disable-nls~.
@@ -962,6 +977,9 @@ ninja -C output install
install -Dm755 program "$1/usr/bin/program"
#+END_SRC
+*NOTE*: Follow 2242 if you are packaging for non-Community repository.
+#+TEXINFO: @xref{2242}
+
**** {{{sectid(2241, Python)}}}
#+BEGIN_SRC sh
@@ -971,6 +989,22 @@ ninja -C output install
python setup.py install --prefix=/usr --root="$1"
#+END_SRC
+**** {{{sectid(2242, Go (pre-vendored))}}}
+:PROPERTIES:
+:ID: d2c828ae-bc56-4183-8830-becbf6a812d1
+:END:
+
+If you are a distribution maintainer create and upload vendor tarballs
+so that no internet connection is required during package compilation at all.
+You can use the following template for this case:
+
+#+BEGIN_SRC sh
+#!/bin/sh -e
+
+go build -v -mod=vendor
+clinst -Dm755 program "$1/usr/bin/program"
+#+END_SRC
+
** Contributing to the Community repository
:PROPERTIES:
:DESCRIPTION: Package maintainership and issue reports