Migrate e-smith to smeserver

From SME Server
Revision as of 13:33, 21 May 2023 by TrevorB (talk | contribs)
Jump to navigation Jump to search

This page is to discuss and track the migration of legacy e-smith- packages etc. to smeserver- packages and the associated changes required.

List of base e-smith packages
Package Status* Who Comments
e-smith draft TrevorB
e-smith-LPRng
e-smith-apache
e-smith-backup draft TrevorB
e-smith-base draft TrevorB
e-smith-cvm-unix-local draft TrevorB
e-smith-devtools draft TrevorB
e-smith-dnscache
e-smith-domains
e-smith-dynamicdns-dyndns
e-smith-dynamicdns-dyndns.org
e-smith-dynamicdns-tzo
e-smith-dynamicdns-yi
e-smith-email draft TrevorB
e-smith-flexbackup
e-smith-formmagick
e-smith-grub
e-smith-horde
e-smith-hosts
e-smith-ibays
e-smith-imp
e-smith-ingo
e-smith-ldap
e-smith-lib draft TrevorB
e-smith-lib-compspec
e-smith-manager
e-smith-mysql
e-smith-ntp
e-smith-nutUPS
e-smith-oidentd
e-smith-openssh
e-smith-packetfilter
e-smith-php
e-smith-po
e-smith-portforwarding
e-smith-pptpd
e-smith-proftpd
e-smith-proxy
e-smith-qmail
e-smith-qmailanalog
e-smith-quota
e-smith-radiusd
e-smith-runit
e-smith-samba
e-smith-starterwebsite
e-smith-test
e-smith-tinydns
e-smith-turba
e-smith-viewlogfiles

Status*:

  • Started - developer has forked package and has started work
  • Draft - developer has completed first cut of changes and transferred package into smeserver Organisation. Ready for review/testing
  • Testing - formal review and testing of package commenced
  • Ready - Review/testing completed OK and ready for inclusion in smeserver base

What needs to be done:

All of these changes are being done in the new https://src.koozali.org GITEA instance after the packages have been migrated there.

  • Create copy of e-smith-<pkg> as smeserver-<pkg> Fork the smeserver/e-smith-<pkg> into your own user space as <user>/smeserver-<pkg>
  • Makefile - change e-smith to smeserver
NAME := smeserver-<pkg>
  • smeserver-<pkg>.spec - change e-smith to smeserver and add in Provides of the old e-smith package
%define name smeserver-<pkg>
.
.
Provides: e-smith-<pkg>

change all Requires: e-smith- to Requires: smeserver
If the Source: is not tar.gz, change it and delete the archivefilename file

Source: %{name}-%{version}.tar.gz
  • README.md - change name and add link to bugzilla for both new and existing names (i.e. keep the old link there)
  • 'Transfer' your smeserver-<pkg> over to the smeserver Organisation (owner) when you think it's ready for review/testing/etc. and 'Convert to a Regular Repository'

Do we need to change the e-smith directories too?

This will be done as a later exercise, but let's capture what needs to be done as we work through the packages.

In the first few packages I 'migrated' I have also symlinked smeserver to the e-smith directories so that we can start using/testing the new directory names (e.g. /etc/smeserver instead of /etc/e-smith).

new smeserver directories
directory symlinked to where symlinked
/etc/smeserver /etc/e-smith smeserver-lib

smeserver-devtools

/home/smeserver /home/e-smith smeserver-lib
/usr/sbin/smeserver /usr/bin/e-smith smeserver-lib

smeserver-devtools

/usr/local/perl5/vendor_perl/esmith /usr/local/perl5/vendor_perl/esmith smeserver-lib

smeserver-devtools

In the packages I have 'migrated' I have left the directory structure unchanged. This will be a task for another day :)


  Note:
Whilst the changes in the root directory structure are fairly obvious, this also impacts the createlinks.pm and possibly the createlinks files