Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

trim EESSI set for gentoo overlay #172

Open
2 tasks
trz42 opened this issue Mar 31, 2023 · 4 comments
Open
2 tasks

trim EESSI set for gentoo overlay #172

trz42 opened this issue Mar 31, 2023 · 4 comments

Comments

@trz42
Copy link
Contributor

trz42 commented Mar 31, 2023

Goal: get a more minimal compat layer
Ideas/Tasks

  • remove build dependencies (Go, make, ninja, ...)
  • add command suggested by Bart
@bedroge
Copy link
Collaborator

bedroge commented Mar 31, 2023

Also see: #139.

Relevant Slack message from Bart:

At the meeting last week there was some talk about the compatibility layer having too many packages. I looked a bit into stacked prefix (two prefixes, where the second depends on the first) but that wasn’t quite what I was looking for. What you can do after a fresh bootstrap is to run
emerge --depclean --with-bdeps=n
this will remove around 100 packages including Meson, Ninja, Rust, but also the autotools.
So here was my exercise in minimalism:

DEPS_TO_FILTER=Autoconf,Automake,Autotools,binutils,bzip2,cURL,DBus,flex,gettext,gperf,help2man,intltool,libreadline,libtool,Lua,M4,makeinfo,ncurses,util-linux,XZ,zlib
of those the minimal build-depend stripped Gentoo prefix with Lmod and EB has these:
DEPS_TO_FILTER=binutils,bzip2,cURL,libreadline,Lua,ncurses,util-linux,XZ,zlib
So that’s one extreme right there. Not sure what you want to take from that; certainly removing the build-deps but adding the things you want to keep explicitly is an option?

@trz42 trz42 added this to the eessi-2023.04 milestone Mar 31, 2023
@bedroge
Copy link
Collaborator

bedroge commented Apr 11, 2023

And another relevant message from Guilherme:

My recommendation as long time Gentoo user (and what I do myself in my own system) is to emerge what you want as usual, emerge temporary things with emerge --oneshot, then at the very end just run emerge --clean to remove temporary stuff and build dependencies. I wouldn't go unmerging stuff from the @System set, as that may get you compat layer into a broken state. (edited)

If you really want to drop stuff that we have in the system set, then you may want to create your own profiles, as that will give you such control, but I think you should only do that as last resort.

You can safely remove stuff from the world set, though, then run emerge --clean to get rid of unnecessary stuff. To keep the system up to date, I run emerge ‐NDuavt world

You can also try --keep-going to let emerge do the most it can, even when one or more packages fail to build

@boegel
Copy link
Contributor

boegel commented Jun 5, 2023

@trz42 @bedroge Can this be closed (for 2023.04)?

@bedroge
Copy link
Collaborator

bedroge commented Jun 6, 2023

@trz42 @bedroge Can this be closed (for 2023.04)?

For 2023.04 we have just removed a given list of packages from the resulting compatibility layer. Perhaps it's still good to investigate if we could/should trim it even more by running for instance the command that Bart suggested (which will remove quite a lot of packages).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants