File: install.xml

package info (click to toggle)
netatalk 3.1.12~ds-3
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 14,756 kB
  • sloc: ansic: 104,976; sh: 8,247; xml: 7,394; perl: 1,936; makefile: 1,430; python: 1,342; yacc: 309; lex: 49
file content (362 lines) | stat: -rw-r--r-- 12,862 bytes parent folder | download | duplicates (2)
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
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
<?xml version="1.0" encoding="UTF-8"?>
<chapter id="installation">
  <chapterinfo>
    <date>17.1.2015</date>
  </chapterinfo>

  <title>Installation</title>

  <warning>
    <para>If you have previously used an older version of Netatalk, please
    read the chapter about <link linkend="upgrade">upgrading</link> first
    !!!</para>
  </warning>

  <sect1>
    <title>How to obtain Netatalk</title>

    <para>Please have a look at the netatalk page on sourceforge for the most
    recent informations on this issue.</para>

    <para><ulink
    url="http://sourceforge.net/projects/netatalk/">http://sourceforge.net/projects/netatalk/</ulink></para>

    <sect2>
      <title>Binary packages</title>

      <para>Binary packages of Netatalk are included in some Linux and UNIX
      distributions. You might want to have a look at the usual locations,
      too.</para>

      <para>Ubuntu package: <ulink
      url="https://launchpad.net/ubuntu">https://launchpad.net/ubuntu
      </ulink></para>

      <para>Debian package: <ulink
      url="http://packages.debian.org/">http://packages.debian.org/
      </ulink></para>

      <para>various RPM package: <ulink
      url="http://rpmfind.net/">http://rpmfind.net/ </ulink></para>

      <para>Fedora/RHEL package: <ulink
      url="http://koji.fedoraproject.org/koji/search">http://koji.fedoraproject.org/koji/search
      </ulink></para>

      <para>Gentoo package: <ulink
      url="http://packages.gentoo.org/">http://packages.gentoo.org/
      </ulink></para>

      <para>openSUSE package: <ulink
      url="http://software.opensuse.org/">http://software.opensuse.org/
      </ulink></para>

      <para>Solaris package: <ulink
      url="http://www.opencsw.org/packages/CSWnetatalk/">http://www.opencsw.org/</ulink></para>

      <para>FreeBSD ports: <ulink
      url="http://www.freebsd.org/ports/index.html">http://www.freebsd.org/ports/index.html
      </ulink></para>

      <para>NetBSD pkgsrc: <ulink
      url="http://pkgsrc.se/search.php">http://pkgsrc.se/search.php
      </ulink></para>

      <para>OpenBSD ports:<ulink
      url="http://openports.se/search.php">http://openports.se/search.php
      </ulink></para>

      <para>etc.<indexterm>
          <primary>RPM</primary>

          <secondary>Red Hat Package Manager package</secondary>
        </indexterm><indexterm>
          <primary>Deb</primary>

          <secondary>Debian package</secondary>
        </indexterm><indexterm>
          <primary>Ports</primary>

          <secondary>FreeBSD port</secondary>
        </indexterm></para>
    </sect2>

    <sect2>
      <title>Source packages</title>

      <sect3>
        <title>Tarballs</title>

        <para>Prepacked tarballs in .tar.gz and tar.bz2 format are available
        on the netatalk page on <ulink
        url="http://netatalk.sourceforge.net/">sourceforge</ulink>.</para>
      </sect3>

      <sect3>
        <title>Git</title>

        <para>Downloading the Git repository can be done quickly and
        easily:</para>

        <orderedlist>
          <listitem>
            <para>Make sure you have Git installed. <command>which
            git</command> should produce a path to git.</para>

            <screen><prompt>$ </prompt><userinput>which git</userinput>
<computeroutput>/usr/bin/git</computeroutput></screen>
          </listitem>

          <listitem>
            <para>Now get the source:</para>

            <screen><prompt>$</prompt> <userinput>git clone -b develop git://git.code.sf.net/p/netatalk/code netatalk-code
</userinput><computeroutput>Initialized empty Git repository in /path/to/new/source/dir/netatalk/.git/
remote: Counting objects: 2503, done.
...
</computeroutput></screen>

            <para>This will create a local directory called
            <filename>netatalk-code</filename> containing a complete and fresh
            copy of the whole Netatalk source from the Git repository.</para>
          </listitem>

          <listitem>
            <para>In order to keep your repository copy updated, occasionally
            run:</para>

            <screen><prompt>$</prompt> <userinput>git pull</userinput></screen>
          </listitem>

          <listitem>
            <para>Now <command>cd</command> to the netatalk directory and run
            <command>./bootstrap</command>. This will create the
            <filename>configure</filename> script required in the next
            step.</para>

            <screen><prompt>$</prompt> <userinput>./bootstrap</userinput></screen>
          </listitem>
        </orderedlist>

        <para>For futher information refer to this <ulink
        url="http://netatalk.sourceforge.net/wiki/index.php/Developer_Infos">wiki</ulink>
        page.</para>
      </sect3>
    </sect2>
  </sect1>

  <sect1>
    <title>Compiling Netatalk</title>

    <sect2>
      <title>Prerequisites</title>

      <sect3>
        <title>Required third party software</title>

        <itemizedlist>
          <listitem>
            <para>Berkeley DB<indexterm>
                <primary>BDB</primary>
                <secondary>Berkeley DB</secondary>
              </indexterm>.</para>
            <para>At the time of writing you need at least version 4.6.</para>
          </listitem>

          <listitem>
            <para>Libgcrypt</para>

            <para>Required for OS X 10.7 and later. Libgcrypt is needed for
            DHX2.</para>

            <para>Libgcrypt can be downloaded from: <ulink
            url="http://directory.fsf.org/wiki/Libgcrypt">
            http://directory.fsf.org/wiki/Libgcrypt</ulink>.</para>
          </listitem>
        </itemizedlist>
      </sect3>

      <sect3>
        <title>Optional third party software</title>

        <para>Netatalk can use the following third party software to enhance
        it's functionality.</para>

        <itemizedlist>
          <listitem>
            <para>Tracker for Spotlight<indexterm>
                <primary>Spotlight</primary>
              </indexterm> support</para>

            <para>Netatalk uses <ulink
            url="http://projects.gnome.org/tracker/">Tracker</ulink> as the
            metadata backend. Recent Linux distributions will provide the
            libtracker-sparql library which is available since Tracker version
            0.7.</para>
          </listitem>

          <listitem>
            <para>mDNSresponderPOSIX or Avahi for Bonjour (aka
            Zeroconf)</para>

            <para>Mac OS X 10.2 and later use Bonjour (aka Zeroconf) for
            service discovery.</para>

            <para>Avahi must be build with DBUS support (
            <userinput>--enable-dbus</userinput>).</para>
          </listitem>

          <listitem>
            <para>TCP wrappers</para>

            <para>Wietse Venema's network logger, also known as TCPD or
            LOG_TCP.</para>

            <para>Security options are: access control per host, domain and/or
            service; detection of host name spoofing or host address spoofing;
            booby traps to implement an early-warning system.</para>
          </listitem>

          <listitem>
            <para>PAM<indexterm>
                <primary>PAM</primary>

                <secondary>Pluggable Authentication Modules</secondary>
              </indexterm></para>

            <para>PAM provides a flexible mechanism for authenticating users.
            PAM was invented by SUN<indexterm>
                <primary>SUN</primary>

                <secondary>Sun Microsystems</secondary>
              </indexterm> Microsystems. Linux-PAM is a suite of shared
            libraries that enable the local system administrator to choose how
            applications authenticate users.</para>
          </listitem>

          <listitem>
            <para>iconv</para>

            <para>iconv provides conversion routines for many character
            encodings. Netatalk uses it to provide charsets it does not have
            built in conversions for, like ISO-8859-1. On glibc systems,
            Netatalk can use the glibc provided iconv implementation.
            Otherwise you can use the GNU libiconv implementation.</para>
          </listitem>
        </itemizedlist>
      </sect3>
    </sect2>

    <sect2 id="compiling-netatalk">
      <title>Compiling<indexterm>
          <primary>Compile</primary>

          <secondary>Compiling Netatalk from Source</secondary>
        </indexterm> Netatalk</title>

      <sect3>
        <title>Configuring the build</title>

        <para>To build the binaries, first run the program
        <command>./configure</command> in the source directory. This should
        automatically configure Netatalk for your operating system. If you
        have unusual needs, then you may wish to run</para>

        <screen>$ <userinput>./configure --help</userinput></screen>

        <para>to see what special options you can enable.</para>

        <para>The most used configure options are:</para>

        <itemizedlist>
          <listitem>
            <para><option>--with-init-style</option>=redhat-sysv|redhat-systemd|suse-sysv|suse-systemd|gentoo-openrc|gentoo-systemd|netbsd|debian-sysv|debian-systemd|solaris|openrc|systemd</para>

            <para>This option helps netatalk to determine where to install the
            start scripts.</para>
          </listitem>

          <listitem>
            <para><option>--with-bdb</option>=<replaceable>/path/to/bdb/installation/</replaceable></para>

            <para>In case you installed Berkeley DB in a non-standard
            location, you will <emphasis>have</emphasis> to give the install
            location to netatalk, using this switch.</para>
          </listitem>
        </itemizedlist>

        <para>Now run configure with any options you need</para>

        <screen><prompt>$</prompt> <userinput>./configure [arguments]</userinput></screen>

        <para>Configure will end up in an overview showing the settings the
        Netatalk Makefiles have been created with.</para>
      </sect3>

      <sect3 id="spotlight-compile">
        <title>Spotlight<indexterm>
            <primary>Spotlight</primary>
          </indexterm></title>

        <para>Netatalk uses Gnome <ulink url="https://projects.gnome.org/tracker/">Tracker</ulink> as the
        metadata backend. The minimum required version is 0.7 as that's the
        first version to support <ulink url="https://wiki.gnome.org/Tracker/Documentation">SPARQL</ulink>.</para>

        <para>If not already installed, install the packages
        <emphasis>tracker</emphasis> and <emphasis>tracker-devel</emphasis>,
        on Solaris install <ulink url="http://www.opencsw.org/">OpenCSW</ulink> and then install
        the Tracker package from the OpenCSW unstable repository.</para>

        <para>The tracker packages are found via pkg-config, you may have to
        pass the version suffix as you may have a newer version installed then
        the default 0.12, e.g.</para>

        <screen><prompt>$ </prompt><userinput>pkg-config --list-all | grep tracker
</userinput>tracker-extract-0.16  tracker-extract - Tracker : A library to develop metadata extractors for 3rd party file types.
tracker-sparql-0.16   tracker-sparql - Tracker : A library to perform SPARQL queries and updates in the              Tracker Store
tracker-miner-0.16    tracker-miner - A library to develop tracker data miners</screen>

        <para>So:</para>

        <screen><prompt>$ </prompt><userinput>./configure --with-tracker-pkgconfig-version=0.16 ...</userinput></screen>

        <para>If you're using Solaris and Tracker from OpenCSW, then you need
        to set the PKG_CONFIG_PATH environment variable, add the
        --with-tracker-prefix configure option and add
        LDFLAGS="-R/opt/csw/lib"</para>

        <screen>PKG_CONFIG_PATH=/opt/csw/lib/pkgconfig LDFLAGS="-R/opt/csw/lib" ./configure --with-tracker-prefix=/opt/csw --with-tracker-pkgconfig-version=0.16 ...</screen>

        <para>Check the configure output whether the Tracker libs were
        found:</para>

        <screen>checking for TRACKER... yes
checking for TRACKER_MINER... yes
...
Configure summary:
...
  AFP:
    Spotlight: yes
...</screen>
      </sect3>

      <sect3>
        <title>Compile and install</title>

        <para>Next, running</para>

        <screen><prompt>$</prompt> <userinput>make</userinput></screen>

        <para>should produce the Netatalk binaries (this step can take several
        minutes to complete).</para>

        <para>When the process finished you can use</para>

        <screen><prompt>$</prompt> <userinput>make install</userinput></screen>

        <para>to install the binaries and documentation (must be done as
        "root" when using default locations).</para>
      </sect3>
    </sect2>
  </sect1>
</chapter>