summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--packaging/debian/TODO1
-rw-r--r--packaging/debian/control156
-rw-r--r--packaging/debian/po/POTFILES.in1
-rw-r--r--packaging/debian/po/templates.pot85
-rwxr-xr-xpackaging/debian/rules3
-rw-r--r--packaging/debian/samba4-common.install1
-rw-r--r--packaging/debian/samba4-server.config27
-rw-r--r--packaging/debian/samba4-server.postinst28
-rw-r--r--packaging/debian/samba4-server.samba4.init63
-rw-r--r--packaging/debian/samba4-server.templates32
-rw-r--r--packaging/debian/samba4-swat.install1
-rw-r--r--packaging/debian/smb.conf2
12 files changed, 374 insertions, 26 deletions
diff --git a/packaging/debian/TODO b/packaging/debian/TODO
new file mode 100644
index 0000000000..8ff5b7248b
--- /dev/null
+++ b/packaging/debian/TODO
@@ -0,0 +1 @@
+- Ask if the user wishes to upgrade from Samba3
diff --git a/packaging/debian/control b/packaging/debian/control
index 0608d13d4a..b1ff5403a6 100644
--- a/packaging/debian/control
+++ b/packaging/debian/control
@@ -3,38 +3,92 @@ Section: net
Priority: optional
Maintainer: Jelmer Vernooij <jelmer@samba.org>
Standards-Version: 3.6.2
-Build-Depends: libgtk2.0-dev, libgconf2-dev, libldap-dev, debhelper (>> 4.0.0), libparse-yapp-perl, perl, docbook-xsl, xsltproc
+Build-Depends: libgtk2.0-dev, libgconf2-dev, libldap-dev, debhelper (>> 4.0.0), libparse-yapp-perl, perl, docbook-xsl, xsltproc, po-debconf
Package: samba4-common
Architecture: all
-Description: Common samba files
- Files common for all programs in Samba
+Description: Samba 4 common files used by both the server and the client
+ The Samba software suite is a collection of programs that
+ implements the SMB protocol for unix systems, allowing you to serve
+ files and printers to Windows, NT, OS/2 and DOS clients. This protocol
+ is sometimes also referred to as the LanManager or NetBIOS protocol.
+ .
+ These packages contain snapshot versions of Samba 4, the next-generation
+ version of Samba. These should be considered _experimental_, and should
+ not be used in production. In particular, no guarantees are made with
+ regard to upgrades between versions.
+ .
+ This package contains the common files that are used by both the server
+ (provided in the samba4-server package) and the client (provided in the
+ samba4-client package).
Package: samba4-client
Architecture: any
Depends: ${shlibs:Depends}
-Description: Client utilities from Samba4
- Client utilities for NetBIOS, SMB and RPC.
+Description: client utilities from Samba 4
+ The Samba software suite is a collection of programs that
+ implements the SMB protocol for unix systems, allowing you to serve
+ files and printers to Windows, NT, OS/2 and DOS clients. This protocol
+ is sometimes also referred to as the LanManager or NetBIOS protocol.
+ .
+ These packages contain snapshot versions of Samba 4, the next-generation
+ version of Samba. These should be considered _experimental_, and should
+ not be used in production. In particular, no guarantees are made with
+ regard to upgrades between versions.
+ .
+ This package contains some client components of the Samba suite. In
+ particular it includes the command line utilities smbclient, net,
+ and some ACL tools.
Package: samba4-testsuite
Architecture: any
Depends: ${shlibs:Depends}, samba4-common
-Description: Testsuite from Samba4
+Description: test suite from Samba 4
+ The Samba software suite is a collection of programs that
+ implements the SMB protocol for unix systems, allowing you to serve
+ files and printers to Windows, NT, OS/2 and DOS clients, as well as
+ run as a domain controller for Active Directory.
+ .
+ These packages contain snapshot versions of Samba 4, the next-generation
+ version of Samba. These should be considered _experimental_, and should
+ not be used in production. In particular, no guarantees are made with
+ regard to upgrades between versions.
+ .
This package contains programs for testing the reliability and speed
of SMB servers, Samba in particular.
Package: samba4-server
Architecture: any
Recommends: samba4-swat
-Depends: ${shlibs:Depends}, samba4-common
-Description: SMB Server
- Contains smbd, the Samba server.
+Depends: ${shlibs:Depends}, samba4-common, debconf
+Description: LanManager-like file and printer server for Unix (version 4)
+ The Samba software suite is a collection of programs that
+ implements the SMB protocol for unix systems, allowing you to serve
+ files and printers to Windows, NT, OS/2 and DOS clients, as well as
+ run as a domain controller for Active Directory.
+ .
+ These packages contain snapshot versions of Samba 4, the next-generation
+ version of Samba. These should be considered _experimental_, and should
+ not be used in production. In particular, no guarantees are made with
+ regard to upgrades between versions.
+ .
+ This package contains smbd, the Samba file, print and domain server.
Package: samba4-gtk-frontends
Architecture: any
Depends: ${shlibs:Depends}
-Description: Graphical Samba client utilities
- Contains GTK+ programs for maintaining:
+Description: graphical Samba client utilities
+ The Samba software suite is a collection of programs that
+ implements the SMB protocol for unix systems, allowing you to serve
+ files and printers to Windows, NT, OS/2 and DOS clients, as well as
+ run as a domain controller for Active Directory.
+ .
+ These packages contain snapshot versions of Samba 4, the next-generation
+ version of Samba. These should be considered _experimental_, and should
+ not be used in production. In particular, no guarantees are made with
+ regard to upgrades between versions.
+ .
+ This package contains GTK+ programs for maintaining:
.
* Remote SAM databases
* Local and remote registries
@@ -43,29 +97,89 @@ Description: Graphical Samba client utilities
Package: winregistry-tools
Architecture: any
Depends: ${shlibs:Depends}
-Description: Tools for viewing and manipulating
- FIXME
+Description: tools for viewing and manipulating the Windows registry
+ The Samba software suite is a collection of programs that
+ implements the SMB protocol for unix systems, allowing you to serve
+ files and printers to Windows, NT, OS/2 and DOS clients, as well as
+ run as a domain controller for Active Directory.
+ .
+ These packages contain snapshot versions of Samba 4, the next-generation
+ version of Samba. These should be considered _experimental_, and should
+ not be used in production. In particular, no guarantees are made with
+ regard to upgrades between versions.
+ .
+ This package contains tools for viewing and manipulating the binary
+ "registry" found on Windows machines, both locally and remote.
Package: libparse-pidl-perl
Architecture: any
Depends: ${perl:Depends}
Description: IDL compiler written in Perl
- FIXME
-
+ The Samba software suite is a collection of programs that
+ implements the SMB protocol for unix systems, allowing you to serve
+ files and printers to Windows, NT, OS/2 and DOS clients, as well as
+ run as a domain controller for Active Directory.
+ .
+ These packages contain snapshot versions of Samba 4, the next-generation
+ version of Samba. These should be considered _experimental_, and should
+ not be used in production. In particular, no guarantees are made with
+ regard to upgrades between versions.
+ .
+ This package contains the IDL (Interface Description Language) compiler pidl,
+ which takes in IDL files and can output C code for various uses. It is
+ primarily of interest to developers.
+
Package: samba4-dev
Architecture: any
Depends: libparse-pidl-perl, libc6-dev, pkg-config (>= 0.14.0)
-Description: Tools for extending Samba
- Contains Samba includes and tools
+Description: tools for extending Samba
+ The Samba software suite is a collection of programs that
+ implements the SMB protocol for unix systems, allowing you to serve
+ files and printers to Windows, NT, OS/2 and DOS clients, as well as
+ run as a domain controller for Active Directory.
+ .
+ These packages contain snapshot versions of Samba 4, the next-generation
+ version of Samba. These should be considered _experimental_, and should
+ not be used in production. In particular, no guarantees are made with
+ regard to upgrades between versions.
+ .
+ This package contains include files and libraries for interfacing to
+ and extending Samba. In particular, it contains development files for
+ the talloc and ldb libraries.
Package: ldb-tools
Architecture: any
Depends: ${shlibs:Depends}
-Description: Tools for maintaining LDB database files
- FIXME
+Description: tools for maintaining LDB database files
+ The Samba software suite is a collection of programs that
+ implements the SMB protocol for unix systems, allowing you to serve
+ files and printers to Windows, NT, OS/2 and DOS clients, as well as
+ run as a domain controller for Active Directory.
+ .
+ These packages contain snapshot versions of Samba 4, the next-generation
+ version of Samba. These should be considered _experimental_, and should
+ not be used in production. In particular, no guarantees are made with
+ regard to upgrades between versions.
+ .
+ This package contains tools for maintaining, creating and editing
+ LDB database files, which are central to Samba 4's operation. They
+ are primarily useful for debugging and developing Samba or other
+ applications using LDB.
Package: samba4-swat
Architecture: all
-Description: Swat data files
- Data files for SWAT.
+Description: data files for SWAT
+ The Samba software suite is a collection of programs that
+ implements the SMB protocol for unix systems, allowing you to serve
+ files and printers to Windows, NT, OS/2 and DOS clients, as well as
+ run as a domain controller for Active Directory.
+ .
+ These packages contain snapshot versions of Samba 4, the next-generation
+ version of Samba. These should be considered _experimental_, and should
+ not be used in production. In particular, no guarantees are made with
+ regard to upgrades between versions.
+ .
+ This package contains the data files for SWAT, the Samba Web Administration
+ Tool. These are used by the embedded Samba 4 web server to provide web-based
+ administration of shares and other settings.
diff --git a/packaging/debian/po/POTFILES.in b/packaging/debian/po/POTFILES.in
new file mode 100644
index 0000000000..ca3179962c
--- /dev/null
+++ b/packaging/debian/po/POTFILES.in
@@ -0,0 +1 @@
+[type: gettext/rfc822deb] samba4-server.templates
diff --git a/packaging/debian/po/templates.pot b/packaging/debian/po/templates.pot
new file mode 100644
index 0000000000..5ca603b61e
--- /dev/null
+++ b/packaging/debian/po/templates.pot
@@ -0,0 +1,85 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: jelmer@samba.org\n"
+"POT-Creation-Date: 2005-12-13 16:10+0100\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Type: boolean
+#. Description
+#: ../samba4-server.templates:4
+msgid "Set up Samba 4 as a PDC?"
+msgstr ""
+
+#. Type: boolean
+#. Description
+#: ../samba4-server.templates:4
+msgid ""
+"Do you want to set up Samba 4 as an Active Directory PDC? If you answer \"no"
+"\", Samba will be left unconfigured, and you will have to provision and make "
+"configuration files by hand."
+msgstr ""
+
+#. Type: boolean
+#. Description
+#: ../samba4-server.templates:4
+msgid ""
+"Note that even if you answer \"yes\", you will need to set up DNS such that "
+"it serves the data from the zone file in that directory before you can use "
+"your Active Directory domain."
+msgstr ""
+
+#. Type: string
+#. Description
+#: ../samba4-server.templates:15
+msgid "Realm"
+msgstr ""
+
+#. Type: string
+#. Description
+#: ../samba4-server.templates:15
+msgid ""
+"What Kerberos realm will your server be in? In many cases, this will be the "
+"same as your DNS domain name (ie. YOUR.REALM)."
+msgstr ""
+
+#. Type: string
+#. Description
+#: ../samba4-server.templates:21
+msgid "Domain"
+msgstr ""
+
+#. Type: string
+#. Description
+#: ../samba4-server.templates:21
+msgid ""
+"What will be the domain of your server? This is also known as the \"workgroup"
+"\" of your server, and is typically a short name without any dots (ie. "
+"DOMAIN)."
+msgstr ""
+
+#. Type: password
+#. Description
+#: ../samba4-server.templates:28
+msgid "Administrator password"
+msgstr ""
+
+#. Type: password
+#. Description
+#: ../samba4-server.templates:28
+msgid ""
+"You will need a password for the \"Administrator\" account. Note that in the "
+"current version of the packaging, this will be visible in \"ps\" for a short "
+"time for everybody on the system, so you might not want to use a very "
+"sensitive password here."
+msgstr ""
diff --git a/packaging/debian/rules b/packaging/debian/rules
index a3303ddac2..771e7c065c 100755
--- a/packaging/debian/rules
+++ b/packaging/debian/rules
@@ -69,7 +69,6 @@ install: build
mkdir -p $(CURDIR)/debian/tmp/etc/samba4
$(MAKE) -C $(SOURCEPATH) install DESTDIR=$(CURDIR)/debian/tmp
$(MAKE) -C $(SOURCEPATH) manpages installman DESTDIR=$(CURDIR)/debian/tmp
- cp $(CURDIR)/debian/smb.conf $(CURDIR)/debian/tmp/etc/samba4
cp $(SOURCEPATH)/setup/provision $(CURDIR)/debian/tmp/usr/lib/samba/setup
$(MAKE) -C $(SOURCEPATH)/pidl install DESTDIR=$(CURDIR)/debian/tmp
@@ -84,6 +83,8 @@ binary-arch: build install
dh_compress -a
dh_fixperms -a
dh_makeshlibs -a
+ dh_installinit -a --name=samba4
+ dh_installdebconf -a
dh_installdeb -a
dh_shlibdeps -a
dh_gencontrol -a
diff --git a/packaging/debian/samba4-common.install b/packaging/debian/samba4-common.install
index 077489d74b..9b853066d5 100644
--- a/packaging/debian/samba4-common.install
+++ b/packaging/debian/samba4-common.install
@@ -1,4 +1,3 @@
-etc/samba4/smb.conf
usr/lib/samba/*.dat
usr/lib/samba/setup
usr/lib/samba/js
diff --git a/packaging/debian/samba4-server.config b/packaging/debian/samba4-server.config
new file mode 100644
index 0000000000..f2db73992e
--- /dev/null
+++ b/packaging/debian/samba4-server.config
@@ -0,0 +1,27 @@
+#! /bin/sh
+
+set -e
+
+. /usr/share/debconf/confmodule
+
+db_title "Samba Server"
+
+db_input medium samba4-server/setup-pdc || true
+db_go || true
+
+db_get samba4-server/setup-pdc
+
+if [ "$RET" = "true" ]; then
+ db_input medium samba4-server/realm || true
+ db_go || true
+
+ db_input medium samba4-server/domain || true
+ db_go || true
+
+ db_input medium samba4-server/password || true
+ db_go || true
+
+ db_input medium samba4-server/done || true
+ db_go || true
+fi
+
diff --git a/packaging/debian/samba4-server.postinst b/packaging/debian/samba4-server.postinst
new file mode 100644
index 0000000000..544cc7f555
--- /dev/null
+++ b/packaging/debian/samba4-server.postinst
@@ -0,0 +1,28 @@
+#! /bin/sh
+
+set -e
+
+. /usr/share/debconf/confmodule
+
+db_get samba4-server/setup-pdc || true
+
+if [ "$RET" = "true" ]; then
+ db_get samba4-server/realm
+ REALM="$RET"
+
+ db_get samba4-server/domain
+ DOMAIN="$RET"
+
+ db_get samba4-server/password
+ PASSWORD="$RET"
+
+ db_stop
+
+ /usr/lib/samba/setup/provision --realm="$REALM" --domain="$DOMAIN" --adminpass="$PASSWORD"
+else
+ db_stop
+fi
+
+#DEBHELPER#
+
+exit 0
diff --git a/packaging/debian/samba4-server.samba4.init b/packaging/debian/samba4-server.samba4.init
new file mode 100644
index 0000000000..0c8b8a069a
--- /dev/null
+++ b/packaging/debian/samba4-server.samba4.init
@@ -0,0 +1,63 @@
+#! /bin/sh
+
+#
+# Start/stops the Samba daemon (smbd).
+# Adapted from the Samba 3 packages.
+#
+
+SMBDPID=/var/run/samba4/smbd.pid
+
+# clear conflicting settings from the environment
+unset TMPDIR
+
+# See if the daemon and the config file are there
+test -x /usr/sbin/smbd -a -r /etc/samba4/smb.conf || exit 0
+
+. /lib/lsb/init-functions
+
+case "$1" in
+ start)
+ log_daemon_msg "Starting Samba 4 daemon" "smbd"
+
+ if ! start-stop-daemon --start --quiet --oknodo --exec /usr/sbin/smbd -- -D; then
+ log_end_msg 1
+ exit 1
+ fi
+
+ log_end_msg 0
+ ;;
+ stop)
+ log_daemon_msg "Stopping Samba 4 daemon" "smbd"
+
+ start-stop-daemon --stop --quiet --pidfile $SMBDPID
+ # Wait a little and remove stale PID file
+ sleep 1
+ if [ -f $SMBDPID ] && ! ps h `cat $SMBDPID` > /dev/null
+ then
+ # Stale PID file (smbd was succesfully stopped),
+ # remove it (should be removed by smbd itself IMHO.)
+ rm -f $SMBDPID
+ fi
+
+ log_end_msg 0
+
+ ;;
+ reload)
+ log_daemon_msg "Reloading /etc/samba/smb.conf" "smbd only"
+
+ start-stop-daemon --stop --signal HUP --pidfile $SMBDPID
+
+ log_end_msg 0
+ ;;
+ restart|force-reload)
+ $0 stop
+ sleep 1
+ $0 start
+ ;;
+ *)
+ echo "Usage: /etc/init.d/samba4 {start|stop|reload|restart|force-reload}"
+ exit 1
+ ;;
+esac
+
+exit 0
diff --git a/packaging/debian/samba4-server.templates b/packaging/debian/samba4-server.templates
new file mode 100644
index 0000000000..d8ee5d7e03
--- /dev/null
+++ b/packaging/debian/samba4-server.templates
@@ -0,0 +1,32 @@
+Template: samba4-server/setup-pdc
+Type: boolean
+Default: false
+_Description: Set up Samba 4 as a PDC?
+ Do you want to set up Samba 4 as an Active Directory PDC? If you answer
+ "no", Samba will be left unconfigured, and you will have to provision and
+ make configuration files by hand.
+ .
+ Note that even if you answer "yes", you will need to set up DNS such that
+ it serves the data from the zone file in that directory before you can use
+ your Active Directory domain.
+
+Template: samba4-server/realm
+Type: string
+_Description: Realm
+ What Kerberos realm will your server be in? In many cases, this will be
+ the same as your DNS domain name (ie. YOUR.REALM).
+
+Template: samba4-server/domain
+Type: string
+_Description: Domain
+ What will be the domain of your server? This is also known as the
+ "workgroup" of your server, and is typically a short name without any dots
+ (ie. DOMAIN).
+
+Template: samba4-server/password
+Type: password
+_Description: Administrator password
+ You will need a password for the "Administrator" account. Note that in the
+ current version of the packaging, this will be visible in "ps" for a short
+ time for everybody on the system, so you might not want to use a very
+ sensitive password here.
diff --git a/packaging/debian/samba4-swat.install b/packaging/debian/samba4-swat.install
index 3877db7422..0280407980 100644
--- a/packaging/debian/samba4-swat.install
+++ b/packaging/debian/samba4-swat.install
@@ -1,2 +1 @@
usr/share/samba/swat
-usr/lib/samba/js
diff --git a/packaging/debian/smb.conf b/packaging/debian/smb.conf
index 718217f607..e69de29bb2 100644
--- a/packaging/debian/smb.conf
+++ b/packaging/debian/smb.conf
@@ -1,2 +0,0 @@
-# Example configuration file
-[global]