summaryrefslogtreecommitdiff
path: root/index.mdwn
blob: c4c4e5302d41e577f1c0402baac7886e83b77b69 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
# libbsd

This library provides useful functions commonly found on BSD systems, and
lacking on others like GNU systems, thus making it easier to port projects
with strong BSD origins, without needing to embed the same code over and
over again on each project.

## Supported platforms

The following platforms are supported out of the box:

  * GNU/Linux
  * GNU/Hurd
  * GNU/kFreeBSD
  * musl/Linux
  * macOS
  * illumos
  * Solaris
  * AIX

## License

The licenses for the code contained in libbsd are quite permissive to make
it easier for other projects to use it. Most of the licenses are either
[ISC](https://spdx.org/licenses/ISC.html),
[MIT](https://spdx.org/licenses/MIT.html),
[Beerware](https://spdx.org/licenses/Beerware.html),
[BSD-2-clause](https://spdx.org/licenses/BSD-2-Clause.html), and
[BSD-3-clause](https://spdx.org/licenses/BSD-3-Clause.html).
Please check the COPYING file and the source code for the actual license
details.

## Download

Latest [released tarballs](https://libbsd.freedesktop.org/releases/).

The releases are OpenPGP signed with the key of the current maintainer
[Guillem Jover](https://www.hadrons.org/~guillem/) with fingerprint
[**4F3E 74F4 3605 0C10 F569  6574 B972 BF3E A4AE 57A3**](https://keys.openpgp.org/vks/v1/by-fingerprint/4F3E74F436050C10F5696574B972BF3EA4AE57A3).

## Development

The code is developed on the FreeDesktop.Org
[GitLab libbsd](https://gitlab.freedesktop.org/libbsd/libbsd) project.

[![CI Status](https://gitlab.freedesktop.org/libbsd/libbsd/badges/main/pipeline.svg)](https://gitlab.freedesktop.org/libbsd/libbsd/commits/main)
[![Coverity Scan Build Status](https://img.shields.io/coverity/scan/7836.svg)](https://scan.coverity.com/projects/guillemj-libbsd")
[![CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/1883/badge)](https://bestpractices.coreinfrastructure.org/projects/1883)

### Code

The code under development can be browsed from the GitLab project or
cloned from git with:

    git clone https://gitlab.freedesktop.org/libbsd/libbsd.git

It is currently still also accessible from:

* (for cloning) https://anongit.freedesktop.org/git/libbsd.git
* (for browsing) <https://cgit.freedesktop.org/libbsd/>

### Issues

Bug reports and issues can be filed using the GitLab
[issues](https://gitlab.freedesktop.org/libbsd/libbsd/issues).
Historic bugs can be accessed from
[Bugzilla](https://bugs.freedesktop.org/buglist.cgi?query_format=specific&bug_status=__closed__&product=libbsd)
but filing new bugs there has been disabled.

### Security issues

In case of a security issue that needs to be reported privately, please
send encrypted mail to [Guillem Jover](https://www.hadrons.org/~guillem/),
the current maintainer.

### Contributing

Changes can be sent either as
[merge requests](https://gitlab.freedesktop.org/libbsd/libbsd/merge_requests)
or as patches to the
[mailing list](https://lists.freedesktop.org/mailman/listinfo/libbsd).

New interfaces can be added, depending on their portability, and on their
presence on at least one of the BSDs. The preferred form is by importing the
best implementation from one of those BSDs. Alternatively an implementation
from scratch might be required. In that case the preferred coding style is
[KNF](https://www.freebsd.org/cgi/man.cgi?query=style&sektion=9) and a
[BSD-3-clause](https://spdx.org/licenses/BSD-3-Clause.html) license, but
a more permissive license is also welcome. Any new function must also come
with a man page. Ideally new interfaces should get new unit tests.

## Downstreams

[![Packaging status](https://repology.org/badge/vertical-allrepos/libbsd.svg)](https://repology.org/metapackage/libbsd)

* [Buildroot](https://git.buildroot.net/buildroot/tree/package/libbsd)
* [Cygwin Ports](https://github.com/cygwinports-extras/libbsd)
* [Nutyx](https://github.com/NuTyX/packages-x86_64/tree/rolling/cli/libbsd)
* [OpenEmbedded](http://cgit.openembedded.org/openembedded-core/tree/meta/recipes-support/libbsd)
* [Source Mage](http://scmweb.sourcemage.org/smgl/grimoire.git/tree/libs/libbsd)
* [UHU Linux](https://svn.uhulinux.hu/packages/dev/libbsd/)
* [NaCL webports](https://chromium.googlesource.com/webports/+/master/ports/libbsd/)
* [Yocto Project](https://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta/recipes-support/libbsd)