You are not logged in.

#51 2010-02-02 14:55:40

Xyne
Administrator/PM
Registered: 2008-08-03
Posts: 6,963
Website

Re: paCPAN: tool for building Perl packages for Pacman from CPAN

Are you using the packages from the repo on my site, specifically perl-xyne-arch>=1.2.3-1? I have not pushed the latest versions to [community] or the AUR.

Get them here.

bauerbill --help

/snip

BAUERBILL OPTIONS

/snip

    --cpan
        Enable CPAN support.

/snip

    --trust-cpan
        If given, the user will not be prompted to inspect PKGBUILDs generated
        by Xyne::Arch::CPAN. Although these PKGBUILD are safe in the sense that
        they will never contain malicious code, they may sometime require
        editing to correct errors that arise due to absent or incorrect metadata
        on CPAN.
bauerbill -Si --cpan Padre
Repository     : CPAN
Name           : perl-padre
Version        : 0.56
Description    : Perl Application Development and Refactoring Environment
URL            : http://search.cpan.org/dist/Padre/
Licenses       : perl
Architecture   : i686 x86_64
Packager       : Xyne::Arch::CPAN
Groups         : None
Provides       : perl-padre-action-debugger=0.56 perl-padre-action-edit=0.56 per
                 l-padre-action-file=0.56 perl-padre-action-help=0.56
                 perl-padre-action-internal=0.56 perl-padre-action-perl=0.56
                 perl-padre-action-plugins=0.56 perl-padre-action-queue=0.56
                 perl-padre-action-refactor=0.56 perl-padre-action-run=0.56
                 perl-padre-action-search=0.56 perl-padre-action-view=0.56
                 perl-padre-action-window=0.56 perl-padre-action=0.56
                 perl-padre-autosave=0.56 perl-padre-command=0.56
                 perl-padre-config-host=0.56 perl-padre-config-human=0.56
                 perl-padre-config-patch=0.56 perl-padre-config-project=0.56
                 perl-padre-config-setting=0.56 perl-padre-config-style=0.56
                 perl-padre-config-upgrade=0.56 perl-padre-config=0.56
                 perl-padre-constant=0.56 perl-padre-cpan=0.56
                 perl-padre-current=0.56 perl-padre-db-bookmark=0.56
                 perl-padre-db-history=0.56 perl-padre-db-hostconfig=0.56
                 perl-padre-db-lastpositioninfile=0.56
                 perl-padre-db-migrate-patch=0.56 perl-padre-db-migrate=0.56
                 perl-padre-db-plugin=0.56 perl-padre-db-recentlyused=0.56
                 perl-padre-db-session=0.56 perl-padre-db-sessionfile=0.56
                 perl-padre-db-syntaxhighlight=0.56 perl-padre-db=0.56
                 perl-padre-desktop=0.56 perl-padre-docbrowser-document=0.56
                 perl-padre-docbrowser-pod=0.56
                 perl-padre-docbrowser-pseudoperldoc=0.56
                 perl-padre-docbrowser=0.56 perl-padre-document-config=0.56
                 perl-padre-document-perl-beginner=0.56
                 perl-padre-document-perl-help=0.56
                 perl-padre-document-perl-lexer=0.56
                 perl-padre-document-perl-ppilexer=0.56
                 perl-padre-document-perl-quickfix-includemodule=0.56
                 perl-padre-document-perl-quickfix-strictwarnings=0.56
                 perl-padre-document-perl-quickfix=0.56
                 perl-padre-document-perl=0.56 perl-padre-document-pod=0.56
                 perl-padre-document=0.56 perl-padre-file-ftp=0.56
                 perl-padre-file-http=0.56 perl-padre-file-local=0.56
                 perl-padre-file=0.56 perl-padre-helpprovider=0.56
                 perl-padre-locale=0.56 perl-padre-lock=0.56
                 perl-padre-locker=0.56 perl-padre-logger=0.56
                 perl-padre-mimetypes=0.56 perl-padre-perl=0.56
                 perl-padre-plugin-devel=0.56 perl-padre-plugin-my=0.56
                 perl-padre-plugin-popularitycontest-ping=0.56
                 perl-padre-plugin-popularitycontest=0.56 perl-padre-plugin=0.56
                 perl-padre-pluginbuilder=0.56 perl-padre-pluginhandle=0.56
                 perl-padre-pluginmanager=0.56 perl-padre-pod2html=0.56
                 perl-padre-ppi=0.56 perl-padre-project-null=0.56
                 perl-padre-project-perl-dz=0.56
                 perl-padre-project-perl-eumm=0.56
                 perl-padre-project-perl-mb=0.56 perl-padre-project-perl-mi=0.56
                 perl-padre-project-perl=0.56 perl-padre-project=0.56
                 perl-padre-quickfixprovider=0.56 perl-padre-search=0.56
                 perl-padre-service=0.56 perl-padre-startup=0.56
                 perl-padre-task-debug-crashing=0.56
                 perl-padre-task-docbrowser=0.56
                 perl-padre-task-errorparser=0.56
                 perl-padre-task-examples-wxevent=0.56
                 perl-padre-task-httpclient-lwp=0.56
                 perl-padre-task-httpclient=0.56
                 perl-padre-task-launchdefaultbrowser=0.56
                 perl-padre-task-lwp=0.56
                 perl-padre-task-openresource-searchtask=0.56
                 perl-padre-task-outline-perl=0.56 perl-padre-task-outline=0.56
                 perl-padre-task-ppi-findunmatchedbrace=0.56
                 perl-padre-task-ppi-findvariabledeclaration=0.56
                 perl-padre-task-ppi-introducetemporaryvariable=0.56
                 perl-padre-task-ppi-lexicalreplacevariable=0.56
                 perl-padre-task-ppi=0.56
                 perl-padre-task-syntaxchecker-perl=0.56
                 perl-padre-task-syntaxchecker=0.56 perl-padre-task=0.56
                 perl-padre-taskmanager=0.56 perl-padre-test=0.56
                 perl-padre-transform-perl-updatecopyright=0.56
                 perl-padre-transform-perl=0.56 perl-padre-transform=0.56
                 perl-padre-util-win32=0.56 perl-padre-util=0.56
                 perl-padre-wx-about=0.56 perl-padre-wx-ack=0.56
                 perl-padre-wx-app=0.56 perl-padre-wx-auimanager=0.56
                 perl-padre-wx-bottom=0.56 perl-padre-wx-cpan-listview=0.56
                 perl-padre-wx-cpan=0.56 perl-padre-wx-debugger-view=0.56
                 perl-padre-wx-debugger=0.56 perl-padre-wx-dialog-bookmarks=0.56
                 perl-padre-wx-dialog-encode=0.56
                 perl-padre-wx-dialog-filtertool=0.56
                 perl-padre-wx-dialog-find=0.56 perl-padre-wx-dialog-form=0.56
                 perl-padre-wx-dialog-gotoline=0.56
                 perl-padre-wx-dialog-helpsearch=0.56
                 perl-padre-wx-dialog-html=0.56
                 perl-padre-wx-dialog-modulestart=0.56
                 perl-padre-wx-dialog-openresource=0.56
                 perl-padre-wx-dialog-openurl=0.56
                 perl-padre-wx-dialog-pluginmanager=0.56
                 perl-padre-wx-dialog-preferences-editor=0.56
                 perl-padre-wx-dialog-preferences-file=0.56
                 perl-padre-wx-dialog-preferences-perlautocomplete=0.56
                 perl-padre-wx-dialog-preferences=0.56
                 perl-padre-wx-dialog-quickmenuaccess=0.56
                 perl-padre-wx-dialog-refactorselectfunction=0.56
                 perl-padre-wx-dialog-regexeditor=0.56
                 perl-padre-wx-dialog-replace=0.56
                 perl-padre-wx-dialog-search=0.56
                 perl-padre-wx-dialog-sessionmanager=0.56
                 perl-padre-wx-dialog-sessionsave=0.56
                 perl-padre-wx-dialog-shortcut=0.56
                 perl-padre-wx-dialog-snippets=0.56
                 perl-padre-wx-dialog-specialvalues=0.56
                 perl-padre-wx-dialog-text=0.56
                 perl-padre-wx-dialog-warning=0.56
                 perl-padre-wx-dialog-windowlist=0.56 perl-padre-wx-dialog=0.56
                 perl-padre-wx-directory-openinfilebrowseraction=0.56
                 perl-padre-wx-directory-searchctrl=0.56
                 perl-padre-wx-directory-treectrl=0.56
                 perl-padre-wx-directory=0.56 perl-padre-wx-docbrowser=0.56
                 perl-padre-wx-editor=0.56 perl-padre-wx-errorlist=0.56
                 perl-padre-wx-filedroptarget=0.56 perl-padre-wx-findresult=0.56
                 perl-padre-wx-functionlist=0.56
                 perl-padre-wx-history-combobox=0.56
                 perl-padre-wx-history-textentrydialog=0.56
                 perl-padre-wx-htmlwindow=0.56 perl-padre-wx-icon=0.56
                 perl-padre-wx-left=0.56 perl-padre-wx-main=0.56
                 perl-padre-wx-menu-debug=0.56 perl-padre-wx-menu-edit=0.56
                 perl-padre-wx-menu-file=0.56 perl-padre-wx-menu-help=0.56
                 perl-padre-wx-menu-perl=0.56 perl-padre-wx-menu-plugins=0.56
                 perl-padre-wx-menu-refactor=0.56
                 perl-padre-wx-menu-rightclick=0.56 perl-padre-wx-menu-run=0.56
                 perl-padre-wx-menu-search=0.56 perl-padre-wx-menu-view=0.56
                 perl-padre-wx-menu-window=0.56 perl-padre-wx-menu=0.56
                 perl-padre-wx-menubar=0.56 perl-padre-wx-notebook=0.56
                 perl-padre-wx-outline=0.56 perl-padre-wx-output=0.56
                 perl-padre-wx-podframe=0.56 perl-padre-wx-popup=0.56
                 perl-padre-wx-printout=0.56 perl-padre-wx-progress=0.56
                 perl-padre-wx-right=0.56 perl-padre-wx-role-mainchild=0.56
                 perl-padre-wx-role-view=0.56 perl-padre-wx-statusbar=0.56
                 perl-padre-wx-syntax=0.56 perl-padre-wx-todolist=0.56
                 perl-padre-wx-toolbar=0.56 perl-padre-wx=0.56
                 perl-wx-perl-dialog-frame=0.56 perl-wx-perl-dialog-simple=0.56
                 perl-wx-perl-dialog-singlechoice=0.56 perl-wx-perl-dialog=0.56
Depends On     : perl-app-ack>=1.86 perl-class-adapter>=1.05 perl-class-unload>=
                 0.03 perl-class-xsaccessor>=1.05 perl-cwd>=3.2701
                 perl-data-dumper perl-dbd-sqlite>=1.27 perl-dbi>=1.58
                 perl-debug-client>=0.11 perl-devel-dumpvar>=0.04
                 perl-devel-refactor>=0.05 perl-digest-md5 perl-encode>=2.26
                 perl-extutils-makemaker>=6.56 perl-extutils-manifest>=1.56
                 perl-file-basename perl-file-copy-recursive>=0.37
                 perl-file-find-rule>=0.30 perl-file-glob
                 perl-file-homedir>=0.84 perl-file-next>=1.06
                 perl-file-path>=2.07 perl-file-remove>=1.42
                 perl-file-sharedir>=1.00 perl-file-spec-functions>=3.2701
                 perl-file-spec>=3.2701 perl-file-temp perl-file-which>=1.08
                 perl-findbin perl-format-human-bytes perl-getopt-long
                 perl-html-entities>=3.57 perl-html-parser>=3.58
                 perl-io-scalar>=2.110 perl-io-socket>=1.30 perl-io-string>=1.08
                 perl-ipc-open2 perl-ipc-open3 perl-list-moreutils>=0.22
                 perl-list-util>=1.18 perl-module-build>=0.3603
                 perl-module-corelist perl-module-refresh>=0.13
                 perl-module-starter>=1.50 perl-orlite>=1.38
                 perl-params-util>=0.33 perl-parse-errorstring-perl>=0.11
                 perl-parse-exuberantctags>=1.00 perl-pip>=0.13
                 perl-pod-abstract>=0.16 perl-pod-functions
                 perl-pod-perldoc>=3.15 perl-pod-pom>=0.17
                 perl-pod-simple-xhtml>=3.04 perl-pod-simple>=3.07 perl-posix
                 perl-ppi>=1.205 perl-ppix-editortools>=0.09 perl-storable>=2.15
                 perl-template-tiny>=0.03 perl-term-readline
                 perl-text-balanced>=2.01 perl-text-diff>=0.35
                 perl-text-findindent>=0.06 perl-thread-queue>=2.11
                 perl-threads-shared>=1.26 perl-threads>=1.71 perl-uri
                 perl-version>=0.80 perl-wx-perl-processstream>=0.24
                 perl-wx>=0.91 perl-yaml-tiny>=1.32 perl>=5.8.5
Build Deps     : perl-capture-tiny>=0.06 perl-extutils-makemaker>=6.42 perl-loca
                 le-msgfmt>=0.14 perl-test-exception>=0.27 perl-test-more>=0.88
                 perl-test-nowarnings>=0.084 perl-test-script>=1.07
Optional Deps  : None
Conflicts With : None
Replaces       : None

My Arch Linux StuffForum EtiquetteCommunity Ethos - Arch is not for everyone

Offline

#52 2010-02-02 15:51:19

maleadt
Member
Registered: 2010-01-05
Posts: 12

Re: paCPAN: tool for building Perl packages for Pacman from CPAN

Ah crap, installing xyne-any/pacpan picked perl-xyne-arch from community... Any way to convince pacman to choose the most up-to-date package by default?

Now an other issue arises when building Padre:

warning: unresolved dependencies: perl-padre -> perl-pod-perldoc -> perl-config (not found)

While Pod::Perldoc doesn't seem to depend on the nonexistant perl-config?

Offline

#53 2010-02-02 19:01:05

Xyne
Administrator/PM
Registered: 2008-08-03
Posts: 6,963
Website

Re: paCPAN: tool for building Perl packages for Pacman from CPAN

Pacman respects the order of repos in pacman.conf. Just move my repo above community and it will always use it for my packages.

The META.yml file for Pod::Perldoc specifies "Configure": http://cpansearch.perl.org/src/FERREIRA … 5/META.yml

I've added an additional check to remove dependencies which do not map to distributions (and detected and solved a problem with cyclical redundancies while I was at it).

Try again with the latest version. Also take a look at the new bauerbill option "Memoize"|"--memoize" which caches database file queries. It will increase the memory footprint but it will make it a lot faster for large builds such as Padre.


My Arch Linux StuffForum EtiquetteCommunity Ethos - Arch is not for everyone

Offline

#54 2010-02-03 09:34:16

maleadt
Member
Registered: 2010-01-05
Posts: 12

Re: paCPAN: tool for building Perl packages for Pacman from CPAN

Allright, moving along. With the new version bauerbill resolves more dependencies (doesn't hang on perldoc), but gets stuck again:

[tim@firefly Desktop]$ sudo bauerbill --memoize -S Padre
WARNING: Padre does not match any package or group in sync db
--> Loading CPAN database...
--> Searching for CPAN packages...
--> Loading CPAN taurball data...
No unprivileged user specified with the "BuildAs" option
Please specify an unprivileged user for this operation: tim
--> resolving perl-app-ack>=1.86
[snip, many more dependencies]
--> resolving perl-test-script>=1.07
Can't write to '/tmp/bauerbill/pacpan/META.yml/ack/1.92-6984': No such file or directory at /usr/share/perl5/vendor_perl/LWP/Protocol.pm line 105. at /usr/share/perl5/vendor_perl/LWP/UserAgent.pm line 844.
tim@firefly Desktop]$ find /tmp/bauerbill/
/tmp/bauerbill/
/tmp/bauerbill/build
/tmp/bauerbill/build/CPAN
/tmp/bauerbill/build/CPAN/perl-padre
/tmp/bauerbill/build/CPAN/perl-padre/PKGBUILD
/tmp/bauerbill/pacpan
/tmp/bauerbill/pacpan/02packages.details.txt.gz
/tmp/bauerbill/pacpan/01modules.index.html
/tmp/bauerbill/pacpan/CHECKSUMS
/tmp/bauerbill/pacpan/CHECKSUMS/P
/tmp/bauerbill/pacpan/CHECKSUMS/P/PL
/tmp/bauerbill/pacpan/CHECKSUMS/P/PL/PLAVEN
/tmp/bauerbill/pacpan/CHECKSUMS/P/PL/PLAVEN/CHECKSUMS
/tmp/bauerbill/pacpan/META.yml
/tmp/bauerbill/pacpan/META.yml/Padre
/tmp/bauerbill/pacpan/META.yml/Padre/0.56
/tmp/bauerbill/pacpan/CPAN_database

Offline

#55 2010-02-03 23:12:21

Xyne
Administrator/PM
Registered: 2008-08-03
Posts: 6,963
Website

Re: paCPAN: tool for building Perl packages for Pacman from CPAN

@maleadt
I'm not sure why you got that error. I've made some changes to the code in a few places to try to catch. Let me know if it works.

I've also built perl-padre using "--cpan" and without "--aur". I made a few changes to handle CPAN distributions with META.yml (there is one among perl-padre's dependencies).

The build will require some manual intervention but this is beyond bauerbill's control. Some META.yml files specify versions that are higher than those available. I don't know if this is due to errors in those files or due to specification of development releases. When you receive a makepkg error in the build operation, cd into the build dir for that package (it will be named on the output, along with the error) and correct whatever errors you need to in the PKGBUILD. I had to remove a few version specifications (e.g. "foo>=x.xx" -> "foo"). Notably, the perl-padre PKGBUILD specifies a few versions as "2701" when they should probably be "27.01".

Of course, if you're not using the "TrustCPAN" option, you can do this from the command line.

Despite the errors, I think this was a good showcase of the new CPAN functionality. Out of the 60+ packages required by perl-padre, only 3 or 4 required manual intervention. It was fun to see all the makepkg lines flying past. smile

I'll try to implement autopatching soon so that a single edit is all that is needed for subsequent builds.


My Arch Linux StuffForum EtiquetteCommunity Ethos - Arch is not for everyone

Offline

#56 2010-02-04 09:52:17

maleadt
Member
Registered: 2010-01-05
Posts: 12

Re: paCPAN: tool for building Perl packages for Pacman from CPAN

Thanks for your continued help, but I keep on seeing the error mentioned in my previous post, although formulated in a different manner since the most recent update:

--> resolving perl-test-script>=1.07... found on CPAN (Test-Script -> perl-test-script)
error: unable to remove /tmp/bauerbill/pacpan/META.yml/ack (Toegang geweigerd)

Bauerbill is run as root (using sudo), but BuildAs is my personal user-account. Also, META.yml/ack does not exist. Finally, everything in /tmp/bauerbill is root-owned, except /tmp/bauerbill/build/CPAN/perl-padre (which would also explain the above failure to remove).

Offline

#57 2010-02-04 17:05:40

Xyne
Administrator/PM
Registered: 2008-08-03
Posts: 6,963
Website

Re: paCPAN: tool for building Perl packages for Pacman from CPAN

Try removing /tmp/bauerbill (as root if you need to) and then try again.  If it still doesn't work, remove /tmp/bauerbill again and try running it as a regular user (using the --cachedir <some other path> option) and report the results and I will try to debug it.


My Arch Linux StuffForum EtiquetteCommunity Ethos - Arch is not for everyone

Offline

#58 2010-02-05 10:00:51

maleadt
Member
Registered: 2010-01-05
Posts: 12

Re: paCPAN: tool for building Perl packages for Pacman from CPAN

Seemed to work a bit better, although it failed to download some packages. I decided to ignore it, after which bauerbill started installing a whole load of dependencies. I however decided to cancel after all when seeing the next dependency coming along:

==> Making package: perl 5.10.1-1 x86_64 (vr feb  5 10:52:47 CET 2010)
==> Checking Runtime Dependencies...
==> Checking Buildtime Dependencies...
==> Retrieving Sources...
  -> Found perl-5.10.1.tar.gz in build dir
==> Validating source files with md5sums...
    perl-5.10.1.tar.gz ... Passed
==> Validating source files with sha256sums...
    perl-5.10.1.tar.gz ... Passed
==> Extracting Sources...
  -> Extracting perl-5.10.1.tar.gz with bsdtar
==> Entering fakeroot environment...
==> Starting build()...
error: failed to detect build method for perl
you may be able to fix this by editing the PKGBUILD
==> ERROR: Build Failed.
    Aborting...

As you see, I didn't have to cancel it as it failed to build Perl...

Offline

#59 2010-02-05 11:47:45

Xyne
Administrator/PM
Registered: 2008-08-03
Posts: 6,963
Website

Re: paCPAN: tool for building Perl packages for Pacman from CPAN

The previous errors were reported in the bauerbill thread and I think I've fixed them now. Please check with the latest versions of perl-xyne-arch and perl-xyne-common. Report any further issues in the bauerbill thread and leave this thread for issues directly related to the pacpan tool.

If the dep tree was traced all the way down to perl then you probably haven't run "pacpan --fix-provides" to update the provides array for the local pacman package. I've opened a ticket on the bug tracker to update the array, but until they repackage it pacman can't detect packages provided by perl.

You can vote for this request here: http://bugs.archlinux.org/task/18049
I've been largely ignored on the bug tracker and dev lists but maybe if others start putting some weight behind it, my drive to standardize Perl packages will get taken seriously.


My Arch Linux StuffForum EtiquetteCommunity Ethos - Arch is not for everyone

Offline

Board footer

Powered by FluxBB