Reduce use of alternatives
Attempt to fix #2277689 without reintroducing #684447. We shouldn’t need to use alternatives for the versioned binaries, since there should only ever be one version installed at a time.
This commit is contained in:
parent
9bbdcd5307
commit
21c4c1004d
@ -4,16 +4,15 @@
|
|||||||
# using if there is an alternative.
|
# using if there is an alternative.
|
||||||
|
|
||||||
if [ "$XDG_SESSION_TYPE" = 'x11' ]; then
|
if [ "$XDG_SESSION_TYPE" = 'x11' ]; then
|
||||||
emacs="$(readlink -f /usr/bin/emacs)"
|
case "$(readlink -f /usr/bin/emacs)" in
|
||||||
emacs="${emacs##*/}"
|
*/emacs-*.*-pgtk)
|
||||||
emacs="${emacs%-*.*}"
|
|
||||||
if [ "$emacs" = 'emacs' ]; then
|
|
||||||
if type emacs-gtk+x11 >/dev/null; then
|
if type emacs-gtk+x11 >/dev/null; then
|
||||||
exec emacs-gtk+x11 "$@"
|
exec emacs-gtk+x11 "$@"
|
||||||
elif type emacs-lucid >/dev/null; then
|
elif type emacs-lucid >/dev/null; then
|
||||||
exec emacs-lucid "$@"
|
exec emacs-lucid "$@"
|
||||||
fi
|
fi
|
||||||
fi
|
;;
|
||||||
|
esac
|
||||||
fi
|
fi
|
||||||
|
|
||||||
exec emacs "$@"
|
exec emacs "$@"
|
||||||
|
59
emacs.spec
59
emacs.spec
@ -413,16 +413,23 @@ touch %{buildroot}%{_bindir}/emacs
|
|||||||
gunzip %{buildroot}%{_datadir}/emacs/%{version}/lisp/jka-compr.el.gz
|
gunzip %{buildroot}%{_datadir}/emacs/%{version}/lisp/jka-compr.el.gz
|
||||||
gunzip %{buildroot}%{_datadir}/emacs/%{version}/lisp/jka-cmpr-hook.el.gz
|
gunzip %{buildroot}%{_datadir}/emacs/%{version}/lisp/jka-cmpr-hook.el.gz
|
||||||
|
|
||||||
# Install the emacs with GTK toolkit
|
# Install the emacs binary with pure GTK toolkit
|
||||||
|
mv %{buildroot}%{_bindir}/emacs-%{version} %{buildroot}%{_bindir}/emacs-%{version}-pgtk
|
||||||
|
ln -s emacs-%{version}-pgtk %{buildroot}%{_bindir}/emacs-pgtk
|
||||||
|
|
||||||
|
# Install the emacs binary using mixed GTK and X11
|
||||||
install -p -m 0755 build-gtk+x11/src/emacs %{buildroot}%{_bindir}/emacs-%{version}-gtk+x11
|
install -p -m 0755 build-gtk+x11/src/emacs %{buildroot}%{_bindir}/emacs-%{version}-gtk+x11
|
||||||
|
ln -s emacs-%{version}-gtk+x11 %{buildroot}%{_bindir}/emacs-gtk+x11
|
||||||
|
|
||||||
# Install the emacs with Lucid toolkit
|
# Install the emacs with Lucid toolkit
|
||||||
install -p -m 0755 build-lucid/src/emacs %{buildroot}%{_bindir}/emacs-%{version}-lucid
|
install -p -m 0755 build-lucid/src/emacs %{buildroot}%{_bindir}/emacs-%{version}-lucid
|
||||||
|
ln -s emacs-%{version}-lucid %{buildroot}%{_bindir}/emacs-lucid
|
||||||
|
|
||||||
# Install the emacs without graphical display
|
# Install the emacs without graphical display
|
||||||
install -p -m 0755 build-nw/src/emacs %{buildroot}%{_bindir}/emacs-%{version}-nw
|
install -p -m 0755 build-nw/src/emacs %{buildroot}%{_bindir}/emacs-%{version}-nw
|
||||||
ln -s emacs-%{version}-nw %{buildroot}%{_bindir}/emacs-%{version}-nox
|
ln -s emacs-%{version}-nw %{buildroot}%{_bindir}/emacs-%{version}-nox
|
||||||
ln -s emacs-nw %{buildroot}%{_bindir}/emacs-nox
|
ln -s emacs-%{version}-nw %{buildroot}%{_bindir}/emacs-nox
|
||||||
|
ln -s emacs-%{version}-nw %{buildroot}%{_bindir}/emacs-nw
|
||||||
|
|
||||||
# Make sure movemail isn't setgid
|
# Make sure movemail isn't setgid
|
||||||
chmod 755 %{buildroot}%{emacs_libexecdir}/movemail
|
chmod 755 %{buildroot}%{emacs_libexecdir}/movemail
|
||||||
@ -567,63 +574,67 @@ appstream-util validate-relax --nonet %{buildroot}/%{_metainfodir}/*.metainfo.xm
|
|||||||
desktop-file-validate %{buildroot}/%{_datadir}/applications/*.desktop
|
desktop-file-validate %{buildroot}/%{_datadir}/applications/*.desktop
|
||||||
|
|
||||||
%preun
|
%preun
|
||||||
/usr/sbin/alternatives --remove emacs %{_bindir}/emacs-%{version} || :
|
if [ $1 = 0 ]; then
|
||||||
|
/usr/sbin/alternatives --remove emacs %{_bindir}/emacs-pgtk || :
|
||||||
|
fi
|
||||||
|
|
||||||
%posttrans
|
%posttrans
|
||||||
/usr/sbin/alternatives --install %{_bindir}/emacs emacs %{_bindir}/emacs-%{version} 80 || :
|
/usr/sbin/alternatives --install %{_bindir}/emacs emacs %{_bindir}/emacs-pgtk 80 || :
|
||||||
|
|
||||||
%preun lucid
|
%preun lucid
|
||||||
/usr/sbin/alternatives --remove emacs %{_bindir}/emacs-%{version}-lucid || :
|
if [ $1 = 0 ]; then
|
||||||
/usr/sbin/alternatives --remove emacs-lucid %{_bindir}/emacs-%{version}-lucid || :
|
/usr/sbin/alternatives --remove emacs %{_bindir}/emacs-lucid || :
|
||||||
|
fi
|
||||||
|
|
||||||
%posttrans lucid
|
%posttrans lucid
|
||||||
/usr/sbin/alternatives --install %{_bindir}/emacs emacs %{_bindir}/emacs-%{version}-lucid 70 || :
|
/usr/sbin/alternatives --install %{_bindir}/emacs emacs %{_bindir}/emacs-lucid 70 || :
|
||||||
/usr/sbin/alternatives --install %{_bindir}/emacs-lucid emacs-lucid %{_bindir}/emacs-%{version}-lucid 60 || :
|
|
||||||
|
|
||||||
%preun gtk+x11
|
%preun gtk+x11
|
||||||
/usr/sbin/alternatives --remove emacs %{_bindir}/emacs-%{version}-gtk+x11 || :
|
if [ $1 = 0 ]; then
|
||||||
/usr/sbin/alternatives --remove emacs-gtk+x11 %{_bindir}/emacs-%{version}-gtk+x11 || :
|
/usr/sbin/alternatives --remove emacs %{_bindir}/emacs-gtk+x11 || :
|
||||||
|
fi
|
||||||
|
|
||||||
%posttrans gtk+x11
|
%posttrans gtk+x11
|
||||||
/usr/sbin/alternatives --install %{_bindir}/emacs emacs %{_bindir}/emacs-%{version}-gtk+x11 75 || :
|
/usr/sbin/alternatives --install %{_bindir}/emacs emacs %{_bindir}/emacs-gtk+x11 75 || :
|
||||||
/usr/sbin/alternatives --install %{_bindir}/emacs-gtk+x11 emacs-gtk+x11 %{_bindir}/emacs-%{version}-gtk+x11 60 || :
|
|
||||||
|
|
||||||
%preun nw
|
%preun nw
|
||||||
/usr/sbin/alternatives --remove emacs %{_bindir}/emacs-%{version}-nw || :
|
if [ $1 = 0 ]; then
|
||||||
/usr/sbin/alternatives --remove emacs-nw %{_bindir}/emacs-%{version}-nw || :
|
/usr/sbin/alternatives --remove emacs %{_bindir}/emacs-nw || :
|
||||||
|
fi
|
||||||
|
|
||||||
%posttrans nw
|
%posttrans nw
|
||||||
/usr/sbin/alternatives --install %{_bindir}/emacs emacs %{_bindir}/emacs-%{version}-nw 70 || :
|
/usr/sbin/alternatives --install %{_bindir}/emacs emacs %{_bindir}/emacs-nw 70 || :
|
||||||
/usr/sbin/alternatives --install %{_bindir}/emacs-nw emacs-nw %{_bindir}/emacs-%{version}-nw 60 || :
|
|
||||||
|
|
||||||
%preun common
|
%preun common
|
||||||
/usr/sbin/alternatives --remove emacs.etags %{_bindir}/etags.emacs || :
|
if [ $1 = 0 ]; then
|
||||||
|
/usr/sbin/alternatives --remove emacs.etags %{_bindir}/etags.emacs || :
|
||||||
|
fi
|
||||||
|
|
||||||
%posttrans common
|
%posttrans common
|
||||||
/usr/sbin/alternatives --install %{_bindir}/etags emacs.etags %{_bindir}/etags.emacs 80 \
|
/usr/sbin/alternatives --install %{_bindir}/etags emacs.etags %{_bindir}/etags.emacs 80 \
|
||||||
--slave %{_mandir}/man1/etags.1.gz emacs.etags.man %{_mandir}/man1/etags.emacs.1.gz || :
|
--slave %{_mandir}/man1/etags.1.gz emacs.etags.man %{_mandir}/man1/etags.emacs.1.gz || :
|
||||||
|
|
||||||
%files -f pgtk-eln-filelist -f pgtk-dirs
|
%files -f pgtk-eln-filelist -f pgtk-dirs
|
||||||
%{_bindir}/emacs-%{version}
|
%{_bindir}/emacs-%{version}-pgtk
|
||||||
%attr(0755,-,-) %ghost %{_bindir}/emacs
|
%attr(0755,-,-) %ghost %{_bindir}/emacs
|
||||||
%{_datadir}/glib-2.0/schemas/org.gnu.emacs.defaults.gschema.xml
|
%{_datadir}/glib-2.0/schemas/org.gnu.emacs.defaults.gschema.xml
|
||||||
|
|
||||||
%files gtk+x11 -f gtk+x11-eln-filelist -f gtk+x11-dirs
|
%files gtk+x11 -f gtk+x11-eln-filelist -f gtk+x11-dirs
|
||||||
%{_bindir}/emacs-%{version}-gtk+x11
|
|
||||||
%attr(0755,-,-) %ghost %{_bindir}/emacs
|
%attr(0755,-,-) %ghost %{_bindir}/emacs
|
||||||
%attr(0755,-,-) %ghost %{_bindir}/emacs-gtk+x11
|
%{_bindir}/emacs-%{version}-gtk+x11
|
||||||
|
%{_bindir}/emacs-gtk+x11
|
||||||
|
|
||||||
%files lucid -f lucid-eln-filelist -f lucid-dirs
|
%files lucid -f lucid-eln-filelist -f lucid-dirs
|
||||||
%{_bindir}/emacs-%{version}-lucid
|
|
||||||
%attr(0755,-,-) %ghost %{_bindir}/emacs
|
%attr(0755,-,-) %ghost %{_bindir}/emacs
|
||||||
%attr(0755,-,-) %ghost %{_bindir}/emacs-lucid
|
%{_bindir}/emacs-%{version}-lucid
|
||||||
|
%{_bindir}/emacs-lucid
|
||||||
|
|
||||||
%files nw -f nw-eln-filelist -f nw-dirs
|
%files nw -f nw-eln-filelist -f nw-dirs
|
||||||
|
%attr(0755,-,-) %ghost %{_bindir}/emacs
|
||||||
%{_bindir}/emacs-%{version}-nox
|
%{_bindir}/emacs-%{version}-nox
|
||||||
%{_bindir}/emacs-%{version}-nw
|
%{_bindir}/emacs-%{version}-nw
|
||||||
%{_bindir}/emacs-nox
|
%{_bindir}/emacs-nox
|
||||||
%attr(0755,-,-) %ghost %{_bindir}/emacs
|
%{_bindir}/emacs-nw
|
||||||
%attr(0755,-,-) %ghost %{_bindir}/emacs-nw
|
|
||||||
|
|
||||||
%files -n emacsclient
|
%files -n emacsclient
|
||||||
%license etc/COPYING
|
%license etc/COPYING
|
||||||
|
Loading…
x
Reference in New Issue
Block a user