Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
installing multiple desktop environments use flags how to.
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Installing Gentoo
View previous topic :: View next topic  
Author Message
rupeshforu3
n00b
n00b


Joined: 19 Aug 2024
Posts: 44

PostPosted: Thu Aug 22, 2024 2:58 pm    Post subject: installing multiple desktop environments use flags how to. Reply with quote

Hi I am Rupesh from India and I brought a new desktop pc with ryzen 5500GT APU and Asus prime b450 motherboard and I installed gentoo linux successfully and even installed kde plasma desktop environment and gnome but I can't install any other software.

First I downloaded gentoo linux kde live iso and created usb installation media through dd in Arch Linux and booted into live environment and after that I downloaded gentoo stage 3 tar ball and after that I have created 40 gb xfs partition and extracted stage 3 into it.

I installed gentoo linux kernel-bin package and installed kde plasma desktop environment and gnome successfully and even booted into them.

I am the fan of Linux operating system and its desktop environments and so I tried to install other desktop environments like mate through the following command

sudo emerge mate

But I got many errors as use=”elogind systemd X..” required and so I created a new USE entry in /etc/portage/make.conf as

use=”elogind systemd X..”

After that I issued the command ”sudo emerge mate” but no use and I got the same error and so I searched web for elogind and found that it is an alternative to systemd and so I modified the use variable in make.conf as

use=”-elogind systemd X..”

This time I got error as use=”systemd X..” required so I searched web for gentoo mate and found use flags as

base, extra etc.,

So I have entered the following command

sudo echo "mate-base/mate +extra" >> /etc/portage/package.use/mate

Unfortunately I got error as permission denied.

So I created a new file /etc/portage/package.use/mate and entered the following

+extra

After that I have executed the following command

sudo emerge mate

This time I got error as atom +extra in /etc/portage/package.use/mate is unknown.

I removed + infront of extra but this time I got error as atom extra in etc/portage/package.use/mate is unknown.

Finally I issued the following command

USE=”+extra”

After that I issued the following command

sudo emerge mate

Unfortunately I got the same error as before ie.,

use=” systemd ...” required.


There's lot of confusion related to package management in gentoo linux.

I issued the following command to install kuroo

sudo emerge kuroo

I got error as kuroo is masked and so I issued command to unmask and after that I issued the same command as above but still I am getting the same error as kuroo is masked and even I ran the dispatch-conf but no use.

I providing the output of some commands which could be helpful.

Code:

build@gentoo ~ $ sudo eselect profile show
Current /etc/portage/make.profile symlink:
  default/linux/amd64/23.0/desktop
build@gentoo ~ $


Code:

(sys-auth/elogind-246.10-r4:0/0::gentoo, ebuild scheduled for merge) pulled in by
    sys-auth/elogind required by (mate-extra/mate-system-monitor-1.28.0:0/0::gentoo, ebuild scheduled for merge) USE="elogind -systemd -wnck" ABI_X86="(64)"
    sys-auth/elogind required by (mate-extra/mate-screensaver-1.28.0:0/0::gentoo, ebuild scheduled for merge) USE="X elogind libnotify opengl pam -debug -systemd" ABI_X86="(64)"
    sys-auth/elogind required by (mate-base/mate-session-manager-1.28.0-r1:0/0::gentoo, ebuild scheduled for merge) USE="elogind nls -debug -gles2 -gnome-keyring -systemd" ABI_X86="(64)"
    sys-auth/elogind required by (mate-extra/mate-power-manager-1.28.1:0/0::gentoo, ebuild scheduled for merge) USE="applet elogind policykit -keyring -systemd -test" ABI_X86="(64)"


For more information about Blocked Packages, please refer to the following
section of the Gentoo Linux x86 Handbook (architecture is irrelevant):

https://wiki.gentoo.org/wiki/Handbook:X86/Working/Portage#Blocked_packages


The following USE changes are necessary to proceed:
 (see "package.use" in the portage(5) man page for more details)
# required by dev-libs/libayatana-appindicator-0.5.92::gentoo
# required by mate-base/mate-control-center-1.28.0::gentoo
# required by mate-base/mate-1.28.0::gentoo[base]
# required by mate (argument)
>=dev-libs/libdbusmenu-16.04.0-r2 gtk3

Autounmask changes successfully written.

 * IMPORTANT: config file '/etc/portage/package.use/00cpu-flags' needs updating.
 * See the CONFIGURATION FILES and CONFIGURATION FILES UPDATE TOOLS
 * sections of the emerge man page to learn how to update config files.

 * In order to avoid wasting time, backtracking has terminated early
 * due to the above autounmask change(s). The --autounmask-backtrack=y
 * option can be used to force further backtracking, but there is no
 * guarantee that it will produce a solution.
build@gentoo ~ $



Kindly try to suggest how to install mate desktop environment in gentoo.
_________________
Regards,
Rupesh.
Back to top
View user's profile Send private message
pjp
Administrator
Administrator


Joined: 16 Apr 2002
Posts: 20521

PostPosted: Thu Aug 22, 2024 5:28 pm    Post subject: Reply with quote

rupeshforu3 wrote:
I tried to install other desktop environments like mate through the following command

sudo emerge mate

But I got many errors as use=”elogind systemd X..” required and so I created a new USE entry in /etc/portage/make.conf as

use=”elogind systemd X..”

After that I issued the command ”sudo emerge mate” but no use and I got the same error and so I searched web for elogind and found that it is an alternative to systemd and so I modified the use variable in make.conf as

use=”-elogind systemd X..”

This time I got error as use=”systemd X..” required so I searched web for gentoo mate and found use flags as

base, extra etc.,
Without actual output, it would require us to guess as to what the problem is. Since "-elogind" didn't solve the problem, it seems reasonable to guess that wasn't the actual problem. Without actual output, there's no way to tell why you thought that might have been the problem.

rupeshforu3 wrote:
So I have entered the following command

sudo echo "mate-base/mate +extra" >> /etc/portage/package.use/mate

Unfortunately I got error as permission denied.
In this example, sudo is only giving the unprivileged user permission to execute the given command. That does not include permission for the unprivileged user to write to /etc. There is a way to make that work, but this is an example of when it is time to set sudo aside or use a different approach. For example, using sudo to run an editor to create that file.

In this case "+" is incorrect. The file should have been:
/etc/portage/package.use/mate:
mate-base/mate extra
Note that using code tags can make it easier to read and understand.

rupeshforu3 wrote:
So I created a new file /etc/portage/package.use/mate and entered the following

+extra

After that I have executed the following command

sudo emerge mate

This time I got error as atom +extra in /etc/portage/package.use/mate is unknown.

I removed + infront of extra but this time I got error as atom extra in etc/portage/package.use/mate is unknown.
The correct format of what belongs in those files is available in a man page.
man portage:
              package.use
                     Per-package USE flags.  Useful for tracking local USE flags or for enabling USE flags for certain packages only.  Perhaps you
                     develop GTK and thus you want documentation for it, but you don’t want documentation for Qt.  Easy as pie my friend!

                     Format:
                     - comments begin with # (no inline comments)
                     - one DEPEND atom per line with space-delimited USE flags
                     - USE flags can be prefixed with USE_EXPAND name followed by a colon (:)
Examples are included.

Briefly, it requires the package category and name along with the USE flag. No + preceding. Only a - precedes a USE flag if you want to disable it. Additional optional items are package version, slot, and repository. See the man page for more details, but my previous example would be what to use unless you understand why you would choose something else.

rupeshforu3 wrote:
Finally I issued the following command

USE=”+extra”
Again, the + is incorrect.

rupeshforu3 wrote:
There's lot of confusion related to package management in gentoo linux.

I issued the following command to install kuroo

sudo emerge kuroo

I got error as kuroo is masked and so I issued command to unmask and after that I issued the same command as above but still I am getting the same error as kuroo is masked and even I ran the dispatch-conf but no use.
Without output to see, it may or may not be related to why mate can't be installed.

rupeshforu3 wrote:
I providing the output of some commands which could be helpful.
Please also provide the contents of your make.conf. Using wgetpaste may make that easier. The same with the output for emerge --info

rupeshforu3 wrote:
Code:

(sys-auth/elogind-246.10-r4:0/0::gentoo, ebuild scheduled for merge) pulled in by
    sys-auth/elogind required by (mate-extra/mate-system-monitor-1.28.0:0/0::gentoo, ebuild scheduled for merge) USE="elogind -systemd -wnck" ABI_X86="(64)"
    sys-auth/elogind required by (mate-extra/mate-screensaver-1.28.0:0/0::gentoo, ebuild scheduled for merge) USE="X elogind libnotify opengl pam -debug -systemd" ABI_X86="(64)"
    sys-auth/elogind required by (mate-base/mate-session-manager-1.28.0-r1:0/0::gentoo, ebuild scheduled for merge) USE="elogind nls -debug -gles2 -gnome-keyring -systemd" ABI_X86="(64)"
    sys-auth/elogind required by (mate-extra/mate-power-manager-1.28.1:0/0::gentoo, ebuild scheduled for merge) USE="applet elogind policykit -keyring -systemd -test" ABI_X86="(64)"


For more information about Blocked Packages, please refer to the following
section of the Gentoo Linux x86 Handbook (architecture is irrelevant):

https://wiki.gentoo.org/wiki/Handbook:X86/Working/Portage#Blocked_packages


The following USE changes are necessary to proceed:
 (see "package.use" in the portage(5) man page for more details)
# required by dev-libs/libayatana-appindicator-0.5.92::gentoo
# required by mate-base/mate-control-center-1.28.0::gentoo
# required by mate-base/mate-1.28.0::gentoo[base]
# required by mate (argument)
>=dev-libs/libdbusmenu-16.04.0-r2 gtk3

Autounmask changes successfully written.

 * IMPORTANT: config file '/etc/portage/package.use/00cpu-flags' needs updating.
 * See the CONFIGURATION FILES and CONFIGURATION FILES UPDATE TOOLS
 * sections of the emerge man page to learn how to update config files.

 * In order to avoid wasting time, backtracking has terminated early
 * due to the above autounmask change(s). The --autounmask-backtrack=y
 * option can be used to force further backtracking, but there is no
 * guarantee that it will produce a solution.
build@gentoo ~ $



Kindly try to suggest how to install mate desktop environment in gentoo.
Always provide the complete output, including the command you used that led to the output.

With this specific output, it says that version of libdbusmenu requires the USE flag gtk3.

It might make sense to enable gtk3 globally, or it might make sense to do it on a per package basis.

In make.conf, you would add "gtk3" to the USE variable. An example:
Code:
USE="abcd efghi gtk mnop"
They can be in any order, but require spaces.

In package.use, you would probably want:
Code:
dev-libs/libdbusmenu gtk3


Since you are having a lot of issues with USE flags, that's only a guess and may not be correct.

Also please provide the output of find /etc/portage
_________________
Quis separabit? Quo animo?
Back to top
View user's profile Send private message
rupeshforu3
n00b
n00b


Joined: 19 Aug 2024
Posts: 44

PostPosted: Sat Aug 24, 2024 3:51 pm    Post subject: Reply with quote

Hi everything is working fine except I cant update my packages to latest version.

I am providing output of update command and emerge --info below

Code:

build@gentoo ~ $ sudo emerge --ask --verbose --update --deep --newuse @world

These are the packages that would be merged, in order:

Calculating dependencies... done!
Dependency resolution took 7.76 s (backtrack: 0/20).


!!! The ebuild selected to satisfy ">=media-libs/clutter-1.5.11:1.0[introspection]" has unmet requirements.
- media-libs/clutter-1.26.4-r1::gentoo USE="X gtk introspection wayland (-aqua) -debug -doc -egl -test" ABI_X86="(64)"

  The following REQUIRED_USE flag constraints are unsatisfied:
    wayland? ( egl )

  The above constraints are a subset of the following complete expression:
    any-of ( aqua wayland X ) wayland? ( egl )

(dependency required by "app-accessibility/caribou-0.4.21-r7::gentoo" [installed])
(dependency required by "gnome-extra/cinnamon-6.0.4::gentoo" [installed])
(dependency required by "@selected" [set])
(dependency required by "@world" [argument])
build@gentoo ~ $


Code:

build@gentoo ~ $ emerge --info
Portage 3.0.65 (python 3.12.3-final-0, default/linux/amd64/23.0/desktop/plasma/systemd, gcc-13, glibc-2.39-r6, 6.6.47-gentoo-dist x86_64)
=================================================================
System uname: Linux-6.6.47-gentoo-dist-x86_64-AMD_Ryzen_5_5500GT_with_Radeon_Graphics-with-glibc2.39
KiB Mem:    15642768 total,  13065608 free
KiB Swap:    3276796 total,   3276796 free
Timestamp of repository gentoo: Sat, 24 Aug 2024 08:00:00 +0000
Head commit of repository gentoo: 072c507b831b0734aa7be006375404223dc0b8ba
Head commit of repository trinity-official: d70bead1c9dfb76edd30a31e11d719400b912552

sh bash 5.2_p26-r6
ld GNU ld (Gentoo 2.42 p3) 2.42.0
app-misc/pax-utils:        1.3.7::gentoo
app-shells/bash:           5.2_p26-r6::gentoo
dev-build/autoconf:        2.13-r8::gentoo, 2.71-r7::gentoo
dev-build/automake:        1.16.5-r2::gentoo
dev-build/cmake:           3.28.5::gentoo
dev-build/libtool:         2.4.7-r4::gentoo
dev-build/make:            4.4.1-r1::gentoo
dev-build/meson:           1.5.1::gentoo
dev-lang/perl:             5.38.2-r3::gentoo
dev-lang/python:           3.11.9-r1::gentoo, 3.12.3-r1::gentoo
dev-lang/rust-bin:         1.79.0::gentoo
sys-apps/baselayout:       2.15::gentoo
sys-apps/sandbox:          2.38::gentoo
sys-apps/systemd:          255.7-r1::gentoo
sys-devel/binutils:        2.42-r1::gentoo
sys-devel/binutils-config: 5.5::gentoo
sys-devel/clang:           18.1.8::gentoo
sys-devel/gcc:             13.3.1_p20240614::gentoo
sys-devel/gcc-config:      2.11::gentoo
sys-devel/lld:             18.1.8::gentoo
sys-devel/llvm:            17.0.6::gentoo, 18.1.8-r1::gentoo
sys-kernel/linux-headers:  6.6-r1::gentoo (virtual/os-headers)
sys-libs/glibc:            2.39-r6::gentoo
Repositories:

gentoo
    location: /var/db/repos/gentoo
    sync-type: rsync
    sync-uri: rsync://rsync.gentoo.org/gentoo-portage
    priority: -1000
    volatile: False
    sync-rsync-verify-metamanifest: yes
    sync-rsync-extra-opts:
    sync-rsync-verify-max-age: 3
    sync-rsync-verify-jobs: 1

trinity-official
    location: /var/db/repos/trinity-official
    sync-type: git
    sync-uri: https://mirror.git.trinitydesktop.org/gitea/TDE/tde-packaging-gentoo.git
    masters: gentoo
    volatile: False

Binary Repositories:

gentoobinhost
    priority: 1
    sync-uri: https://distfiles.gentoo.org/releases/amd64/binpackages/23.0/x86-64

ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="@FREE"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=znver3 -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /usr/trinity/14/env /usr/trinity/14/share/config /usr/trinity/14/shutdown"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d"
CXXFLAGS="-march=znver3 -O2 -pipe"
DISTDIR="/var/cache/distfiles"
ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GDK_PIXBUF_MODULE_FILE GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR XDG_STATE_HOME"
FCFLAGS="-march=znver3 -O2 -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs binpkg-multi-instance buildpkg-live config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync merge-wait multilib-strict network-sandbox news parallel-fetch pid-sandbox pkgdir-index-trusted preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-march=znver3 -O2 -pipe"
GENTOO_MIRRORS="https://mirrors.nxtgen.com/gentoo-mirror/gentoo-source/"
LANG="C.UTF8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,-z,pack-relative-relocs"
LEX="flex"
MAKEOPTS="--jobs 10 --load-average 9"
PKGDIR="/var/cache/binpkgs"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/var/tmp"
SHELL="/bin/bash"
USE="X a52 aac acl acpi activities alsa amd64 bluetooth branding bzip2 cairo cdda cdr cet crypt cups dbus declarative dri dts dvd dvdr encode exif flac gdbm gif gpm gtk gui iconv icu ipv6 jpeg kde kf6compat kwallet lcms libnotify libtirpc mad mng mp3 mp4 mpeg multilib ncurses networkmanager nls ogg opengl openmp pam pango pcre pdf pipewire plasma png policykit ppds pulseaudio qml qt5 readline screencast sdl seccomp semantic-desktop sound spell ssl startup-notification svg systemd test-rust tiff truetype udev udisks unicode upower usb vorbis vulkan wayland widgets wxwidgets x x264 xattr xcb xft xml xv xvid zlib" ABI_X86="64" ADA_TARGET="gcc_12" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_anon authn_dbm authn_file authz_dbm authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir env expires ext_filter file_cache filter headers include info log_config logio mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="mmx mmxext sse sse2 aes avx avx2 f16c fma3 pclmul popcnt rdrand sha sse3 sse4_1 sse4_2 sse4a ssse3 vpclmulqdq" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 ntrip navcom oceanserver oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 tsip tripmate tnt ublox" GUILE_SINGLE_TARGET="3-0" GUILE_TARGETS="3-0" INPUT_DEVICES="libinput" KERNEL="linux" LCD_DEVICES="bayrad cfontz glk hd44780 lb216 lcdm001 mtxorb text" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php8-2" POSTGRES_TARGETS="postgres15" PYTHON_SINGLE_TARGET="python3_12" PYTHON_TARGETS="python3_12" RUBY_TARGETS="ruby31 ruby32" VIDEO_CARDS="amdgpu radeonsi" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipp2p iface geoip fuzzy condition tarpit sysrq proto logmark ipmark dhcpmac delude chaos account"
Unset:  ADDR2LINE, AR, ARFLAGS, AS, ASFLAGS, CC, CCLD, CONFIG_SHELL, CPP, CPPFLAGS, CTARGET, CXX, CXXFILT, ELFEDIT, EMERGE_DEFAULT_OPTS, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, INSTALL_MASK, LC_ALL, LD, LFLAGS, LIBTOOL, LINGUAS, MAKE, MAKEFLAGS, NM, OBJCOPY, OBJDUMP, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PYTHONPATH, RANLIB, READELF, RUSTFLAGS, SIZE, STRINGS, STRIP, YACC, YFLAGS

build@gentoo ~ $

_________________
Regards,
Rupesh.
Back to top
View user's profile Send private message
rupeshforu3
n00b
n00b


Joined: 19 Aug 2024
Posts: 44

PostPosted: Sat Aug 24, 2024 3:54 pm    Post subject: Reply with quote

what are the required strings to use in USE variable so that I can update my system properly.
_________________
Regards,
Rupesh.
Back to top
View user's profile Send private message
rab0171610
Guru
Guru


Joined: 24 Dec 2022
Posts: 443

PostPosted: Sat Aug 24, 2024 6:05 pm    Post subject: Reply with quote

What happens when you add:
Code:
media-libs/clutter egl

to your package.use?
Back to top
View user's profile Send private message
rupeshforu3
n00b
n00b


Joined: 19 Aug 2024
Posts: 44

PostPosted: Sun Aug 25, 2024 3:13 am    Post subject: Reply with quote

I added egl to USE in make.conf at present my USE in make.conf consists of

Code:
USE="-elogind systemd x egl theora gtk"



After that I issued update command and the output is as follows

Code:

build@gentoo ~ $ sudo emerge --ask --verbose --update --deep --newuse @world

These are the packages that would be merged, in order:

Calculating dependencies... done!
Dependency resolution took 9.01 s (backtrack: 0/20).


!!! The ebuild selected to satisfy "media-libs/libmediaart:2.0" has unmet requirements.
- media-libs/libmediaart-1.9.6-r1::gentoo USE="gtk introspection qt5 -gtk-doc -test -vala" ABI_X86="(64)"

  The following REQUIRED_USE flag constraints are unsatisfied:
    exactly-one-of ( gtk qt5 )

  The above constraints are a subset of the following complete expression:
    exactly-one-of ( gtk qt5 ) vala? ( introspection )

(dependency required by "media-plugins/grilo-plugins-0.3.16::gentoo" [ebuild])
(dependency required by "media-video/totem-43.0-r1::gentoo" [installed])
(dependency required by "gnome-base/gnome-core-apps-45.2::gentoo" [installed])
(dependency required by "gnome-base/gnome-45.2::gentoo" [installed])
(dependency required by "@selected" [set])
(dependency required by "@world" [argument])
build@gentoo ~ $

_________________
Regards,
Rupesh.
Back to top
View user's profile Send private message
rupeshforu3
n00b
n00b


Joined: 19 Aug 2024
Posts: 44

PostPosted: Sun Aug 25, 2024 3:15 am    Post subject: Reply with quote

I cant add anything to /etc/portage/package.use because it is directory but not a file.
_________________
Regards,
Rupesh.
Back to top
View user's profile Send private message
rab0171610
Guru
Guru


Joined: 24 Dec 2022
Posts: 443

PostPosted: Sun Aug 25, 2024 3:25 am    Post subject: Reply with quote

rupeshforu3 wrote:
I cant add anything to /etc/portage/package.use because it is directory but not a file.

You have to come up with your own way of managing package.use. It can either be a directory or a file. Years ago, when I first started using Gentoo it was a single file. I like to keep it manageable and I keep the entries it to a minimum, so I prefer to still keep it as a single file -- /etc/portage/package.use/package.use

It is unrealistic to think you will be able manage your system long-term without using package.use in some way that works for you. Everyone has their own way of doing it.

I think the output is telling you that you can only have one or the other, qt5 or gtk but not both, as you are trying to do.

(Edited to change accidental references to package.mask to package.use)


Last edited by rab0171610 on Mon Aug 26, 2024 12:09 pm; edited 1 time in total
Back to top
View user's profile Send private message
rupeshforu3
n00b
n00b


Joined: 19 Aug 2024
Posts: 44

PostPosted: Sun Aug 25, 2024 9:27 am    Post subject: Reply with quote

I modified USE variable in make.conf as USE="X systemd -elogind gtk -qt5"

At present update is running but I suspect packages requiring qt5 may not work properly.
_________________
Regards,
Rupesh.
Back to top
View user's profile Send private message
Hu
Administrator
Administrator


Joined: 06 Mar 2007
Posts: 22867

PostPosted: Sun Aug 25, 2024 1:43 pm    Post subject: Reply with quote

Twice in this thread you have been told to make a per-package change using package.use, and you instead made that change globally in make.conf. Why are you applying these globally?
Back to top
View user's profile Send private message
pietinger
Moderator
Moderator


Joined: 17 Oct 2006
Posts: 5239
Location: Bavaria

PostPosted: Sun Aug 25, 2024 4:36 pm    Post subject: Reply with quote

Perhaps our new Gentoo user does not know that there are global settings for portage, as well as settings that only affect a specific package. The attempt by @rab0171610 to explain this may also have been confusing because he was talking about package.mask instead of package.use.

---

rupeshforu3,

by activating or deactivating use flags, you can control the scope/functionality of a package when it is created (compiled via emerge).

What you need to know:

1. The profile you have selected (“eselect profile list”) already activates some use-flags by default.

2. You can view all GLOBAL use-flag settings at any time with “emerge --info” (see the line USE=). So if you do not want to set any use flags globally with USE=... in your make.conf, you will still see some already set globally by the profile.

3. Some use flags are used by several packages. If you want to activate a use flag ONLY for a specific package, then you must activate it specifically for this package. You can do this by creating a file in the /etc/portage/package.use directory. The name of the file does not matter; however, it is recommended that you name the file so that you know later what is in it ... So: If you want to configure use flags for the package "clutter", then name the file "clutter" (/etc/portage/package.use/clutter). IN this file, write a line with the name of the package and then the use flags that you want to (additionally) activate or deactivate - example:
Code:
media-libs/clutter egl

If you want to deactivate a use flag - which is already activated - for a package, then you need a minus sign - example:
Code:
net-misc/netifrc -dhcp


4. There are use-flags that are mutually exclusive because you either have a systemd system or use OpenRC ... and not both. This means you can either activate the use-flag "systemd" OR the use-flag "elogind".

5. There are use flags that SHOULD never be activated globally ... because this will cause major problems (e.g.: test or debug). These should really only ever be activated for a specific package.

6. There are use flags that are fixed by the profile and CANNOT (*) be changed. These use-flags are always in brackets. Just make a query on our gcc:
Code:
emerge -pvD gcc

(So you can never deactivate "pie" here)

7. You can always check what portage wants to install by asking:
Code:
emerge -uUDvp @world


and testing what a globally activated use-flag WOULD do with:
Code:
USE=USEFLAGNAME emerge -uUDvp @world


---

What I recommend you do now:

a) Check which profile you have activated (and tell us)
b) Delete all global settings in your make.conf (comment out the line USE= with #USE=).
c) Give us the content of the file /var/lib/portage/world
d) Do an “emerge -uUDvp @world and tell us about it

With all this information we can help you in a more targeted way.




*) That's not quite true: there is a way to change that too ... but because you should never do that as a beginner, I won't describe it.
_________________
https://wiki.gentoo.org/wiki/User:Pietinger
Back to top
View user's profile Send private message
logrusx
Advocate
Advocate


Joined: 22 Feb 2018
Posts: 2522

PostPosted: Sun Aug 25, 2024 4:56 pm    Post subject: Reply with quote

rupeshforu3 wrote:

But I got many errors as use=”elogind systemd X..” required and so I created a new USE entry in /etc/portage/make.conf as

use=”elogind systemd X..”

After that I issued the command ”sudo emerge mate” but no use and I got the same error and so I searched web for elogind and found that it is an alternative to systemd and so I modified the use variable in make.conf as

use=”-elogind systemd X..”


You cannot have both elogind and systemd enabled. Functionality overlaps. But most importantly, you should not be manually managing those. It should be managed by your profile and your profile is plasma/systemd, so you have systemd use flag automatically applied by your profile.

You should not resort to make.conf for applying use changes. There are very limited cases when that's necessary. First, you don't need use flags for multiple desktop environments. Aside from plasma which I believe will be pulled in by your profile selection, there are meta packages for the rest too. For example gnome has gnome-base/gnome which is a meta package. It'll pull in other packages, some depending on the use flags you put on gnome-base/gnome package.

You should use /etc/portage/package.use for that. As mentioned above, it can be either single file or a directory containing files. It can even contain other directories containing other files. This is the deepest I've tested, I don't know if portage will traverse the directory structure recursively or only to a certain depth. You can organize things in files which names will be meaningful to you.

Your sudo command most certainly didn't fail for lack of permissions, but rather something else, like your user is not in the wheel (sudoers in the case of sudo?) group and so on. Post the complete message.

In general, when asking for help, always include the full command you're running and it's output. For some cases it's as simple as posting it in a replay, for some you might need wgetpaste.

Never assume somebody already knows what's on your mind or will figure it out. While it may happen, it may lead to misunderstandings and confusion both for you and your helpers.

Best Regards,
Georgi
Back to top
View user's profile Send private message
rupeshforu3
n00b
n00b


Joined: 19 Aug 2024
Posts: 44

PostPosted: Mon Aug 26, 2024 1:42 am    Post subject: a Reply with quote

I am using our gentoo Linux since two weeks only and I don't know anything about it before.

First I used USE variable at bash prompt like USE="egl" but there was no use after that I tried to write use flags to package.use but failed because it is a directory not a file.

I got annoyed and so finally I modified USE variable in make.conf.

At present all packages updated successfully and everything is working fine including kde.

From now onwards I will follow your suggestions strictly.

Thanks for your suggestions and patience.
_________________
Regards,
Rupesh.
Back to top
View user's profile Send private message
kimchi_sg
Advocate
Advocate


Joined: 26 Nov 2004
Posts: 3038

PostPosted: Mon Aug 26, 2024 3:32 am    Post subject: Re: a Reply with quote

rupeshforu3 wrote:
I tried to write use flags to package.use but failed because it is a directory not a file

Correct, you make a file inside the package.use directory to put the USE flags.

Example: /etc/portage/package.use/00-myflags
Back to top
View user's profile Send private message
rab0171610
Guru
Guru


Joined: 24 Dec 2022
Posts: 443

PostPosted: Mon Aug 26, 2024 12:12 pm    Post subject: Reply with quote

rupeshforu3, I apologize for my typo. I indeed was trying to encourage you to manage your package.use file or directory, not package.mask. I corrected the incorrect previous post.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Installing Gentoo All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum