Package init
This commit is contained in:
commit
a71fa0cdf6
34
dotzshrc
Normal file
34
dotzshrc
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
#
|
||||||
|
# .zshrc is sourced in interactive shells.
|
||||||
|
# It should contain commands to set up aliases,
|
||||||
|
# functions, options, key bindings, etc.
|
||||||
|
#
|
||||||
|
|
||||||
|
autoload -U compinit
|
||||||
|
compinit
|
||||||
|
|
||||||
|
#allow tab completion in the middle of a word
|
||||||
|
setopt COMPLETE_IN_WORD
|
||||||
|
|
||||||
|
## keep background processes at full speed
|
||||||
|
#setopt NOBGNICE
|
||||||
|
## restart running processes on exit
|
||||||
|
#setopt HUP
|
||||||
|
|
||||||
|
## history
|
||||||
|
#setopt APPEND_HISTORY
|
||||||
|
## for sharing history between zsh processes
|
||||||
|
#setopt INC_APPEND_HISTORY
|
||||||
|
#setopt SHARE_HISTORY
|
||||||
|
|
||||||
|
## never ever beep ever
|
||||||
|
#setopt NO_BEEP
|
||||||
|
|
||||||
|
## automatically decide when to page a list of completions
|
||||||
|
#LISTMAX=0
|
||||||
|
|
||||||
|
## disable mail checking
|
||||||
|
#MAILCHECK=0
|
||||||
|
|
||||||
|
# autoload -U colors
|
||||||
|
#colors
|
||||||
8
zlogin.rhs
Normal file
8
zlogin.rhs
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
#
|
||||||
|
# /etc/zlogin and .zlogin are sourced in login shells. It should
|
||||||
|
# contain commands that should be executed only in
|
||||||
|
# login shells. It should be used to set the terminal
|
||||||
|
# type and run a series of external commands (fortune,
|
||||||
|
# msgs, from, etc).
|
||||||
|
#
|
||||||
|
|
||||||
7
zlogout.rhs
Normal file
7
zlogout.rhs
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
#
|
||||||
|
#
|
||||||
|
# /etc/zlogout and ~/.zlogout are run when an interactive session ends
|
||||||
|
#
|
||||||
|
#
|
||||||
|
|
||||||
|
clear
|
||||||
22
zprofile.rhs
Normal file
22
zprofile.rhs
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
#
|
||||||
|
# /etc/zprofile and ~/.zprofile are run for login shells
|
||||||
|
#
|
||||||
|
|
||||||
|
PATH="$PATH:$HOME/bin"
|
||||||
|
export PATH
|
||||||
|
|
||||||
|
_src_etc_profile()
|
||||||
|
{
|
||||||
|
# Make /etc/profile happier, and have possible ~/.zshenv options like
|
||||||
|
# NOMATCH ignored.
|
||||||
|
#
|
||||||
|
emulate -L ksh
|
||||||
|
|
||||||
|
# source profile
|
||||||
|
if [ -f /etc/profile ]; then
|
||||||
|
source /etc/profile
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
_src_etc_profile
|
||||||
|
|
||||||
|
unset -f _src_etc_profile
|
||||||
BIN
zsh-5.6.2.tar.xz
Normal file
BIN
zsh-5.6.2.tar.xz
Normal file
Binary file not shown.
131
zsh.spec
Normal file
131
zsh.spec
Normal file
@ -0,0 +1,131 @@
|
|||||||
|
%define _bindir /bin
|
||||||
|
|
||||||
|
Name: zsh
|
||||||
|
Version: 5.6.2
|
||||||
|
Release: 2
|
||||||
|
Summary: A shell designed for interactive use
|
||||||
|
License: MIT
|
||||||
|
URL: http://zsh.sourceforge.net
|
||||||
|
Source0: https://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.xz
|
||||||
|
|
||||||
|
# Source1 to Source6 get from fedora
|
||||||
|
Source1: zlogin.rhs
|
||||||
|
Source2: zlogout.rhs
|
||||||
|
Source3: zprofile.rhs
|
||||||
|
Source4: zshrc.rhs
|
||||||
|
Source5: zshenv.rhs
|
||||||
|
Source6: dotzshrc
|
||||||
|
|
||||||
|
BuildRequires: autoconf coreutils gawk gdbm-devel libcap-devel
|
||||||
|
BuildRequires: ncurses-devel pcre-devel sed texi2html texinfo hostname
|
||||||
|
|
||||||
|
Requires(post): info grep
|
||||||
|
Requires(preun): info
|
||||||
|
Requires(postun): coreutils grep
|
||||||
|
|
||||||
|
Provides: /bin/zsh
|
||||||
|
|
||||||
|
%description
|
||||||
|
The zsh is a shell designed for interactive use, and it is also a powerful scripting language. Many of
|
||||||
|
the useful features of bash, ksh, and tcsh were incorporated into zsh. It can match files by file extension
|
||||||
|
without running an external program, share command history with any shell, and more.
|
||||||
|
|
||||||
|
%package help
|
||||||
|
Summary: zsh shell manual in html format
|
||||||
|
BuildArch: noarch
|
||||||
|
|
||||||
|
Provides: zsh-html
|
||||||
|
Obsoletes: zsh-html
|
||||||
|
|
||||||
|
%description help
|
||||||
|
This package contains the zsh manual in html format.
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%autosetup -p1
|
||||||
|
autoreconf -fiv
|
||||||
|
|
||||||
|
sed -e 's|^\.NOTPARALLEL|#.NOTPARALLEL|' -i 'Config/defs.mk.in'
|
||||||
|
|
||||||
|
%build
|
||||||
|
%undefine _strict_symbol_defs_build
|
||||||
|
|
||||||
|
export LIBLDFLAGS='-z lazy'
|
||||||
|
|
||||||
|
%configure --enable-etcdir=%{_sysconfdir} --with-tcsetpgrp --enable-maildir-support --enable-pcre
|
||||||
|
|
||||||
|
make -C Src headers
|
||||||
|
make -C Src -f Makemod zsh{path,xmod}s.h version.h
|
||||||
|
%make_build all html
|
||||||
|
|
||||||
|
%check
|
||||||
|
make check
|
||||||
|
|
||||||
|
%install
|
||||||
|
%make_install install.info fndir=%{_datadir}/%{name}/%{version}/functions sitefndir=%{_datadir}/%{name}/site-functions \
|
||||||
|
scriptdir=%{_datadir}/%{name}/%{version}/scripts sitescriptdir=%{_datadir}/%{name}/scripts \
|
||||||
|
runhelpdir=%{_datadir}/%{name}/%{version}/help
|
||||||
|
|
||||||
|
rm -f $RPM_BUILD_ROOT%{_bindir}/zsh-%{version}
|
||||||
|
rm -f $RPM_BUILD_ROOT%{_infodir}/dir
|
||||||
|
|
||||||
|
install -d ${RPM_BUILD_ROOT}%{_sysconfdir}
|
||||||
|
for i in %{SOURCE1} %{SOURCE2} %{SOURCE3} %{SOURCE4} %{SOURCE5}; do
|
||||||
|
install -m 644 $i $RPM_BUILD_ROOT%{_sysconfdir}/"$(basename $i .rhs)"
|
||||||
|
done
|
||||||
|
|
||||||
|
install -d $RPM_BUILD_ROOT%{_sysconfdir}/skel
|
||||||
|
install -m 644 %{SOURCE6} $RPM_BUILD_ROOT%{_sysconfdir}/skel/.zshrc
|
||||||
|
|
||||||
|
for i in checkmail harden run-help zcalc zkbd; do
|
||||||
|
sed -i -e 's!/usr/local/bin/zsh!%{_bindir}/zsh!' $RPM_BUILD_ROOT%{_datadir}/zsh/%{version}/functions/$i
|
||||||
|
chmod +x $RPM_BUILD_ROOT%{_datadir}/zsh/%{version}/functions/$i
|
||||||
|
done
|
||||||
|
|
||||||
|
%post
|
||||||
|
if [ "$1" = 1 ]; then
|
||||||
|
if [ ! -f %{_sysconfdir}/shells ] ; then
|
||||||
|
echo "%{_bindir}/%{name}" > %{_sysconfdir}/shells
|
||||||
|
echo "/bin/%{name}" >> %{_sysconfdir}/shells
|
||||||
|
else
|
||||||
|
grep -q "^%{_bindir}/%{name}$" %{_sysconfdir}/shells || echo "%{_bindir}/%{name}" >> %{_sysconfdir}/shells
|
||||||
|
grep -q "^/bin/%{name}$" %{_sysconfdir}/shells || echo "/bin/%{name}" >> %{_sysconfdir}/shells
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f %{_infodir}/zsh.info.gz ]; then
|
||||||
|
/sbin/install-info %{_infodir}/zsh.info.gz %{_infodir}/dir \
|
||||||
|
--entry="* zsh: (zsh). An enhanced bourne shell."
|
||||||
|
fi
|
||||||
|
|
||||||
|
%preun
|
||||||
|
if [ "$1" = 0 ] ; then
|
||||||
|
if [ -f %{_infodir}/zsh.info.gz ]; then
|
||||||
|
/sbin/install-info --delete %{_infodir}/zsh.info.gz %{_infodir}/dir \
|
||||||
|
--entry="* zsh: (zsh). An enhanced bourne shell."
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
%postun
|
||||||
|
if [ "$1" = 0 ] && [ -f %{_sysconfdir}/shells ] ; then
|
||||||
|
sed -i '\!^%{_bindir}/%{name}$!d' %{_sysconfdir}/shells
|
||||||
|
sed -i '\!^/bin/%{name}$!d' %{_sysconfdir}/shells
|
||||||
|
fi
|
||||||
|
|
||||||
|
%files
|
||||||
|
%doc README LICENCE Etc/* FEATURES MACHINES NEWS
|
||||||
|
%attr(755,root,root) %{_bindir}/zsh
|
||||||
|
|
||||||
|
%{_libdir}/zsh
|
||||||
|
|
||||||
|
%config(noreplace) %{_sysconfdir}/skel/.z*
|
||||||
|
%config(noreplace) %{_sysconfdir}/z*
|
||||||
|
|
||||||
|
%files help
|
||||||
|
%doc Doc/*.html
|
||||||
|
%{_mandir}/*/*
|
||||||
|
%{_infodir}/*
|
||||||
|
%{_datadir}/zsh
|
||||||
|
|
||||||
|
%changelog
|
||||||
|
* Wed Sep 18 2019 dongjian <dongjian13@huawei.com> - 5.6.2-2
|
||||||
|
- modify summary
|
||||||
14
zshenv.rhs
Normal file
14
zshenv.rhs
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
# /etc/zsh/zshenv: system-wide .zshenv file for zsh(1).
|
||||||
|
#
|
||||||
|
# This file is sourced on all invocations of the shell.
|
||||||
|
# If the -f flag is present or if the NO_RCS option is
|
||||||
|
# set within this file, all other initialization files
|
||||||
|
# are skipped.
|
||||||
|
#
|
||||||
|
# This file should contain commands to set the command
|
||||||
|
# search path, plus other important environment variables.
|
||||||
|
# This file should not contain commands that produce
|
||||||
|
# output or assume the shell is attached to a tty.
|
||||||
|
#
|
||||||
|
# Global Order: zshenv, zprofile, zshrc, zlogin
|
||||||
|
|
||||||
50
zshrc.rhs
Normal file
50
zshrc.rhs
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
#
|
||||||
|
# /etc/zshrc is sourced in interactive shells. It
|
||||||
|
# should contain commands to set up aliases, functions,
|
||||||
|
# options, key bindings, etc.
|
||||||
|
#
|
||||||
|
|
||||||
|
## shell functions
|
||||||
|
#setenv() { export $1=$2 } # csh compatibility
|
||||||
|
|
||||||
|
# Set prompts
|
||||||
|
PROMPT='[%n@%m]%~%# ' # default prompt
|
||||||
|
#RPROMPT=' %~' # prompt for right side of screen
|
||||||
|
|
||||||
|
# bindkey -v # vi key bindings
|
||||||
|
# bindkey -e # emacs key bindings
|
||||||
|
bindkey ' ' magic-space # also do history expansion on space
|
||||||
|
|
||||||
|
# Provide pathmunge for /etc/profile.d scripts
|
||||||
|
pathmunge()
|
||||||
|
{
|
||||||
|
if ! echo $PATH | /bin/grep -qE "(^|:)$1($|:)" ; then
|
||||||
|
if [ "$2" = "after" ] ; then
|
||||||
|
PATH=$PATH:$1
|
||||||
|
else
|
||||||
|
PATH=$1:$PATH
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
_src_etc_profile_d()
|
||||||
|
{
|
||||||
|
# Make the *.sh things happier, and have possible ~/.zshenv options like
|
||||||
|
# NOMATCH ignored.
|
||||||
|
emulate -L ksh
|
||||||
|
|
||||||
|
|
||||||
|
# from bashrc, with zsh fixes
|
||||||
|
if [[ ! -o login ]]; then # We're not a login shell
|
||||||
|
for i in /etc/profile.d/*.sh; do
|
||||||
|
if [ -r "$i" ]; then
|
||||||
|
. $i
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
unset i
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
_src_etc_profile_d
|
||||||
|
|
||||||
|
unset -f pathmunge _src_etc_profile_d
|
||||||
|
|
||||||
Loading…
x
Reference in New Issue
Block a user