---
name: "newapkbuild"
section: "1"
platform: "linux"
package: "abuild"
version: "3.17.0-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/newapkbuild"
---

# newapkbuild(1)

generate a new APKBUILD

## NAME

**newapkbuild** - generate a new APKBUILD

## SYNOPSIS

**newapkbuild** *options*... \[*pkgname*\[-*pkgver*\] \| *source\_url*\]

## DESCRIPTION

**newapkbuild** generates a new APKBUILD for use with [abuild(1)](/abuild/1.md). *pkgname* specifies the package name, if not already specified with **-n**. If followed by a dash (-) and a valid version string *pkgver*, additionally specify the package's version.

**newapkbuild** will try to automatically detect the build system by inspecting the source directory if *source\_url* is specified, and write out typical build instructions for that build system. If you do not specify the source URL, or want to override auto-detection, you may specify the build system with the appropriate option. If no *source\_url* and no option are specified, the generated APKBUILD file will not contain any build instructions.

## OPTIONS

- **-a**

  Specifies that the package uses autotools.

- **-C**

  Specifies that the package uses CMake. CMake will be added to the makedepends.

- **-c**

  Causes **newapkbuild** to additionally copy an init.d script, conf.d file, and sample pre- and post- install scripts to the APKBUILD directory. This allows you to have a quick start for daemon packages. See the FILES section for details.

- **-d** *DESC*

  Specifies the description (pkgdesc=) for the new package.

- **-e**, **-y**

  Specifies that the package uses a Python PEP517 build system. Python's gpep517, setuptools and wheel will be added to the makedepends.

- **-f**

  Forces **newapkbuild** to overwrite an existing APKBUILD, if one already exists in the package directory.

- **-h**

  Displays usage information.

- **-l** *LICENSE*

  Specifies the license under which the new package is distributed. This should match an SPDX Identifier.

- **-m**

  Specifies that the package uses Meson. Meson will be added to the makedepends.

- **-n** *NAME*

  Specifies the name of the new package. A new directory called *NAME* will be created in the current directory, with the APKBUILD file.

- **-p**

  Specifies that the package uses a Perl Makefile.PL file. The CPAN template will be used and Perl will be added to the depends.

- **-r**

  Specifies that the package uses Cargo. Cargo will be added to the makedepends.

- **-s**

  Create an automatic SourceForge URL for the package based on its name and version. This is only valid if *pkgname-pkgver* is specified on the command line.

- **-u** *URL*

  Specifies the Web page (url=) for the new package. This should *not* be the source package URL; it should be the project's main Web page.

## FILES

All files generated will be places in a *pkgname* directory inside the current working directory, with *pkgname* being created if it does not exist.

APKBUILD

**newapkbuild** will create an APKBUILD with the details gathered from the invocation of **newapkbuild**, and introspection of the downloaded package source if *source\_url* is provided. For more information about APKBUILD and its format, see [APKBUILD(5)](/APKBUILD/5.md).

*pkgname*.initd

If **-c** is given, **newapkbuild** will create *pkgname*.initd with example data to assist in the creation of an init.d script for a daemon.

*pkgname*.confd

If **-c** is given, **newapkbuild** will create *pkgname*.confd to assist in the creation of a conf.d file for a daemon, used by init.d scripts. conf.d files are used to configure init.d scripts; for more information, see [openrc(8)](/openrc/8.md) and [rc\_config(3)](/rc_config/3.md).

*pkgname*.pre-install

If **-c** is given, **newapkbuild** will create *pkgname*.pre-install, the contents of which will be run by [apk(8)](/apk/8.md) before the package is installed.

*pkgname*.post-install

If **-c** is given, **newapkbuild** will create *pkgname*.post-install, the contents of which will be run by [apk(8)](/apk/8.md) after the package is successfully installed. For more information about apk install hooks, consult the [apk(8)](/apk/8.md) manual.

## EXAMPLES

```
newapkbuild \
	-n sharutils \
	-d "Utilities for manipulating shell archives" \
	-l "GPL-3.0+" \
	-u "https://www.gnu.org/software/sharutils/" \
	-a \
	"https://ftp.gnu.org/gnu/sharutils/sharutils-4.15.2.tar.xz"
```

## SEE ALSO

SPDX license reference (on the Web at \<https://spdx.org/licenses/\>), [abuild(1)](/abuild/1.md), [apk(8)](/apk/8.md), [APKBUILD(5)](/APKBUILD/5.md).

## AUTHORS

**newapkbuild**: Natanael Copa \<*ncopa@alpinelinux.org*\>

Documentation:\
 A. Wilcox \<*wilfox@adelielinux.org*\>
