# compiz-plugins-main doesn't know if its installed or not



## paean (Jun 19, 2009)

Strange thing happened after I upgraded to 7.2-RELEASE. After my portupgrade, I tried to get compiz-fusion working and had some issues. portversion showed all my apps up to date, so I thought I'd deinstall and reinstall x11-wm/compiz-plugins-main (0.8.2) to see if that would correct the issue.

When I make deinstall clean I get:


```
===>  Deinstalling for x11-wm/compiz-plugins-main
===>  Cleaning for compiz-plugins-main-0.8.2
```

and yet when I reinstall...


```
===>  Checking if x11-wm/compiz-plugins-main already installed
===>   An older version of x11-wm/compiz-plugins-main is already installed (compiz-fusion-plugins-main-0.7.8)
      You may wish to ``make deinstall'' and install this port again
      by ``make reinstall'' to upgrade it properly.
      If you really wish to overwrite the old port of x11-wm/compiz-plugins-main
      without deleting it first, set the variable "FORCE_PKG_REGISTER"
      in your environment or the "make install" command line.
*** Error code 1

Stop in /usr/ports/x11-wm/compiz-plugins-main.
*** Error code 1

Stop in /usr/ports/x11-wm/compiz-plugins-main.
```

So I deinstall and clean again. Okay... so try the binary then?


```
#pkg_add -r compiz-plugins-main
Fetching ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-7.2-release/Latest/compiz-plugins-main.tbz... Done.
pkg_add: package 'compiz-plugins-main-0.8.2' or its older version already installed
```

And yet...


```
#pkg_delete compiz-plugins-main
pkg_delete: no such package 'compiz-plugins-main' installed
```

I'm at a bit of a loss. I've already run portsclean, but 


```
# portsclean -CD
Cleaning out /usr/ports/*/*/work...
done.
Detecting unreferenced distfiles...
no unreferenced distfiles found.
```


that hasn't help convince FreeBSD to allow the install. I might try using FORCE_PKG_REGISTER, but that doesn't mean the problem is solved. Any idea why this might happen?

Thanks in advance!


----------



## paean (Jun 19, 2009)

Hah... forcing doesn't help either. Same result.


----------



## DutchDaemon (Jun 19, 2009)

Does it show up in pkg_info output? If it does, you must feed it to pkg_delete -f exactly as it is shown in pkg_info.


----------



## paean (Jun 19, 2009)

```
# pkg_info compiz-plugins-main
pkg_info: can't find package 'compiz-plugins-main' installed or in a file!
```


----------



## adamk (Jun 19, 2009)

Try:

pkg_info compiz-plugins-main\*

It really does sound like your package database may be screwed up, or at least the /var/db/pkg/compiz-plugins-main-0.8.2/ directory.  Do you have that directory?  What's inside of it?


----------



## paean (Jun 19, 2009)

Now we're getting somewhere. 

There is no pkg information, (To be honest, I really don't use pkg_add. Everything is from ports.) and there is no /var/db/pkg/compiz-plugins-main-0.8.2/ directory... however there is a /var/db/pkg/compiz-fusion-plugins-main-0.7.8/ directory. 

Can I rm this?


----------



## adamk (Jun 19, 2009)

First try:

pkg_delete compiz-fusion-plugins-main-0.7.8

And then see if the directory is still there.


----------



## paean (Jun 19, 2009)

```
# pkg_delete compiz-fusion-plugins-extra-0.7.8
pkg_delete: package 'compiz-fusion-plugins-extra-0.7.8' is required by these other packages
and may not be deinstalled:
compiz-fusion-0.8.2
# pkg_delete compiz-fusion-0.8.2
# pkg_delete compiz-fusion-plugins-main-0.7.8
```

Very interesting. 

I did a make install clean on x11-wm/compiz-fusion and the plugins were compiled with it and everything is now up to date. 


```
# ls /var/db/pkg/compiz*
/var/db/pkg/compiz-0.8.2:
+COMMENT	+DESC		+MTREE_DIRS
+CONTENTS	+DISPLAY	+REQUIRED_BY

/var/db/pkg/compiz-bcop-0.8.2:
+COMMENT	+DESC		+REQUIRED_BY
+CONTENTS	+MTREE_DIRS

/var/db/pkg/compiz-fusion-0.8.2:
+COMMENT	+CONTENTS	+DESC		+MTREE_DIRS

/var/db/pkg/compiz-plugins-extra-0.8.2:
+COMMENT	+DESC		+REQUIRED_BY
+CONTENTS	+MTREE_DIRS

/var/db/pkg/compiz-plugins-main-0.8.2:
+COMMENT	+DESC		+REQUIRED_BY
+CONTENTS	+MTREE_DIRS

/var/db/pkg/compizconfig-backend-gconf-0.8.2:
+COMMENT	+DESC		+REQUIRED_BY
+CONTENTS	+MTREE_DIRS

/var/db/pkg/compizconfig-python-0.8.2:
+COMMENT	+DESC		+REQUIRED_BY
+CONTENTS	+MTREE_DIRS
```

Thank you kindly, adamk. It would've taken me quite some time to figure that one out.


----------



## adamk (Jun 19, 2009)

Glad to help.

Adam


----------



## DutchDaemon (Jun 19, 2009)

And, by the way, pkg_info (or pkg_delete for that matter) doesn't distinguish between ports and packages. Once installed, ports and packages are basically the same. The only difference is that _you_ compile a port, whereas _someone else_ compiled the port for you and made a package. You'll find both in /var/db/pkg.


----------

