pkgsrc/bootstrap
2022-08-01 14:49:09 +00:00
..
bootstrap Mention why we're doing PREFER_PKGSRC=yes on OpenBSD (at least for now) 2022-06-16 22:12:20 +00:00
cleanup
README bootstrap/README: Add MidnightBSD to the unknown status list 2022-06-28 23:37:09 +00:00
README.AIX bootstrap: Document non-working status of AIX 2022-04-05 12:57:21 +00:00
README.Bitrig Change the default PKG_DBDIR to be ${LOCALBASE}/pkgdb. Resolves issues on 2016-11-15 11:19:09 +00:00
README.Cygwin
README.FreeBSD bootstrap: Tested on FreeBSD 12 and 13 without problems. 2021-10-31 09:26:49 +00:00
README.GNUkFreeBSD
README.Haiku
README.HPUX HP-UX status update 2022-04-13 07:03:24 +00:00
README.Interix Change the default PKG_DBDIR to be ${LOCALBASE}/pkgdb. Resolves issues on 2016-11-15 11:19:09 +00:00
README.IRIX bootstrap/README.IRIX 2022-06-01 12:38:10 +00:00
README.Linux README.Linux: add a few notes for Alpine. 2022-06-15 20:17:32 +00:00
README.macOS Update docs for Joyent migration. 2022-08-01 14:49:09 +00:00
README.MidnightBSD bootstrap: Add MidnightBSD support to bootstrap shell script 2021-03-15 16:22:06 +00:00
README.Minix3 bootstrap: Improve README.Minix3 2022-04-04 00:00:52 +00:00
README.MirBSD Change the default PKG_DBDIR to be ${LOCALBASE}/pkgdb. Resolves issues on 2016-11-15 11:19:09 +00:00
README.NetBSD README.NetBSD: slightly rephrase note about make(1) 2022-02-25 23:03:10 +00:00
README.OpenBSD Now that "--prefer-pkgsrc yes" is default, no need to suggest it. 2022-06-15 15:04:48 +00:00
README.OpenServer5 bootstrap/README.OpenServer5: wordo fix 2022-06-10 13:57:23 +00:00
README.OSF1 README.OSF1: update documentation 2022-04-03 22:28:13 +00:00
README.Solaris Update docs for Joyent migration. 2022-08-01 14:49:09 +00:00
README.UnixWare bootstrap: Update SCO/Xinous READMEs 2022-06-10 13:27:24 +00:00
testbootstrap Remove clauses 3,4 from TNF-only copyright blocks. 2018-08-22 20:48:36 +00:00

$NetBSD: README,v 1.35 2022/06/28 23:37:09 gdt Exp $

To try to get pkgsrc working on your system, please try the following
as root:

# ./bootstrap
    [ --workdir <workdir> ]
    [ --prefix <prefix> ]
    [ --pkgdbdir <pkgdbdir> ]
    [ --sysconfdir <sysconfdir> ]
    [ --varbase <varbase> ]
    [ --ignore-user-check ]
    [ --preserve-path ]
    [ --help ]

The defaults for the arguments are as follows:

	--prefix	/usr/pkg
	--pkgdbdir	/usr/pkg/pkgdb
	--sysconfdir	/usr/pkg/etc
	--varbase	/var
	--workdir	work

The working directory will be created if it doesn't exist and has to be
writable by the user executing ./bootstrap.

The bootstrap script will exit if the bootstrap directory already exists,
for example if you have run the script before. In this case, clean it up
by running:

# ./cleanup

Make sure that you have a working C compiler and make(1) binary in
your path.  Please note that on some systems (IRIX and SunOS, for example),
the bootstrap script will look into a number of common directories for
alternative implementations of some tools.  If they are found, these
directories will be prepended to the PATH variable, unless the
'--preserve-path' flag is given.

See pkgsrc/doc/pkgsrc.txt or
http://www.NetBSD.org/docs/software/packages.html for
more information about bootstrapping and using pkgsrc.

We'd be very interested in hearing of any successes or failures on
"unknown" (to us) systems.

Please remember to add $prefix/bin to your PATH environment variable
and $prefix/man to your MANPATH environment variable, if necessary.
(See above for --prefix and its default value.) On platforms that
ship with same-named pkg_* tools, such as OpenBSD and older FreeBSD,
consider putting $prefix/bin earlier in PATH.

Remember also to use bmake to build packages in pkgsrc. It's very
likely that the native make on your system will be incompatible with
the Makefiles in pkgsrc.

The bootstrap script will create an example mk.conf file located
in your work directory as "mk.conf.example". It contains the
settings you provided to the bootstrap. Copy it to your
$sysconfdir directory (see above about --sysconfdir and its default
value). If the default mk.conf doesn't already exist, the example is
copied into place.


PER PLATFORM INFORMATION
========================

pkgsrc supports or has supported many operating systems (platforms).
In general, there is a README.${platform} for each platform that can
run pkgsrc, explaining particular considerations.

Note that pkgsrc contains many per-platform fixes and accommodations,
and pkgsrc does not always work well on very old platforms.  We list
platforms according to whether they are in active use as a clue to
whether pkgsrc on that platform is likely to work.  Improvements to
code and documentation are always welcome.

Note that listing a platform as having no users is not a decision to
remove it from pkgsrc; this is merely recording information that
individual developers can use when deciding how much work is justified
for keeping any particular accommodation.  (As always, any large-scale
removals require a proposal and discussion on pkgsrc-users@.)

Note also that pkgsrc policy is that fixes to packages, unless the
fixes are to adjust a package to pkgsrc norms, should be filed
upstream and the upstream tracker URL included in the patch file or
Makefile.

Platform names are not entirely regular; this listing uses the README
suffix, annotated with the platform/foo.mk name if different.
Platforms with a * are believed to be non-working; see the README for
the platform for perhaps more information.  A platform not having a
README is a clue that it might not work.

Platforms with active use, maintenance and published bulk builds
----------------------------------------------------------------

The following platforms have active users, and people that regularly
fix problems.  They also have active bulk builds posted to
`pkgsrc-bulk`.  (Bulk build publication is a key quality indicator
because anyone can tell how many packages build on the platform.)

  macOS (platform/Darwin.mk)
  Linux
  NetBSD
  Solaris (illumos, SmartOS, OmniOS, platform/SunOS.mk)

Platforms with active use, maintenance
--------------------------------------

The following platforms have active users and maintenance, but do not
have published bulk builds.

  FreeBSD

Platforms with active use
-------------------------

The following platforms have active users, but are not known to have
active maintenance.

  OpenBSD


Platforms with at least a small number of users
-----------------------------------------------

  HPUX
  Minix3 (platform/Minux.mk)
  OpenServer5 (SCO OpenServer, platform/SCO_SV.mk)
  SCO UnixWare


Platforms with unknown status
-----------------------------
  Cygwin
  DragonFly (no README)
  FreeMiNT (no README)
  GNUkFreeBSD
  MidnightBSD


Platforms believed to have no users
-----------------------------------

  * AIX (no cwrappers)
  Bitrig
  BSDOS (no README)
  Haiku
  IRIX
  Interix
  MirBSD
  * OSF1
  QNX (no README)