public inbox for gentoo-dev@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Александр Берсенев" <bay@hackerdom.ru>
To: gentoo-dev@lists.gentoo.org
Subject: [gentoo-dev] Autodep project
Date: Sun, 4 Sep 2011 07:13:55 +0000	[thread overview]
Message-ID: <CAPomEdxx+zZ6=9pzrMMqWsAqtRfLvh4oCtTiGY6cbyBuA_aG7Q@mail.gmail.com> (raw)
In-Reply-To: <CAPomEdxfPcc+2TZohez8t-aCiomz4wy7tf0QOHAapoLFF9xfuA@mail.gmail.com>

Hi!

I am Alexander Bersenev, I was participating in GSoC this year.
I want to present you the tool I've developed during this program. I
hope that you'll find it useful.

The purpose of my project is to help ebuild developers to compose
accurate dependency list for a package.
The tool has many features in order to do it, most of them listed on
the documentation site: http://soc.dev.gentoo.org/~bay/autodep/

The killer-feature is an emulating the file system without
non-dependency packages installed. I call it dependency checking or
strict emerging. If program builds successfully in this environment
then check is passed. If no - check is failed and user likely will be
having a bad experience while trying to build this package if he
hasn't some packages installed.

It works fine, I've reported a few dozens of bugs about missing
dependencies here: https://bugs.gentoo.org/show_bug.cgi?id=autodep.

How to install and use it:
1) add neurogeek overlay in your overlay list
2) emerge autodep
3) use autodep and emerge_strict commands.

I want to tell you more about emerge_strict command. This is an emerge
command but with strict dependency checking. I've modified a portage
and add this feature into it. Actually, after "emerge autodep" you
will have two versions of portage: one is from your system(emerge) and
one is from modified portage(emerge_strict).

!!!ATTENTION!!!
I modified a last available portage version from git. It is about
Portage 2.2.0_alpha50. The you running portage 2.1.x.x it
theoretically can be unsafe to use them both. I used it together for
about a month and not found any problems, but, anyway, be careful.
!!!ATTENTION!!!

Here is an example of emerge_strict dev-libs/nss output:
https://381591.bugs.gentoo.org/attachment.cgi?id=285369

Missing dependency is founded here:
sdb.c:58:21: fatal error: sqlite3.h: No such file or directory
compilation terminated.
....

[NOT IN DEPS] dev-db/sqlite-3.7.7.1                   : [u'compile']
 /usr/include/sqlite3.h                                   blocked
....

I've set up a tinderbox to catch missing dependencies. And it works
right now. Also, I recently installed desktop gentoo linux on my new
notebook using only emerge_strict. It is also works.

Although GSoC is over, I want to support this tool in further. I will
be appreciate for any feedback.

Best,

Alexander Bersenev



       reply	other threads:[~2011-09-04  7:14 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CAPomEdxfPcc+2TZohez8t-aCiomz4wy7tf0QOHAapoLFF9xfuA@mail.gmail.com>
2011-09-04  7:13 ` Александр Берсенев [this message]
2011-09-04  8:49   ` [gentoo-dev] Autodep project Marc Schiffbauer
2011-09-04  9:24   ` justin
2011-09-04 10:12     ` justin
2011-09-04 10:19       ` Александр Берсенев
2011-09-07  9:08   ` Tomáš Chvátal
2011-09-07 15:58     ` Alexander Bersenev
2011-10-17  6:10       ` Александр Берсенев
2011-10-17  8:52         ` Michał Górny
2011-10-17 15:15         ` justin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAPomEdxx+zZ6=9pzrMMqWsAqtRfLvh4oCtTiGY6cbyBuA_aG7Q@mail.gmail.com' \
    --to=bay@hackerdom.ru \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox