123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198 |
- %if ( 0%{?rhel} && 0%{?rhel} < 7 ) || ( 0%{?centos} && 0%{?centos} < 7 )
- %global pspkg procps
- %else
- %global pspkg procps-ng
- %endif
-
- Name: __MKIT_PROJ_PKGNAME__
- Version: __MKIT_PROJ_VERSION__
- Release: 1%{?dist}
- Summary: __MKIT_PROJ_NAME__ - __MKIT_PROJ_TAGLINE__
- License: LGPLv2
- URL: __MKIT_PROJ_VCS_BROWSER__
- Source0: %{name}-%{version}.tar.gz
- BuildArch: noarch
- BuildRequires: perl
- BuildRequires: %{pspkg}
-
- Requires: %{pspkg}
- Requires: shellfu-bash-sfdoc
- %description
- Shellfu is an attempt to add modularity to your shell scripts.
-
- With Shellfu you can develop your shell modules separately from your
- scripts, and test, use, explore or study them without need to be aware
- of details such as where the actual files are placed.
-
- Shellfu is mostly intended for cases when there's need for non-trivial
- amount of reliable body of shell scripts, and access to advanced modular
- languages such as Python or Perl is limited.
-
- This sub-package contains only the Shellfu management system but not
- actual modules. Use this if you want to write all modules yourself.
-
- %package bash
- Summary: Bash-specific base
- Requires: shellfu
- %description bash
- This sub-package contains Bash-specific parts of library infrastructure.
- Shellfu modules written for Bash should depend on this.
-
- %package bash-inigrep
- Summary: INI grepping Shellfu/Bash module
- Requires: perl
- Requires: shellfu-bash
- Requires: shellfu-bash-pretty
- Obsoletes: shellfu-bash-extras < 0.10
- %description bash-inigrep
- This sub-package contains 'inigrep', Shellfu/Bash module for reading
- INI-like files.
-
- %package bash-pretty
- Summary: Logging Shellfu/Bash module
- Requires: shellfu-bash
- Requires: shellfu-sh-exit
- Requires: shellfu-sh-termcolors
- Obsoletes: shellfu-bash-core < 0.10
- %description bash-pretty
- This sub-package contains 'pretty', universal Shellfu logging module.
-
- %package bash-sfdoc
- Summary: Shellfu/Bash module to export docs from Shellfu modules
- Requires: perl
- Requires: shellfu-bash
- Requires: shellfu-bash-pretty
- %description bash-sfdoc
- This sub-package contains Shellfu/Bash module to export documentation
- from other Shellfu modules that follow Shellfu coding style.
-
- %package bash-sfpi
- Summary: Shellfu/Bash plugin interface
- Requires: shellfu-bash
- Requires: shellfu-bash-sfdoc
- Requires: shellfu-bash-pretty
- %description bash-sfpi
- This sub-package contains Shellfu/Bash module to help manage, discover,
- select and load other Shellfu modules as plugins.
-
- %package devel
- Summary: Essential developer tools
- Requires: shellfu-bash-pretty
- %description devel
- This sub-package contains tools useful mostly for development of shellfu
- scripts.
-
- %package sh
- Summary: Generic base
- Requires: shellfu
- %description sh
- This sub-package contains POSIX-oriented parts of library infrastructure.
- Generic Shellfu modules aiming for POSIX compatibility should depend on this.
-
- %package sh-charmenu
- Summary: Shellfu/sh module for building interactive terminal menus
- Requires: shellfu-sh
- Obsoletes: shellfu-bash-extras < 0.10
- %description sh-charmenu
- This sub-package contains 'charmenu', a Shellfu/sh module for building
- interactive terminal menus
-
- %package sh-exit
- Summary: Shellfu/sh module for standard exit statuses
- Requires: shellfu-sh
- Obsoletes: shellfu-bash-core < 0.10
- %description sh-exit
- This sub-package contains 'exit', Shellfu module containing functions
- and variables for standard exit statuses.
-
- %package sh-isa
- Summary: Shellfu/sh module with validation helpers
- Requires: shellfu-sh
- %description sh-isa
- This sub-package contains 'isa', Shellfu module containing few
- value validation helpers.
-
- %package sh-mdfmt
- Summary: Markdown formatting helper
- Requires: shellfu-sh
- %description sh-mdfmt
- This sub-package contains Markdown formatting helper, a function that
- helps you generate Markdown paragraph elements from your shell scripts.
-
- %package sh-termcolors
- Summary: Shellfu/sh module for terminal color names
- Requires: shellfu-sh
- Obsoletes: shellfu-bash-core < 0.10
- %description sh-termcolors
- This sub-package contains 'termcolors', Shellfu module containing most
- common ANSI color names.
-
- %prep
- %setup -q
-
- %build
- make %{?_smp_mflags} PREFIX=/usr
-
- %install
- %make_install PREFIX=/usr
-
- %check
- make test \
- PATH=%{buildroot}/%{_bindir}:$PATH \
- SHELLFU_INCLUDE=%{buildroot}/%{_datadir}/%{name}/include \
- SHELLFU_DIR=%{buildroot}/%{_datadir}/%{name}
-
- %files
- %config %{_sysconfdir}/bash_completion.d/%{name}.bash
- %dir %{_datadir}/%{name}
- %dir %{_docdir}/%{name}
- %doc %{_docdir}/%{name}/LICENSE.md
- %doc %{_docdir}/%{name}/README.md
- %{_bindir}/sfdoc
- %{_bindir}/sfpath
- %{_datadir}/%{name}/shellfu.sh
-
- %files bash
- %dir %{_datadir}/%{name}/include-bash
-
- %files bash-inigrep
- %{_datadir}/%{name}/include-bash/inigrep.sh
-
- %files bash-pretty
- %{_datadir}/%{name}/include-bash/_pretty_color.sh
- %{_datadir}/%{name}/include-bash/_pretty_html.sh
- %{_datadir}/%{name}/include-bash/_pretty_journald.sh
- %{_datadir}/%{name}/include-bash/_pretty_notify.sh
- %{_datadir}/%{name}/include-bash/_pretty_plain.sh
- %{_datadir}/%{name}/include-bash/pretty.sh
-
- %files bash-sfdoc
- %{_datadir}/%{name}/include-bash/sfdoc.sh
-
- %files bash-sfpi
- %{_datadir}/%{name}/include-bash/sfpi.sh
-
- %files devel
- %{_bindir}/sfembed
-
- %files sh
- %dir %{_datadir}/%{name}/include-sh
-
- %files sh-charmenu
- %{_datadir}/%{name}/include-sh/charmenu.sh
-
- %files sh-exit
- %{_datadir}/%{name}/include-sh/exit.sh
-
- %files sh-isa
- %{_datadir}/%{name}/include-sh/isa.sh
-
- %files sh-mdfmt
- %{_datadir}/%{name}/include-sh/mdfmt.sh
-
- %files sh-termcolors
- %{_datadir}/%{name}/include-sh/termcolors.sh
-
- %changelog
-
- # specfile built with MKit __MKIT_SELF_VERSION__
|