1 |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" |
2 |
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> |
3 |
<html xmlns="http://www.w3.org/1999/xhtml"> |
4 |
<head> |
5 |
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /> |
6 |
<title>MidnightBSD mports Documentation</title> |
7 |
<!-- $MidnightBSD: www/documentation/mports/index.html,v 1.7 2009/05/25 18:40:35 laffer1 Exp $ --> |
8 |
<link rel="shortcut icon" href="/favicon.ico" /> |
9 |
<!--[if IE 5]><link rel="stylesheet" type="text/css" href="../../css/ihateie5.css" /><![endif]--> |
10 |
<!--[if IE 6]><link rel="stylesheet" type="text/css" href="../../css/ihateie6.css" /><![endif]--> |
11 |
<style type="text/css" media="all"> |
12 |
@import url("../../css/essence.css"); |
13 |
</style> |
14 |
</head> |
15 |
|
16 |
<body> |
17 |
<div id="globe"> |
18 |
<div id="header"><h1 title="MidnightBSD Home"><a href="../../" title="MidnightBSD Home">MidnightBSD: The BSD For Everyone</a></h1></div> |
19 |
<!--#include virtual="/menu.html"--> |
20 |
<div class="clear"></div> |
21 |
<div id="text"> |
22 |
<h2><img src="../../images/oxygen/doc32.png" alt="Text Document Icon" /> mports Documentation</h2> |
23 |
<div id="toc"> |
24 |
<h3>Contents</h3> |
25 |
<ul> |
26 |
<li><a href="#s1a"><strong>Introduction</strong></a></li> |
27 |
<li><a href="#s2a"><strong>Using mports</strong></a></li> |
28 |
<li><a href="#s3a"><strong>History</strong></a></li> |
29 |
<li><a href="#s4a"><strong>Future directions</strong></a></li> |
30 |
<li>Further Reading |
31 |
<ul> |
32 |
<li><a href="bsd.port.mk.html"><strong>bsd.port.mk</strong></a></li> |
33 |
<li><a href="fake.html"><strong>Fake</strong></a></li> |
34 |
<li><a href="policy.html"><strong>Policy</strong></a></li> |
35 |
</ul> |
36 |
</li> |
37 |
</ul> |
38 |
</div> |
39 |
|
40 |
<h3 id="s1a">Introduction</h3> |
41 |
|
42 |
<p>mports is the MidnightBSD ports collection. It contains hundreds of ported software applications |
43 |
ready to use on MidnightBSD. mports simplifies installing software packages on your desktop system.</p> |
44 |
|
45 |
<p>In the future, mports will also include precompiled packages to speed up the installation process. An |
46 |
automated software update system is planned. There are a few precompiled software packages on the |
47 |
MidnightBSD FTP server.</p> |
48 |
|
49 |
<h3 id="s2a">Using mports</h3> |
50 |
|
51 |
<p>You can install mports during the installation of MidnightBSD. If you forgot to do so, you may download |
52 |
the latest mports by using <em>cvsup</em> or <em>cvs</em>. Execute the command <br />cvsup /usr/share/examples/cvsup/mports-supfile<br /> |
53 |
to download the mports. Alternatively, you can use <br /> |
54 |
mkdir /usr/mports<br /> |
55 |
cd /usr<br /> |
56 |
cvs -z 7 -d anoncvs@stargazer.midnightbsd.org:/home/cvs co mports</p> |
57 |
|
58 |
<p>Updating mports periodically is recommended. New versions of software and additional software are added all the time. |
59 |
Keeping up to date will help you maintain best security practices and possibly give you new features |
60 |
and functionality or bug fixes. </p> |
61 |
|
62 |
<p>To install an mport, simply do the following: |
63 |
<br />cd /usr/mports |
64 |
<br />Pick a category from the file system list or use make search key=term where term is what you want to search for. Once you |
65 |
have the mport, you can type make install clean to install it and clean up the compiling mess. |
66 |
</p> |
67 |
|
68 |
<p>It is recommended that you install mports/sysutils/portupgrade at your convenience. It will allow you to |
69 |
upgrade mports and install mports much easier. You can simply type portinstall portname to install a port called portname. It |
70 |
can speed up the process considerably.</p> |
71 |
|
72 |
<p>To uninstall a port, simply goto the directory of the mport and type make deinstall</p> |
73 |
|
74 |
<p>There are also utilities like pkg_add, pkg_delete and so forth included in the base system. pkg_add -r portname can fetch a |
75 |
precompiled package from the MidnightBSD server and install it for you. You can also install your own packages. There are many |
76 |
possibilities.</p> |
77 |
|
78 |
<h3 id="s3a">History</h3> |
79 |
|
80 |
<p>MidnightBSD uses the FreeBSD ports collection. Over time it has begun to diverge. Several projects have been influential |
81 |
in the design of the mports system, notably OpenBSD.</p> |
82 |
|
83 |
<p>The initial import of mports was done by our security officer, archite. mports maintainership was transfered |
84 |
to wintellect after some initial work by laffer1. A massive restructuring of the mports system was done |
85 |
by Chris Reinhardt (ctriv). Now the entire system creates ports in a staging directory called the fake dir. A |
86 |
port is built in the working directory work/ inside the ports directory. Then during the faking stage (before install occurs) |
87 |
it is "installed" into the fake dir which is a combination of the word fake the target arch and a few other nits. It is |
88 |
the job of the mports maintainer to fix any bugs with this faking procedure. It is more work up front, but it means that all |
89 |
ports are installed from packages and therefore all packages must work. This is quite innovative compared to the FreeBSD maybe it works |
90 |
as a package approach, but other projects like OpenBSD have been doing something similar for quite some time.</p> |
91 |
|
92 |
<p>Currently, all commiters have access to add and modify mports. |
93 |
You may contact any commiter about mports problems or additions. For infrastructure questions or concerns, |
94 |
direct them to ctriv. (use the alias at midnightbsd.org)</p> |
95 |
|
96 |
<h3>Differences Between FreeBSD's ports and mports</h3> |
97 |
|
98 |
<p>FreeBSD's ports install directly into the system at install time, mports however uses a process |
99 |
called "fake" to make a package and then installs that package. This simplifies the logic of the ports system. |
100 |
Code does not need to be duplicated for installation from the port and installation from the package. The change is very recent, |
101 |
and at this time we are still testing the port tree to insure that all ports function properly under the "fake" system.</p> |
102 |
|
103 |
<p>For information on common reasons for "fake" errors, see the |
104 |
<a href="fake.html">fake transition page</a>.</p> |
105 |
|
106 |
<p>Mport is endeavoring to be more standardized than the FreeBSD ports tree. |
107 |
See the <a href="policy.html">policy page</a> for information on current port standards.</p> |
108 |
|
109 |
|
110 |
<h3 id="s4a">Future Directions</h3> |
111 |
|
112 |
<ul> |
113 |
<li>A new package scheme is early planning. It would be based on FreeBSD's package system, but have several new features |
114 |
such as support for bundled packages (several packages in one package), cryptographically signed packages, native option support, |
115 |
and a radically improved package database using sqlite3 as a backend. (libmport)</li> |
116 |
|
117 |
<li>A package distribution system along the lines of apt-get or CPAN.</li> |
118 |
|
119 |
<li>The MidnightBSD Project will add a graphical mports management application in future versions with |
120 |
automatic software update functionality as well as base system software updating.</li> |
121 |
|
122 |
<li>As time goes by we are trying to simplify the mports system. FreeBSD's ports have years of backwards compatibly code and |
123 |
many features that we simply don't need.</li> |
124 |
</ul> |
125 |
|
126 |
<p>The libmport and mport tools are now available for early testing in 0.3-CURRENT.</p> |
127 |
|
128 |
</div> |
129 |
<!--#include virtual="/footer.html"--> |
130 |
</body> |
131 |
</html> |