###############################################################################
# #
# IPFire.org - A linux based firewall #
-# Copyright (C) 2007-2015 IPFire Team <info@ipfire.org> #
+# Copyright (C) 2007-2020 IPFire Team <info@ipfire.org> #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
include Config
-VER = 3.6.25
+VER = 4.15.5
+SUMMARY = A SMB/CIFS File, Print, and Authentication Server
THISAPP = samba-$(VER)
DL_FILE = $(THISAPP).tar.gz
DIR_APP = $(DIR_SRC)/$(THISAPP)
TARGET = $(DIR_INFO)/$(THISAPP)
PROG = samba
-PAK_VER = 60
+PAK_VER = 83
-DEPS = "cups krb5"
+DEPS = avahi cups libtirpc krb5 perl-Parse-Yapp
+
+SERVICES = samba
###############################################################################
# Top-level Rules
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 76da2fa64edd94a0188531e7ecb27c4e
+$(DL_FILE)_BLAKE2 = 355970b9918e95f925636cdea919e123b072f8710134fe6310637c29b2b5e1bc55d7b66d9674a68408ce5f14545a2cb9a94f596f90204935addb2f8f6a503873
install : $(TARGET)
download :$(patsubst %,$(DIR_DL)/%,$(objects))
-md5 : $(subst %,%_MD5,$(objects))
+b2 : $(subst %,%_BLAKE2,$(objects))
-dist:
+dist:
@$(PAK)
###############################################################################
-# Downloading, checking, md5sum
+# Downloading, checking, b2sum
###############################################################################
$(patsubst %,$(DIR_CHK)/%,$(objects)) :
$(patsubst %,$(DIR_DL)/%,$(objects)) :
@$(LOAD)
-$(subst %,%_MD5,$(objects)) :
- @$(MD5)
+$(subst %,%_BLAKE2,$(objects)) :
+ @$(B2SUM)
###############################################################################
# Installation Details
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
@$(PREBUILD)
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
- cd $(DIR_APP)/source3 && ./configure \
+ cd $(DIR_APP) && ./configure \
--prefix=/usr \
--libdir=/usr/lib/ \
--sysconfdir=/var/ipfire \
--localstatedir=/var \
+ --without-ad-dc \
--with-cachedir=/var/lib/samba \
--with-lockdir=/var/lib/samba \
--with-piddir=/var/run \
--with-ads \
--with-acl-support \
- --with-libsmbclient \
- --with-libsmbsharemodes \
--with-sendfile-support \
- --without-smbwrapper \
- --with-mmap \
- --with-fhs \
- --with-vfs \
--with-winbind \
- --disable-swat \
+ --enable-avahi \
--enable-cups \
- --disable-avahi \
+ --enable-fhs \
--with-syslog
- cd $(DIR_APP)/source3 && make proto && make all $(MAKETUNING) $(EXTRA_MAKE)
- cd $(DIR_APP)/source3 && make install
- cd $(DIR_APP)/source3 && chmod -v 644 /usr/include/libsmbclient.h
- #cd $(DIR_APP)/source3 && install -v -m755 nsswitch/libnss_wins.so /lib
- #cd $(DIR_APP)/source3 && install -v -m755 nsswitch/libnss_winbind.so /lib
- #cd $(DIR_APP)/source3 && ln -v -sf libnss_winbind.so /lib/libnss_winbind.so.2
- #cd $(DIR_APP)/source3 && ln -v -sf libnss_wins.so /lib/libnss_wins.so.2
+ cd $(DIR_APP) && make $(MAKETUNING) $(EXTRA_MAKE)
+ cd $(DIR_APP) && make install
+
+ -mkdir -p /var/ipfire/samba
cd $(DIR_APP)/source3 && install -v -m644 ../examples/smb.conf.default /var/ipfire/samba
- -mkdir -p /var/ipfire/samba
cp -vrf $(DIR_SRC)/config/samba/* /var/ipfire/samba/
chown nobody:nobody -R /var/ipfire/samba/
- cp -vfp /var/ipfire/samba/default.global /var/ipfire/samba/global
- cp -vfp /var/ipfire/samba/default.pdc /var/ipfire/samba/pdc
- cp -vfp /var/ipfire/samba/default.settings /var/ipfire/samba/settings
- cp -vfp /var/ipfire/samba/default.shares /var/ipfire/samba/shares
- cp -vfp /var/ipfire/samba/default.printer /var/ipfire/samba/printer
cat /var/ipfire/samba/global /var/ipfire/samba/shares > /var/ipfire/samba/smb.conf
- -mkdir -p /var/log/samba
+ rm -rf /var/lib/samba/private
+ ln -s /var/ipfire/samba/private /var/lib/samba/private
install -v -m 644 $(DIR_SRC)/config/backup/includes/samba /var/ipfire/backup/addons/includes/samba
-mkdir -p /var/lib/samba/winbindd_privileged
chmod 750 /var/lib/samba/winbindd_privileged
chgrp wbpriv /var/lib/samba/winbindd_privileged
+ # Create spool directory for print jobs
+ mkdir -p /var/spool/samba
+ chmod -v 1777 /var/spool/samba/
+
+ # Install password change helper script
+ install -m 755 $(DIR_SRC)/config/samba/samba-change-password /usr/sbin/samba-change-password
+
+ #install initscripts
+ $(call INSTALL_INITSCRIPTS,$(SERVICES))
+
@rm -rf $(DIR_APP)
@$(POSTBUILD)