Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
What is the difference between @world and world [solved]
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
cwc
Veteran
Veteran


Joined: 20 Mar 2006
Posts: 1281
Location: Tri-Cities, WA USA

PostPosted: Thu Aug 27, 2015 3:05 am    Post subject: What is the difference between @world and world [solved] Reply with quote

What is the difference between @world and world?

Currently I am using emerge -uDNavt @world

emerge -uDNavt @world

u = update
D = --deep [DEPTH] (-D)
N = --newuse (-N)
a = ask
v = verbose
t = --tree (-t) Shows the dependency tree for the given target by indenting dependencies. This is only really useful in combination with --emptytree or --update and --deep.

There are a couple of things that have me concerned.

t shows the dependency tree if u and D are selected. I issued an emerge -a world and got a completely different list from when I issue a emerge -uDNavt @world .

I do not understand the difference between @world and world.

Also will use of N and D cause problems.

It looks like N is safe:
--newuse (-N)
Tells emerge to include installed packages where USE flags have changed since compilation. This option also implies the --selective option. USE flag changes include:

I read D considers the entire dependency tree. Is this good or bad?

Thanks
_________________
Without diversity there can be no evolution:)


Last edited by cwc on Mon Aug 31, 2015 12:11 pm; edited 1 time in total
Back to top
View user's profile Send private message
ian.au
Guru
Guru


Joined: 07 Apr 2011
Posts: 591
Location: Australia

PostPosted: Thu Aug 27, 2015 5:26 am    Post subject: Reply with quote

From
Code:
man emerge

Quote:
A set is a convenient shorthand for a large group of packages. Six sets are currently always available: selected-packages,
selected-sets, selected, system, profile, and world. selected-packages contains the user-selected "world" packages that are listed
in /var/lib/portage/world, while selected-sets contains the nested sets that may be listed in /var/lib/portage/world_sets. system
and profile both refer to sets of packages deemed necessary for your system to run properly (the differences between these two sets
are documented in portage(5)). selected encompasses both the selected-packages and selected-sets sets, while world encompasses the
selected, system and profile sets. (See FILES below for more information.) Other sets can exist depending on the current configura‐
tion. The default set configuration is located in the /usr/share/portage/config/sets directory. User sets may be created by plac‐
ing files in the /etc/portage/sets/ directory (see portage(5)). Note that a set is generally used in conjunction with --update.
When used as arguments to emerge sets have to be prefixed with @ to be recognized. Use the --list-sets action to display a list of
available package sets.


So, you should use @world when -u (--update) is run, to update your package set world.

Quote:
I issued an emerge -a world and got a completely different list from when I issue a emerge -uDNavt @world


The difference there is between -a (shorthand for ask so effectively = emerge @world) and -uDN which indicate --update --deep --newuse --ask --verbose --tree @world.

I suggest you consider changing --newuse for --changed-use in your update string for the following reason:

Quote:
--changed-use (-U)
Tells emerge to include installed packages where USE flags have changed since installation. This option also implies the --selec‐
tive option. Unlike --newuse, the --changed-use option does not trigger reinstallation when flags that the user has not enabled are
added or removed.
This saves you rebuilding packages unnecessarily.

All the above is readily available in the emerge man page, which is definitely worth a read ;)
Back to top
View user's profile Send private message
krinn
Watchman
Watchman


Joined: 02 May 2003
Posts: 7470

PostPosted: Thu Aug 27, 2015 9:54 am    Post subject: Re: What is the difference between @world and world Reply with quote

cwc wrote:
What is the difference between @world and world?

None.

At first, system and world were specials set, then sets were include, where you could build your own set yourself ; i think the @ comes then, to separate a package name (like gentoo-sources), from a set (like @gentoo-sources) because when portage met two packages with same name, it would ask you the complete package name, that's boring (like in sys-kernel/gentoo-sources)
That's just why world and system have the @ now. I never read the usage of world or @world was favorite, i suppose it should just better if you always use a set with @ but i'm too use with world myself.

Quote:
Also will use of N and D cause problems.

They could, without preserved-libs usage (D)eep may build a new version of a library, making anyone using the old version broken, something revdep-rebuild is here for.
But if you use the preserved-libs, portage will keep it, and trigger the message you need to emerge it.
Back to top
View user's profile Send private message
steveL
Watchman
Watchman


Joined: 13 Sep 2006
Posts: 5153
Location: The Peanut Gallery

PostPosted: Thu Aug 27, 2015 10:08 am    Post subject: Reply with quote

Krinn's right; you want -D in general. (and there is no difference, when it comes to world and system, for convenience/backward-compatibility/why break it.)

Still waiting for -U to be --changed-use..
Back to top
View user's profile Send private message
cwc
Veteran
Veteran


Joined: 20 Mar 2006
Posts: 1281
Location: Tri-Cities, WA USA

PostPosted: Thu Aug 27, 2015 12:01 pm    Post subject: Reply with quote

thank you! I am enjoying my new install of gnome3 with systemd.
I've learned a lot and still learning.
_________________
Without diversity there can be no evolution:)
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54216
Location: 56N 3W

PostPosted: Thu Aug 27, 2015 4:30 pm    Post subject: Reply with quote

steveL,

Lucky we don't have packages called world or system.

The @ serves to separate package and set namespaces.
Portage falls back to treating world and system as sets if the packages are not found.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
steveL
Watchman
Watchman


Joined: 13 Sep 2006
Posts: 5153
Location: The Peanut Gallery

PostPosted: Thu Aug 27, 2015 10:11 pm    Post subject: Reply with quote

NeddySeagoon wrote:
Lucky we don't have packages called world or system.

Luck has nothing to do with it ;) Imagine the outcry at the idiocy of whichever monkey thought that was a good idea..
Quote:
Portage falls back to treating world and system as sets if the packages are not found.

Personally I'd check them first.
Back to top
View user's profile Send private message
krinn
Watchman
Watchman


Joined: 02 May 2003
Posts: 7470

PostPosted: Fri Aug 28, 2015 10:50 am    Post subject: Reply with quote

steveL wrote:
Luck has nothing to do with it ;) Imagine the outcry at the idiocy of whichever monkey thought that was a good idea..

the monkeys got the idea to put a d at end, so we're safe!
and considering its politic, it's also funny to think, worldd would had been a better name for it (that's scary this time, as i think they would had drop the last d and bOOm!)
Back to top
View user's profile Send private message
cwc
Veteran
Veteran


Joined: 20 Mar 2006
Posts: 1281
Location: Tri-Cities, WA USA

PostPosted: Fri Aug 28, 2015 12:11 pm    Post subject: Reply with quote

thanks again:

something new to me since I am spending more time reading and trying to understand what is going on with /etc/portage/*

I've got this message on issuing: emerge -auDNv @world

* IMPORTANT: 2 config files in '/etc' need updating.
* See the CONFIGURATION FILES section of the emerge
* man page to learn how to update config files.

I installed ctf-update
and get:

Code:

# cfg-update

**********************************************************************
Mergetool "/usr/bin/meld" not found...
The recommended merge tool for cfg-update is xxdiff, a nice GUI tool.

Please install dev-util/xxdiff or change the MERGE_TOOL variable to
your own favorite tool. See /etc/cfg-update.conf for more details!
**********************************************************************

Switching to "sdiff" for now...

cfg-update: missing valid options
Try `cfg-update --help' for more information.
azzerare ~ #



I also ran "dispatch-conf" and really need to figure out how to use this tool.

I used to manually copy flags in /etc/portage/package.use package.license etc.

It appears using tools would properly put flag lines in the right place.

Do you all use these tools and if do which one? I always use etc-update

Do dispatch-conf and cfg-update do the same thing?

Code:

CONFIGURATION FILES

Portage has a special feature called "config file protection". The purpose of this feature is to prevent new package installs from clobbering existing configuration files. By default, config file protection is turned on for /etc and the KDE configuration dirs; more may be added in the future.
When Portage installs a file into a protected directory tree like /etc, any existing files will not be overwritten. If a file of the same name already exists, Portage will change the name of the to-be-installed file from 'foo' to '._cfg0000_foo'. If '._cfg0000_foo' already exists, this name becomes '._cfg0001_foo', etc. In this way, existing files are not overwritten, allowing the administrator to manually merge the new config files and avoid any unexpected changes.

In addition to protecting overwritten files, Portage will not delete any files from a protected directory when a package is unmerged. While this may be a little bit untidy, it does prevent potentially valuable config files from being deleted, which is of paramount importance.

Protected directories are set using the CONFIG_PROTECT variable, normally defined in make.globals. Directory exceptions to the CONFIG_PROTECTed directories can be specified using the CONFIG_PROTECT_MASK variable. To find files that need to be updated in /etc, type find /etc -name '._cfg????_*'.

You can disable this feature by setting CONFIG_PROTECT="-*" in make.conf(5). Then, Portage will mercilessly auto-update your config files. Alternatively, you can leave Config File Protection on but tell Portage that it can overwrite files in certain specific /etc subdirectories. For example, if you wanted Portage to automatically update your rc scripts and your wget configuration, but didn't want any other changes made without your explicit approval, you'd add this to make.conf(5):

CONFIG_PROTECT_MASK=/etc/wget /etc/rc.d

Tools such as dispatch-conf, cfg-update, and etc-update are also available to aid in the merging of these files. They provide interactive merging and can auto-merge trivial changes. 



It appears I would use # | meld | GUI | Gnome (or KDE with GTK) |
Code:

# +----------+
# | MERGETOOL \
# +------------+-------------------------------------------------------------+
# | The recommended tool for merging is meld   but you can also use other    |
# | tools if you don't like meld.  The Supported tools are listed below:     |
# +----------+-----+--------------------------+------------------------------+
# | beediff  | GUI | QT                       |                              |
# | xxdiff   | GUI | KDE   (or Gnome with QT) |                              |
# | kdiff3   | GUI | KDE   (or Gnome with QT) |                              |
# | meld     | GUI | Gnome (or KDE with GTK)  |                              |
# | gtkdiff  | GUI | Gnome (or KDE with GTK)  | STAGE 3 not supported!       |
# | gvimdiff | GUI | Gnome (or KDE with GTK)  | STAGE 3 not supported!       |
# | tkdiff   | GUI | Gnome (or KDE with TK)   |                              |
# | vimdiff  | CLI | Systems without X        | STAGE 3 not supported!       |
# | sdiff    | CLI | Systems without X        | STAGE 3 not supported!       |
# | imediff2 | CLI | Systems without X        | STAGE 3 not supported!       |
# +----------+-----+--------------------------+------------------------------+



_________________
Without diversity there can be no evolution:)
Back to top
View user's profile Send private message
steveL
Watchman
Watchman


Joined: 13 Sep 2006
Posts: 5153
Location: The Peanut Gallery

PostPosted: Fri Aug 28, 2015 12:58 pm    Post subject: Reply with quote

krinn wrote:
the monkeys got the idea to put a d at end, so we're safe!

Lol, indeed. It appears so idiotic, sticking a d on the end of literally anything you can think of.

But really it's a marketing ploy, the same as trademarking a generic word like Windows, from Windows, Icon, Mouse, Pointer aka WIMP, which thus effectively lays claim to the namespace of prior art.
Quote:
it's also funny to think, worldd(TM) would had been a better name for it (that's scary this time, as i think they would had drop the last d and bOOm!)
(fixed that before some numpty grabs it..)
Lul it wouldn't surprise me, along with "universed"(TM) ;p
_________________
creaker wrote:
systemd. It is a really ass pain

update - "a most excellent portage wrapper"

#friendly-coders -- We're still here for you™ ;)
Back to top
View user's profile Send private message
steveL
Watchman
Watchman


Joined: 13 Sep 2006
Posts: 5153
Location: The Peanut Gallery

PostPosted: Fri Aug 28, 2015 1:03 pm    Post subject: Reply with quote

cwc wrote:
I also ran "dispatch-conf" and really need to figure out how to use this tool.

I used to manually copy flags in /etc/portage/package.use package.license etc.

It appears using tools would properly put flag lines in the right place.

Do you all use these tools and if do which one? I always use etc-update

Do dispatch-conf and cfg-update do the same thing?

Yes. Just use dispatch-conf; it's the best command-line one, ime, works everywhere and is part of the portage package.
Especially nice when you set it up as advised in that tip (from Thargor.)

As for the other package.* files, I use update to manage those, though it needs a bit of love to deal with package.* as directories.
Back to top
View user's profile Send private message
cwc
Veteran
Veteran


Joined: 20 Mar 2006
Posts: 1281
Location: Tri-Cities, WA USA

PostPosted: Mon Aug 31, 2015 11:58 am    Post subject: Reply with quote

It took me a while, as it usually does. Too much cycling maybe and not enough reading. Not a bad thing sometimes. I need to clear my head.

I did not realize there was such a controversy about "systemd".
I just thought it was part of the new system and I see why there is a a wiki on Gnome3 without systemd https://wiki.gentoo.org/wiki/Systemd/Installing_Gnome3_from_scratch

And this has been doing on for quite a while...
https://solpeth.wordpress.com/2012/12/19/systemd-vs-openrc-on-gentoo-a-completely-non-technical-users-perspective/

Hmmm. What do I do now ? Stick with my systemd system ?

I'd appreciate any feedback and it's won't offend me. I have learned so much from this forum and always appreciate input and help.
Like I said it just takes me a while to digest it all. I do live in Washington State and everyone here is in love with Microsoft. (I refuse to run Wine) https://wiki.gentoo.org/wiki/Wine. I have purchased Windows four times. Once for a friend. Once for a job. Once for my son. And I caved due to my job. I probably will have to purchase 10 pro just to have a clue and I do like Hyper-V over Virtual Box.
_________________
Without diversity there can be no evolution:)
Back to top
View user's profile Send private message
ian.au
Guru
Guru


Joined: 07 Apr 2011
Posts: 591
Location: Australia

PostPosted: Mon Aug 31, 2015 1:23 pm    Post subject: Reply with quote

Here's my $.02: If you want to run Gnome3, it's supported although unloved here and elsewhere by some very capable contributors whose opinions I have read for years and highly respect. Whilst systemd remains Gentoo supported and FOSS and is working, however, I don't see why you shouldn't use it. If I recall from earlier posts you already run centOS and you are likely going to run windows too, so you may as well run with it for your gnome desktop.

There's a lot of valid concern over systemd from the perspective of feature-creep, and that it is expanding into a windows-esque monolith of interdependent elements - and all of those claims are credible. It is not a system consistent with the *nix modular philosophy. Some elements are a pita, too if you are used to running services (ntp, nfs, logging changes etc.. ) doing things differently and not always better. then there are the hack-services (ie network-wait-online) and others rewritten for convenience and speed of implementation (and because service dependencies were not completely thought through on first pass).

The problem the systemd devs created for themselves by arrogantly disregarding genuine concerns from the dev community, culminating in an end-run play of tying in the popular desktops to obtain widespread installation base, was at the least poor maturity by their project leads - I guess they thought this was clever. It wasn't, and there is now considerable, justifiable suspicion that this is a hijack of the linux desktop, principally due to the way it was forced upon binary distros (through some fairly thin dependency creation that can, as you found, be worked around). That in combination with the fact that it's a redhat funded project is enough to send the paranoia levels soaring. I understand that, and my suspicion is elevated too.

Worse still is the gaping chasm it rips across the whole user community every time a question like yours is asked; it's akin to theistic debate pointlessness now so here's a pretty good synopsis http://ewontfix.com/14/ not too much to take in and covers the case pretty fairly.

If you use your computer for work with Gnome3 it's best to just see how it works for you, at least with Gentoo you have the choice to back out of it if you choose. So far I still use it for desktops because its proving stable and convenient and I am used to the Gnome3 shell now (although that took some time and tweaking tbh) the workflow just best suits the types of desktop work I do.

So, do some reading and make an informed decision that suits you. The information is all here in the forums, and wider, but the threads all tend to turn hostile quickly. I hope this is not another one of those.
Back to top
View user's profile Send private message
jonathan183
Guru
Guru


Joined: 13 Dec 2011
Posts: 318

PostPosted: Mon Aug 31, 2015 1:39 pm    Post subject: Reply with quote

cwc wrote:
I did not realize there was such a controversy about "systemd".
I just thought it was part of the new system and I see why there is a a wiki on Gnome3 without systemd https://wiki.gentoo.org/wiki/Systemd/Installing_Gnome3_from_scratch

And this has been doing on for quite a while...
https://solpeth.wordpress.com/2012/12/19/systemd-vs-openrc-on-gentoo-a-completely-non-technical-users-perspective/

Hmmm. What do I do now ? Stick with my systemd system ?

I'd appreciate any feedback and it's won't offend me.

There are a few threads around about systemd ... you will need to make up your own mind about whether you twist or stick ;)

I use dispatch-conf, the other thing I thought might be worth a mention is to add a zzz-portage-changes or similar file in /etc/portage/package.* that way most automagical updates end up in a file after running dispatch-conf you can accept/reject/move to another config file as you see fit.
vimdiff is my tool of choice for the final tidying up and moving things to other manually maintained config files ... but pick what works for you 8)
Back to top
View user's profile Send private message
Genone
Retired Dev
Retired Dev


Joined: 14 Mar 2003
Posts: 9523
Location: beyond the rim

PostPosted: Tue Sep 01, 2015 10:36 am    Post subject: Re: What is the difference between @world and world Reply with quote

krinn wrote:
cwc wrote:
What is the difference between @world and world?

None.

At first, system and world were specials set, then sets were include, where you could build your own set yourself ; i think the @ comes then, to separate a package name (like gentoo-sources), from a set (like @gentoo-sources) because when portage met two packages with same name, it would ask you the complete package name, that's boring (like in sys-kernel/gentoo-sources)
That's just why world and system have the @ now. I never read the usage of world or @world was favorite, i suppose it should just better if you always use a set with @ but i'm too use with world myself.


To be exact: originally 'world' and 'system' were hardcoded targets in emerge, literally the code looked like:

Code:
if argument == "world" then
# parse and process world
else if argument == "system" then
# parse and process system
else if argument == "sync" then
# sync the tree
else if ...
# several other targets
else
# assume normal package


As over time there was a need for additional targets to pull in specified groups of packages without having the overhead of wrapper ebuilds or different behavior from regular ebuilds we added a flexible plugin architecture for targets that could pull in a group of packages, and rewrote the code for system and world as such plugins, rather than adding more hardcoded targets.

To avoid conflicts with regular package names and to generally speed up name lookup the @ prefix for these set plugins was introduced.

In general I'd strongly encourage to use the prefix-version simply to allow for the special-case handling to be removed eventually (special cases are bad).
Back to top
View user's profile Send private message
steveL
Watchman
Watchman


Joined: 13 Sep 2006
Posts: 5153
Location: The Peanut Gallery

PostPosted: Tue Sep 01, 2015 10:40 am    Post subject: Reply with quote

Genone wrote:
In general I'd strongly encourage to use the prefix-version simply to allow for the special-case handling to be removed eventually (special cases are bad).

I'd strongly encourage anyone involved with portage never to drop those two.

If they did anyhow, I'd (get someone to;) smack them hard with the cluebat, til they stopped.
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54216
Location: 56N 3W

PostPosted: Tue Sep 01, 2015 4:35 pm    Post subject: Reply with quote

/me inserts tongue firmly in cheek ...

google-earth is being open sourced and renamed to world :)
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
steveL
Watchman
Watchman


Joined: 13 Sep 2006
Posts: 5153
Location: The Peanut Gallery

PostPosted: Tue Sep 01, 2015 5:15 pm    Post subject: Reply with quote

NeddySeagoon wrote:
/me inserts tongue firmly in cheek ...

google-earth is being open sourced and renamed to world :)

Lul. Never mind; we'll label it google-world since it clearly ain't our world. ;-)
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portage & Programming 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