# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 inherit flag-o-matic if [[ ${PV} == "9999" ]] ; then EGIT_REPO_URI="https://git.savannah.gnu.org/git/nano.git" inherit git-r3 autotools else MY_P="${PN}-${PV/_}" SRC_URI="https://www.nano-editor.org/dist/v${PV:0:1}/${MY_P}.tar.xz" KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" fi DESCRIPTION="GNU GPL'd Pico clone with more functionality" HOMEPAGE="https://www.nano-editor.org/ https://wiki.gentoo.org/wiki/Nano/Basics_Guide" LICENSE="GPL-3" SLOT="0" IUSE="debug justify magic minimal ncurses nls +spell +split-usr static unicode nanorc" LIB_DEPEND=" >=sys-libs/ncurses-5.9-r1:=[unicode(+)?] sys-libs/ncurses:=[static-libs(+)] magic? ( sys-apps/file[static-libs(+)] ) nls? ( virtual/libintl )" RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )" DEPEND="${RDEPEND} static? ( ${LIB_DEPEND} )" BDEPEND=" nls? ( sys-devel/gettext ) virtual/pkgconfig " REQUIRED_USE=" magic? ( !minimal ) " src_prepare() { default if [[ ${PV} == "9999" ]] ; then eautoreconf fi } src_configure() { use static && append-ldflags -static local myconf=( --bindir="${EPREFIX}"/bin $(use_enable !minimal multibuffer) $(use_enable !minimal nanorc) $(use_enable magic libmagic) $(use_enable spell speller) $(use_enable justify) $(use_enable debug) $(use_enable nls) $(use_enable unicode utf8) $(use_enable minimal tiny) ) econf "${myconf[@]}" } src_install() { default dodoc doc/sample.nanorc dodoc doc/faq.html insinto /etc newins doc/sample.nanorc nanorc if ! use minimal ; then # Enable colorization by default. awk -i inplace 'NR==1,/^# include /{sub(/^# include .\//,"include \"/")} 1' "${ED}"/etc/nanorc || die # Enable more basic usability settings if use nanorc ; then awk -i inplace 'sub(/^# set autoindent/,"set autoindent") 1' "${ED}"/etc/nanorc awk -i inplace 'sub(/^# set tabsize 8/,"set tabsize 4") 1' "${ED}"/etc/nanorc awk -i inplace 'sub(/^# set positionlog/,"set positionlog") 1' "${ED}"/etc/nanorc awk -i inplace 'sub(/^# set smarthome/,"set smarthome") 1' "${ED}"/etc/nanorc awk -i inplace 'sub(/^# set nohelp/,"set nohelp") 1' "${ED}"/etc/nanorc awk -i inplace 'sub(/^# set locking/,"set locking") 1' "${ED}"/etc/nanorc awk -i inplace 'sub(/^# set minibar/,"set minibar") 1' "${ED}"/etc/nanorc awk -i inplace 'sub(/^# set constantshow/,"set constantshow") 1' "${ED}"/etc/nanorc awk -i inplace 'sub(/^# set stateflags/,"set stateflags") 1' "${ED}"/etc/nanorc fi # Since nano-5.0 these are no longer being "enabled" by default # (bug #736848) local rcdir="/usr/share/nano" mv "${ED}"${rcdir}/extra/* "${ED}"/${rcdir}/ || die rmdir "${ED}"${rcdir}/extra || die insinto "${rcdir}" doins "${FILESDIR}/gentoo.nanorc" fi use split-usr && dosym ../../bin/nano /usr/bin/nano } pkg_postrm() { local e [[ -n ${REPLACED_BY_VERSION} ]] && return e=$(unset EDITOR; . "${EROOT}"/etc/profile &>/dev/null; echo "${EDITOR}") if [[ ${e##*/} == nano ]]; then ewarn "The EDITOR variable is still set to ${e}." ewarn "You can update it with \"eselect editor\"." fi if use nanorc ; then ewarn "Nano will not show the help bar, but it can be toggled with Alt-x" fi }