I just got it to work with portage so I can emerge it like all the other programs. Here’s a screenshot. On left the obligatory fastfetch and then Firefox-bin on to on right and on bottom you can see the emerge --pretend in action.
You need these files if you like to make a Gentoo local layer where to install bare:
/var/db/repos/localrepo/metadata/layout.conf:
masters = gentoo
thin-manifests = true
/var/db/repos/localrepo/profiles/catecories
x11-wm
/var/db/repos/localrepo/profiles/repo_name
localrepo
/var/db/repos/localrepo/x11-wm/bare/bare-9999.ebuild
EAPI=8
inherit git-r3 toolchain-funcs
DESCRIPTION=“Minimalistic X Window Manager”
HOMEPAGE=“https://codeberg.org/toromirvana/bare”
EGIT_REPO_URI=“https://codeberg.org/toromirvana/bare.git”
LICENSE=“MIT”
SLOT=“0”
KEYWORDS=“~amd64”
DEPEND="
x11-libs/libX11
x11-terms/st
x11-misc/dmenu
"
RDEPEND=“${DEPEND}”
src_compile() {
emake TARGET=bare SRC=bare.c
}
src_install() {
dobin bare
}
then add amd64 to your package-accept keywords:
cat /etc/portage/package.accept_keywords/bare
x11-wm/bare ~amd64
and cd to your bare ebuild and then run
sudo ebuild bare-9999.ebuild manifest
sudo emerge x11-wm/bare::localrepo
One question, how do I scroll on the terminal window?
EDIT: I re-emerged the base with my custom config.h but it didn’t add my WIN-f to open firefox-bin. Can you check my custom file:
~/bare-src $ ls
bare.c config.h custom-config.patch LICENSE Makefile README.md
pete@petevm ~/bare-src $ cat custom-config.patch
diff --git a/config.h b/config.h
index 496228c..a2ebfd0 100644
— a/config.h
+++ b/config.h
@@ -5,18 +5,20 @@
#include <X11/keysym.h>
// visual aesthetics
-#define BORDER_WIDTH 1
+#define BORDER_WIDTH 2
#define COLOR_FOCUSED 0x444444
// Default Applications (pretty self explanitory.)
const char* terminal
= { “st”, NULL };
const char* launcher
= { “dmenu_run”, NULL };
+const char* browser
= { “firefox-bin”, NULL };
#define MODKEY Mod4Mask
typedef enum {
CMD_TERM,
CMD_LAUNCH,
CMD_BROWSE,
WS_1, WS_2, WS_3,
MOV_WS_1, MOV_WS_2, MOV_WS_3,
FOCUS_NEXT, FOCUS_PREV,
@@ -37,6 +39,7 @@ typedef struct {
static const KeyBind keys
= {
{ MODKEY, XK_Return, CMD_TERM },
{ MODKEY, XK_p, CMD_LAUNCH },
{ MODKEY, XK_f, CMD_BROWSE },
{ MODKEY, XK_j, FOCUS_NEXT },
{ MODKEY, XK_k, FOCUS_PREV },
{ MODKEY, XK_h, CMD_SHRINK },
and this is how I modified the ebuild adding these between RDEPEND and src_compile
src_prepare() {
default
eapply “${FILESDIR}/custom-config.patch”
}