[arch-dev-public] vim packaging (was: [arch-commits] Commit in vim/trunk (6 files))

Daniel J Griffiths (Ghost1227) ghost1227 at archlinux.us
Mon Apr 19 04:44:33 CEST 2010


On 04/18/10 at 09:01pm, Dan McGee wrote:
> You're probably going to want a new item about this [1] as it scared me:
> 
> resolving dependencies...
> looking for inter-conflicts...
> warning: removing 'vim' from target list because it conflicts with 'gvim'
> :: gvim and vim are in conflict. Remove vim? [y/N] y
> 
> -Dan
> 
> [1] http://bugs.archlinux.org/task/19087
> 
> On Sun, Apr 18, 2010 at 2:37 AM, Daniel Griffiths
> <dgriffiths at archlinux.org> wrote:
> >    Date: Sunday, April 18, 2010 @ 03:37:23
> >  Author: dgriffiths
> > Revision: 77810
> >
> > FS#19087
> >
> > Added:
> >  vim/trunk/gvim.desktop
> >  vim/trunk/gvim.install
> > Modified:
> >  vim/trunk/PKGBUILD
> > Deleted:
> >  vim/trunk/fetch_patches.sh
> >  vim/trunk/fetch_runtime.sh
> >  vim/trunk/vim.install
> >
> > ------------------+
> >  PKGBUILD         |  245 +++++++++++++++++++++++++++++++++++++++--------------
> >  fetch_patches.sh |   28 ------
> >  fetch_runtime.sh |  117 -------------------------
> >  gvim.desktop     |   42 +++++++++
> >  gvim.install     |   13 ++
> >  vim.install      |   37 --------
> >  6 files changed, 236 insertions(+), 246 deletions(-)
> >
> > Modified: PKGBUILD
> > ===================================================================
> > --- PKGBUILD    2010-04-18 04:30:29 UTC (rev 77809)
> > +++ PKGBUILD    2010-04-18 07:37:23 UTC (rev 77810)
> > @@ -1,84 +1,201 @@
> > -# $Id$
> > +# Contributor: Jan "heftig" Steffens <uocll at stud.uni-karlsruhe.de>
> >  # Maintainer: tobias [ tobias at archlinux org ]
> > +# Maintainer: Daniel J Griffiths <ghost1227 at archlinux.us>
> >
> > -pkgname=vim
> > +pkgbase=('vim')
> > +pkgname=('vim' 'gvim' 'vim-runtime')
> >  _srcver=7.2
> > -_patchlevel=385
> > +_patchlevel=411
> >  pkgver=${_srcver}.${_patchlevel}
> >  pkgrel=1
> > -pkgdesc='Vi Improved, a highly configurable, improved version of the vi text editor'
> >  arch=('i686' 'x86_64')
> >  license=('custom:vim')
> >  url="http://www.vim.org"
> > -depends=('gpm' 'coreutils' 'perl')
> > -makedepends=('wget' 'sed' 'grep' 'gettext' 'curl' 'rsync')
> > -backup=(etc/vimrc)
> > -install=${pkgname}.install
> > -# we need the extra-stuff to get all patches applied smoothly
> > +makedepends=('gpm' 'coreutils' 'perl' 'python' 'ruby' 'libxt' \
> > +            'desktop-file-utils' 'gtk2' 'wget' 'sed' 'grep' \
> > +            'gettext' 'curl' 'rsync' 'pkgconfig')
> >  source=(ftp://ftp.vim.org/pub/vim/unix/vim-${_srcver}.tar.bz2 \
> >         ftp://ftp.vim.org/pub/vim/extra/vim-${_srcver}-extra.tar.gz \
> >         ftp://ftp.vim.org/pub/vim/extra/vim-${_srcver}-lang.tar.gz \
> > -        fetch_patches.sh fetch_runtime.sh vimrc archlinux.vim)
> > -md5sums=('f0901284b338e448bfd79ccca0041254' '35e04482f07c57221c9a751aaa3b8dac' \
> > -         'd8884786979e0e520c112faf2e176f05' '9c8f6b302fc3f343962686b8cf4a0350' \
> > -         '45c1c3c6aff7de0d8fc2a9d8cd5cec7d' 'e57777374891063b9ca48a1fe392ac05' \
> > -         '10353a61aadc3f276692d0e17db1478e')
> > +        vimrc archlinux.vim gvim.desktop)
> > +md5sums=('f0901284b338e448bfd79ccca0041254' '35e04482f07c57221c9a751aaa3b8dac'
> > +         'd8884786979e0e520c112faf2e176f05' 'e57777374891063b9ca48a1fe392ac05'
> > +         '10353a61aadc3f276692d0e17db1478e' '2be104c0372dd6dae19cb7968c03cd4f')
> >
> > -build()
> > -{
> > -  _versiondir="vim"$(echo ${_srcver} | sed "s/\.//")
> > -  # pull in patches from vim.org (or the src cache alternatively)
> > -  . ${srcdir}/fetch_patches.sh
> > -  get_patches || return 1
> > +_versiondir="vim$(echo ${_srcver} | sed "s/\.//")"
> >
> > -  cd ${srcdir}/${_versiondir}
> > -  sed -i 's|^.*\(#define SYS_.*VIMRC_FILE.*"\) .*$|\1|' src/feature.h
> > -  sed -i 's|^.*\(#define VIMRC_FILE.*"\) .*$|\1|' src/feature.h
> > -  # build party
> > -  ./configure --prefix=/usr --localstatedir=/var/lib/vim --mandir=/usr/share/man \
> > -    --with-compiledby=ArchLinux --with-features=big \
> > -    --enable-gpm --enable-acl --with-x=no --disable-gui \
> > -    --enable-multibyte --enable-cscope \
> > -    --enable-perlinterp
> > -    #--with-global-runtime=/usr/share/vim --with-vim-name=vim \
> > -  make || return 1
> > +##### Build #####
> > +
> > +_get_patches() {
> > +       curl ftp://ftp.vim.org/pub/vim/patches/${_srcver}/MD5SUMS | sed -e '/.gz$/d' > MD5SUMS
> > +       _currpatch=$(cat MD5SUMS | wc -l)
> > +
> > +       rsync -avzcP --exclude '*.gz' "ftp.nluug.nl::Vim/patches/${_srcver}/${_srcver}.*" .
> > +       md5sum -c MD5SUMS > /dev/null || return 1
> > +
> > +       > vim.full.patch.log
> > +       for _file in $(cat MD5SUMS | awk '{ print $2 }'); do
> > +               patch -d ${_versiondir} -p0 < ${_file} >> vim.full.patch.log || return 1
> > +       done
> > +
> > +       if [ ${_patchlevel} -lt ${_currpatch} ]; then
> > +               echo ''
> > +               echo -e '\t\tWARNING!'
> > +               echo 'You are not building the latest available version! A newer patchlevel'
> > +               echo 'seems to be available. Please edit the PKGBUILD and add the latest'
> > +               echo "${_currpatch} as pkgrel number!"
> > +               echo ''
> > +               sleep 10
> > +       fi
> > +       return 0
> >  }
> >
> > -package()
> > -{
> > -  . ${srcdir}/fetch_runtime.sh
> > -  _versiondir="vim"$(echo ${_srcver} | sed "s/\.//")
> > -  cd ${srcdir}/${_versiondir}
> > +_get_runtime() {
> > +       # Get a copy of the runtime from the archive if we don't already have one
> > +       if [ ! -d runtime ]; then
> > +               cp -r "${_versiondir}/runtime" . || return 1
> > +       fi
> >
> > -  make  VIMRCLOC=/etc DESTDIR=${pkgdir} install
> > -  cd ${pkgdir}/usr/bin
> > -  rm ex view          # provided by (n)vi in core
> > -  mv vim vim-normal   # we create a vim-symlink on post_install
> > -  ln -sf vim-normal vim
> > -  # ... make g* related symlinks point directly to the actual binary
> > -  ln -sf vim-normal rview
> > -  ln -sf vim-normal rvim
> > -  ln -sf vim-normal vimdiff
> > +       # Update our runtime to the newest version
> > +       # --delete assures we won't overwrite any non-runtime files
> > +       # with old, cached versions in the next step
> > +       rsync -avzcP --delete --exclude 'dos' --exclude 'spell' \
> > +           'ftp.nluug.nl::Vim/runtime/' "${srcdir}/runtime" || return 1
> >
> > -  # delete some manpages
> > -  find ${pkgdir}/usr/share/man -type d -name 'man1' 2> /dev/null | \
> > -   while read mandir; do
> > -    cd ${mandir}
> > -    rm -f ex.1 view.1       # provided by (n)vi
> > -    rm -f evim.1            # this does not make sense in the console version
> > -  done
> > +       # Install our new runtime into the source
> > +       cp -r runtime "${_versiondir}"
> > +}
> >
> > -  # fix FS#17216
> > -  sed -i 's|messages,/var|messages,/var/log/messages.log,/var|' \
> > -    ${pkgdir}/usr/share/vim/vim72/filetype.vim
> > +build() {
> > +       cd ${srcdir}
> >
> > -  _runtimedir="${pkgdir}/usr/share/vim/${_versiondir}/"
> > -  update_runtime
> > -  cd ${srcdir}/${_versiondir}
> > -  install -Dm644 ${srcdir}/vimrc  ${pkgdir}/etc/vimrc
> > -  install -Dm644 ${srcdir}/archlinux.vim  \
> > -                 ${pkgdir}/usr/share/vim/vimfiles/archlinux.vim
> > -  install -dm755 ${pkgdir}/usr/share/licenses/vim
> > -  cd ${pkgdir}/usr/share/licenses/vim
> > -  ln -s ../../vim/${_versiondir}/doc/uganda.txt license.txt
> > +       # pull in patches from vim.org
> > +       _get_patches || return 1
> > +
> > +       # pull in runtime from vim.org
> > +       _get_runtime || return 1
> > +
> > +       # define the place for the global (g)vimrc file (set to /etc/vimrc)
> > +       sed -i 's|^.*\(#define SYS_.*VIMRC_FILE.*"\) .*$|\1|' \
> > +           "${_versiondir}/src/feature.h" || return 1
> > +       sed -i 's|^.*\(#define VIMRC_FILE.*"\) .*$|\1|' \
> > +           "${_versiondir}/src/feature.h" || return 1
> > +
> > +       # build party
> > +       rm -rf vim-build gvim-build
> > +       mv ${_versiondir} vim-build
> > +       cp -r vim-build gvim-build
> > +
> > +       cd ${srcdir}/vim-build
> > +
> > +       ./configure --prefix=/usr --localstatedir=/var/lib/vim \
> > +           --mandir=/usr/share/man --with-compiledby=ArchLinux \
> > +           --with-features=big --enable-gpm --enable-acl --with-x=no \
> > +           --disable-gui --enable-multibyte --enable-cscope \
> > +           --disable-netbeans --enable-perlinterp --disable-pythoninterp \
> > +           --disable-rubyinterp
> > +
> > +       make || return 1
> > +
> > +       cd ${srcdir}/gvim-build
> > +
> > +       ./configure --prefix=/usr --localstatedir=/var/lib/vim \
> > +           --mandir=/usr/share/man --with-compiledby=ArchLinux \
> > +           --with-features=big --enable-gpm --enable-acl --with-x=yes \
> > +           --enable-gui=gtk2 --enable-multibyte --enable-cscope \
> > +           --enable-netbeans --enable-perlinterp --enable-pythoninterp \
> > +           --enable-rubyinterp
> > +
> > +       make || return 1
> >  }
> > +
> > +##### Packaging #####
> > +
> > +package_vim() {
> > +       depends=("vim-runtime=${pkgver}" 'gpm' 'coreutils' 'perl')
> > +       conflicts=('gvim')
> > +
> > +       cd ${srcdir}/vim-build
> > +       make -j1 VIMRCLOC=/etc DESTDIR=${pkgdir} install || return 1
> > +
> > +       # provided by (n)vi in core
> > +       rm ${pkgdir}/usr/bin/{ex,view}
> > +
> > +       # delete some manpages
> > +       find ${pkgdir}/usr/share/man -type d -name 'man1' 2>/dev/null | \
> > +           while read _mandir; do
> > +               cd ${_mandir}
> > +               rm -f ex.1 view.1 # provided by (n)vi
> > +               rm -f evim.1      # this does not make sense if we have no GUI
> > +       done
> > +
> > +       # Runtime provided by runtime package
> > +       rm -r ${pkgdir}/usr/share/vim
> > +
> > +       # license
> > +       install -dm755 ${pkgdir}/usr/share/licenses/vim
> > +       ln -s /usr/share/vim/${_versiondir}/doc/uganda.txt \
> > +           ${pkgdir}/usr/share/licenses/vim/license.txt
> > +}
> > +
> > +package_gvim() {
> > +       pkgdesc='Vi Improved, a highly configurable, improved version of the vi text editor (with advanced features, such as a GUI)'
> > +       depends=("vim-runtime=${pkgver}" 'gpm' 'coreutils' 'perl'
> > +                'python' 'ruby' 'libxt' 'desktop-file-utils' 'gtk2')
> > +       provides=("vim=${pkgver}")
> > +       conflicts=('vim')
> > +       install=gvim.install
> > +
> > +       cd ${srcdir}/gvim-build
> > +       make -j1 VIMRCLOC=/etc DESTDIR=${pkgdir} install || return 1
> > +
> > +       # provided by (n)vi in core
> > +       rm ${pkgdir}/usr/bin/{ex,view}
> > +
> > +       # delete some manpages
> > +       find ${pkgdir}/usr/share/man -type d -name 'man1' 2>/dev/null | \
> > +           while read _mandir; do
> > +               cd ${_mandir}
> > +               rm -f ex.1 view.1 # provided by (n)vi
> > +       done
> > +
> > +       # Move the runtime for later packaging
> > +       mv ${pkgdir}/usr/share/vim ${srcdir}/runtime-install
> > +
> > +       # freedesktop links
> > +       install -Dm644 ${srcdir}/gvim.desktop \
> > +           ${pkgdir}/usr/share/applications/gvim.desktop
> > +       install -Dm644 runtime/vim48x48.png ${pkgdir}/usr/share/pixmaps/gvim.png
> > +
> > +       # license
> > +       install -dm755 ${pkgdir}/usr/share/licenses/gvim
> > +       ln -s /usr/share/vim/${_versiondir}/doc/uganda.txt \
> > +           ${pkgdir}/usr/share/licenses/gvim/license.txt
> > +}
> > +
> > +package_vim-runtime() {
> > +       pkgdesc='Runtime for vim and gvim'
> > +       backup=(etc/vimrc)
> > +
> > +       # Install the runtime split from gvim
> > +       install -dm755 ${pkgdir}/usr/share
> > +       mv ${srcdir}/runtime-install ${pkgdir}/usr/share/vim
> > +
> > +       # Don't forget logtalk.dict
> > +       install -Dm644 ${srcdir}/gvim-build/runtime/ftplugin/logtalk.dict \
> > +           ${pkgdir}/usr/share/vim/${_versiondir}/ftplugin/logtalk.dict || return 1
> > +
> > +       # fix FS#17216
> > +       sed -i 's|messages,/var|messages,/var/log/messages.log,/var|' \
> > +           ${pkgdir}/usr/share/vim/vim72/filetype.vim
> > +
> > +       # rc files
> > +       install -Dm644 ${srcdir}/vimrc ${pkgdir}/etc/vimrc
> > +       install -Dm644 ${srcdir}/archlinux.vim \
> > +           ${pkgdir}/usr/share/vim/vimfiles/archlinux.vim
> > +
> > +       # license
> > +       install -dm755 ${pkgdir}/usr/share/licenses/vim-runtime
> > +       ln -s /usr/share/vim/${_versiondir}/doc/uganda.txt \
> > +           ${pkgdir}/usr/share/licenses/vim-runtime/license.txt
> > +}
> >
> > Deleted: fetch_patches.sh
> > ===================================================================
> > --- fetch_patches.sh    2010-04-18 04:30:29 UTC (rev 77809)
> > +++ fetch_patches.sh    2010-04-18 07:37:23 UTC (rev 77810)
> > @@ -1,28 +0,0 @@
> > -# the external logic for pulling in patches
> > -
> > -get_patches() {
> > -
> > -  curl ftp://ftp.vim.org/pub/vim/patches/${_srcver}/MD5SUMS | sed -e \
> > -    '/.gz$/d' > MD5SUMS
> > -  let _patchlevel=$_patchlevel+1
> > -  _currpatch=$(cat MD5SUMS | wc -l)
> > -  sed -i "${_patchlevel},\$d" MD5SUMS
> > -  rsync -avzcP "ftp.nluug.nl::Vim/patches/${_srcver}/${_srcver}.*" .
> > -  md5sum -c MD5SUMS > /dev/null || return 1
> > -  > vim.full.patch.log
> > -  for file in $(cat MD5SUMS | awk '{ print $2 }')
> > -    do patch -d ${_versiondir} -p0 < $file >> vim.full.patch.log || return 1; done
> > -
> > -  ########
> > -
> > -  if [ ${_patchlevel} -le ${_currpatch} ]; then
> > -    echo ""
> > -    echo -e "\t\tWARNING!"
> > -    echo "You are not building the latest available version! A newer patchlevel"
> > -    echo "seems to be available. Please edit the PKGBUILD and add the latest"
> > -    echo "${_currpatch} as pkgrel number!"
> > -    echo ""
> > -    sleep 10
> > -  fi
> > -  return 0
> > -}
> >
> > Deleted: fetch_runtime.sh
> > ===================================================================
> > --- fetch_runtime.sh    2010-04-18 04:30:29 UTC (rev 77809)
> > +++ fetch_runtime.sh    2010-04-18 07:37:23 UTC (rev 77810)
> > @@ -1,117 +0,0 @@
> > -# the purpose of this magic is to pull in the latest runtime files for vim
> > -# we start withe theruntime provoded by the tarballs and compare MD5s against
> > -# the latest runtime
> > -# if this fails we look in the local source cache if they have been fetched
> > -# for an earlier build and compare those MD5 files
> > -# if this fails, we fetch the stuff from online and store it in the local src
> > -# cache.
> > -# The local cache has to be set (makepkg.conf) AND it has to be writable
> > -
> > -update_runtime() {
> > -  _OLDDIR=$(pwd) #get absolute path
> > -  _errors=0
> > -  _ftp="ftp://ftp.vim.org/pub/vim/runtime"
> > -
> > -  # we're gonna be sneaky and grok the A-A-P recipe for the files we need
> > -  _recipe="getunix.aap"
> > -  _srccache="${SRCDEST}/vim-${_srcver}/"
> > -
> > -  echo "getting runtime recipe"
> > -  cd ${srcdir}
> > -  [ -f "${_recipe}" ] && rm "${_recipe}"
> > -  wget "${_ftp}/${_recipe}" >/dev/null 2>&1
> > -
> > -  cd "${_runtimedir}"
> > -  _runtimedir=$(pwd) #get absolute path
> > -
> > -  # change IFS to loop line-by-line
> > -  _OLDIFS=$IFS
> > -  IFS="
> > -"
> > -  echo "begin fetching updated runtime files..."
> > -  for _file in $(grep "file = " "${srcdir}/${_recipe}"); do
> > -    _file=$(echo ${_file} | sed "s|.*file = \(.*\)|\1|")
> > -    _md5=$(grep -A2 "file = ${_file} *$" "${srcdir}/${_recipe}" | \
> > -          grep "get_md5" | \
> > -          sed 's|@if get_md5(file) != "\(.*\)":|\1|g')
> > -    _dir=$(dirname "${_file}")
> > -
> > -    mkdir -p "${_dir}"
> > -
> > -    echo -e "\t${_file}"
> > -    _havefile=0
> > -    # if we have the file and the MD5sum fails, we technically don't have the file
> > -    if [ -f ${_file} ]; then
> > -      # MD5 fails ? ... we don't have the file
> > -      if [ $(echo "${_md5}  ${_file}" | md5sum --status -c -) ]; then
> > -        rm ${_file}
> > -      else
> > -        _havefile=1
> > -      fi
> > -    fi
> > -    # look files that were not copied from the unzipped sources
> > -    _cachefile=${srcdir}/${_versiondir}/runtime/${_file}
> > -    if [ ${_havefile} -ne 1 -a -f ${_cachefile} ]; then
> > -      # MD5 fails ? ... we lookup if we downloaded another version earlier
> > -      if [ $(echo "${_md5}  ${_cachefile}" | md5sum --status -c -) ]; then
> > -        _cachefile=${_srccache}/${_file}
> > -        if [ -f ${_cachefile} ]; then
> > -          if [ $(echo "${_md5}  ${_cachefile}" | md5sum --status -c -) ]; then
> > -            rm ${_cachefile}
> > -          else
> > -            cp ${_cachefile} ${_dir}
> > -            _havefile=1
> > -          fi
> > -        fi
> > -      else
> > -        cp ${_cachefile} ${_dir}
> > -        _havefile=1
> > -      fi
> > -    fi
> > -    # look up the local $SRCDEST
> > -    _cachefile=${_srccache}/${_file}
> > -    if [ ${_havefile} -ne 1 -a -f ${_cachefile} ]; then
> > -      # MD5 fails ? ... we don't have the file
> > -      if [ $(echo "${_md5}  ${_cachefile}" | md5sum --status -c -) ]; then
> > -        rm ${_cachefile}
> > -      else
> > -        cp ${_cachefile} ${_dir}
> > -        _havefile=1
> > -      fi
> > -    fi
> > -    # so we finally have to fetch it and store it to $SRCDEST (cache)
> > -    if [ ${_havefile} -ne 1 ]; then
> > -      echo -n -e "\t ... fetching file ${_file} ..."
> > -      cd "${_dir}"
> > -      wget "${_ftp}/${_file}" >/dev/null 2>&1
> > -      cd "${_runtimedir}"
> > -      # store freshly downloaded file in SRCDEST
> > -      mkdir -p ${_srccache}/${_dir}
> > -      cp ${_file} ${_srccache}/${_dir}
> > -      echo -e " done!"
> > -    fi
> > -
> > -   # check the MD5 sum finally
> > -    if [ $(echo "${_md5}  ${_file}" | md5sum --status -c -) ]; then
> > -      echo "!!!! md5sum check for ${_file} failed !!!!"
> > -      errors=$((${_errors} + 1))
> > -    fi
> > -  done
> > -  IFS=${_OLDIFS}
> > -
> > -  echo "vim runtime got updated"
> > -
> > -  if [ ${_errors} -gt 0 ]; then
> > -    echo "${_errors} failed MD5 checks while updating runtime files -> build can't be completed"
> > -    return 1
> > -  else
> > -    echo -e "\tpatching filetype.vim for better handling of pacman related files ..."
> > -    sed -i "s/rpmsave/pacsave/;s/rpmnew/pacnew/;s/,\*\.ebuild/\0,PKGBUILD*,*.install/" filetype.vim
> > -    sed -i "/find the end/,+3{s/changelog_date_entry_search/changelog_date_end_entry_search/}" ftplugin/changelog.vim
> > -  fi
> > -  # make Aaron happy
> > -  wget http://www.vim.org/scripts/download_script.php\?src_id=10872 \
> > -    -O autoload/pythoncomplete.vim
> > -  cd "${_OLDDIR}"
> > -  return 0
> > -}
> >
> > Added: gvim.desktop
> > ===================================================================
> > --- gvim.desktop                                (rev 0)
> > +++ gvim.desktop        2010-04-18 07:37:23 UTC (rev 77810)
> > @@ -0,0 +1,42 @@
> > +[Desktop Entry]
> > +Encoding=UTF-8
> > +Version=1.0
> > +Name=gVim
> > +Name[eo]=VIM-fasado
> > +Name[sv]=gVim
> > +Name[xx]=xx
> > +Comment=GTK2 enhanced vim text editor
> > +Comment[ar]=محرر نصوص
> > +Comment[bg]=Текст Редактор
> > +Comment[de]=Texteditor
> > +Comment[el]=Διορθωτής Κειμένου
> > +Comment[eo]=Tekstredaktilo
> > +Comment[et]=Tekstiredaktor
> > +Comment[eu]=Testu Editorea
> > +Comment[fi]=Tekstieditori
> > +Comment[he]=עורך טקסט
> > +Comment[is]=Textaritill
> > +Comment[ja]=テキストエディタ
> > +Comment[lt]=Teksto redaktorius
> > +Comment[mt]=Editur tat-test
> > +Comment[pt_BR]=Editor de Texto
> > +Comment[ro]=Editor de text
> > +Comment[ru]=редактор
> > +Comment[sk]=Textový editor
> > +Comment[sl]=Urejevalnik besedil
> > +Comment[ta]=¯¨Ã ¦¾¡ÌôÀ¡Ç÷
> > +Comment[tr]=Metin Düzenleyici
> > +Comment[uk]=Редактор текстів
> > +Comment[vi]=Trình soạn văn bản
> > +Comment[xx]=xx
> > +Comment[zh_CN]=文本编辑器
> > +Comment[zh_TW]=文字編輯器
> > +GenericName=Text Editor
> > +Type=Application
> > +TryExec=gvim
> > +Exec=gvim
> > +Icon=gvim
> > +Terminal=false
> > +X-MultipleArgs=false
> > +Categories=GTK;Application;Utility;TextEditor;
> > +MimeType=application/mathml+xml;application/xhtml+xml;application/x-perl;application/x-python;application/x-shellscript;audio/x-mpegurl;audio/x-scpls;image/svg+xml;message/news;message/rfc822;text/calendar;text/css;text/english;text/html;text/mrml;text/plain;text/rdf;text/rss;text/rtf;text/sgml;text/vnd.wap.wml;text/x-adasrc;text/x-bibtex;text/x-chdr;text/x-c++hdr;text/x-csrc;text/x-c++src;text/x-c;text/x-objc;text/x-csv;text/x-diff;text/x-java;text/x-katefilelist;text/x-latex;text/x-log;text/x-lyx;text/x-makefile;text/xmcd;text/xml;text/x-moc;text/x-mswinurl;text/x-objcsrc;text/x-pascal;text/x-perl;text/x-php;text/x-php-source;text/x-python;text/x-tcl;text/x-tex;text/x-vcalendar;text/x-vcard;text/x-xslfo;text/x-xslt;
> >
> > Added: gvim.install
> > ===================================================================
> > --- gvim.install                                (rev 0)
> > +++ gvim.install        2010-04-18 07:37:23 UTC (rev 77810)
> > @@ -0,0 +1,13 @@
> > +post_install() {
> > +  echo -n "Updating desktop and mime database..."
> > +  update-desktop-database -q
> > +  echo "done."
> > +}
> > +
> > +post_upgrade() {
> > +  post_install $1
> > +}
> > +
> > +post_remove() {
> > +  post_install $1
> > +}
> >
> > Deleted: vim.install
> > ===================================================================
> > --- vim.install 2010-04-18 04:30:29 UTC (rev 77809)
> > +++ vim.install 2010-04-18 07:37:23 UTC (rev 77810)
> > @@ -1,37 +0,0 @@
> > -post_install() {
> > -  # if gvim is installed make vim a symlink to vim-big
> > -  if [ -f usr/bin/vim-big ] ; then
> > -    cd usr/bin
> > -    rm -f vim
> > -    ln -sf vim-big vim
> > -    cd ${OLDPWD}
> > -    echo "Create gvim related symlinks..."
> > -  fi
> > -  echo -n "Updating vi help tags..."
> > -  usr/bin/vi --noplugins -u NONE -U NONE \
> > -    --cmd ":helptags usr/share/vim/doc" --cmd ":q" > /dev/null 2>&1
> > -  echo "done."
> > -}
> > -
> > -post_remove() {
> > -  # By all dependencies in the world, that shall never happen, because
> > -  # gvim depends on vim ... but then there is always pacman -Rd ...
> > -
> > -  # if gvim is installed make vim a symlink to vim-big
> > -  if [ -f usr/bin/vim-big ] ; then
> > -    cd usr/bin
> > -    rm -f vim
> > -    ln -sf vim-big vim
> > -    cd ${OLDPWD}
> > -    echo "Create gvim related symlinks..."
> > -  fi
> > -}
> > -
> > -post_upgrade() {
> > -  post_install $1
> > -}
> > -
> > -
> > -op=$1
> > -shift
> > -[ "$(type -t "$op")" = "function" ] && $op "$@"
> >
> >
Good call, posting now
-- 


More information about the arch-dev-public mailing list