[2024-feb-29] Sad news: Eric Layton aka Nocturnal Slacker aka vtel57 passed away on Feb 26th, shortly after hospitalization. He was one of our Wiki's most prominent admins. He will be missed.
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
slackware:slackbuild_scripts [2012/08/20 07:45 (UTC)] – vharishankar | slackware:slackbuild_scripts [2012/08/22 11:11 (UTC)] – [Creating SlackBuild scripts] vharishankar | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== SlackBuild scripts ====== | ====== SlackBuild scripts ====== | ||
- | A SlackBuild script is a shell script that automates the process of configuring, | + | A SlackBuild script is a shell script |
===== Overview ===== | ===== Overview ===== | ||
- | The basic process of creating a Slackware package from source can be summarized as follows, while details may vary from one build system to another: | + | The basic process of creating a Slackware package from source can be summarized as follows, while details may vary from one build system to another. |
- Uncompress the source archive (usually .tar.gz or .tar.bz2 file) into a "work directory." | - Uncompress the source archive (usually .tar.gz or .tar.bz2 file) into a "work directory." | ||
- | - Configure the source. | + | |
+ | | ||
- Compile/ | - Compile/ | ||
- | - Install the program to a temporary | + | - Install the program to a temporary |
- | - Copy the program documentation and other files to the appropriate | + | - Copy the program documentation and other necessary |
- | - Using the '' | + | - Use the '' |
+ | |||
+ | While the above steps can be done by hand, the process is tedious, sometimes complex, and involves typing in a lot of commands. Automating the process by a shell script allows the user to share the process with the community at large. It also makes sense to use and modify existing SlackBuild scripts for upgrading the same program to a newer version. | ||
+ | ===== Creating SlackBuild scripts ===== | ||
+ | |||
+ | A good hands-on tutorial on creating a SlackBuild script can be found [[http:// | ||
+ | |||
+ | However, software may be written in different programming languages, use different build systems, or may even simply be written in an interpreted programming language with no obvious way to " | ||
+ | |||
+ | It is recommended that anybody who wishes to write a SlackBuild script, study and understand the build system of a software project before attempting to write a SlackBuild script for it. A degree of proficiency in writing shell scripts is also a definite benefit, as it is the practice to use Bourne shell compatible scripts for SlackBuilds. Ideally, simple C projects which use the standard GNU Make system is a good way to start practicing writing SlackBuild scripts. | ||
+ | <note tip>For new script writers, it is a good idea to perform the above steps manually to create the package from source, before actually writing a SlackBuild script. This reduces the chances of bugs and unexpected behaviour in the script.</ | ||
+ | |||
+ | Submitting SlackBuild scripts to a public repository such as http:// | ||
+ | ===== External Links ===== | ||
+ | |||
+ | * SlackBuilds - http:// | ||
+ | * Templates - http:// | ||
+ | ===== Sources ===== | ||
+ | * Originally written by [[wiki: |