# gobject-introspection mtree: line 1: unknown group wheel<<<<<<<



## Hanky-panky (Mar 12, 2013)

```
===>  Installing for gobject-introspection-1.34.2
===>   Generating temporary packing list
===>  Checking if devel/gobject-introspection already installed
mtree: line 1: unknown group wheel<<<<<<<
*** [gnome-pre-su-install] Error code 1
```


```
groups root
wheel sys operator pulse pulse-access pulse-rt gdm cups
```


```
cat /etc/group
wheel:*:0:root
```


Any help?


----------



## Carpetsmoker (Mar 13, 2013)

Your port fails on the gnome-pre-su-install target, doing a grep of /usr/ports/Mk/* reveals that bsd.gnome.mk defines this target:


```
gnome-pre-su-install:
.if defined(_USE_GNOME) && ${_USE_GNOME:Mgnomehier}!="" && !defined(NO_MTREE)
    @${MTREE_CMD} ${MTREE_ARGS:S/${MTREE_FILE}/${GNOME_MTREE_FILE}/} ${PREFIX}/ >/dev/null
.endif
.if defined(GCONF_SCHEMAS)
    @${MKDIR} ${PREFIX}/etc/gconf/gconf.xml.defaults/
.else
    @${DO_NADA}
.endif
```

Using [cmd=]make -V GNOME_MTREE_FILE[/cmd] reveals that the mtreefile is /usr/local/etc/mtree/BSD.gnome.dist ... Perhaps this file is damaged?

[cmd=]pkg_info -W /usr/local/etc/mtree/BSD.gnome.dist[/cmd] reveals that this file was installed misc/gnomehier. You can try reinstalling that port. Remember to run make clean first to remove (potentially damaged) build files.

Note that the misc/gnomehier port doesn't download any source/build files: everything is contained in the port Makefile and files/dirlist, so if the problem persist, make sure these files are okay as wel (ie. remove this directory and refetch the ports tree).


----------



## Hanky-panky (Mar 13, 2013)

Carpetsmoker said:
			
		

> Your port fails on the gnome-pre-su-install target, doing a grep of /usr/ports/Mk/* reveals that bsd.gnome.mk defines this target:
> 
> 
> ```
> ...


Hi and thank you for your competent reply, my friend.


```
/usr/ports/misc/gnomehier # sudo make reinstall
===>  Installing for gnomehier-3.0
===>   Generating temporary packing list
cd /usr/ports/misc/gnomehier/work/gnomehier-3.0 &&  /usr/sbin/mtree -U -d -n -i -c -k "uname, gname, mode" |  /usr/bin/sed -e 's|uname=[A-Za-z0-9_]*|uname=root|'  -e 's|gname=[A-Za-z0-9_]*|gname=wheel|'  > /usr/ports/misc/gnomehier/work/BSD.gnome.dist
/bin/mkdir -p /usr/local/etc/mtree
install  -o root -g wheel -m 444 /usr/ports/misc/gnomehier/work/BSD.gnome.dist /usr/local/etc/mtree
mtree: line 1: unknown group wheel<<<<<<<
===>   Registering installation for gnomehier-3.0
```

Now I try this:


```
groups root
<<<<<<< current version sys operator pulse pulse-access pulse-rt gdm cups
```

Now I suspect it is broken, becouse those <<<<<< current version shouldn't be there, I think. Now, how can I rebuild this /etch/group?

It is also true, I didn't had any problem in compiling any software before with this /etc/group.

Simply deleteting the commented lines with a text editor seems not to make any difference.

All the other files you said to check are fine.


----------



## SirDice (Mar 13, 2013)

I'm guessing a mergemaster(1) went wrong somewhere. Can you post your /etc/group?


----------



## Hanky-panky (Mar 13, 2013)

SirDice said:
			
		

> I'm guessing a mergemaster(1) went wrong somewhere. Can you post your /etc/group?




```
cat /etc/group
<<<<<<< current version::0:
<<<<<<< current version::0:
<<<<<<< current version::0:
wheel:*:0:hank,root
=======::0:
# $FreeBSD: src/etc/group,v 1.35.10.1.6.1 2010/12/21 17:09:25 kensmith Exp $
=======::0:
# $FreeBSD: release/9.0.0/etc/group 218046 2011-01-28 22:28:12Z pjd $
>>>>>>> 9.0-RELEASE::0:
=======::0:
# $FreeBSD: release/9.1.0/etc/group 218046 2011-01-28 22:28:12Z pjd $
>>>>>>> 9.1-RELEASE::0:
#
#Wheel:*:0:root
>>>>>>> 8.2-RELEASE::0:
daemon:*:1:
kmem:*:2:
sys:*:3:hank,root
tty:*:4:
operator:*:5:root
mail:*:6:
bin:*:7:
news:*:8:
man:*:9:
games:*:13:
ftp:*:14:
staff:*:20:
sshd:*:22:
smmsp:*:25:
mailnull:*:26:
guest:*:31:
bind:*:53:
proxy:*:62:
authpf:*:63:
_pflogd:*:64:
_dhcp:*:65:
uucp:*:66:
dialer:*:68:
network:*:69:
audit:*:77:
www:*:80:
hast:*:845:
nogroup:*:65533:
nobody:*:65534:
messagebus:*:556:
polkit:*:562:
haldaemon:*:560:
avahi:*:558:
pulse:*:563:root
pulse-access:*:564:root
pulse-rt:*:557:root
cyrus:*:60:
gdm:*:92:root
mysql:*:88:
saned:*:194:
virtuoso:*:79:
webcamd:*:145:
gnokii:*:947:
hank:*:1001:
kdm:*:147:
cups:*:193:hank,root
ldap:*:389:
git_daemon:*:964:
```


----------



## wblock@ (Mar 13, 2013)

See Thread 37308.


----------



## Hanky-panky (Mar 13, 2013)

wblock@ said:
			
		

> See Thread 37308.


Great. Thank you my friend. Then, I don't remember that "m" switch, and I still don't know what to do with this issue.

As I said in another post, I removed all the <<<< >>>> lines and devel/gobject-introspection still sadly complains about my wheel user.


----------



## wblock@ (Mar 13, 2013)

The lines with >> and << and == are markers.  Some of the lines between those markers need to be removed also.  Here is a guess at what you should have afterwards:


```
# $FreeBSD: release/9.1.0/etc/group 218046 2011-01-28 22:28:12Z pjd $
#
wheel:*:0:hank,root
daemon:*:1:
kmem:*:2:
sys:*:3:hank,root
tty:*:4:
operator:*:5:root
mail:*:6:
bin:*:7:
news:*:8:
man:*:9:
games:*:13:
ftp:*:14:
staff:*:20:
sshd:*:22:
smmsp:*:25:
mailnull:*:26:
guest:*:31:
bind:*:53:
proxy:*:62:
authpf:*:63:
_pflogd:*:64:
_dhcp:*:65:
uucp:*:66:
dialer:*:68:
network:*:69:
audit:*:77:
www:*:80:
hast:*:845:
nogroup:*:65533:
nobody:*:65534:
messagebus:*:556:
polkit:*:562:
haldaemon:*:560:
avahi:*:558:
pulse:*:563:root
pulse-access:*:564:root
pulse-rt:*:557:root
cyrus:*:60:
gdm:*:92:root
mysql:*:88:
saned:*:194:
virtuoso:*:79:
webcamd:*:145:
gnokii:*:947:
hank:*:1001:
kdm:*:147:
cups:*:193:hank,root
ldap:*:389:
git_daemon:*:964:
```


----------



## kpa (Mar 13, 2013)

It's probably a result of freebsd-update(8) botching an update. I don't think that use of mergemaster(8) can result in those markers in the merged files.


----------



## Hanky-panky (Mar 13, 2013)

wblock@ said:
			
		

> The lines with >> and << and == are markers.  Some of the lines between those markers need to be removed also.  Here is a guess at what you should have afterwards:
> 
> 
> ```
> ...


Thank you very much again my friend. Then, sadly, devel/gobject still complain*s* about the same line.


```
===>   Generating temporary packing list
===>  Checking if devel/gobject-introspection already installed
mtree: line 1: unknown group wheel<<<<<<<
*** [gnome-pre-su-install] Error code 1

Stop in /usr/ports/devel/gobject-introspection.
```

Now, I was wondering it maybe was reading another /etc/group so I make this modification:


```
Wheel:*:0:hank,root
```
 (changing the capital W)

And I run the devel/gobject-instrospection install again with this result:


```
===>  Checking if devel/gobject-introspection already installed
mtree: line 6: unknown group wheel
*** [install-mtree] Error code 1

Stop in /usr/ports/devel/gobject-introspection.
```

And now it complain about Line 6 and no more about Line 1.

This really makes no sense at all to me. In fact, it should complain about both line 1 (?) and line 6.

Command line used to make the modification was:


```
nano -w /etc/group
```


----------



## Hanky-panky (Mar 13, 2013)

kpa said:
			
		

> It's probably a result of freebsd-update(8) botching an update. I don't think that use of mergemaster(8) can result in those markers in the merged files.


Yes, update done via freebsd-update(8)


----------



## wblock@ (Mar 13, 2013)

Neither of the problem lines is actually on line 6.  First, change that "w" back to lower case.  Make sure there are only those two comment lines at the start of that file before the wheel line.  Then clean the port and rebuild it.

If that doesn't work, log out and log back in to get it to reread the groups.  I don't know what mtree(8) is trying to do there; the "line 6" might be from another file.


----------



## wblock@ (Mar 13, 2013)

mergemaster(8) will do that if you choose m (I think).


----------



## Carpetsmoker (Mar 13, 2013)

The error, as posted in the first message, reads:



> mtree: line 1: unknown group wheel<<<<<<<



So the *mtree* command gives an error that the group wheel<<<<< doesn't exist.  This, to me, *strongly* indicates that there's a problem with a mtree file or the mtree command, not with /etc/group or another system file (if the wheel group was clobbered, you'd have more serious problems, like not being able to use su).

Here's a little test to confirm this:

```
[~]% head -n 4 BSD.gnome.dist
/set type=dir uname=root gname=wheel<<<<<<<<< mode=0750
.              
    etc            
        CORBA   

[~]% mtree < BSD.gnome.dist
mtree: line 1: unknown group wheel<<<<<<<<<
Exit 1
```

Exactly the same error as posted!

You can, of course, easily confirm this by looking at the first line of /usr/local/etc/mtree/BSD.gnome.dist



> I don't know what mtree(8) is trying to do there; the "line 6" might be from another file.



It's from /etc/mtree/BSD.usr.dist




> sudo make reinstall



*No!*, don't run make reinstall, run [cmd=]make clean deinstall install[/cmd], make reinstall will use buildfiles from the previous build, if those files are damaged, then they'll simple get (re)installed again.


----------



## Hanky-panky (Mar 13, 2013)

Carpetsmoker said:
			
		

> The error, as posted in the first message, reads:
> 
> 
> 
> ...


GREAT Carpetsmoker, a big thank you to you! This is EXACTLY the problem, and you solved it for me.

I also have to say that Wblock was partially right too: my messed up /etc/group was fine for pretty much all but this new misc/gnomehier port.


PS: this is solved, I'm wondering if I can marked it SOLVED and I'm also wondering if misc/gnomecahier coder shouldn't seriously look into the code.


----------



## wblock@ (Mar 13, 2013)

A) Up there in post #12, I said "clean the port and rebuild it".
B) Use freshports.org.
C) It's not fair to expect a port maintainer to code for a user's broken system.
D) Edit post #1, click "Go Advanced", and select [Solved] from the dropdown in front of the subject. port" href="http://www.freshports.org/ tags to mark ports, and the reader can click on them for reference on freshports.org.
C) It's not fair to expect a port maintainer to code for a user's broken system.
D) Edit post #1, click "Go Advanced", and select [Solved] from the dropdown in front of the subject."> tags to mark ports, and the reader can click on them for reference on freshports.org.
C) It's not fair to expect a port maintainer to code for a user's broken system.
D) Edit post #1, click "Go Advanced", and select [Solved] from the dropdown in front of the subject.


----------



## Hanky-panky (Mar 13, 2013)

wblock@ said:
			
		

> A) Up there in post #12, I said "clean the port and rebuild it".
> B) Use freshports.org.
> C) It's not fair to expect a port maintainer to code for a user's broken system.
> D) Edit post #1, click "Go Advanced", and select [Solved] from the dropdown in front of the subject. port" href="http://www.freshports.org/ tags to mark ports, and the reader can click on them for reference on freshports.org.
> ...


/etc/group?

IMHO it means there is something less compatible in that port compared to others, considering others can read that file and use it with no problem and just that port can't.

And related with the fact you said to clean the port and rebuild it, you didn't point me to that misc/gnomecahier port.

And BTW, you had my Thankx You too, it is childish to say then you started the childish part of this thread and I will say that what you suggested to me, the clean up part of /etc/group was something I was considering myself and I'm sure I could have done even without your assistence.

What the great Carpetsmoker (my favourite nick of the year for now, GREAT!!!) suggested to me was the solution, something that I will never ever think about myself without his assistance. That's all and no need to be rude, my friend, no need at all. You got your thank you too even if honestly your help was a lot cheaper compared to the Carpetsmoker one. port" href="http://www.freshports.org/
Ohhhh well, so why just that port complain about my old /etc/group?

IMHO it means there is something less compatible in that port compared to others, considering others can read that file and use it with no problem and just that port can't.

And related with the fact you said to clean the port and rebuild it, you didn't point me to that misc/gnomecahier port.

And BTW, you had my Thankx You too, it is childish to say then you started the childish part of this thread and I will say that what you suggested to me, the clean up part of /etc/group was something I was considering myself and I'm sure I could have done even without your assistence.

What the great Carpetsmoker (my favourite nick of the year for now, GREAT!!!) suggested to me was the solution, something that I will never ever think about myself without his assistance. That's all and no need to be rude, my friend, no need at all. You got your thank you too even if honestly your help was a lot cheaper compared to the Carpetsmoker one.">
Ohhhh well, so why just that port complain about my old /etc/group?

IMHO it means there is something less compatible in that port compared to others, considering others can read that file and use it with no problem and just that port can't.

And related with the fact you said to clean the port and rebuild it, you didn't point me to that misc/gnomecahier port.

And BTW, you had my Thankx You too, it is childish to say then you started the childish part of this thread and I will say that what you suggested to me, the clean up part of /etc/group was something I was considering myself and I'm sure I could have done even without your assistence.

What the great Carpetsmoker (my favourite nick of the year for now, GREAT!!!) suggested to me was the solution, something that I will never ever think about myself without his assistance. That's all and no need to be rude, my friend, no need at all. You got your thank you too even if honestly your help was a lot cheaper compared to the Carpetsmoker one.


----------



## Carpetsmoker (Mar 13, 2013)

The gnomehier port looks fine to me, I think something along these lines happened:

- Your /etc/group got clobbered during an upgrade, but in a way that *most* programs still work.
- When installing misc/gnomehier, it generated the mtree file, but got confused by your clobbered /etc/group
- The mtree file got installed anyway, even though it's broken
- All ports with USE_GNOME run the mtree file to *ensure* the required gnome directories exist
- Breakage

So in the end, you had *two* problems, you needed to fix *both* your /etc/group *and* your gnomehier port, in that order.


----------



## Hanky-panky (Mar 13, 2013)

Carpetsmoker said:
			
		

> The gnomehier port looks fine to me, I think something along these lines happened:
> 
> - Your /etc/group got clobbered during an upgrade, but in a way that *most* programs still work.
> - When installing misc/gnomehier, it generated the mtree file, but got confused by your clobbered /etc/group
> ...


I surely had TWO problems, yes, then misc/gnomehier had ONE problem for sure: it registered his installation even without copy his BSD.gnome.bsd file in the mtree folder. So mtree folder was empty and the misc/gnomehier resulted like registered.

And if the way it read the group variable in the environment is fine (and I'm not that sure about it) the fact it do register a broken package becouse it fails to copy a file in the right directory and it is unable to block himself in the process to register the package as installed, it surely means it had ONE problem (and a big one too) and it is a partially, better say TOTALLY broken package.

This is the reason becouse I didn't discovered the problem myself: I was in a massive upgrade and the fact the misc/gnomehier registered itself without notice and considering I do not spend my time looking at the terminal screen when I update my system I was lost in the consequences of the broken misc/gnomehier attitude.

BTW, just for a try: I deleted devel/gobject-introspection after building misc/gnomehier with the new /etc/group and then I replaced the new cleaned up /etc/group with my old messed up backup and... BOOM, devel/gobject-introspection compiled, did not complained about it and registered fine!

So, do you still think misc/gnomehier is perfectly fine?


----------



## fonz (Mar 13, 2013)

Hanky-panky said:
			
		

> That's all and no need to be rude, my friend, no need at all.


Having read this whole thread back and forth, I have found no instance of anyone being rude, my friend, none at all.


----------



## wblock@ (Mar 14, 2013)

Hanky-panky said:
			
		

> Ohhhh well, so why just that port complain about my old /etc/group?
> 
> IMHO it means there is something less compatible in that port compared to others, considering others can read that file and use it with no problem and just that port can't.



Most likely the other ports did not need to read or change /etc/group.



> And related with the fact you said to clean the port and rebuild it, you didn't point me to that misc/gnomecahier port.



Dependencies are cleaned when the main port is cleaned.  misc/gnomehier would have been cleaned along with devel/gobject-introspection, solving the problem.  If you had done it.


----------

