From 782fa9b8c944d22e87aa6fbce61972e050660912 Mon Sep 17 00:00:00 2001 From: Nick Alberelli Date: Fri, 23 Jun 2023 08:33:45 -0400 Subject: [PATCH 01/11] Docs: Address Wake on LAN Feedback --- docs/td-guide/workstations/maintaince.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/docs/td-guide/workstations/maintaince.md b/docs/td-guide/workstations/maintaince.md index 651d0812..f66e4f30 100644 --- a/docs/td-guide/workstations/maintaince.md +++ b/docs/td-guide/workstations/maintaince.md @@ -25,7 +25,11 @@ This is a temporary solution that will be depreciated and replace with project b 4. Run `date -R > /var/cache/update_info/timestamp.chk` to mark this update as the latest ## Wake on LAN -Wake on LAN use the hardware information provided by the clients to wake up all that are currently offline. If this is used in combination with a system update, the client computers will turn off after the system update has completed. (Unless any users are logged into the system when the update finishes). +Wake on LAN is used turn on computers from a "low power" or sleeping state so they can be updated. Wake on LAN uses the hardware information provided by the clients to immediately wake up all that are currently offline. The following guide covers how to parse the hardware info sent by client computers and to use that information to wake any sleeping computers via Wake on LAN. + +::: info Will Computers Turn Off after updating? +If this is used in combination with a system update, the client computers will turn off after the system update has completed. (Unless any users are logged into the system when the update finishes). +::: 1. `ssh user@build-server-addr` connect to your build server via ssh 2. Use `su` to Login as root or login as root directly -- 2.30.2 From 89c89d02174fb8573d564497a652790655b06755 Mon Sep 17 00:00:00 2001 From: Nick Alberelli Date: Fri, 23 Jun 2023 08:50:45 -0400 Subject: [PATCH 02/11] Docs: Address Update Addons feedback --- docs/td-guide/workstations/maintaince.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/td-guide/workstations/maintaince.md b/docs/td-guide/workstations/maintaince.md index f66e4f30..21328ae5 100644 --- a/docs/td-guide/workstations/maintaince.md +++ b/docs/td-guide/workstations/maintaince.md @@ -11,16 +11,16 @@ The script will pull all of the latest changes from the main gentoo repository a ## Update addons on `/shared/software/addons` - The software inside the `shared/software/addons` directory are Live Packages. Live Packages are packages that tracks the source-code repository directly and is not tied to a specific release. + The software inside the `shared/software/addons` directory are the [Blender Studio Pipeline addons](https://studio.blender.org/pipeline/addons/overview). These addons are considered Live Packages. Live Packages are packages that track the source-code repository directly and are not tied to a specific release. ::: warning Temporary Solution -This is a temporary solution that will be depreciated and replace with project based addons. +This is a temporary solution that will be depreciated and replaced with project based addons. ::: 1. `ssh user@build-server-addr` connect to your build server via ssh 2. Use `su` to Login as root or login as root directly 3. Run `emerge -1 {package-name}` to update a live package. - - Run `emerge -1 flamenco` to update the flamenco client/addon + - Run `emerge -1 flamenco` to update the [Flamenco](https://flamenco.blender.org/) manager/add-on - Run `emerge -1 blender-studio-tools` to update the studio addons 4. Run `date -R > /var/cache/update_info/timestamp.chk` to mark this update as the latest -- 2.30.2 From 462605b1831ec59e25be365a27e4f5b0f46714a6 Mon Sep 17 00:00:00 2001 From: Nick Alberelli Date: Fri, 23 Jun 2023 09:24:19 -0400 Subject: [PATCH 03/11] Docs: Address How to Update Build Server Feedback --- docs/td-guide/workstations/maintaince.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/td-guide/workstations/maintaince.md b/docs/td-guide/workstations/maintaince.md index 21328ae5..199adfe2 100644 --- a/docs/td-guide/workstations/maintaince.md +++ b/docs/td-guide/workstations/maintaince.md @@ -1,7 +1,7 @@ # Workstation System Maintenance ## How to Update Build Server & Clients -The script will pull all of the latest changes from the main gentoo repository and initiate a system update. When done, it will ask if you want to push out the changes to the clients. The clients checks for updates every five minutes. If the server signals that there are updates, they will perform a sync with the build server and download and install all updated packages. +To update Client Workstations; the Build Server will pull all of the latest changes from the [main gentoo repository](https://wiki.gentoo.org/wiki/Ebuild_repository#:~:text=The%20Gentoo%20ebuild%20repository%20is%20the%20main%20ebuild%20repository%20for,to%20be%20available%20to%20Portage.) and compile a system update. When done, it will ask if you want to push out the compiled changes to the clients. The clients checks for updates every five minutes. If the build server signals that there are updates, the clients will perform a sync, downloading the compiled packages from the build server and installing all updated packages. 1. `ssh user@build-server-addr` connect to your build server via ssh 2. Use `su` to Login as root or login as root directly @@ -9,19 +9,19 @@ The script will pull all of the latest changes from the main gentoo repository a 4. Run `update_build_server.sh` -## Update addons on `/shared/software/addons` +## Update Add-ons in `/shared/software/Add-ons` - The software inside the `shared/software/addons` directory are the [Blender Studio Pipeline addons](https://studio.blender.org/pipeline/addons/overview). These addons are considered Live Packages. Live Packages are packages that track the source-code repository directly and are not tied to a specific release. + The software inside the `shared/software/addons` directory are the [Blender Studio Pipeline Add-ons](https://studio.blender.org/pipeline/Add-ons/overview). These Add-ons are considered Live Packages. Live Packages are packages that track the source repository directly and are not tied to a specific release. ::: warning Temporary Solution -This is a temporary solution that will be depreciated and replaced with project based addons. +This is a temporary solution that will be depreciated and replaced with project based Add-ons. ::: 1. `ssh user@build-server-addr` connect to your build server via ssh 2. Use `su` to Login as root or login as root directly 3. Run `emerge -1 {package-name}` to update a live package. - Run `emerge -1 flamenco` to update the [Flamenco](https://flamenco.blender.org/) manager/add-on - - Run `emerge -1 blender-studio-tools` to update the studio addons + - Run `emerge -1 blender-studio-tools` to update the studio Add-ons 4. Run `date -R > /var/cache/update_info/timestamp.chk` to mark this update as the latest ## Wake on LAN -- 2.30.2 From 30532770760c1316c9f4d9761d00b5b25f9433a0 Mon Sep 17 00:00:00 2001 From: Nick Alberelli Date: Fri, 23 Jun 2023 12:00:15 -0400 Subject: [PATCH 04/11] Docs fix typos in Gentoo overview --- docs/td-guide/workstations/overview.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/td-guide/workstations/overview.md b/docs/td-guide/workstations/overview.md index 26b722cc..437f003d 100644 --- a/docs/td-guide/workstations/overview.md +++ b/docs/td-guide/workstations/overview.md @@ -1,6 +1,6 @@ # Overview of Operating System -[Gentoo](https://www.gentoo.org/) is a source based distro, which means you download the source code for every package and compile it yourself. The advantage of Gentoo is that we can much more easily interact with the source code and upstream projects. To learn about how to work with Gentoo see the [Gentoo Handbook](https://wiki.gentoo.org/wiki/Handbook:AMD64) +[Gentoo](https://www.gentoo.org/) is a source based distribution, which means you download the source code for every package and compile it yourself. The advantage of Gentoo is that we can much more easily interact with source code and upstream projects. To learn about how to work with Gentoo see the [Gentoo Handbook](https://wiki.gentoo.org/wiki/Handbook:AMD64) The Gentoo package manager allows a single computer to compile and serve pre-built packages to a network of computers, this can be useful in a studio environment. This server is called the "Gentoo Build Server" which provides software to the client systems. -- 2.30.2 From e9232a2ac9cb249e03f6ed69d78f326a6c875dfc Mon Sep 17 00:00:00 2001 From: Nick Alberelli Date: Fri, 23 Jun 2023 12:53:16 -0400 Subject: [PATCH 05/11] Docs: Address overview feedback --- docs/td-guide/workstations/overview.md | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/docs/td-guide/workstations/overview.md b/docs/td-guide/workstations/overview.md index 437f003d..2b417c7e 100644 --- a/docs/td-guide/workstations/overview.md +++ b/docs/td-guide/workstations/overview.md @@ -1,8 +1,11 @@ -# Overview of Operating System +# Introduction -[Gentoo](https://www.gentoo.org/) is a source based distribution, which means you download the source code for every package and compile it yourself. The advantage of Gentoo is that we can much more easily interact with source code and upstream projects. To learn about how to work with Gentoo see the [Gentoo Handbook](https://wiki.gentoo.org/wiki/Handbook:AMD64) +The workstation section will cover the setup/maintenance of workstations in the Blende Studio Pipeline. This section is intended for IT Professionals, Technical Directors or any technically inclined members of a studio's team. The following is a brief overview of the workstation eco-system. +# Overview -The Gentoo package manager allows a single computer to compile and serve pre-built packages to a network of computers, this can be useful in a studio environment. This server is called the "Gentoo Build Server" which provides software to the client systems. +Blender Studio workstations use the [Gentoo](https://www.gentoo.org/) Operating system. It is a source based distribution, which means you download the source code for every package and compile it yourself. The advantage of Gentoo is that we can much more easily interact with source code and upstream projects. To learn about how to work with Gentoo see the [Gentoo Handbook](https://wiki.gentoo.org/wiki/Handbook:AMD64) + +The Gentoo package manager allows a single computer to compile and serve pre-built packages to a network of computers, this can be useful in a studio environment. This server is called the "Build Server" which provides software to the client systems. Here is an overview of how we deploy Gentoo at the Blender Studio: @@ -14,6 +17,8 @@ Here is an overview of how we deploy Gentoo at the Blender Studio: |**Client System**|Workstations for users within the studio that receive software & updates from Build Server| -Note that the clients do not strictly depend on the Build Server. The build server can be unavailable and all clients will still be able to install packages and work as normal. They will simply not receive any automatic updates or download any precompiled packages if the build server is down. +::: info Note +Clients do not strictly depend on the Build Server. The build server can be unavailable and all clients will still be able to install packages and work as normal. They will simply not receive any automatic updates or download any precompiled packages if the build server is down. After the install process is done, the IPXE file host is only needed for reinstalls or if any of them wants to access it for running MemTest or any other utilities hosted there. +::: \ No newline at end of file -- 2.30.2 From aef9eb562a6d6799434ba2ecdeaef1ac3eb1914e Mon Sep 17 00:00:00 2001 From: Nick Alberelli Date: Fri, 23 Jun 2023 12:53:42 -0400 Subject: [PATCH 06/11] Docs: Fix Update Addons Description --- docs/td-guide/workstations/maintaince.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/td-guide/workstations/maintaince.md b/docs/td-guide/workstations/maintaince.md index 199adfe2..93257970 100644 --- a/docs/td-guide/workstations/maintaince.md +++ b/docs/td-guide/workstations/maintaince.md @@ -9,9 +9,9 @@ To update Client Workstations; the Build Server will pull all of the latest chan 4. Run `update_build_server.sh` -## Update Add-ons in `/shared/software/Add-ons` +## Update Add-ons in `/shared/software/addons` - The software inside the `shared/software/addons` directory are the [Blender Studio Pipeline Add-ons](https://studio.blender.org/pipeline/Add-ons/overview). These Add-ons are considered Live Packages. Live Packages are packages that track the source repository directly and are not tied to a specific release. + The software inside the `shared/software/addons` directory are the [Blender Studio Pipeline Add-ons](https://studio.blender.org/pipeline/Add-ons/overview), the [Flamenco](https://flamenco.blender.org/) Add-on and any other Add-ons that need to be distributed to all Blender Studio Users. These Add-ons are considered Live Packages. Live Packages are packages that fetch updates from the source repository directly and are not tied to a specific release. ::: warning Temporary Solution This is a temporary solution that will be depreciated and replaced with project based Add-ons. -- 2.30.2 From 6d599902b0d2cb11704040aed10eddf16b302842 Mon Sep 17 00:00:00 2001 From: Nick Alberelli Date: Fri, 23 Jun 2023 13:10:22 -0400 Subject: [PATCH 07/11] Docs: Cleanup Maintenance Guide --- docs/td-guide/workstations/maintaince.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/docs/td-guide/workstations/maintaince.md b/docs/td-guide/workstations/maintaince.md index 93257970..056f9cce 100644 --- a/docs/td-guide/workstations/maintaince.md +++ b/docs/td-guide/workstations/maintaince.md @@ -5,8 +5,7 @@ To update Client Workstations; the Build Server will pull all of the latest chan 1. `ssh user@build-server-addr` connect to your build server via ssh 2. Use `su` to Login as root or login as root directly -3. Use `cd` to enter root home folder -4. Run `update_build_server.sh` +3. Run `update_build_server.sh` ## Update Add-ons in `/shared/software/addons` @@ -22,6 +21,9 @@ This is a temporary solution that will be depreciated and replaced with project 3. Run `emerge -1 {package-name}` to update a live package. - Run `emerge -1 flamenco` to update the [Flamenco](https://flamenco.blender.org/) manager/add-on - Run `emerge -1 blender-studio-tools` to update the studio Add-ons +::: info Info +The command `emerge -1 {package-name}` compiles package, but does not add the packages to the [@world](https://wiki.gentoo.org/wiki/World_set_(Portage)), this means these packages will be removed when running `--depclean`. # TODO WHY +::: 4. Run `date -R > /var/cache/update_info/timestamp.chk` to mark this update as the latest ## Wake on LAN -- 2.30.2 From 9efa25717ec4ff7c90ba604478be626882f002c4 Mon Sep 17 00:00:00 2001 From: Nick Alberelli Date: Fri, 23 Jun 2023 13:42:45 -0400 Subject: [PATCH 08/11] Docs: Improve Maintenance Guide --- docs/td-guide/workstations/maintaince.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/td-guide/workstations/maintaince.md b/docs/td-guide/workstations/maintaince.md index 056f9cce..f94b35b4 100644 --- a/docs/td-guide/workstations/maintaince.md +++ b/docs/td-guide/workstations/maintaince.md @@ -1,7 +1,7 @@ # Workstation System Maintenance ## How to Update Build Server & Clients -To update Client Workstations; the Build Server will pull all of the latest changes from the [main gentoo repository](https://wiki.gentoo.org/wiki/Ebuild_repository#:~:text=The%20Gentoo%20ebuild%20repository%20is%20the%20main%20ebuild%20repository%20for,to%20be%20available%20to%20Portage.) and compile a system update. When done, it will ask if you want to push out the compiled changes to the clients. The clients checks for updates every five minutes. If the build server signals that there are updates, the clients will perform a sync, downloading the compiled packages from the build server and installing all updated packages. +To update Client Workstations; the Build Server will pull all of the latest changes from the [main gentoo repository](https://wiki.gentoo.org/wiki/Ebuild_repository#:~:text=The%20Gentoo%20ebuild%20repository%20is%20the%20main%20ebuild%20repository%20for,to%20be%20available%20to%20Portage.) and compile a system update. When done, it will ask if you want to push out the compiled changes to the clients. The clients ask for updates to be pushed from the build server every five minutes. If the build server signals that there are updates, the clients will perform a sync, downloading the compiled packages from the build server and installing all updated packages. 1. `ssh user@build-server-addr` connect to your build server via ssh 2. Use `su` to Login as root or login as root directly @@ -10,7 +10,7 @@ To update Client Workstations; the Build Server will pull all of the latest chan ## Update Add-ons in `/shared/software/addons` - The software inside the `shared/software/addons` directory are the [Blender Studio Pipeline Add-ons](https://studio.blender.org/pipeline/Add-ons/overview), the [Flamenco](https://flamenco.blender.org/) Add-on and any other Add-ons that need to be distributed to all Blender Studio Users. These Add-ons are considered Live Packages. Live Packages are packages that fetch updates from the source repository directly and are not tied to a specific release. + The software inside the `shared/software/addons` directory are the [Blender Studio Pipeline Add-ons](/addons/overview), the [Flamenco](https://flamenco.blender.org/) Add-on and any other Add-ons that need to be distributed to all Blender Studio Users. These Add-ons are considered Live Packages. Live Packages are packages that fetch updates from the source repository directly and are not tied to a specific release. To update packages not included in `/shared/software/addons` see [Installing Software](/user-guide/workstations/installing-software) ::: warning Temporary Solution This is a temporary solution that will be depreciated and replaced with project based Add-ons. @@ -18,11 +18,11 @@ This is a temporary solution that will be depreciated and replaced with project 1. `ssh user@build-server-addr` connect to your build server via ssh 2. Use `su` to Login as root or login as root directly -3. Run `emerge -1 {package-name}` to update a live package. - - Run `emerge -1 flamenco` to update the [Flamenco](https://flamenco.blender.org/) manager/add-on - - Run `emerge -1 blender-studio-tools` to update the studio Add-ons +3. Run `emerge --oneshot {package-name}` to update a live package. + - Run `emerge --oneshot flamenco` to update the [Flamenco](https://flamenco.blender.org/) manager/add-on + - Run `emerge --oneshot blender-studio-tools` to update the studio Add-ons ::: info Info -The command `emerge -1 {package-name}` compiles package, but does not add the packages to the [@world](https://wiki.gentoo.org/wiki/World_set_(Portage)), this means these packages will be removed when running `--depclean`. # TODO WHY +The command `emerge --oneshot {package-name}` compiles package, but does not add the packages to the [@world](https://wiki.gentoo.org/wiki/World_set_(Portage)), this means these packages will be removed when running `--depclean`. To learn more visit the [Gentoo Handbook](https://wiki.gentoo.org/wiki/Emerge#:~:text=fetchonly%20%2D%2Demptytree%20%40world-,Do%20not%20add%20dependencies%20to%20the%20world%20file,-If%20a%20dependency) # TODO WHY ::: 4. Run `date -R > /var/cache/update_info/timestamp.chk` to mark this update as the latest -- 2.30.2 From 0b7ce3d34b549ee797bf6d4745a1f44a31b14c0d Mon Sep 17 00:00:00 2001 From: Nick Alberelli Date: Fri, 23 Jun 2023 13:47:28 -0400 Subject: [PATCH 09/11] Docs: Replace Flamenco Manager with Flamenco Worker --- docs/td-guide/workstations/maintaince.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/td-guide/workstations/maintaince.md b/docs/td-guide/workstations/maintaince.md index f94b35b4..77e95355 100644 --- a/docs/td-guide/workstations/maintaince.md +++ b/docs/td-guide/workstations/maintaince.md @@ -19,7 +19,7 @@ This is a temporary solution that will be depreciated and replaced with project 1. `ssh user@build-server-addr` connect to your build server via ssh 2. Use `su` to Login as root or login as root directly 3. Run `emerge --oneshot {package-name}` to update a live package. - - Run `emerge --oneshot flamenco` to update the [Flamenco](https://flamenco.blender.org/) manager/add-on + - Run `emerge --oneshot flamenco` to update the [Flamenco](https://flamenco.blender.org/) worker/add-on - Run `emerge --oneshot blender-studio-tools` to update the studio Add-ons ::: info Info The command `emerge --oneshot {package-name}` compiles package, but does not add the packages to the [@world](https://wiki.gentoo.org/wiki/World_set_(Portage)), this means these packages will be removed when running `--depclean`. To learn more visit the [Gentoo Handbook](https://wiki.gentoo.org/wiki/Emerge#:~:text=fetchonly%20%2D%2Demptytree%20%40world-,Do%20not%20add%20dependencies%20to%20the%20world%20file,-If%20a%20dependency) # TODO WHY -- 2.30.2 From 36b0986c30f0ccade8e0a1f5138534394c6c588b Mon Sep 17 00:00:00 2001 From: Nick Alberelli Date: Tue, 27 Jun 2023 11:09:36 -0400 Subject: [PATCH 10/11] Docs: Explain How to Update Specific Version of Live Package --- docs/td-guide/workstations/maintaince.md | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/docs/td-guide/workstations/maintaince.md b/docs/td-guide/workstations/maintaince.md index 77e95355..261145d7 100644 --- a/docs/td-guide/workstations/maintaince.md +++ b/docs/td-guide/workstations/maintaince.md @@ -5,7 +5,8 @@ To update Client Workstations; the Build Server will pull all of the latest chan 1. `ssh user@build-server-addr` connect to your build server via ssh 2. Use `su` to Login as root or login as root directly -3. Run `update_build_server.sh` +3. `cd` to change directory to the root home folder +4. Run `./update_build_server.sh` ## Update Add-ons in `/shared/software/addons` @@ -21,11 +22,17 @@ This is a temporary solution that will be depreciated and replaced with project 3. Run `emerge --oneshot {package-name}` to update a live package. - Run `emerge --oneshot flamenco` to update the [Flamenco](https://flamenco.blender.org/) worker/add-on - Run `emerge --oneshot blender-studio-tools` to update the studio Add-ons -::: info Info -The command `emerge --oneshot {package-name}` compiles package, but does not add the packages to the [@world](https://wiki.gentoo.org/wiki/World_set_(Portage)), this means these packages will be removed when running `--depclean`. To learn more visit the [Gentoo Handbook](https://wiki.gentoo.org/wiki/Emerge#:~:text=fetchonly%20%2D%2Demptytree%20%40world-,Do%20not%20add%20dependencies%20to%20the%20world%20file,-If%20a%20dependency) # TODO WHY -::: 4. Run `date -R > /var/cache/update_info/timestamp.chk` to mark this update as the latest +::: info Info +The command `emerge --oneshot {package-name}` compiles package, but does not add the packages to the [@world](https://wiki.gentoo.org/wiki/World_set_(Portage)), this means these packages will be removed when running `--depclean`. To learn more visit the [Gentoo Handbook](https://wiki.gentoo.org/wiki/Emerge#:~:text=fetchonly%20%2D%2Demptytree%20%40world-,Do%20not%20add%20dependencies%20to%20the%20world%20file,-If%20a%20dependency) +::: + +### How to update to specific version? +In some cases, users may want to specify what version of an add-on to deploy into the `/shared/software/addons` folder. Users can accomplish this using `eclass` variables found in the [Gentoo Devmanual](https://devmanual.gentoo.org/eclass-reference/git-r3.eclass/index.html#:~:text=more%20creative%20ways.-,EGIT_BRANCH,-The%20branch%20name). +- Run `EGIT_COMMIT= emerge {package-name}` to update to a specific commit +- Run `EGIT_BRANCH= emerge {package-name}` to update to a specific branch +- Run `EGIT_COMMIT= EGIT_BRANCH= emerge {package-name}` to update to a specific commit with in a specific branch ## Wake on LAN Wake on LAN is used turn on computers from a "low power" or sleeping state so they can be updated. Wake on LAN uses the hardware information provided by the clients to immediately wake up all that are currently offline. The following guide covers how to parse the hardware info sent by client computers and to use that information to wake any sleeping computers via Wake on LAN. -- 2.30.2 From 7147bb23ca950fae0055fe455a10f2403dad6b46 Mon Sep 17 00:00:00 2001 From: Nick Alberelli Date: Tue, 27 Jun 2023 12:57:55 -0400 Subject: [PATCH 11/11] Docs: Fix oneshot info box --- docs/td-guide/workstations/maintaince.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/td-guide/workstations/maintaince.md b/docs/td-guide/workstations/maintaince.md index 261145d7..1f32360a 100644 --- a/docs/td-guide/workstations/maintaince.md +++ b/docs/td-guide/workstations/maintaince.md @@ -25,7 +25,7 @@ This is a temporary solution that will be depreciated and replaced with project 4. Run `date -R > /var/cache/update_info/timestamp.chk` to mark this update as the latest ::: info Info -The command `emerge --oneshot {package-name}` compiles package, but does not add the packages to the [@world](https://wiki.gentoo.org/wiki/World_set_(Portage)), this means these packages will be removed when running `--depclean`. To learn more visit the [Gentoo Handbook](https://wiki.gentoo.org/wiki/Emerge#:~:text=fetchonly%20%2D%2Demptytree%20%40world-,Do%20not%20add%20dependencies%20to%20the%20world%20file,-If%20a%20dependency) +The command `emerge --oneshot {package-name}` compiles package, but does not add the packages to the [@world](https://wiki.gentoo.org/wiki/World_set_(Portage)), this means these packages will be removed when running `--depclean`.. We add this because these packages are already pulled in by another set. So we don’t want to add it again to the @world set. To learn more visit the [Gentoo Handbook](https://wiki.gentoo.org/wiki/Emerge#:~:text=fetchonly%20%2D%2Demptytree%20%40world-,Do%20not%20add%20dependencies%20to%20the%20world%20file,-If%20a%20dependency) ::: ### How to update to specific version? -- 2.30.2