ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/www/trunk/documentation/mports/index.html
Revision: 340
Committed: Mon May 25 18:42:58 2009 UTC (14 years, 11 months ago) by laffer1
Content type: text/html
File size: 7151 byte(s)
Log Message:
libmport

File Contents

# Content
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 &quot;installed&quot; 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 &quot;fake&quot; 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 &quot;fake&quot; system.</p>
102
103 <p>For information on common reasons for &quot;fake&quot; 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>