Abuse filter log

From Gentoo Wiki
Abuse Filter navigation (Home | Recent filter changes | Examine past edits | Abuse log)
Jump to:navigation Jump to:search
Details for log entry 5,045

15:50, 22 April 2025: Pietinger (talk | contribs) triggered filter 30, performing the action "edit" on User:Pietinger/New at Gentoo. Actions taken: Disallow; Filter description: Disable writing internal wiki links as external besides required links. If absolutely necessary, use wiki.g.o as a workaround. (examine)

Changes made in edit

 
>>> No packages selected for removal by depclean</pre>
 
>>> No packages selected for removal by depclean</pre>
 
Deleting a GCC version would only be possible if you have a new (additional) version after an update to @world. Then Portage would allow you to delete the old version. If you just want to check if you could uninstall a package use the parameter -p to be on the safe side; i.e. {{c|emerge -cpv PACKAGENAME}}.
 
Deleting a GCC version would only be possible if you have a new (additional) version after an update to @world. Then Portage would allow you to delete the old version. If you just want to check if you could uninstall a package use the parameter -p to be on the safe side; i.e. {{c|emerge -cpv PACKAGENAME}}.
 +
 +
== The Power of Gentoo ==
 +
 +
is the use of '''Profiles and Use-flags'''. We have excellent articles in our Gentoo Wiki and I will give you the most important links in a moment. But first I would like to give you an overview so that you can classify everything correctly.
 +
 +
Before you clarify questions about the Use-flags, you should have selected the right profile, because this profile already activates a lot of Use-flags for you, so you don't have to set them yourself in {{path|/etc/portage/make.conf}}. If you now think that this is unfortunately not possible for you because, for example, you are using the hardened sources AND want to have a KDE, but there is no profile for this, here is my first hint:
 +
 +
You can also combine profiles (the links will follow shortly).
 +
 +
Only when you have set the correct profile should you think about Use-flags that are still missing OR that you now have too many of. The most important thing you need to know about Use-flags is that they can be set globally for the whole system or only for a single package.
 +
 +
So when should a Use-flag be set globally and when only for a specific package? This question is not always easy to answer. In principle, it is of course always safer to activate a Use-flag for one package only, as this has less impact on the system. On the other hand, there are some Use-flags that determine what hardware you have in your system at all, or which global applications are available. One example is the "bluetooth" Use-flag. If you do not have this (or do not want it) then it makes sense to activate or deactivate it globally. Now start first:
 +
{{RootCmd|eselect profile list}}
 +
Have you already set the correct profile? If not, here are the promised links:
 +
* https://wiki.gentoo.org/wiki/Profile_(Portage)
 +
* https://wiki.gentoo.org/wiki/Hardened_Desktop_Profiles
 +
* https://wiki.gentoo.org/wiki/KDE/Hardened_KDE_Plasma_profile
 +
* https://wiki.gentoo.org/wiki/GNOME/Guide/Hardened_GNOME_Profiles
 +
* There is even an old forum thread that dealt, for example, with the linking of No-Multilib and Plasma (caution: this was at a time when the 17.1 profiles were current; today, of course, 23.0 is current): https://forums.gentoo.org/viewtopic-p-8694188.html#8694188
 +
 +
 +
Now check which Use-flags are already active. These do not need to be additionally activated - at the very least deactivated again if not desired (I do not have Bluetooth, for example, and therefore have the line USE="-bluetooth ..." in my make.conf):
 +
{{RootCmd|emerge --info}}
 +
Now read all about Use-flags:
 +
* https://wiki.gentoo.org/wiki/Handbook:AMD64/Working/USE
 +
* https://wiki.gentoo.org/wiki/USE_flag
 +
 +
 +
One last note: There are some Use-flags that you should never set globally, such as “debug”, “static”, “static-libs” and “test”. These should really only be set for individual packages (and if you know what you are doing with them). You can always check what a global Use-flag WOULD do in your system by making this query:
 +
<pre>USE="USEFLAG" emerge -uUDvp @world</pre>
 +
or what would happen if you wanted to remove an already active Use-flag:
 +
<pre>USE="-USEFLAG" emerge -uUDvp @world</pre>
 +
Examples:
 +
<pre>USE="magic" emerge -uUDvp  @world</pre>
 +
<pre>USE="-bluetooth" emerge -uUDvp @world</pre>

Action parameters

VariableValue
Edit count of the user (user_editcount)
634
Name of the user account (user_name)
'Pietinger'
Age of the user account (user_age)
103141138
Page ID (page_id)
350467
Page namespace (page_namespace)
2
Page title (without namespace) (page_title)
'Pietinger/New at Gentoo'
Full page title (page_prefixedtitle)
'User:Pietinger/New at Gentoo'
Action (action)
'edit'
Edit summary/reason (summary)
'added a chapter for profiles und use-flags'
Old content model (old_content_model)
'wikitext'
New content model (new_content_model)
'wikitext'
Old page wikitext, before the edit (old_wikitext)
'[[Article description::I wrote this article so that I can link to it in the Gentoo forums if users have questions about it.]] == Initial Installation == The most important thing you need to know about Gentoo before you try to install it: <span style="color:red">Take your time !</span> Installing Gentoo will take longer than installing a binary Linux distribution ... and you will also need more time for reading manuals, because your normal Linux knowledge is not (yet) sufficient. Plan several '''days'''. Before you jump into [[Handbook:AMD64]] to install Gentoo, I would like to recommend a few things: First, read this fabulous article by our famous wiki editor @maffblaster (in my opinion, it should actually be the first page in our Handbook): * [[User:Maffblaster/Drafts/Gentoo_Primers/The_Gentoo_Primer]] and right after that these articles: * [[Benefits_of_Gentoo]] * [[Installation]] Secondly, even if you want to use a manually configured kernel, you should first install the precompiled kernel image '''sys-kernel/gentoo-kernel-bin''' because you can then select it at any time via the boot manager and thus have a backup kernel when your manually configured kernel causes problems. This is the first option in [[Handbook:AMD64/Installation/Kernel]]. If you have never configured a kernel manually, I recommend you read this first - including all the linked articles: [[User:Pietinger/Tutorials/Manual_kernel_configuration]] Now you should have a better basis for deciding whether you want to go down this path. If you are unsure which option to choose here: [[Handbook:AMD64/Installation/Bootloader]] then I would recommend: For an '''OpenRC''' system use '''grub''' - for a '''systemd''' system use '''systemd-boot'''. Don't worry if you want to boot your kernel directly via UEFI, you can always install "Alternative 2: EFI Stub" '''later'''. Just read [[User:Pietinger/Tutorials/Boot_kernel_via_UEFI]] after you have completed all installation steps. However, a boot manager to start with is very handy in case you have a problem with a new / your manually configured kernel. It might be helpful to have the following quick guide printed out next to you while reading the [[Handbook:AMD64]] and to compare it (and to copy the commands from there if you are unsure somewhere): [[User:Pietinger/Draft/Quick_Installation_OpenRC_for_an_UEFI_System]] == Pause during Installation == Thirdly, you can take a break at any time during the initial installation to continue the next day. If you are at any step after this one: [[Handbook:AMD64/Installation/Base#Preparing_for_a_bootloader]] and before you have completed this step: [[Handbook:AMD64/Installation/Bootloader#Rebooting_the_system]] you can pause by executing both in reverse order: Instead of a reboot, you naturally perform a {{rootCmd|shutdown -h now}} and if you want start the next day you boot again: [[Handbook:AMD64/Installation/Media#Booting_the_installation_media]] and do these steps again = '''Chrooting into your Gentoo system''': 1. [[Handbook:AMD64/Installation/Disks#Mounting_the_root_partition]] => {{rootCmd|mount /dev/sda3 /mnt/gentoo}} 2. [[Handbook:AMD64/Installation/Base#Mounting_the_necessary_filesystems]] => {{rootCmd|arch-chroot /mnt/gentoo}} 3. [[Handbook:AMD64/Installation/Base#Entering_the_new_environment]] => {{rootCmd|source /etc/profile}} 4. Mount your boot partition OR your ESP, depending if you use old BIOS boot or UEFI boot - [[Handbook:AMD64/Installation/Base#Preparing_for_a_bootloader]] => {{rootCmd|mount /dev/sda1 /efi}} Now continue where you left off yesterday ;-) These steps are also necessary to switch back to your installation when your system does not boot after [[Handbook:AMD64/Installation/Bootloader#Rebooting_the_system]]. == The most common mistake beginners make with Gentoo == Now that you are done with the basic installation, you should keep your Gentoo up to date. The best way to keep your Gentoo up to date is to update everything after an {{c|emerge --sync}} with an {{c|emerge -uUDv @world}}. (See also: [[User:Pietinger/Tutorials/Optimize_compile_times#My_Recommendation]]). Gentoo also allows you to update only individual packages and not everything at once. For example, you are allowed to update only the kernel. You have two options for this: {{RootCmd|emerge -uD gentoo-kernel-bin}} or {{RootCmd|emerge -1uD gentoo-kernel-bin}} You may have noticed that I also use this parameter -1 in my CheatSheet for a kernel update. What does this do? As you have probably already seen from the installation, there are packages that require other packages - dependencies. Gentoo - Portage - knows these dependencies and automatically resolves them for you and installs these packages automatically. For example, if KDE needs a “gcc”, you don't have to install it beforehand, but it is automatically installed during the installation of KDE (in reality, every program needs the gcc, so it is/was already in stage3). Now take a look at the file {{path|/var/lib/portage/world}}. Do you see the “gcc” in your world file? No. This file only contains all the packages that you have just explicitly installed, but not the dependencies. There is a good reason for this: If you no longer want a package and therefore uninstall it, it will disappear from the world file. If you then do an {{c|emerge -c}}, all packages that were ONLY a dependency of this package will also be uninstalled ... ... as long as you have not “included” these dependencies in the world file. However, this is exactly what happens if you update individual packages and do not use this parameter -1. Without the -1 parameter for a single update, such packages are added to the world file ... and THEN they are no longer deleted with an {{c|emerge -c}}. This means: You should actually always use the -1 parameter for every SINGLE update - '''you only don't need it for an update to @world'''. (Actually, this only applies to slotted packages - but as a Gentoo newbie you won't know what that is yet). Only omit this parameter if you really want to keep a specific version. In this example you can see that I wanted to keep a specific kernel and therefore portage automatically made this additional entry in my {{path|/var/lib/portage/world}}: {{fileBox|filename=/var/lib/portage/world|1= ... sys-kernel/gentoo-sources sys-kernel/gentoo-sources:6.12.21 ...}} With today's update to @world I got a new kernel version. Of course I want to delete the old version, but portage will not delete the protected version 6.12.21 (and of course the current one), only the old one: {{RootCmd|emerge -cp}} <pre>[...] >>> These are the packages that would be unmerged: sys-kernel/gentoo-sources selected: 6.14.2 protected: none omitted: 6.12.21 6.14.3 [...]</pre> You should now know all about this parameter so that you understand what this thread is about: [[https://forums.gentoo.org/viewtopic-t-1143543-highlight-.html]] Further note: It is strongly recommended not to edit file {{path|/var/lib/portage/world}} manually. If you want to uninstall a package, let Portage do it for you. Why? Because Portage may find out that it is a bad idea. Try an {{c|emerge -c gcc}}. Portage will not allow you to do it. If you add the -v parameter, Portage will also tell you why it's a bad idea: {{RootCmd|emerge -cv gcc}} <pre>Calculating dependencies... done! sys-devel/gcc-14.2.1_p20241221 pulled in by: @system requires sys-devel/gcc ... sys-libs/glibc-2.40-r8 requires >=sys-devel/gcc-6.2 >>> No packages selected for removal by depclean</pre> Deleting a GCC version would only be possible if you have a new (additional) version after an update to @world. Then Portage would allow you to delete the old version. If you just want to check if you could uninstall a package use the parameter -p to be on the safe side; i.e. {{c|emerge -cpv PACKAGENAME}}.'
New page wikitext, after the edit (new_wikitext)
'[[Article description::I wrote this article so that I can link to it in the Gentoo forums if users have questions about it.]] == Initial Installation == The most important thing you need to know about Gentoo before you try to install it: <span style="color:red">Take your time !</span> Installing Gentoo will take longer than installing a binary Linux distribution ... and you will also need more time for reading manuals, because your normal Linux knowledge is not (yet) sufficient. Plan several '''days'''. Before you jump into [[Handbook:AMD64]] to install Gentoo, I would like to recommend a few things: First, read this fabulous article by our famous wiki editor @maffblaster (in my opinion, it should actually be the first page in our Handbook): * [[User:Maffblaster/Drafts/Gentoo_Primers/The_Gentoo_Primer]] and right after that these articles: * [[Benefits_of_Gentoo]] * [[Installation]] Secondly, even if you want to use a manually configured kernel, you should first install the precompiled kernel image '''sys-kernel/gentoo-kernel-bin''' because you can then select it at any time via the boot manager and thus have a backup kernel when your manually configured kernel causes problems. This is the first option in [[Handbook:AMD64/Installation/Kernel]]. If you have never configured a kernel manually, I recommend you read this first - including all the linked articles: [[User:Pietinger/Tutorials/Manual_kernel_configuration]] Now you should have a better basis for deciding whether you want to go down this path. If you are unsure which option to choose here: [[Handbook:AMD64/Installation/Bootloader]] then I would recommend: For an '''OpenRC''' system use '''grub''' - for a '''systemd''' system use '''systemd-boot'''. Don't worry if you want to boot your kernel directly via UEFI, you can always install "Alternative 2: EFI Stub" '''later'''. Just read [[User:Pietinger/Tutorials/Boot_kernel_via_UEFI]] after you have completed all installation steps. However, a boot manager to start with is very handy in case you have a problem with a new / your manually configured kernel. It might be helpful to have the following quick guide printed out next to you while reading the [[Handbook:AMD64]] and to compare it (and to copy the commands from there if you are unsure somewhere): [[User:Pietinger/Draft/Quick_Installation_OpenRC_for_an_UEFI_System]] == Pause during Installation == Thirdly, you can take a break at any time during the initial installation to continue the next day. If you are at any step after this one: [[Handbook:AMD64/Installation/Base#Preparing_for_a_bootloader]] and before you have completed this step: [[Handbook:AMD64/Installation/Bootloader#Rebooting_the_system]] you can pause by executing both in reverse order: Instead of a reboot, you naturally perform a {{rootCmd|shutdown -h now}} and if you want start the next day you boot again: [[Handbook:AMD64/Installation/Media#Booting_the_installation_media]] and do these steps again = '''Chrooting into your Gentoo system''': 1. [[Handbook:AMD64/Installation/Disks#Mounting_the_root_partition]] => {{rootCmd|mount /dev/sda3 /mnt/gentoo}} 2. [[Handbook:AMD64/Installation/Base#Mounting_the_necessary_filesystems]] => {{rootCmd|arch-chroot /mnt/gentoo}} 3. [[Handbook:AMD64/Installation/Base#Entering_the_new_environment]] => {{rootCmd|source /etc/profile}} 4. Mount your boot partition OR your ESP, depending if you use old BIOS boot or UEFI boot - [[Handbook:AMD64/Installation/Base#Preparing_for_a_bootloader]] => {{rootCmd|mount /dev/sda1 /efi}} Now continue where you left off yesterday ;-) These steps are also necessary to switch back to your installation when your system does not boot after [[Handbook:AMD64/Installation/Bootloader#Rebooting_the_system]]. == The most common mistake beginners make with Gentoo == Now that you are done with the basic installation, you should keep your Gentoo up to date. The best way to keep your Gentoo up to date is to update everything after an {{c|emerge --sync}} with an {{c|emerge -uUDv @world}}. (See also: [[User:Pietinger/Tutorials/Optimize_compile_times#My_Recommendation]]). Gentoo also allows you to update only individual packages and not everything at once. For example, you are allowed to update only the kernel. You have two options for this: {{RootCmd|emerge -uD gentoo-kernel-bin}} or {{RootCmd|emerge -1uD gentoo-kernel-bin}} You may have noticed that I also use this parameter -1 in my CheatSheet for a kernel update. What does this do? As you have probably already seen from the installation, there are packages that require other packages - dependencies. Gentoo - Portage - knows these dependencies and automatically resolves them for you and installs these packages automatically. For example, if KDE needs a “gcc”, you don't have to install it beforehand, but it is automatically installed during the installation of KDE (in reality, every program needs the gcc, so it is/was already in stage3). Now take a look at the file {{path|/var/lib/portage/world}}. Do you see the “gcc” in your world file? No. This file only contains all the packages that you have just explicitly installed, but not the dependencies. There is a good reason for this: If you no longer want a package and therefore uninstall it, it will disappear from the world file. If you then do an {{c|emerge -c}}, all packages that were ONLY a dependency of this package will also be uninstalled ... ... as long as you have not “included” these dependencies in the world file. However, this is exactly what happens if you update individual packages and do not use this parameter -1. Without the -1 parameter for a single update, such packages are added to the world file ... and THEN they are no longer deleted with an {{c|emerge -c}}. This means: You should actually always use the -1 parameter for every SINGLE update - '''you only don't need it for an update to @world'''. (Actually, this only applies to slotted packages - but as a Gentoo newbie you won't know what that is yet). Only omit this parameter if you really want to keep a specific version. In this example you can see that I wanted to keep a specific kernel and therefore portage automatically made this additional entry in my {{path|/var/lib/portage/world}}: {{fileBox|filename=/var/lib/portage/world|1= ... sys-kernel/gentoo-sources sys-kernel/gentoo-sources:6.12.21 ...}} With today's update to @world I got a new kernel version. Of course I want to delete the old version, but portage will not delete the protected version 6.12.21 (and of course the current one), only the old one: {{RootCmd|emerge -cp}} <pre>[...] >>> These are the packages that would be unmerged: sys-kernel/gentoo-sources selected: 6.14.2 protected: none omitted: 6.12.21 6.14.3 [...]</pre> You should now know all about this parameter so that you understand what this thread is about: [[https://forums.gentoo.org/viewtopic-t-1143543-highlight-.html]] Further note: It is strongly recommended not to edit file {{path|/var/lib/portage/world}} manually. If you want to uninstall a package, let Portage do it for you. Why? Because Portage may find out that it is a bad idea. Try an {{c|emerge -c gcc}}. Portage will not allow you to do it. If you add the -v parameter, Portage will also tell you why it's a bad idea: {{RootCmd|emerge -cv gcc}} <pre>Calculating dependencies... done! sys-devel/gcc-14.2.1_p20241221 pulled in by: @system requires sys-devel/gcc ... sys-libs/glibc-2.40-r8 requires >=sys-devel/gcc-6.2 >>> No packages selected for removal by depclean</pre> Deleting a GCC version would only be possible if you have a new (additional) version after an update to @world. Then Portage would allow you to delete the old version. If you just want to check if you could uninstall a package use the parameter -p to be on the safe side; i.e. {{c|emerge -cpv PACKAGENAME}}. == The Power of Gentoo == is the use of '''Profiles and Use-flags'''. We have excellent articles in our Gentoo Wiki and I will give you the most important links in a moment. But first I would like to give you an overview so that you can classify everything correctly. Before you clarify questions about the Use-flags, you should have selected the right profile, because this profile already activates a lot of Use-flags for you, so you don't have to set them yourself in {{path|/etc/portage/make.conf}}. If you now think that this is unfortunately not possible for you because, for example, you are using the hardened sources AND want to have a KDE, but there is no profile for this, here is my first hint: You can also combine profiles (the links will follow shortly). Only when you have set the correct profile should you think about Use-flags that are still missing OR that you now have too many of. The most important thing you need to know about Use-flags is that they can be set globally for the whole system or only for a single package. So when should a Use-flag be set globally and when only for a specific package? This question is not always easy to answer. In principle, it is of course always safer to activate a Use-flag for one package only, as this has less impact on the system. On the other hand, there are some Use-flags that determine what hardware you have in your system at all, or which global applications are available. One example is the "bluetooth" Use-flag. If you do not have this (or do not want it) then it makes sense to activate or deactivate it globally. Now start first: {{RootCmd|eselect profile list}} Have you already set the correct profile? If not, here are the promised links: * https://wiki.gentoo.org/wiki/Profile_(Portage) * https://wiki.gentoo.org/wiki/Hardened_Desktop_Profiles * https://wiki.gentoo.org/wiki/KDE/Hardened_KDE_Plasma_profile * https://wiki.gentoo.org/wiki/GNOME/Guide/Hardened_GNOME_Profiles * There is even an old forum thread that dealt, for example, with the linking of No-Multilib and Plasma (caution: this was at a time when the 17.1 profiles were current; today, of course, 23.0 is current): https://forums.gentoo.org/viewtopic-p-8694188.html#8694188 Now check which Use-flags are already active. These do not need to be additionally activated - at the very least deactivated again if not desired (I do not have Bluetooth, for example, and therefore have the line USE="-bluetooth ..." in my make.conf): {{RootCmd|emerge --info}} Now read all about Use-flags: * https://wiki.gentoo.org/wiki/Handbook:AMD64/Working/USE * https://wiki.gentoo.org/wiki/USE_flag One last note: There are some Use-flags that you should never set globally, such as “debug”, “static”, “static-libs” and “test”. These should really only be set for individual packages (and if you know what you are doing with them). You can always check what a global Use-flag WOULD do in your system by making this query: <pre>USE="USEFLAG" emerge -uUDvp @world</pre> or what would happen if you wanted to remove an already active Use-flag: <pre>USE="-USEFLAG" emerge -uUDvp @world</pre> Examples: <pre>USE="magic" emerge -uUDvp @world</pre> <pre>USE="-bluetooth" emerge -uUDvp @world</pre>'
Unified diff of changes made by edit (edit_diff)
'@@ -134,2 +134,37 @@ >>> No packages selected for removal by depclean</pre> Deleting a GCC version would only be possible if you have a new (additional) version after an update to @world. Then Portage would allow you to delete the old version. If you just want to check if you could uninstall a package use the parameter -p to be on the safe side; i.e. {{c|emerge -cpv PACKAGENAME}}. + +== The Power of Gentoo == + +is the use of '''Profiles and Use-flags'''. We have excellent articles in our Gentoo Wiki and I will give you the most important links in a moment. But first I would like to give you an overview so that you can classify everything correctly. + +Before you clarify questions about the Use-flags, you should have selected the right profile, because this profile already activates a lot of Use-flags for you, so you don't have to set them yourself in {{path|/etc/portage/make.conf}}. If you now think that this is unfortunately not possible for you because, for example, you are using the hardened sources AND want to have a KDE, but there is no profile for this, here is my first hint: + +You can also combine profiles (the links will follow shortly). + +Only when you have set the correct profile should you think about Use-flags that are still missing OR that you now have too many of. The most important thing you need to know about Use-flags is that they can be set globally for the whole system or only for a single package. + +So when should a Use-flag be set globally and when only for a specific package? This question is not always easy to answer. In principle, it is of course always safer to activate a Use-flag for one package only, as this has less impact on the system. On the other hand, there are some Use-flags that determine what hardware you have in your system at all, or which global applications are available. One example is the "bluetooth" Use-flag. If you do not have this (or do not want it) then it makes sense to activate or deactivate it globally. Now start first: +{{RootCmd|eselect profile list}} +Have you already set the correct profile? If not, here are the promised links: +* https://wiki.gentoo.org/wiki/Profile_(Portage) +* https://wiki.gentoo.org/wiki/Hardened_Desktop_Profiles +* https://wiki.gentoo.org/wiki/KDE/Hardened_KDE_Plasma_profile +* https://wiki.gentoo.org/wiki/GNOME/Guide/Hardened_GNOME_Profiles +* There is even an old forum thread that dealt, for example, with the linking of No-Multilib and Plasma (caution: this was at a time when the 17.1 profiles were current; today, of course, 23.0 is current): https://forums.gentoo.org/viewtopic-p-8694188.html#8694188 + + +Now check which Use-flags are already active. These do not need to be additionally activated - at the very least deactivated again if not desired (I do not have Bluetooth, for example, and therefore have the line USE="-bluetooth ..." in my make.conf): +{{RootCmd|emerge --info}} +Now read all about Use-flags: +* https://wiki.gentoo.org/wiki/Handbook:AMD64/Working/USE +* https://wiki.gentoo.org/wiki/USE_flag + + +One last note: There are some Use-flags that you should never set globally, such as “debug”, “static”, “static-libs” and “test”. These should really only be set for individual packages (and if you know what you are doing with them). You can always check what a global Use-flag WOULD do in your system by making this query: +<pre>USE="USEFLAG" emerge -uUDvp @world</pre> +or what would happen if you wanted to remove an already active Use-flag: +<pre>USE="-USEFLAG" emerge -uUDvp @world</pre> +Examples: +<pre>USE="magic" emerge -uUDvp @world</pre> +<pre>USE="-bluetooth" emerge -uUDvp @world</pre> '
Old page size (old_size)
7930
Lines added in edit (added_lines)
[ 0 => '', 1 => '== The Power of Gentoo ==', 2 => '', 3 => 'is the use of '''Profiles and Use-flags'''. We have excellent articles in our Gentoo Wiki and I will give you the most important links in a moment. But first I would like to give you an overview so that you can classify everything correctly.', 4 => '', 5 => 'Before you clarify questions about the Use-flags, you should have selected the right profile, because this profile already activates a lot of Use-flags for you, so you don't have to set them yourself in {{path|/etc/portage/make.conf}}. If you now think that this is unfortunately not possible for you because, for example, you are using the hardened sources AND want to have a KDE, but there is no profile for this, here is my first hint:', 6 => '', 7 => 'You can also combine profiles (the links will follow shortly).', 8 => '', 9 => 'Only when you have set the correct profile should you think about Use-flags that are still missing OR that you now have too many of. The most important thing you need to know about Use-flags is that they can be set globally for the whole system or only for a single package.', 10 => '', 11 => 'So when should a Use-flag be set globally and when only for a specific package? This question is not always easy to answer. In principle, it is of course always safer to activate a Use-flag for one package only, as this has less impact on the system. On the other hand, there are some Use-flags that determine what hardware you have in your system at all, or which global applications are available. One example is the "bluetooth" Use-flag. If you do not have this (or do not want it) then it makes sense to activate or deactivate it globally. Now start first:', 12 => '{{RootCmd|eselect profile list}}', 13 => 'Have you already set the correct profile? If not, here are the promised links:', 14 => '* https://wiki.gentoo.org/wiki/Profile_(Portage)', 15 => '* https://wiki.gentoo.org/wiki/Hardened_Desktop_Profiles', 16 => '* https://wiki.gentoo.org/wiki/KDE/Hardened_KDE_Plasma_profile', 17 => '* https://wiki.gentoo.org/wiki/GNOME/Guide/Hardened_GNOME_Profiles', 18 => '* There is even an old forum thread that dealt, for example, with the linking of No-Multilib and Plasma (caution: this was at a time when the 17.1 profiles were current; today, of course, 23.0 is current): https://forums.gentoo.org/viewtopic-p-8694188.html#8694188', 19 => '', 20 => '', 21 => 'Now check which Use-flags are already active. These do not need to be additionally activated - at the very least deactivated again if not desired (I do not have Bluetooth, for example, and therefore have the line USE="-bluetooth ..." in my make.conf):', 22 => '{{RootCmd|emerge --info}}', 23 => 'Now read all about Use-flags:', 24 => '* https://wiki.gentoo.org/wiki/Handbook:AMD64/Working/USE', 25 => '* https://wiki.gentoo.org/wiki/USE_flag', 26 => '', 27 => '', 28 => 'One last note: There are some Use-flags that you should never set globally, such as “debug”, “static”, “static-libs” and “test”. These should really only be set for individual packages (and if you know what you are doing with them). You can always check what a global Use-flag WOULD do in your system by making this query:', 29 => '<pre>USE="USEFLAG" emerge -uUDvp @world</pre>', 30 => 'or what would happen if you wanted to remove an already active Use-flag:', 31 => '<pre>USE="-USEFLAG" emerge -uUDvp @world</pre>', 32 => 'Examples:', 33 => '<pre>USE="magic" emerge -uUDvp @world</pre>', 34 => '<pre>USE="-bluetooth" emerge -uUDvp @world</pre>' ]
Lines removed in edit (removed_lines)
[]
New page text, stripped of any markup (new_text)
'I wrote this article so that I can link to it in the Gentoo forums if users have questions about it. Contents 1 Initial Installation 2 Pause during Installation 3 The most common mistake beginners make with Gentoo 4 The Power of Gentoo Initial Installation[Bearbeiten] The most important thing you need to know about Gentoo before you try to install it: Take your time&#160;! Installing Gentoo will take longer than installing a binary Linux distribution ... and you will also need more time for reading manuals, because your normal Linux knowledge is not (yet) sufficient. Plan several days. Before you jump into Handbook:AMD64 to install Gentoo, I would like to recommend a few things: First, read this fabulous article by our famous wiki editor @maffblaster (in my opinion, it should actually be the first page in our Handbook): User:Maffblaster/Drafts/Gentoo_Primers/The_Gentoo_Primer and right after that these articles: Benefits_of_Gentoo Installation Secondly, even if you want to use a manually configured kernel, you should first install the precompiled kernel image sys-kernel/gentoo-kernel-bin because you can then select it at any time via the boot manager and thus have a backup kernel when your manually configured kernel causes problems. This is the first option in Handbook:AMD64/Installation/Kernel. If you have never configured a kernel manually, I recommend you read this first - including all the linked articles: User:Pietinger/Tutorials/Manual_kernel_configuration Now you should have a better basis for deciding whether you want to go down this path. If you are unsure which option to choose here: Handbook:AMD64/Installation/Bootloader then I would recommend: For an OpenRC system use grub - for a systemd system use systemd-boot. Don't worry if you want to boot your kernel directly via UEFI, you can always install "Alternative 2: EFI Stub" later. Just read User:Pietinger/Tutorials/Boot_kernel_via_UEFI after you have completed all installation steps. However, a boot manager to start with is very handy in case you have a problem with a new / your manually configured kernel. It might be helpful to have the following quick guide printed out next to you while reading the Handbook:AMD64 and to compare it (and to copy the commands from there if you are unsure somewhere): User:Pietinger/Draft/Quick_Installation_OpenRC_for_an_UEFI_System Pause during Installation[Bearbeiten] Thirdly, you can take a break at any time during the initial installation to continue the next day. If you are at any step after this one: Handbook:AMD64/Installation/Base#Preparing_for_a_bootloader and before you have completed this step: Handbook:AMD64/Installation/Bootloader#Rebooting_the_system you can pause by executing both in reverse order: Instead of a reboot, you naturally perform a root #shutdown -h now and if you want start the next day you boot again: Handbook:AMD64/Installation/Media#Booting_the_installation_media and do these steps again = Chrooting into your Gentoo system: 1. Handbook:AMD64/Installation/Disks#Mounting_the_root_partition =&gt; root #mount /dev/sda3 /mnt/gentoo 2. Handbook:AMD64/Installation/Base#Mounting_the_necessary_filesystems =&gt; root #arch-chroot /mnt/gentoo 3. Handbook:AMD64/Installation/Base#Entering_the_new_environment =&gt; root #source /etc/profile 4. Mount your boot partition OR your ESP, depending if you use old BIOS boot or UEFI boot - Handbook:AMD64/Installation/Base#Preparing_for_a_bootloader =&gt; root #mount /dev/sda1 /efi Now continue where you left off yesterday ;-) These steps are also necessary to switch back to your installation when your system does not boot after Handbook:AMD64/Installation/Bootloader#Rebooting_the_system. The most common mistake beginners make with Gentoo[Bearbeiten] Now that you are done with the basic installation, you should keep your Gentoo up to date. The best way to keep your Gentoo up to date is to update everything after an emerge --sync with an emerge -uUDv @world. (See also: User:Pietinger/Tutorials/Optimize_compile_times#My_Recommendation). Gentoo also allows you to update only individual packages and not everything at once. For example, you are allowed to update only the kernel. You have two options for this: root #emerge -uD gentoo-kernel-bin or root #emerge -1uD gentoo-kernel-bin You may have noticed that I also use this parameter -1 in my CheatSheet for a kernel update. What does this do? As you have probably already seen from the installation, there are packages that require other packages - dependencies. Gentoo - Portage - knows these dependencies and automatically resolves them for you and installs these packages automatically. For example, if KDE needs a “gcc”, you don't have to install it beforehand, but it is automatically installed during the installation of KDE (in reality, every program needs the gcc, so it is/was already in stage3). Now take a look at the file /var/lib/portage/world. Do you see the “gcc” in your world file? No. This file only contains all the packages that you have just explicitly installed, but not the dependencies. There is a good reason for this: If you no longer want a package and therefore uninstall it, it will disappear from the world file. If you then do an emerge -c, all packages that were ONLY a dependency of this package will also be uninstalled ... ... as long as you have not “included” these dependencies in the world file. However, this is exactly what happens if you update individual packages and do not use this parameter -1. Without the -1 parameter for a single update, such packages are added to the world file ... and THEN they are no longer deleted with an emerge -c. This means: You should actually always use the -1 parameter for every SINGLE update - you only don't need it for an update to @world. (Actually, this only applies to slotted packages - but as a Gentoo newbie you won't know what that is yet). Only omit this parameter if you really want to keep a specific version. In this example you can see that I wanted to keep a specific kernel and therefore portage automatically made this additional entry in my /var/lib/portage/world: FILE /var/lib/portage/world ... sys-kernel/gentoo-sources sys-kernel/gentoo-sources:6.12.21 ... With today's update to @world I got a new kernel version. Of course I want to delete the old version, but portage will not delete the protected version 6.12.21 (and of course the current one), only the old one: root #emerge -cp [...] &gt;&gt;&gt; These are the packages that would be unmerged: sys-kernel/gentoo-sources selected: 6.14.2 protected: none omitted: 6.12.21 6.14.3 [...] You should now know all about this parameter so that you understand what this thread is about: [[1]] Further note: It is strongly recommended not to edit file /var/lib/portage/world manually. If you want to uninstall a package, let Portage do it for you. Why? Because Portage may find out that it is a bad idea. Try an emerge -c gcc. Portage will not allow you to do it. If you add the -v parameter, Portage will also tell you why it's a bad idea: root #emerge -cv gcc Calculating dependencies... done! sys-devel/gcc-14.2.1_p20241221 pulled in by: @system requires sys-devel/gcc ... sys-libs/glibc-2.40-r8 requires &gt;=sys-devel/gcc-6.2 &gt;&gt;&gt; No packages selected for removal by depclean Deleting a GCC version would only be possible if you have a new (additional) version after an update to @world. Then Portage would allow you to delete the old version. If you just want to check if you could uninstall a package use the parameter -p to be on the safe side; i.e. emerge -cpv PACKAGENAME. The Power of Gentoo[Bearbeiten] is the use of Profiles and Use-flags. We have excellent articles in our Gentoo Wiki and I will give you the most important links in a moment. But first I would like to give you an overview so that you can classify everything correctly. Before you clarify questions about the Use-flags, you should have selected the right profile, because this profile already activates a lot of Use-flags for you, so you don't have to set them yourself in /etc/portage/make.conf. If you now think that this is unfortunately not possible for you because, for example, you are using the hardened sources AND want to have a KDE, but there is no profile for this, here is my first hint: You can also combine profiles (the links will follow shortly). Only when you have set the correct profile should you think about Use-flags that are still missing OR that you now have too many of. The most important thing you need to know about Use-flags is that they can be set globally for the whole system or only for a single package. So when should a Use-flag be set globally and when only for a specific package? This question is not always easy to answer. In principle, it is of course always safer to activate a Use-flag for one package only, as this has less impact on the system. On the other hand, there are some Use-flags that determine what hardware you have in your system at all, or which global applications are available. One example is the "bluetooth" Use-flag. If you do not have this (or do not want it) then it makes sense to activate or deactivate it globally. Now start first: root #eselect profile list Have you already set the correct profile? If not, here are the promised links: https://wiki.gentoo.org/wiki/Profile_(Portage) https://wiki.gentoo.org/wiki/Hardened_Desktop_Profiles https://wiki.gentoo.org/wiki/KDE/Hardened_KDE_Plasma_profile https://wiki.gentoo.org/wiki/GNOME/Guide/Hardened_GNOME_Profiles There is even an old forum thread that dealt, for example, with the linking of No-Multilib and Plasma (caution: this was at a time when the 17.1 profiles were current; today, of course, 23.0 is current): https://forums.gentoo.org/viewtopic-p-8694188.html#8694188 Now check which Use-flags are already active. These do not need to be additionally activated - at the very least deactivated again if not desired (I do not have Bluetooth, for example, and therefore have the line USE="-bluetooth ..." in my make.conf): root #emerge --info Now read all about Use-flags: https://wiki.gentoo.org/wiki/Handbook:AMD64/Working/USE https://wiki.gentoo.org/wiki/USE_flag One last note: There are some Use-flags that you should never set globally, such as “debug”, “static”, “static-libs” and “test”. These should really only be set for individual packages (and if you know what you are doing with them). You can always check what a global Use-flag WOULD do in your system by making this query: USE="USEFLAG" emerge -uUDvp @world or what would happen if you wanted to remove an already active Use-flag: USE="-USEFLAG" emerge -uUDvp @world Examples: USE="magic" emerge -uUDvp @world USE="-bluetooth" emerge -uUDvp @world'
Parsed HTML source of the new revision (new_html)
'<div class="mw-parser-output"><p>I wrote this article so that I can link to it in the Gentoo forums if users have questions about it. </p> <div id="toc" class="toc" role="navigation" aria-labelledby="mw-toc-heading"><input type="checkbox" role="button" id="toctogglecheckbox" class="toctogglecheckbox" style="display:none" /><div class="toctitle" lang="en" dir="ltr"><h2 id="mw-toc-heading">Contents</h2><span class="toctogglespan"><label class="toctogglelabel" for="toctogglecheckbox"></label></span></div> <ul> <li class="toclevel-1 tocsection-1"><a href="#Initial_Installation"><span class="tocnumber">1</span> <span class="toctext">Initial Installation</span></a></li> <li class="toclevel-1 tocsection-2"><a href="#Pause_during_Installation"><span class="tocnumber">2</span> <span class="toctext">Pause during Installation</span></a></li> <li class="toclevel-1 tocsection-3"><a href="#The_most_common_mistake_beginners_make_with_Gentoo"><span class="tocnumber">3</span> <span class="toctext">The most common mistake beginners make with Gentoo</span></a></li> <li class="toclevel-1 tocsection-4"><a href="#The_Power_of_Gentoo"><span class="tocnumber">4</span> <span class="toctext">The Power of Gentoo</span></a></li> </ul> </div> <h2><span class="mw-headline" id="Initial_Installation">Initial Installation</span><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/index.php?title=User:Pietinger/New_at_Gentoo&amp;action=edit&amp;section=1" title="Abschnitt bearbeiten: Initial Installation">Bearbeiten</a><span class="mw-editsection-bracket">]</span></span></h2> <p>The most important thing you need to know about Gentoo before you try to install it: </p><p><span style="color:red">Take your time&#160;!</span> </p><p>Installing Gentoo will take longer than installing a binary Linux distribution ... and you will also need more time for reading manuals, because your normal Linux knowledge is not (yet) sufficient. Plan several <b>days</b>. </p><p>Before you jump into <a href="/wiki/Handbook:AMD64" title="Handbook:AMD64">Handbook:AMD64</a> to install Gentoo, I would like to recommend a few things: </p><p>First, read this fabulous article by our famous wiki editor @maffblaster (in my opinion, it should actually be the first page in our Handbook): </p> <ul><li><a href="/wiki/User:Maffblaster/Drafts/Gentoo_Primers/The_Gentoo_Primer" title="User:Maffblaster/Drafts/Gentoo Primers/The Gentoo Primer">User:Maffblaster/Drafts/Gentoo_Primers/The_Gentoo_Primer</a></li></ul> <p><br /> and right after that these articles: </p> <ul><li><a href="/wiki/Benefits_of_Gentoo" title="Benefits of Gentoo">Benefits_of_Gentoo</a></li></ul> <ul><li><a href="/wiki/Installation" title="Installation">Installation</a></li></ul> <p><br /> Secondly, even if you want to use a manually configured kernel, you should first install the precompiled kernel image <b>sys-kernel/gentoo-kernel-bin</b> because you can then select it at any time via the boot manager and thus have a backup kernel when your manually configured kernel causes problems. This is the first option in <a href="/wiki/Handbook:AMD64/Installation/Kernel" title="Handbook:AMD64/Installation/Kernel">Handbook:AMD64/Installation/Kernel</a>. </p><p>If you have never configured a kernel manually, I recommend you read this first - including all the linked articles: <a href="/wiki/User:Pietinger/Tutorials/Manual_kernel_configuration" title="User:Pietinger/Tutorials/Manual kernel configuration">User:Pietinger/Tutorials/Manual_kernel_configuration</a> </p><p>Now you should have a better basis for deciding whether you want to go down this path. </p><p>If you are unsure which option to choose here: <a href="/wiki/Handbook:AMD64/Installation/Bootloader" title="Handbook:AMD64/Installation/Bootloader">Handbook:AMD64/Installation/Bootloader</a> then I would recommend: </p><p>For an <b>OpenRC</b> system use <b>grub</b> - for a <b>systemd</b> system use <b>systemd-boot</b>. </p><p>Don't worry if you want to boot your kernel directly via UEFI, you can always install "Alternative 2: EFI Stub" <b>later</b>. Just read <a href="/wiki/User:Pietinger/Tutorials/Boot_kernel_via_UEFI" title="User:Pietinger/Tutorials/Boot kernel via UEFI">User:Pietinger/Tutorials/Boot_kernel_via_UEFI</a> after you have completed all installation steps. </p><p>However, a boot manager to start with is very handy in case you have a problem with a new / your manually configured kernel. </p><p>It might be helpful to have the following quick guide printed out next to you while reading the <a href="/wiki/Handbook:AMD64" title="Handbook:AMD64">Handbook:AMD64</a> and to compare it (and to copy the commands from there if you are unsure somewhere): <a href="/wiki/User:Pietinger/Draft/Quick_Installation_OpenRC_for_an_UEFI_System" title="User:Pietinger/Draft/Quick Installation OpenRC for an UEFI System">User:Pietinger/Draft/Quick_Installation_OpenRC_for_an_UEFI_System</a> </p> <h2><span class="mw-headline" id="Pause_during_Installation">Pause during Installation</span><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/index.php?title=User:Pietinger/New_at_Gentoo&amp;action=edit&amp;section=2" title="Abschnitt bearbeiten: Pause during Installation">Bearbeiten</a><span class="mw-editsection-bracket">]</span></span></h2> <p>Thirdly, you can take a break at any time during the initial installation to continue the next day. If you are at any step after this one: </p><p><a href="/wiki/Handbook:AMD64/Installation/Base#Preparing_for_a_bootloader" title="Handbook:AMD64/Installation/Base">Handbook:AMD64/Installation/Base#Preparing_for_a_bootloader</a> </p><p>and before you have completed this step: </p><p><a href="/wiki/Handbook:AMD64/Installation/Bootloader#Rebooting_the_system" title="Handbook:AMD64/Installation/Bootloader">Handbook:AMD64/Installation/Bootloader#Rebooting_the_system</a> </p><p>you can pause by executing both in reverse order: </p><p>Instead of a reboot, you naturally perform a </p> <div class="cmd-box"><div><code style="color: #ef2929; user-select: none; font-weight: bold;">root <span style="color:royalblue;">#</span></code><code>shutdown -h now</code></div></div> <p>and if you want start the next day you boot again: <a href="/wiki/Handbook:AMD64/Installation/Media#Booting_the_installation_media" title="Handbook:AMD64/Installation/Media">Handbook:AMD64/Installation/Media#Booting_the_installation_media</a> </p><p>and do these steps again = <b>Chrooting into your Gentoo system</b>: </p><p>1. <a href="/wiki/Handbook:AMD64/Installation/Disks#Mounting_the_root_partition" title="Handbook:AMD64/Installation/Disks">Handbook:AMD64/Installation/Disks#Mounting_the_root_partition</a> =&gt; </p> <div class="cmd-box"><div><code style="color: #ef2929; user-select: none; font-weight: bold;">root <span style="color:royalblue;">#</span></code><code>mount /dev/sda3 /mnt/gentoo</code></div></div> <p>2. <a href="/wiki/Handbook:AMD64/Installation/Base#Mounting_the_necessary_filesystems" title="Handbook:AMD64/Installation/Base">Handbook:AMD64/Installation/Base#Mounting_the_necessary_filesystems</a> =&gt; </p> <div class="cmd-box"><div><code style="color: #ef2929; user-select: none; font-weight: bold;">root <span style="color:royalblue;">#</span></code><code>arch-chroot /mnt/gentoo</code></div></div> <p>3. <a href="/wiki/Handbook:AMD64/Installation/Base#Entering_the_new_environment" title="Handbook:AMD64/Installation/Base">Handbook:AMD64/Installation/Base#Entering_the_new_environment</a> =&gt; </p> <div class="cmd-box"><div><code style="color: #ef2929; user-select: none; font-weight: bold;">root <span style="color:royalblue;">#</span></code><code>source /etc/profile</code></div></div> <p>4. Mount your boot partition OR your ESP, depending if you use old BIOS boot or UEFI boot - <a href="/wiki/Handbook:AMD64/Installation/Base#Preparing_for_a_bootloader" title="Handbook:AMD64/Installation/Base">Handbook:AMD64/Installation/Base#Preparing_for_a_bootloader</a> =&gt; </p> <div class="cmd-box"><div><code style="color: #ef2929; user-select: none; font-weight: bold;">root <span style="color:royalblue;">#</span></code><code>mount /dev/sda1 /efi</code></div></div> <p>Now continue where you left off yesterday ;-) </p><p>These steps are also necessary to switch back to your installation when your system does not boot after <a href="/wiki/Handbook:AMD64/Installation/Bootloader#Rebooting_the_system" title="Handbook:AMD64/Installation/Bootloader">Handbook:AMD64/Installation/Bootloader#Rebooting_the_system</a>. </p> <h2><span class="mw-headline" id="The_most_common_mistake_beginners_make_with_Gentoo">The most common mistake beginners make with Gentoo</span><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/index.php?title=User:Pietinger/New_at_Gentoo&amp;action=edit&amp;section=3" title="Abschnitt bearbeiten: The most common mistake beginners make with Gentoo">Bearbeiten</a><span class="mw-editsection-bracket">]</span></span></h2> <p>Now that you are done with the basic installation, you should keep your Gentoo up to date. </p><p>The best way to keep your Gentoo up to date is to update everything after an <span style="font-family: monospace; font-size: 95%; font-weight: bold;" class="tripleclick-separator">emerge --sync</span> with an <span style="font-family: monospace; font-size: 95%; font-weight: bold;" class="tripleclick-separator">emerge -uUDv @world</span>. </p><p>(See also: <a href="/wiki/User:Pietinger/Tutorials/Optimize_compile_times#My_Recommendation" title="User:Pietinger/Tutorials/Optimize compile times">User:Pietinger/Tutorials/Optimize_compile_times#My_Recommendation</a>). </p><p>Gentoo also allows you to update only individual packages and not everything at once. For example, you are allowed to update only the kernel. You have two options for this: </p> <div class="cmd-box"><div><code style="color: #ef2929; user-select: none; font-weight: bold;">root <span style="color:royalblue;">#</span></code><code>emerge -uD gentoo-kernel-bin</code></div></div> <p>or </p> <div class="cmd-box"><div><code style="color: #ef2929; user-select: none; font-weight: bold;">root <span style="color:royalblue;">#</span></code><code>emerge -1uD gentoo-kernel-bin</code></div></div> <p>You may have noticed that I also use this parameter -1 in my CheatSheet for a kernel update. What does this do? </p><p>As you have probably already seen from the installation, there are packages that require other packages - dependencies. Gentoo - Portage - knows these dependencies and automatically resolves them for you and installs these packages automatically. For example, if KDE needs a “gcc”, you don't have to install it beforehand, but it is automatically installed during the installation of KDE (in reality, every program needs the gcc, so it is/was already in stage3). Now take a look at the file <span style="font-family: monospace; font-size: 95%; color: #3c763d; font-weight: 600;">/var/lib/portage/world</span>. Do you see the “gcc” in your world file? No. This file only contains all the packages that you have just explicitly installed, but not the dependencies. There is a good reason for this: </p><p>If you no longer want a package and therefore uninstall it, it will disappear from the world file. If you then do an <span style="font-family: monospace; font-size: 95%; font-weight: bold;" class="tripleclick-separator">emerge -c</span>, all packages that were ONLY a dependency of this package will also be uninstalled ... </p><p>... as long as you have not “included” these dependencies in the world file. However, this is exactly what happens if you update individual packages and do not use this parameter -1. Without the -1 parameter for a single update, such packages are added to the world file ... and THEN they are no longer deleted with an <span style="font-family: monospace; font-size: 95%; font-weight: bold;" class="tripleclick-separator">emerge -c</span>. This means: You should actually always use the -1 parameter for every SINGLE update - <b>you only don't need it for an update to @world</b>. (Actually, this only applies to slotted packages - but as a Gentoo newbie you won't know what that is yet). </p><p>Only omit this parameter if you really want to keep a specific version. In this example you can see that I wanted to keep a specific kernel and therefore portage automatically made this additional entry in my <span style="font-family: monospace; font-size: 95%; color: #3c763d; font-weight: 600;">/var/lib/portage/world</span>: </p> <div class="box-caption"><span class="label" style="margin-right: .5em; background-color: #54487A">FILE</span> <strong><code style="border: none; background: none; color: #54487A; margin-right: .5em;">/var/lib/portage/world</code></strong><strong></strong></div> <div class="mw-highlight mw-highlight-lang-text mw-content-ltr" dir="ltr"><pre><span></span>... sys-kernel/gentoo-sources sys-kernel/gentoo-sources:6.12.21 ... </pre></div> <p>With today's update to @world I got a new kernel version. Of course I want to delete the old version, but portage will not delete the protected version 6.12.21 (and of course the current one), only the old one: </p> <div class="cmd-box"><div><code style="color: #ef2929; user-select: none; font-weight: bold;">root <span style="color:royalblue;">#</span></code><code>emerge -cp</code></div></div> <pre>[...] &gt;&gt;&gt; These are the packages that would be unmerged: sys-kernel/gentoo-sources selected: 6.14.2 protected: none omitted: 6.12.21 6.14.3 [...]</pre> <p>You should now know all about this parameter so that you understand what this thread is about: [<a rel="nofollow" class="external autonumber" href="https://forums.gentoo.org/viewtopic-t-1143543-highlight-.html">[1]</a>] </p><p>Further note: It is strongly recommended not to edit file <span style="font-family: monospace; font-size: 95%; color: #3c763d; font-weight: 600;">/var/lib/portage/world</span> manually. If you want to uninstall a package, let Portage do it for you. Why? Because Portage may find out that it is a bad idea. Try an <span style="font-family: monospace; font-size: 95%; font-weight: bold;" class="tripleclick-separator">emerge -c gcc</span>. Portage will not allow you to do it. If you add the -v parameter, Portage will also tell you why it's a bad idea: </p> <div class="cmd-box"><div><code style="color: #ef2929; user-select: none; font-weight: bold;">root <span style="color:royalblue;">#</span></code><code>emerge -cv gcc</code></div></div> <pre>Calculating dependencies... done! sys-devel/gcc-14.2.1_p20241221 pulled in by: @system requires sys-devel/gcc ... sys-libs/glibc-2.40-r8 requires &gt;=sys-devel/gcc-6.2 &gt;&gt;&gt; No packages selected for removal by depclean</pre> <p>Deleting a GCC version would only be possible if you have a new (additional) version after an update to @world. Then Portage would allow you to delete the old version. If you just want to check if you could uninstall a package use the parameter -p to be on the safe side; i.e. <span style="font-family: monospace; font-size: 95%; font-weight: bold;" class="tripleclick-separator">emerge -cpv PACKAGENAME</span>. </p> <h2><span class="mw-headline" id="The_Power_of_Gentoo">The Power of Gentoo</span><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/index.php?title=User:Pietinger/New_at_Gentoo&amp;action=edit&amp;section=4" title="Abschnitt bearbeiten: The Power of Gentoo">Bearbeiten</a><span class="mw-editsection-bracket">]</span></span></h2> <p>is the use of <b>Profiles and Use-flags</b>. We have excellent articles in our Gentoo Wiki and I will give you the most important links in a moment. But first I would like to give you an overview so that you can classify everything correctly. </p><p>Before you clarify questions about the Use-flags, you should have selected the right profile, because this profile already activates a lot of Use-flags for you, so you don't have to set them yourself in <span style="font-family: monospace; font-size: 95%; color: #3c763d; font-weight: 600;">/etc/portage/make.conf</span>. If you now think that this is unfortunately not possible for you because, for example, you are using the hardened sources AND want to have a KDE, but there is no profile for this, here is my first hint: </p><p>You can also combine profiles (the links will follow shortly). </p><p>Only when you have set the correct profile should you think about Use-flags that are still missing OR that you now have too many of. The most important thing you need to know about Use-flags is that they can be set globally for the whole system or only for a single package. </p><p>So when should a Use-flag be set globally and when only for a specific package? This question is not always easy to answer. In principle, it is of course always safer to activate a Use-flag for one package only, as this has less impact on the system. On the other hand, there are some Use-flags that determine what hardware you have in your system at all, or which global applications are available. One example is the "bluetooth" Use-flag. If you do not have this (or do not want it) then it makes sense to activate or deactivate it globally. Now start first: </p> <div class="cmd-box"><div><code style="color: #ef2929; user-select: none; font-weight: bold;">root <span style="color:royalblue;">#</span></code><code>eselect profile list</code></div></div> <p>Have you already set the correct profile? If not, here are the promised links: </p> <ul><li><a rel="nofollow" class="external free" href="https://wiki.gentoo.org/wiki/Profile_(Portage)">https://wiki.gentoo.org/wiki/Profile_(Portage)</a></li> <li><a rel="nofollow" class="external free" href="https://wiki.gentoo.org/wiki/Hardened_Desktop_Profiles">https://wiki.gentoo.org/wiki/Hardened_Desktop_Profiles</a></li> <li><a rel="nofollow" class="external free" href="https://wiki.gentoo.org/wiki/KDE/Hardened_KDE_Plasma_profile">https://wiki.gentoo.org/wiki/KDE/Hardened_KDE_Plasma_profile</a></li> <li><a rel="nofollow" class="external free" href="https://wiki.gentoo.org/wiki/GNOME/Guide/Hardened_GNOME_Profiles">https://wiki.gentoo.org/wiki/GNOME/Guide/Hardened_GNOME_Profiles</a></li> <li>There is even an old forum thread that dealt, for example, with the linking of No-Multilib and Plasma (caution: this was at a time when the 17.1 profiles were current; today, of course, 23.0 is current): <a rel="nofollow" class="external free" href="https://forums.gentoo.org/viewtopic-p-8694188.html#8694188">https://forums.gentoo.org/viewtopic-p-8694188.html#8694188</a></li></ul> <p><br /> Now check which Use-flags are already active. These do not need to be additionally activated - at the very least deactivated again if not desired (I do not have Bluetooth, for example, and therefore have the line USE="-bluetooth ..." in my make.conf): </p> <div class="cmd-box"><div><code style="color: #ef2929; user-select: none; font-weight: bold;">root <span style="color:royalblue;">#</span></code><code>emerge --info</code></div></div> <p>Now read all about Use-flags: </p> <ul><li><a rel="nofollow" class="external free" href="https://wiki.gentoo.org/wiki/Handbook:AMD64/Working/USE">https://wiki.gentoo.org/wiki/Handbook:AMD64/Working/USE</a></li> <li><a rel="nofollow" class="external free" href="https://wiki.gentoo.org/wiki/USE_flag">https://wiki.gentoo.org/wiki/USE_flag</a></li></ul> <p><br /> One last note: There are some Use-flags that you should never set globally, such as “debug”, “static”, “static-libs” and “test”. These should really only be set for individual packages (and if you know what you are doing with them). You can always check what a global Use-flag WOULD do in your system by making this query: </p> <pre>USE="USEFLAG" emerge -uUDvp @world</pre> <p>or what would happen if you wanted to remove an already active Use-flag: </p> <pre>USE="-USEFLAG" emerge -uUDvp @world</pre> <p>Examples: </p> <pre>USE="magic" emerge -uUDvp @world</pre> <pre>USE="-bluetooth" emerge -uUDvp @world</pre> '
Unix timestamp of change (timestamp)
1745337024