blino's website

Free software developer and more

After merging Redhat's initscripts (a vendor branch), with Mandriva's initscripts, I realized again that I don't like SVN very much:

  • SVN can't build a diff between a remote URL and a local checkout (CVS was able to do that)
  • SVN doesn't handle tags in branches, which makes import of a new release in a vendor branch quite hard, svn_load_dirs can help, it imports way too many modifications, files being add/removed without any reason (CVS allowed to import directly in a branch tag)
  • properties can't be modified on a remote URL, it makes difficult to modify a vendor branch import
  • intelligent eol-style make some diffs unusable with patch (for example between branches using different EOL markers)
  • checking out CRLF files with the native eol-style property output files with a different EOL (breaks some PO files)

My hacks for maintaining Mandriva initscripts and merging it with RedHat's initscripts:

  • a script to import a vendor release in a branch and tag it, using svn_load_dirs
  • remove SVN eol-style property for the PO files, copy original PO files over, commit again
  • remove the Id SVN keyword in the PO files so that I can apply cleanly our patches over RedHat sources (not much SVN's fault here)

Useful links:

Please give me my CVS back /o\

I've finally migrated our soft/initscripts module from CVS to SVN, using cvs2svn.

It wasn't really easy, since we need to keep a Redhat branch, and diff our branch with this one. But since we apply this diff to the original Redhat tarball on our package, things get complicated.

The cvs2svn script automatically converted $Id: CVS keywords to svn:keywords properties, but it isn't suitable for imported Redhat files. So, I manually removed these svn:keywords properties for the concernet PO files.

Another sensitive issue was the CRLF characters that are used in some PO files in the Redhat package. Deleting the svn:eol-style property and committing again the original PO file solved the issue.

Modules listed in /etc/modprobe.preload.d/* files are now preloaded at boot. This is useful for the installer to drop some specific modules and remember which one it handles.

The rc.modules script now uses logger -t $0 instead of initlog -s (this requiring moving logger in /sbin in the util-linux package).

  • handle /fsckoptions in rc.sysinit (should have been merged years ago)
  • really use fsck return code in rc.sysinit (#22276)
  • run ifplugd -k -W only once (#22278)
  • unimplement –version (Manuel López-Ibáñez, #20031)
  • fix typo in netfs service (use Required-Stop)

  • merge with 8.33 from RedHat
  • don't delete ppp peers file for ADSL connections (#21506)
  • don't run update_boot_stage (#21819)
  • remove some kernel 2.2 support in rc.sysinit

In cooker and backported in 2006.0 community:

  • use ifup-post to update resolv.conf when possible (so that DNS servers are correctly ordered)
  • revert wrong fix for vconfig path (in ifup and ifdown, #21849)

blosxom Optimised for standards.
Olivier Blin (2005)