app-misc/clifm: new package, add 1.6, 9999

Signed-off-by: FluffyJay1 <michaelzcyang@gmail.com>
This commit is contained in:
FluffyJay1
2022-07-29 12:17:28 -07:00
parent ec7d10c603
commit 051516132e
4 changed files with 223 additions and 0 deletions

1
app-misc/clifm/Manifest Normal file
View File

@@ -0,0 +1 @@
DIST clifm-1.6.tar.gz 1268633 BLAKE2B de36f0d3bc1c6584471d313f346a9db77f659b4fde41775e45c78066db12aff8bf33a58b3c5d0f9cd43800cf823f0508c2abb5c88ff50a28147aec5c7e7178df SHA512 a8f6b73070779d0d49b41109bee1b418cb6eb4fb1ac8e684cf859e1137336df2655ddfb5107b50674a5380364f572fe47cc72f58c25c4ff6439593b411a5f69e

View File

@@ -0,0 +1,87 @@
# Copyright 2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DESCRIPTION="The command line file manager"
HOMEPAGE="https://github.com/leo-arch/clifm"
inherit flag-o-matic optfeature xdg
if [[ ${PV} == "9999" ]]; then
EGIT_REPO_URI="https://github.com/leo-arch/clifm.git"
inherit git-r3
else
SRC_URI="mirror://sourceforge/${PN}/v${PV}.tar.gz -> ${P}.tar.gz"
# also on github but seems like a worse alternative?
# SRC_URI="https://github.com/leo-arch/clifm/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64"
fi
LICENSE="GPL-2"
SLOT="0"
IUSE="+archives +bleach emoji-icons +highlight icons-in-terminal +lira
nerdfonts +suggestions +tags +trash"
DEPEND="
sys-libs/libcap
sys-libs/readline
sys-apps/acl
sys-apps/file
"
RDEPEND="${DEPEND}"
BDEPEND=""
src_compile() {
use archives || append-cflags "-D_NO_ARCHIVING"
use bleach || append-cflags "-D_NO_BLEACH"
# emoji-icons > nerdfonts > icons-in-terminal
if ! use emoji-icons; then # support for emoji-icons is default
if use nerdfonts; then
append-cflags "-D_NERD"
elif use icons-in-terminal; then
append-cflags "-D_ICONS_IN_TERMINAL"
else
append-cflags "-D_NO_ICONS"
fi
fi
use highlight || append-cflags "-D_NO_HIGHLIGHT"
use lira || append-cflags "-D_NO_LIRA"
use suggestions || append-cflags "-D_NO_SUGGESTIONS"
use tags || append-cflags "-D_NO_TAGS"
use trash || append-cflags "-D_NO_TRASH"
# there is no reason to use -D_NO_MAGIC since we already depend on sys-apps/file
# basically free faster qsort implementation
append-cflags "-D_TOURBIN_QSORT"
# makefile defaults to /usr/local
emake PREFIX="/usr" || die "make failed"
}
src_install() {
docompress -x /usr/share/man # makefile compresses man page
# makefile defaults to /usr/local, and manpages to /usr/man
emake DESTDIR="${D}" PREFIX="/usr" MANDIR="/usr/share/man" install || die "install failed"
einstalldocs
}
pkg_postinst() {
optfeature_header "Install additional optional functionality:"
optfeature "fzf tab completion and more" app-shells/fzf
optfeature "mounting/unmounting support" sys-fs/udisks sys-apps/udevil
optfeature_header "Install optional archiving support:"
optfeature "zstd operations" app-arch/zstd
optfeature "archive extraction/unpacking" app-arch/atool
optfeature "mounting archives" sys-fs/archivemount
optfeature "extracting .iso files" app-arch/p7zip
optfeature "creating .iso files" app-cdr/cdrtools
if use emoji-icons; then
use nerdfonts && ewarn "Warning: Use flag 'nerdfonts' overridden by 'emoji-icons'"
use icons-in-terminal && ewarn "Warning: Use flag 'icons-in-terminal' overridden by 'emoji-icons'"
elif use nerdfonts; then
use icons-in-terminal && ewarn "Warning: Use flag 'icons-in-terminal' overridden by 'nerdfonts'"
fi
}

View File

@@ -0,0 +1,87 @@
# Copyright 2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DESCRIPTION="The command line file manager"
HOMEPAGE="https://github.com/leo-arch/clifm"
inherit flag-o-matic optfeature xdg
if [[ ${PV} == "9999" ]]; then
EGIT_REPO_URI="https://github.com/leo-arch/clifm.git"
inherit git-r3
else
SRC_URI="mirror://sourceforge/${PN}/v${PV}.tar.gz -> ${P}.tar.gz"
# also on github but seems like a worse alternative?
# SRC_URI="https://github.com/leo-arch/clifm/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64"
fi
LICENSE="GPL-2"
SLOT="0"
IUSE="+archives +bleach emoji-icons +highlight icons-in-terminal +lira
nerdfonts +suggestions +tags +trash"
DEPEND="
sys-libs/libcap
sys-libs/readline
sys-apps/acl
sys-apps/file
"
RDEPEND="${DEPEND}"
BDEPEND=""
src_compile() {
use archives || append-cflags "-D_NO_ARCHIVING"
use bleach || append-cflags "-D_NO_BLEACH"
# emoji-icons > nerdfonts > icons-in-terminal
if ! use emoji-icons; then # support for emoji-icons is default
if use nerdfonts; then
append-cflags "-D_NERD"
elif use icons-in-terminal; then
append-cflags "-D_ICONS_IN_TERMINAL"
else
append-cflags "-D_NO_ICONS"
fi
fi
use highlight || append-cflags "-D_NO_HIGHLIGHT"
use lira || append-cflags "-D_NO_LIRA"
use suggestions || append-cflags "-D_NO_SUGGESTIONS"
use tags || append-cflags "-D_NO_TAGS"
use trash || append-cflags "-D_NO_TRASH"
# there is no reason to use -D_NO_MAGIC since we already depend on sys-apps/file
# basically free faster qsort implementation
append-cflags "-D_TOURBIN_QSORT"
# makefile defaults to /usr/local
emake PREFIX="/usr" || die "make failed"
}
src_install() {
docompress -x /usr/share/man # makefile compresses man page
# makefile defaults to /usr/local, and manpages to /usr/man
emake DESTDIR="${D}" PREFIX="/usr" MANDIR="/usr/share/man" install || die "install failed"
einstalldocs
}
pkg_postinst() {
optfeature_header "Install additional optional functionality:"
optfeature "fzf tab completion and more" app-shells/fzf
optfeature "mounting/unmounting support" sys-fs/udisks sys-apps/udevil
optfeature_header "Install optional archiving support:"
optfeature "zstd operations" app-arch/zstd
optfeature "archive extraction/unpacking" app-arch/atool
optfeature "mounting archives" sys-fs/archivemount
optfeature "extracting .iso files" app-arch/p7zip
optfeature "creating .iso files" app-cdr/cdrtools
if use emoji-icons; then
use nerdfonts && ewarn "Warning: Use flag 'nerdfonts' overridden by 'emoji-icons'"
use icons-in-terminal && ewarn "Warning: Use flag 'icons-in-terminal' overridden by 'emoji-icons'"
elif use nerdfonts; then
use icons-in-terminal && ewarn "Warning: Use flag 'icons-in-terminal' overridden by 'nerdfonts'"
fi
}

View File

@@ -0,0 +1,48 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<longdescription>
The command line file manager.
More information about the use flags can be found here:
https://github.com/leo-arch/clifm/blob/master/src/README.md#compiling-features-inout
</longdescription>
<maintainer type="person">
<email>michaelzcyang@gmail.com</email>
<name>FluffyJay1</name>
</maintainer>
<use>
<flag name="archives">
Archive manipulation support
</flag>
<flag name="bleach">
Support for Bleach, the built-in file names cleaner
</flag>
<flag name="emoji-icons">
Enable icons and set them to use the noto-emoji font (see <pkg>media-fonts/noto-emoji</pkg>)
</flag>
<flag name="highlight">
Syntax highlighting support
</flag>
<flag name="icons-in-terminal">
Enable icons and set them to use icons-in-terminal (see https://github.com/sebastiencs/icons-in-terminal)
</flag>
<flag name="lira">
Add Lira as the default built-in resource opener
</flag>
<flag name="nerdfonts">
Enable icons and set them to use NerdFonts
</flag>
<flag name="suggestions">
Autosuggestion support
</flag>
<flag name="tags">
Built-in file tagging system support
</flag>
<flag name="trash">
FreeDesktop compliant trash system support
</flag>
</use>
<upstream>
<remote-id type="github">leo-arch/clifm</remote-id>
</upstream>
</pkgmetadata>