Obsidian-Studios, Inc. funtoo/gentoo overlay (a.k.a wltjr's overlay)
This overlay contains many things that should be in Gentoo but are not. A majority of the ebuilds are not in Gentoo's respository. Some are corrections or modifications to versions in tree. Others are newer versions and/or slot changes. This overlay replaces some entire categories like dev-java/*. In addition to all Enlightment/EFL applications.
Ebuilds in this overlay are to be current and latest available versions, including working live ebuilds. All ebuilds in this overlay should be production quality and many are used in production, though some are not. Contributions are welcome, but for the present time will only be accepted on a limited basis.
This is the most comprehensive Java and Enlightenment repository!
Please read subsequent sections before usage. You may need to force pull from this overlay at times. That will be kept to a minimum and at some point stop entirely. But does happen from time to time.
Please file issues for any problems encountered. They will be addressed ASAP!
This repo is primarily amd64, no other archs are supported or tested, but can be added upon request.
Credits and Copyright
Original ebuilds in this overlay are Copyright Obsidian-Studios, Inc. They can be used else where, but the copyright must be respected and preserved. It can be relocated, and/or credit mentioned to original source, such as
# Copyright 1999-2019 Some Other Entity # Distributed under the terms of the GNU General Public License v2 # # Original work Copyright 2019 Obsidian-Studios, Inc. # Ebuild written by "William L. Thomson Jr." <[email protected]> # <link to ebuild in this repo>
This is the most comprehensive Java ebuild repository! This overlay is maintained by a former Gentoo Java Developer. No other has a better understanding of Java on Gentoo than the maintainer of this overlay, period!
Java is heavily neglected on Gentoo and has been for over a decade. Of the current Gentoo Java team, only 1 is a Java programmer by trade. The rest do not run Java on Gentoo or do anything with Java professionally or do anything with Java as a hobby. Despite these facts current Gentoo Java Developers insist on handling Java in a particular way. Such that they are unable to maintain the vast majority of packages. It is just a hobby to them. Nothing relating to their profession or how they make a living. They have only stood in the way of progress for to long. The result is this overlay, bypassing their stagnation and opinions. This overlay moves Java on Gentoo forward faster!
Java packages in this respository are all or nothing. You MUST run "@world" update when first adding this overlay. Failure to do such will result in various preventable build issues. Please keep that in mind.
This repository replaces entirely dev-java/*::gentoo, packages in Gentoo's main repository. The core java-config has been replaced with jem. Along with updating eclasses in preparation for new eclasses, entire re-writes.
We have added a package to mask dev-java/*::gentoo . Since masking via overlay is not possible at this time. It is recommended to merge that package and unmask any remaining pieces as needed/required, outside of dev-java/.
Please do not mix Java packages from Gentoo's main repository with this repository. You will experience a varity of issues that will not be addressed! This repository replaces entirely Java on Gentoo!!!
This repository requires Java >= 11 as your system vm now! We are no longer supporting any JDK < 11. Most things have been fixed for Java 11-14. There are few packages remaining that need to be tweaked or dialed in for Java 11+. We recommend Java 11 or 13 for production and Java 14 for development.
Please report issues for any package that does not build or has runtime issues with any Java versions in this overlay.
This overlay implements a brand new feature of no longer requiring Java versions in ebuilds. Java versions will be based on the version of Java used during build time of any given package. This elimites the need to update versions in ebuilds for newer versions of Java. This also provides means to have all jars built for a specific Java release. Rather than a mixed system with some jars for 6, 7, 8, 9, 10, 11, 12, 13, etc.
If needed this can be overriden globally for all packages in make.conf, or
JAVA_RELEASE to some value. Or adding that to any
ebuild individually as needed. Which is the main intended use. The
global usage is a backup for issues encountered with the new system.
Or to enforce a specific Java release/version across all jars.
This does make building a forward operation. Keep your system/build vm
set to an older version like 11, if running newer like 14+. If you build
under greater than 11, and try to run under 11 without the above you will
have issues. Otherwise moving forward should not require rebuild unless
package has runtime issues. Once you do, you will need to rebuild again if
you revert back to 11 from 11+. Unless you set
building under 11+.
Rebuilding Java packages
Rebuild all installed from dev-java/*
emerge -qv1O $(qlist -IC 'dev-java/*')
Show packages built with a given vm, versions 4-9, add
| wc-l for count
grep -l "MERGE_VM\=.*[4-9]" /usr/share/*/package.env
Setting system/user VM
This overlay has switched to jem from java-config. jem is a drop in replacement for java-config, and has the same syntax and features. jem is used in eclasses in this overlay. This overlay does not use java-config at all, or any related packages.
This repo has full and complete support for Enlightenment Foundation Libraries, Enlightenment desktop, and various EFL applications. E is presently the official desktop being used by Obsidian-Studios, Inc. The ebuilds in this repository are not perfect. They should be some of if not the best quality ones around.
We develop and maintain a few EFL applications:
- Ecrire - General Text Editor
- Entrance - Login/Display Manager
- clipboard - Clipboard module
- Eminence - dark purple theme for E
It is recommended to not mix EFL/Enlightenment packages in Gentoo's repository with this overlay. Those types of issues will likley not be addressed. Therefore we recommend you merge app-portage/mask-gentoo-efl-pkgs to avoid mixing EFL ebuilds in Gentoo's main repository with ones in this overlay.
If you have any issues with EFL packages in this repository. Let us know and we will address them ASAP. We take EFL seriously!
Contributions are welcomed!
Work is underway to package Netbeans from source. Netbeans is presently in a initial usable state. Working on addressing Java 11+ specific isssues. Which Java 11+ fixes may come from upstream and/or go to upstream, or maybe come from YOU! Those are welcome and are general issues not related to ebuilds or how Netbeans is packaged in this overlay. Just general Netbeans porting issues.
There is no ETA at this time when this work will be completed. We do
use Netbeans as our primary IDE for C and Java. Presently using Netbeans
snapshot builds under JDK 11. Till we can package the rest of the
modules we need.
See Netbeans Apache Transition page for details on Oracle's code donations.
Presently we are working on a single master Netbeans ebuild. Which will later have function moved to eclass. Along with USE flags added to reduce dependencies based on wanted features. Eclass function will allow packages to install and register themselves. Presently done via symlinks in main dev-util/netbeans ebuild. Which will becoming mostly a meta ebuild with just depenencies and USE flags.
There are no plans to package Eclipse IDE from source. We are Netbeaners. Due to being dependencies of other applications. Many pieces of Eclipse IDE are packaged from source. Only as needed as part of a dependency chain for other packages.
Contributions are welcome to complete the pieces into a usable Eclipse IDE from source. This will require additional work. Jars are missing various resources, icons, etc. That will be added in a secondary round, as mentioned in a subsequent section. Otherwise this will likely never happen in this repository.
Feel free to open any issues with any package in this repository, problems, version bumps, etc. They will be address ASAP as this is an actively maintained repository.
You can add this overlay to layman as an external git repo.
/etc/portage/repos.conf/os-xtoo.conf [os-xtoo] location = /usr/local/overlay/os-xtoo sync-type = git sync-uri = https://github.com/Obsidian-StudiosInc/os-xtoo.git auto-sync = yes
Ebuilds in this overlay are a constant work in progress. They are added via the following process.
- Ensure it builds and merges
- Ensure dependencies can build and merge against package
- Ensure it runs and is usable, add missing files, set version, etc
- Dial in package to meet upstream package
All ebuilds in this overlay meet at least step 1, and 1a. Step 2 is done when the package is used directly as a library in a project and/or via an existing application that uses it directly. Step 3 is a finalization step.
This repository features a few different profiles that are not based on any profile in Gentoo's main repository. They are stand alone profiles.
Packages in this repository may never be marked stable. This is not meant to say some are not stable. Stability on such a platform can be considered a misnomer at times. Other things are to fast moving to be considered stable and would lag versions from upstream.
Most, not all, Java ebuilds within this repository are presently in use both in development and production. The rest have been used at some point thus in this repository. Everything should be usable, and as stable as provided by upstream.
We run openrc not
Systemd users may experience new issues with packages in this overlay,
All untested under systemd. Not to likely to have problems with other
packages but it is possible.
Please report any issues when running under systemd. Also ideally be willing and available to test any fixes, as we cannot without setting up a Gentoo test env running systemd. Thank you for your understanding and cooperation.