Developer Documentation: Difference between revisions
Dubiousjim (talk | contribs) m (→Package management: formatting) |
Prabuanand (talk | contribs) (removed duplicates and moved links) |
||
(40 intermediate revisions by 15 users not shown) | |||
Line 1: | Line 1: | ||
[[Image:package_system.svg|right|link=]] | [[Image:package_system.svg|right|link=]] | ||
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]]. | |||
== Configuring your development 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]] <!-- Dev and Installation --> | * [[Setting up the build environment on HDD|Setting up the build environment]] <!-- Dev and Installation --> | ||
<!-- [[Setting up the build environment 1.7]] Obsolete, only Dev --> | <!-- [[Setting up the build environment 1.7]] Obsolete, only Dev | ||
** [[Creating_an_Alpine_package#Setup_your_system_and_account|Setup your system and account for building packages]] | |||
* [[Installing Alpine Linux in a chroot]] <!-- | ** [[Abuild_and_Helpers#abuild-keygen|Abuild-keygen]]--> | ||
* [[Repositories#Upgrading_to_edge|Upgrading to Edge]] <!-- Pkg and Dev and Installation --> | |||
* | * [[Installing Alpine Linux in a chroot]] | ||
<!-- ** [[Buildlab]] ''(Tool for creating and managing chroots)''--> | |||
* [[Xen Dom0]] ''Setting up Alpine as a dom0 for Xen hypervisor'' | * [[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]] | |||
* [[Xen Dom0]] ''(Setting up Alpine as a dom0 for Xen hypervisor)'' | |||
** [[Xen Dom0 on USB or SD]] | ** [[Xen Dom0 on USB or SD]] | ||
** [[Create Alpine Linux PV DomU]] | ** [[Create Alpine Linux PV DomU]] | ||
** [[Xen LiveCD]] | |||
<!-- | |||
* [[Setting up a basic vserver]] | |||
* [[Setting up a compile vserver]] for official or for [[Setting up a compile vserver for third party packages|third party]] packages | |||
[[Create an Alpine 1.9 vserver template]] --> | |||
== Creating packages and patches== | |||
* [[Creating an Alpine package]] | * [[Creating an Alpine package]] | ||
<!-- includes [[Setup your system and account for building packages]] --> | <!-- includes [[Setup your system and account for building packages]] --> | ||
<!-- includes [[Newapkbuild]] | <!-- includes [[Newapkbuild]] | ||
To create the actual APKBUILD file newapkbuild can | To create the actual APKBUILD file, newapkbuild can give you a template to start with. | ||
It will create a directory with the given package name, place an example/template APKBUILD | It will create a directory with the given package name, place an example/template APKBUILD | ||
file to the given directory, and fill some variables if those are provided. --> | file to the given directory, and fill some variables if those are provided. --> | ||
<!-- includes [[Local_APK_cache]] --> | |||
** [[ | ** [[Abuild and Helpers]] ''(Scripts for packaging)'' | ||
<!-- includes [[Abuild_and_Helpers#apkbuild-cpan|Apkbuild-cpan]] --> | |||
<!-- includes [[Abuild_and_Helpers#apkbuild-pypi|Apkbuild-pypi]] --> | |||
<!-- | |||
[[Abuild_and_Helpers#buildrepo|Buildrepo]] | |||
[[Abuild_and_Helpers#abuild-sign|Abuild-sign]] | |||
[[Abuild_and_Helpers#abuild-tar|Abuild-tar]] | |||
[[Abuild_and_Helpers#abump|Abump]] | |||
* | [[Abuild_helpers#apkgrel|Apkgrel]] | ||
* [[ | --> | ||
** [[Aports tree]] <!-- <== APKBUILD --> | |||
** [[Development using git:Developer repositories|Developer repositories]] | |||
** [[Package policies]] | |||
* | |||
* | |||
** [[ | |||
** [[Package Maintainers]] | ** [[Package Maintainers]] | ||
** [[ | ** [[APKBUILD Reference]] | ||
** [[ | ** [[APKBUILD examples]] | ||
* [[Creating patches|Creating and submitting patches]] | |||
== Development tools == | |||
* [[Development using git|Git]] <!-- includes [[Development using git:Configuration]] [[Development using git:Email]] --> | |||
* [[Cgit|cgit]] | |||
** [[Development using git:Cgit|Cgit Basics]] | |||
== Alpine configuration framework == | |||
== Alpine | |||
{{Draft|Needs to be organized/consolidated.}} | {{Draft|Needs to be organized/consolidated.}} | ||
Line 142: | Line 71: | ||
* [[Writing ACF Controllers]] - Guide for writing a controller | * [[Writing ACF Controllers]] - Guide for writing a controller | ||
* [[Writing ACF Models]] - Guide for writing a model | * [[Writing ACF Models]] - Guide for writing a model | ||
* [[ACF css]] | * [[ACF css]] | ||
* [[ACF packages]] | * [[ACF packages]] | ||
Line 153: | Line 81: | ||
* [[Managing ACF]] | * [[Managing ACF]] | ||
== Alpine Wall == | |||
* [[Alpine Wall]] | |||
* [[How-To Alpine Wall]] | |||
* [https://git.alpinelinux.org/awall/about/ Alpine Wall User's Guide] ''(a firewall management framework)'' | |||
== Design documents == | |||
* [[Architecture]] | |||
* [[Apk spec]] | |||
* [[Apkindex format]] | |||
* [[Alpine package format]] | |||
* [[Alpine Configuration Framework Design]] | |||
== Misc == | |||
* [[Alpine Release Testing Checklist]] | |||
* [[Alpine Source Map by boot sequence]] | |||
* [[Testing modified install images and packages]] | |||
* [[Custom Kernel]] | |||
* [[Comparison with other distros]] | |||
== 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]] --> | |||
* [[Alpine local backup|Alpine local backup (lbu)]] ''(Permanently store your modifications in case your Diskless box needs reboot)'' | |||
== Init system == | |||
* [[initramfs init]] | |||
* [[Alpine | * [[Alpine Linux Init System|Init System (OpenRC)]] ''(Configure a service to automatically launch at next reboot)'' | ||
** [[Writing Init Scripts]] | |||
[[Category:Development]] | [[Category:Development]] |
Latest revision as of 05:38, 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
- Setting up the build environment
- Upgrading to Edge
- Installing Alpine Linux in a chroot
- Install Alpine on LXC
- VMware, Qemu, or Amazon EC2
- Xen Dom0 (Setting up Alpine as a dom0 for Xen hypervisor)
Creating packages and patches
Development tools
Alpine configuration framework
![]() Needs to be organized/consolidated. |
- Alpine Configuration Framework Design (Why ACF is the way it is)
- Writing User Documentation for ACF
- mvc.lua reference - mvc.lua is the core of ACF
- mvc.lua example - build a simple (command-line) application
- acf www-controller reference - ACF www application functions
- acf www-controller example - webify the above examples
- ACF how to write - Step by step howto for writing acfs
- ACF core principles - Things that are standard across the application
- LuaPosix - Documentation for the Lua Posix functions
- ACF Libraries - Document the libraries and common functions
- Writing ACF Views - Guide for writing a view
- Writing ACF Controllers - Guide for writing a controller
- Writing ACF Models - Guide for writing a model
- ACF css
- ACF packages
- APKBUILD examples:ACF
- Apk.lua
- Changing passwords for ACF
- Generating SSL certs with ACF
- Generating SSL certs with ACF 1.9
- Getting started with ACF development
- Managing ACF
Alpine Wall
- Alpine Wall
- How-To Alpine Wall
- Alpine Wall User's Guide (a firewall management framework)
Design documents
Misc
- Alpine Release Testing Checklist
- Alpine Source Map by boot sequence
- Testing modified install images and packages
- Custom Kernel
- Comparison with other distros
Package management
- Package Management (apk) (How to add/remove packages on your Alpine)
- Alpine local backup (lbu) (Permanently store your modifications in case your Diskless box needs reboot)
Init system
- initramfs init
- Init System (OpenRC) (Configure a service to automatically launch at next reboot)