Announcement

Collapse
No announcement yet.

Auto-apt doesn't update db'ses

Collapse
This topic is closed.
X
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Auto-apt doesn't update db'ses

    Good day : )

    Kubuntu 13.10
    KDE 4.11.5

    I've got this (what it seems to me) problem:
    Code:
    $ sudo auto-apt update
    put: 0 files,  0 entries done (0 sec)
    
    $ sudo auto-apt updatedb
    put: 0 files,  0 entries done (0 sec)
    The auto-apt databeses don't get updated. Only update-local works as needed (what's the purpose though).
    Code:
    $ sudo auto-apt update-local
    local file list mode
    put: 210398 files,  295308 entries done (9 sec)
    e.g. Auto-apt search doesn't return anything.
    Code:
    $ auto-apt search Xlib.h # Example from Ubuntu Documentation
    
    $ auto-apt search curses.h
    Also: I had this warning before (running auto-apt):
    Code:
    dpkg: warning: obsolete option '--print-installation-architecture'; please use '--print-architecture' instead
    But I fixed it by editing ARCH=$(dpkg --print-installation-architecture) to ARCH=$(dpkg --print-architecture) in the script. Doesn't seem a big issue though.

    Thanks in advance.
    Last edited by ts14ic; Mar 31, 2014, 09:36 AM. Reason: Thread solved

    #2
    I haven't seen "auto-apt update" before, what dose it do? anything like "apt-get update"?

    Edit: re-reading your post..

    To update you system
    Code:
    sudo apt-get update
    to upgrade
    Code:
    sudo apt-get dist-upgrade
    Last edited by Robtygart; Mar 30, 2014, 07:18 AM.
    Rob

    Comment


      #3
      I know about dist-upgrade etc : ) . Auto-apt is available right from the official repositories.

      From what I can tell, auto-apt is a script, which lets your search FILES contained in packages. It's used mostly for compiling stuff.
      Ubuntu Docs explain it this way:
      Originally posted by Ubuntu Documentation
      When you want to build a program from source and it fails due to missing headers. Auto-apt can search what package would provide the header files.
      I've seen this problem I've described two times on the forums:
      https://www.kubuntuforums.net/showth...light=auto-apt
      https://www.kubuntuforums.net/showth...light=auto-apt

      And both of these are solved without any explanation on how.

      p.s. I've used auto-apt before, but now it simply doesn't work oO.

      Comment


        #4
        auto apt is a script that assists in compiling software, in that when ./configure is run, and comes across a library or something that does not exist on ones's system, it puts it on hold and tries to go out and download that missing thing.

        It has absolutely zero, zip, zilch, nada, or diddley to do with updating one's system
        http://www.howtogeek.com/106526/how-...are-on-ubuntu/
        http://manpages.ubuntu.com/manpages/...uto-apt.1.html

        Comment


          #5
          Yes-yes-yes! And I want this thing .
          I was kind surprised, that this script isn't famous..

          Should've I created this thread in a different section? (o.O)

          I've tried to run the script on some random sources and.. well, configure fails, because I don't have all the build dependcies.

          Comment


            #6
            I don't know how well it works overall, maybe it is a bug in 14.04's auto-apt?

            From a quick glance, updating auto-apt seems to just update the db of packages and libraries, so this is not likely required all that often on a stable Ubuntu release.

            Are you running auto-apt as per the how-to I linked to?
            If you are trying to compile KDE software, I am unsure if this would actually work as KDE/Qt software uses cmake, and not ./configure, which this tools seems to work with.

            Comment


              #7
              I reinstalled the script (and hence got the warning about the deprecated option back, but looking for the how-to, it seems like no one bothers to fix it).
              Downloaded the pigin source.
              $ sudo auto-apt update
              Gives 0 entries
              $ sudo auto-apt updadb
              Gives 0 new entries
              $ sudo auto-apt update-local
              Updates something for 10 seconds (I don't know, what's the point).
              $ auto-apt run ./configure
              Fails, because of missing components. (sudo just makes it prompt for password one time, instead of for every component).

              apt-file is interesting though, but not automatic : ) .

              I'm going to check the repositories for different versions, see if there is any difference... And maybe try to comprehend, how it works, if there is no.
              Last edited by ts14ic; Mar 31, 2014, 06:29 AM.

              Comment


                #8
                Sorry for double-posting (if this happens)

                The best description (from the the Debian repository)
                auto-apt checks the file access of programs running within its environments, and if a program tries to access a file known to belong in an uninstalled package, auto-apt will install that package using apt-get. This feature requires apt and sudo to work.
                And... I've installed the version from Debian repository, hoping that it won't mess anything...
                https://packages.debian.org/wheezy/auto-apt
                I think, you can also use this one:
                https://launchpad.net/ubuntu/quantal...uto-apt/0.3.22


                But the Debian version surely works : )
                That version is 0.3.22 instead of Ubuntu's 0.3.23.
                The update, updatedb and update-local commands work good (no more 0 entries).
                auto-apt search returns the missing packages.

                Almost ready to mark the thread as solved.

                //Edit - little investigation:
                I used diff to see the difference between scripts, and there are really only two:
                1) wget to uses --timestamping in 0.3.23
                2) A rather long sed string which is generally the source of the bug in 0.3.23
                Code:
                sed -ne 's=^[[:space:]][[:space:]]*deb[[:space:]][[:space:]]*\([^:[:space:]]*\):\([^[:space:]]*\)[[:space:]][[:space:]]*\([^[:space:]]*\)[[:space:]][[:space:]]*.*=\1 \2/dists/\3=p' |
                //Update
                Even though, I marked the thread solved, there are still some things to notice.
                I tried to install 0.3.22 and delete those two trailing spaces in the sed line (I don't understand, why were those added, because sources.list doesn't contain any).

                The update command started to work, but after some time (15-30 seconds) the system freezes (it seems like completely, but if you wait, the process will be killed).
                I ran the command from console, and monitored it with htop. The process was taking 100% of CPU constantly growing in MEM consumption till it consumes 100% of RAM and 100% of SWAP (4 and 4GB), and then it's killed.
                The actual executable causing all this trouble is /usr/lib/auto-apt/auto-apt-pkgcdb. I took the package from Launchpad, extracted this executable from there and now it works oO ... (Just ~1% of RAM is used). (for some reason, still showing 100% CPU at the start, but everything is quite responsive)

                Totally three things to fix:
                1) dpkg should use --print-architecture
                2) sed lined parsing the sources.list has two trailing spaces, which are not needed and break the update mechanism
                3) the RAM-thirsty /usr/lib/auto-apt/auto-apt-pkgcdb
                Last edited by ts14ic; Apr 01, 2014, 01:58 PM.

                Comment

                Working...
                X