Summary: Install LALIS configuration Name: lalis-config Version: 2 Release: %mkrel 1 License: GPLv3 Group: Tools Url: http://lalis.fr BuildArch: noarch Source1: journald.conf Source2: lalistunnel Source3: Lalis.desktop Source4: identMM.pl Source5: test.desktop Source6: checklist.txt Source8: ssh_id_rsa.pub Source9: RPM-GPG-KEY-Lalis Source10: lalis-i586.repo Source11: lalis-i586-source.repo Source12: lalis-x86_64.repo Source13: lalis-x86_64-source.repo Obsoletes: task-lalis-minimal < 5.6 Recommends: openssh-server Recommends: lsb-release Recommends: lsb-lib64 Recommends: wpa_supplicant Recommends: ssmtp Recommends: tigervnc-server %description Configure for lalis tools %install mkdir -p %{buildroot}%{_bindir} mkdir -p %{buildroot}%{_datadir}/lalis mkdir %{buildroot}%{_datadir}/kio_desktop mkdir -p %{buildroot}%{_datadir}/dist/desktop-files/default mkdir -p %{buildroot}%{_sysconfdir}/pki/rpm-gpg mkdir %{buildroot}%{_sysconfdir}/yum.repos.d cp %{SOURCE2} %{buildroot}%{_bindir} cp %{SOURCE4} %{buildroot}%{_bindir} cp %{SOURCE3} %{buildroot}%{_datadir}/kio_desktop/ cp %{SOURCE3} %{buildroot}%{_datadir}/dist/desktop-files/default/ cp %{SOURCE5} %{buildroot}%{_datadir}/dist/desktop-files/default/ cp %{SOURCE1} %{buildroot}%{_datadir}/lalis/ cp %{SOURCE6} %{buildroot}%{_datadir}/lalis/ cp %{SOURCE8} %{buildroot}%{_datadir}/lalis/ cp %{SOURCE9} %{buildroot}%{_sysconfdir}/pki/rpm-gpg/ cp %{SOURCE10} %{buildroot}%{_sysconfdir}/yum.repos.d/ cp %{SOURCE11} %{buildroot}%{_sysconfdir}/yum.repos.d/ cp %{SOURCE12} %{buildroot}%{_sysconfdir}/yum.repos.d/ cp %{SOURCE13} %{buildroot}%{_sysconfdir}/yum.repos.d/ %files %{_bindir}/lalistunnel %{_bindir}/identMM.pl %{_datadir}/kio_desktop/Lalis.desktop %{_datadir}/lalis/* %{_datadir}/dist/desktop-files/default/* %{_sysconfdir}/pki/rpm-gpg/RPM-GPG-KEY-Lalis %{_sysconfdir}/yum.repos.d/* %post # configuration de l'assistance à distance # trouve le nom du dossier de bureau desktop() { if [ -f "$1/.config/user-dirs.dirs" ]; then DESKTOP=`grep XDG_DESKTOP_DIR $1/.config/user-dirs.dirs` DESKTOP=`echo ${DESKTOP##*/} | sed -e s/\"//g` else DESKTOP="" fi } if [ $1 -eq 1 ];then # crée un utilisateur Lalis et enlève les droits de lecture/écriture/visibilité/exécution à others cp -f /usr/share/lalis/journald.conf /etc/systemd/ getent passwd lalis if [ ${?} -ne 0 ]; then adduser lalis chmod -R o-rwX /home/lalis passwd lalis << EOF Lalis Lalis EOF fi # Ajoute l'utilisateur lalis à la liste des utilisateurs autorisés à se connecter en ssh echo "Ajout de l'utilisateur Lalis dans sshd_config" if [ -z "`grep lalis /etc/ssh/sshd_config`" ]; then if [ -z "`grep -i allowusers /etc/ssh/sshd_config`" ]; then echo "Allowusers lalis" >>/etc/ssh/sshd_config else sed -i -e 's/^Allowusers.*/& lalis/g' /etc/ssh/sshd_config fi fi echo "relance sshd" /usr/bin/systemctl restart sshd # Ajoute le fichier test.desktop sur le bureau de l'utilisateur lalis echo "Ajout du script de test sur le bureau de lalis" desktop /home/lalis echo $DESKTOP if [ "$DESKTOP" = "" ]; then /usr/bin/mkdir "/home/lalis/Desktop" fi chmod a+rw /usr/share/lalis/checklist.txt cp /usr/share/dist/desktop-files/default/test.desktop /home/lalis/$DESKTOP/ chown lalis:lalis -R /home/lalis/$DESKTOP/test.desktop # Copie le fichier Lalis.desktop dans le dossier /etc/skel cp -f /usr/share/kio_desktop/Lalis.desktop /etc/skel/$DESKTOP # Copie le fichier Lalis.desktop sur le bureau des utilisateurs existant echo "copie de lalis.desktop dans le bureau des utilisateurs" cp -f /usr/share/kio_desktop/Lalis.desktop /usr/share/dist/desktop-files/default/ for i in /home/* do USER=`basename "$i"` getent passwd "$USER" if [ ${?} -eq 0 ]; then if [ -d $i ]; then desktop "/$i" echo $DESKTOP if ! [ -d "$i/$DESKTOP" ]; then su -c "mkdir $i/$DESKTOP" - "$USER" echo "su -c mkdir $i/$DESKTOP - $USER" fi cp -fa /usr/share/kio_desktop/Lalis.desktop "$i/$DESKTOP/" chown $USER:$USER "$i/$DESKTOP" fi fi done #disabling mdadm when no raid detected MD=`grep -c active /proc/mdstat` if [ $MD > 0 ]; then echo "Désactivation de mdadm" systemctl disable mdadm.service fi #disabling network-up if nfs not used if [ ! -e /etc/nfs.conf ]; then echo "Désactivation de network-up" systemctl disable network-up fi ARCH=`uname -i` U=`uname -r` MGAVERSION=${U##*.mga} #adding lalis mirror echo "ajout du miroir Lalis" grep -q 'lalis rsync://lalis69.ddns.net:10073/mageia/lalis/' /etc/urpmi/urpmi.cfg if [ ${?} -ne 0 ]; then echo -e "\nlalis rsync://lalis69.ddns.net:10073/mageia/lalis/$MGAVERSION/x86_64/media/core {\nupdate\n}" >>/etc/urpmi/urpmi.cfg echo "urpmi.update lalis" | at now +1 minutes fi fi echo "post end" %postun # trouve le nom du dossier de bureau desktop() { if [ -f "$1/.config/user-dirs.dirs" ]; then DESKTOP=`grep XDG_DESKTOP_DIR $1/.config/user-dirs.dirs` DESKTOP=`echo ${DESKTOP##*/} | sed -e s/\"//g` else DESKTOP="" fi } if [ $1 -eq 0 ];then # supprime l'utilisateur Lalis echo "Suppression de l'utilisateur lalis (dossier personnel compris)" userdel -rf lalis groupdel lalis # supprime l'utilisateur lalis de la liste des utilisateurs autorisés à se connecter en ssh echo "suppression de l'utilisateur lalis de sshd_config" if [ -n "`grep lalis /etc/ssh/sshd_config`" ]; then sed -i -e 's/ lalis//g' /etc/ssh/sshd_config fi /usr/bin/systemctl restart sshd # Supprime le fichier Lalis.desktop dans le dossier /etc/skel echo "suppression de Lalis.desktop du dossier /etc/skel" rm -f /etc/skel/$DESKTOP/Lalis.desktop # Supprime le fichier Lalis.desktop de bureau des utilisateurs existant echo "suppression de Lalis.desktop du dossier de bureau des utilisateurs" for i in /home/* do USER=`basename "$i"` getent passwd "$USER" if [ ${?} -eq 0 ]; then if [ -d $i ]; then desktop "/$i" echo $DESKTOP rm -f "$i/$DESKTOP/Lalis.desktop" fi fi done # supprime le miroir lalis echo "suppression du dépôt lalis" echo "urpmi.removemedia lalis" | at now +1 minutes fi