Developer Documentation: Difference between revisions

From Alpine Linux
(added introduction paragraph, rearranged topics, commented out invalid links)
(renamed headings and moved to make navigation better)
Line 2: Line 2:
This page has pointers to various resources about Alpine Linux from a developer perspective. Set up the [[Setting up the build environment on HDD|build environment]] and start contributing to Alpine Linux by either [[Creating an Alpine package|creating packages]] or by [[Creating patches|submitting patches]].
This page has pointers to various resources about Alpine Linux from a developer perspective. Set up the [[Setting up the build environment on HDD|build environment]] and start contributing to Alpine Linux by either [[Creating an Alpine package|creating packages]] or by [[Creating patches|submitting patches]].


== Package management ==
== Configuring your development system ==
<!-- If you edit the following, please coordinate with Tutorials_and_Howtos#Post-Install and Installation#Post-Install.  Note that these three sections are not exact duplicates. -->
* [[Alpine Linux package management|Package Management (apk)]] ''(How to add/remove packages on your Alpine)'' <!--
  [[Alpine Linux package management#Local_Cache|How to enable APK caching]] -->  <!-- includes [[Local APK cache]] -->
** [[Comparison with other distros]]
** [[apk spec]]
* [[Repositories#Upgrading_to_edge|Upgrading to Edge]]
* [[Alpine local backup|Alpine local backup (lbu)]] ''(Permanently store your modifications in case your box needs reboot)''
** [[Back Up a Flash Memory Installation]]
** [[Manually editing a existing apkovl]]
* [[How to setup a Alpine Linux mirror]]
* [[How to make a custom ISO image]]
** [[Burning ISOs]]
 
== Init system ==
* [[initramfs init]]
* [[Alpine Linux Init System|Init System (OpenRC)]] ''(Configure a service to automatically launch at next reboot)''
** [[Multiple Instances of Services]]
* [[Writing Init Scripts]]
 
== Development ==
 
* [[Aports tree]] <!-- <== APKBUILD -->
* [[Development using git:Developer repositories|Developer repositories]]
 
=== Configuring your system ===
<!-- If you edit the following, please coordinate with Installation#Advanced.  Note that these two sections are not exact duplicates. -->
<!-- If you edit the following, please coordinate with Installation#Advanced.  Note that these two sections are not exact duplicates. -->
* [[Setting up the build environment on HDD|Setting up the build environment]] <!-- Dev and Installation -->
* [[Setting up the build environment on HDD|Setting up the build environment]] <!-- Dev and Installation -->
Line 38: Line 13:
* [[Install Alpine on LXC]]
* [[Install Alpine on LXC]]
* [[Install Alpine on VMware|VMware]], [[Qemu]], <!-- includes [[Install Alpine in Qemu]], [[Running Alpine in Qemu Live mode]], [[Running Alpine Linux As a QEMU networked Guest]] --> or [[Install Alpine on Amazon EC2|Amazon EC2]]
* [[Install Alpine on VMware|VMware]], [[Qemu]], <!-- includes [[Install Alpine in Qemu]], [[Running Alpine in Qemu Live mode]], [[Running Alpine Linux As a QEMU networked Guest]] --> or [[Install Alpine on Amazon EC2|Amazon EC2]]
* [[Xen Dom0]] ''(Setting up Alpine as a dom0 for Xen hypervisor)''
* [[Xen Dom0]] ''(Setting up Alpine as a dom0 for Xen hypervisor)''
** [[Xen Dom0 on USB or SD]]
** [[Xen Dom0 on USB or SD]]
Line 48: Line 22:
[[Create an Alpine 1.9 vserver template]] -->
[[Create an Alpine 1.9 vserver template]] -->


=== Creating packages and patches===
== Creating packages and patches==


* [[Creating an Alpine package]]
* [[Creating an Alpine package]]
Line 67: Line 41:
   [[Abuild_helpers#apkgrel|Apkgrel]]
   [[Abuild_helpers#apkgrel|Apkgrel]]
   -->
   -->
** [[Aports tree]] <!-- <== APKBUILD -->
** [[Development using git:Developer repositories|Developer repositories]]
** [[Package policies]]
** [[Package policies]]
** [[Package Maintainers]]
** [[Package Maintainers]]
Line 75: Line 51:
* [[Creating patches|Creating and submitting patches]]
* [[Creating patches|Creating and submitting patches]]


=== Tools ===
== Development tools ==


* [[Development using git|Git]] <!-- includes [[Development using git:Configuration]] [[Development using git:Email]] -->
* [[Development using git|Git]] <!-- includes [[Development using git:Configuration]] [[Development using git:Email]] -->
* [[Cgit|cgit]]
* [[Cgit|cgit]]
** [[Development using git:Cgit|Cgit Basics]]
** [[Development using git:Cgit|Cgit Basics]]
=== Misc ===
* [[Alpine Release Testing Checklist]]
* [[Running glibc programs]]
* [[Alpine Source Map by boot sequence]]
* [[Testing modified install images and packages]]
* [[Custom Kernel]]


== Alpine Configuration Framework ==
== Alpine Configuration Framework ==
Line 123: Line 91:
* [[Architecture]]
* [[Architecture]]
* [[Apk spec]]
* [[Apk spec]]
== Misc ==
* [[Alpine Release Testing Checklist]]
* [[Alpine Source Map by boot sequence]]
* [[Testing modified install images and packages]]
* [[Custom Kernel]]
== Package management ==
<!-- If you edit the following, please coordinate with Tutorials_and_Howtos#Post-Install and Installation#Post-Install.  Note that these three sections are not exact duplicates. -->
* [[Alpine Linux package management|Package Management (apk)]] ''(How to add/remove packages on your Alpine)'' <!--
  [[Alpine Linux package management#Local_Cache|How to enable APK caching]] -->  <!-- includes [[Local APK cache]] -->
** [[Comparison with other distros]]
** [[apk spec]]
* [[Repositories#Upgrading_to_edge|Upgrading to Edge]]
* [[Alpine local backup|Alpine local backup (lbu)]] ''(Permanently store your modifications in case your box needs reboot)''
** [[Back Up a Flash Memory Installation]]
** [[Manually editing a existing apkovl]]
* [[How to setup a Alpine Linux mirror]]
* [[How to make a custom ISO image]]
** [[Burning ISOs]]
== Init system ==
* [[initramfs init]]
* [[Alpine Linux Init System|Init System (OpenRC)]] ''(Configure a service to automatically launch at next reboot)''
* [[Writing Init Scripts]]


[[Category:Development]]
[[Category:Development]]

Revision as of 05:29, 18 February 2025

This page has pointers to various resources about Alpine Linux from a developer perspective. Set up the build environment and start contributing to Alpine Linux by either creating packages or by submitting patches.

Configuring your development system

Creating packages and patches

Development tools

Alpine Configuration Framework

This material is work-in-progress ...

Needs to be organized/consolidated.
(Last edited by Prabuanand on 18 Feb 2025.)

Alpine Wall

Alpine Design Docs

Misc

Package management

Init system