Re: [fpc-devel] FPC 3.0.0rc2 and fppkg

2015-11-05 Thread Joost van der Sluis

Op 26-10-15 om 15:14 schreef Joost van der Sluis:

Op 26-10-15 om 14:29 schreef Sven Barth:


> The description is available, but not easy accessible in fppkg. We 
should add some sort of webpage with the available packages and more 
information on those.


IMHO that should be made available with fppkg as well. Other package 
managers like apt-get, pacman, ports etc. do that as well. This way I 
don't need to consult a browser which might not even be available at 
that moment.


Yes, you are right. All this information is available through the 
fppkg-package. There's a Lazarus-package that also shows this 
information in the IDE, I'm not sure if it is still operational, though.


Trunk now supports 'fppkg info '

Joost.
___
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel


Re: [fpc-devel] FPC 3.0.0rc2 and fppkg

2015-11-05 Thread Sven Barth
Am 05.11.2015 17:54 schrieb "Joost van der Sluis" :
>
> Op 26-10-15 om 15:14 schreef Joost van der Sluis:
>
>> Op 26-10-15 om 14:29 schreef Sven Barth:
>>>
>>>
>>> > The description is available, but not easy accessible in fppkg. We
should add some sort of webpage with the available packages and more
information on those.
>>>
>>> IMHO that should be made available with fppkg as well. Other package
managers like apt-get, pacman, ports etc. do that as well. This way I don't
need to consult a browser which might not even be available at that moment.
>>>
>> Yes, you are right. All this information is available through the
fppkg-package. There's a Lazarus-package that also shows this information
in the IDE, I'm not sure if it is still operational, though.
>
>
> Trunk now supports 'fppkg info '
>

Yay! ^^

Regards,
Sven
___
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel


Re: [fpc-devel] FPC 3.0.0rc2 and fppkg

2015-10-26 Thread Anthony Walter
Okay, I'll check into more a bit later.

As a package manager, where is the description of packages? How is anyone
to know what webdesign is and what it does other than by just looking at
the package name and perhaps trying to google it?

The first google result for "fpc webdesign package" leads to a copy of a
mailing list question asking what the package does. After a bit more
googling it would seem that the OP is the author of the package.

To be of any value IMO, a package manager it ought to provide brief of
descriptions next to package names, otherwise people will have no idea what
they are looking at.

webdesign  add new form designer to Lazarus which can be used to build
websites

Also packages ought to be organized in such that the user knows what they
depend on or what is optional.

webdesign depends on lnet, gecko, embweb; optional jquery

I had to guess at the above and might be wrong. The only reason I picked
those packages is because they are only one which show up when libs isn't
configured they way fppkg expects.
___
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel


Re: [fpc-devel] FPC 3.0.0rc2 and fppkg

2015-10-26 Thread Anthony Walter
I got it working, somewhat.

It would seem that you have to duplicate the entire FPC lib tree
underneath {UserDir}.fppkg/

The instructions at the page referenced in my last post are very unclear
about that.

I suppose under normal fpc install this is needed because the lib files are
typically only create as root under some folder other than your $HOME (done
during install). This copy (assuming everything in fpc/lib is needed)
results in an extra 900MB of files duplicated and eating up disk space (I
use small SSDs on my laptop),

However, since I always clone FPC and Lazarus from sources and build
somewhere under my $HOME folder (normally $HOME/Development/Base or
$HOME/Development/FreePascal), I was able to set LocalRepository
and GlobalPrefix in ~/.config/fppkg.cfg to my FPC folder
( $HOME/Development/Base/fpc) and then fppkg worked, sort of.

I found that almost all package were already "installed". I take installed
to mean the package source were are already included with FPC and compile
when I ran "make all" some time ago.

Of the 6 package not installed, I could only compile half. The rest
complained with results similar to the following:

Target OS: Linux for x86-64
Compiling custembweb.pp
PPU Loading
/home/gigauser/Development/Base/fpc/lib/fpc/3.1.1/units/x86_64-linux/lnet/lnetssl.ppu
PPU Source: lnetssl.pp not found
Recompiling lNetSSL, checksum changed for openssl
lnetssl.pp(43,57) Fatal: Can't find unit lNetSSL used by lhttp
Fatal: Compilation aborted
___
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel


Re: [fpc-devel] FPC 3.0.0rc2 and fppkg

2015-10-26 Thread Jonas Maebe


Anthony Walter wrote on Mon, 26 Oct 2015:


I got it working, somewhat.

It would seem that you have to duplicate the entire FPC lib tree
underneath {UserDir}.fppkg/


That is not necessary. However, the request was to test with FPC  
3.0.0rc2 and from your previous mail it seemed that you were testing  
with 3.1.1 instead. I'm not familiar with all of the details of fppkg,  
but it's quite possible that
a) the official installer script sets up some global fppkg  
configuration (per version?)
b) the server where the package listings are stored also stores  
information per version



Jonas
___
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel


Re: [fpc-devel] FPC 3.0.0rc2 and fppkg

2015-10-26 Thread Joost van der Sluis

Op 26-10-15 om 09:19 schreef Anthony Walter:

I got it working, somewhat.

It would seem that you have to duplicate the entire FPC lib tree 
underneath {UserDir}.fppkg/


No, that should not be necessary. Fppkg uses two locations to install 
packages. One is {UserDir}.fppkg (the local version), but the other one 
should be the location where fpc is installed. That way there is no need 
to duplicate. Read the other mail for hints why it can not find your 
global configuration.


The instructions at the page referenced in my last post are very 
unclear about that.


I suppose under normal fpc install this is needed because the lib 
files are typically only create as root under some folder other than 
your $HOME (done during install). This copy (assuming everything in 
fpc/lib is needed) results in an extra 900MB of files duplicated and 
eating up disk space (I use small SSDs on my laptop),


However, since I always clone FPC and Lazarus from sources and build 
somewhere under my $HOME folder (normally $HOME/Development/Base or 
$HOME/Development/FreePascal), I was able to set LocalRepository 
and GlobalPrefix in ~/.config/fppkg.cfg to my FPC folder 
( $HOME/Development/Base/fpc) and then fppkg worked, sort of.




This should have worked 'out-of-the-box', and it should work with fpc 
3.0.0-rc2, but it could be that you hane to tweak fpc 3.1.1.


I found that almost all package were already "installed". I take 
installed to mean the package source were are already included with 
FPC and compile when I ran "make all" some time ago.


Of the 6 package not installed, I could only compile half. The rest 
complained with results similar to the following:


Target OS: Linux for x86-64
Compiling custembweb.pp
PPU Loading 
/home/gigauser/Development/Base/fpc/lib/fpc/3.1.1/units/x86_64-linux/lnet/lnetssl.ppu

PPU Source: lnetssl.pp not found
Recompiling lNetSSL, checksum changed for openssl
lnetssl.pp(43,57) Fatal: Can't find unit lNetSSL used by lhttp
Fatal: Compilation aborted


Each compiler-version has it's own repository. I did test all packages 
in the 3.0.0 repository. I'll update the 3.1.1 packages later.


Joost.
___
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel


Re: [fpc-devel] FPC 3.0.0rc2 and fppkg

2015-10-26 Thread Joost van der Sluis

Op 26-10-15 om 12:25 schreef Anthony Walter:

Okay, I'll check into more a bit later.

As a package manager, where is the description of packages? How is 
anyone to know what webdesign is and what it does other than by just 
looking at the package name and perhaps trying to google it?


The description is available, but not easy accessible in fppkg. We 
should add some sort of webpage with the available packages and more 
information on those.


The first google result for "fpc webdesign package" leads to a copy of 
a mailing list question asking what the package does. After a bit more 
googling it would seem that the OP is the author of the package.


To be of any value IMO, a package manager it ought to provide brief of 
descriptions next to package names, otherwise people will have no idea 
what they are looking at.


Those are packages that we are using at my work.

I had to guess at the above and might be wrong. The only reason I 
picked those packages is because they are only one which show up when 
libs isn't configured they way fppkg expects.


I had to start with *some* packages. I think that only lnet is of a real 
value, maybe I should remove the others. We should work on a decent list 
of packages. Maybe add 'libmicrohttpd', 'googleapi' and the new 
IPC-package...


Joost.
___
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel


Re: [fpc-devel] FPC 3.0.0rc2 and fppkg

2015-10-26 Thread Joost van der Sluis

Op 26-10-15 om 14:29 schreef Sven Barth:


> The description is available, but not easy accessible in fppkg. We 
should add some sort of webpage with the available packages and more 
information on those.


IMHO that should be made available with fppkg as well. Other package 
managers like apt-get, pacman, ports etc. do that as well. This way I 
don't need to consult a browser which might not even be available at 
that moment.


Yes, you are right. All this information is available through the 
fppkg-package. There's a Lazarus-package that also shows this 
information in the IDE, I'm not sure if it is still operational, though.


Joost.
___
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel


Re: [fpc-devel] FPC 3.0.0rc2 and fppkg

2015-10-26 Thread Joost van der Sluis

Op 26-10-15 om 08:43 schreef Anthony Walter:

*Nothing works for me.*


You are using fpc 3.1.1. The repository for fpc 3.1.1 only contains the 
'extra' packages, like embweb, gecko etc. This is because all the other 
packages can constantly change...



*Following the instructions at http://wiki.freepascal.org/fppkg*
*
*
*When I do fppkg list I see:*

$ fppkg list -l
Name Installed (G)  Installed (L)  Available
embweb   -  -  0.9.1-968
gecko-  -  2.9.0-3
jquery   -  -  0.9.0-842
lazmkunit-  -  0.9.3-1
lnet -  -  0.6.6-2606
webdesign-  -  0.9.0-906



But it should list all the installed packages, although they are not 
available for download.



*When I try to install I get this:*

$ fppkg install embweb
The FPC Package tool encountered the following error:
[embweb] Package fcl-web  is not available



Because it can not find the installed packages. (In this case fcl-web)


*When I try with fcl-base I get this:*

$ fppkg install fcl-base
The FPC Package tool encountered the following error:
Package "fcl-base" not found.



Normal for fpc 3.1.1


*What's the issue? A valid fpc is in the path as well as a valid fpc.cfg.*
*
*
*Output of fppkg listsettings:*

Using global configuration from file "/home/gigauser/.config/fppkg.cfg":
 RemoteMirrorsURL: http://www.freepascal.org/repository/mirrors.xml
 RemoteRepository:  auto
 LocalRepository:   "{UserDir}.fppkg/" -> "/home/gigauser/.fppkg/"
 BuildDir:  "{LocalRepository}build/" -> 
"/home/gigauser/.fppkg/build/"
 ArchivesDir:   "{LocalRepository}archives/" -> 
"/home/gigauser/.fppkg/archives/"
 CompilerConfigDir: "{LocalRepository}config/" -> 
"/home/gigauser/.fppkg/config/"

 DefaultCompilerConfig: "default"
 FPMakeCompilerConfig:  "default"
 Downloader:lnet
Using compiler configuration file "/home/gigauser/.fppkg/config/default":
 Compiler: "/home/gigauser/Development/Base/fpc/bin/fpc"
 Target:   x86_64-linux
 Version:  3.1.1
 GlobalPrefix: "/home/gigauser/Development/Base/fpc/bin" -> 
"/home/gigauser/Development/Base/fpc/bin/"

 LocalPrefix:  "{LocalRepository}" -> "/home/gigauser/.fppkg/"
 GlobalInstallDir: "{GlobalPrefix}lib/fpc/{CompilerVersion}/" -> 
"/home/gigauser/Development/Base/fpc/bin/lib/fpc/3.1.1/"


This setting should point to the location where the packages are 
installed. And it looks right. Do you have a directory called 'fpmkinst' 
here:

/home/gigauser/Development/Base/fpc/bin/lib/fpc/3.1.1/fpmkinst/x86_64

And does this directory contain a lot of .fpm files?

It should...

Joost.
___
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel


Re: [fpc-devel] FPC 3.0.0rc2 and fppkg

2015-10-26 Thread Sven Barth
Am 26.10.2015 13:17 schrieb "Joost van der Sluis" :
>
> Op 26-10-15 om 12:25 schreef Anthony Walter:
>
>> Okay, I'll check into more a bit later.
>>
>> As a package manager, where is the description of packages? How is
anyone to know what webdesign is and what it does other than by just
looking at the package name and perhaps trying to google it?
>
>
> The description is available, but not easy accessible in fppkg. We should
add some sort of webpage with the available packages and more information
on those.

IMHO that should be made available with fppkg as well. Other package
managers like apt-get, pacman, ports etc. do that as well. This way I don't
need to consult a browser which might not even be available at that moment.

Regards,
Sven
___
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel


[fpc-devel] FPC 3.0.0rc2 and fppkg

2015-10-25 Thread Joost van der Sluis

Hi all,

One of the new (or rather improved) features of fpc 3.0.0 is the Free 
Pascal packages repository, or shortly fppkg. Basically this is an 
online repository in which you can find several Free Pascal libraries 
that you can use in your projects.


It would be nice if some people can test if it works correctly. It 
should be configured correctly when you used one of the official 
3.0.0-rc2 releases.


First test would be to run 'fppkg list -l'. It should list the name of 
all available packages. All packages that come by default with fpc 
should be marked as installed. If this does not work, there is probably 
a flaw in the configuration. Or you are on Windows, in which case you 
should read the note below this mail. To troubleshoot the configuration, 
use 'fppkg listsettings'.


Second test is to install a package, for example fcl-base, by running 
'fppkg install fcl-base'. This should download the fcl-base package, 
compile it, install it, and thereafter recompile all packages that have 
a dependency on fcl-base. In case the code of these packages is not 
available it should also download those.


This test might look useless, as fcl-base is already installed, but try 
'fppkg list -l' after the installation. You will see that the fcl-base 
package is not installed into the default location (G, short for global) 
but in another location (L, short for local). The local-repository is 
user-specific and useful if you want to test a change in a package, or 
want to have the package compiled with different compiler settings.


So the next test is to install fcl-base with debug-information. You do 
this with 'fppkg install fcl-base -o -gl'. This will install fcl-base 
compiled with debug information and re-compile all depending packages. 
(With the same compiler-settings they were compiled with earlier - so 
normally without debug-information)


Now fcl-base is installed into the local repository with debug 
information, you can create an application using the contnrs unit, and 
see if you can step into it inside the debugger. If not, the Free Pascal 
compiler might not be configured correctly, so that is does not add the 
local repository to it's search path.


Instead of adding debug-information to a package, you could also try to 
add some new functionality to an unit in a package and install it 
without getting into troubles with packages that depend on the changed 
package, as they are automatically re-compiled.


Last, and real, test is to install a package that is not available in 
fpc by default. Like lnet.


Please test and send your findings here.

Regards,

Joost

Note for Windows users: It seems that there is a bug in the 
inno-installer of 3.0.0rc2, with as result that fppkg can not find the 
packages that are installed by the official installer. This should not 
be a big problem, as fppkg will download all the packages that it needs 
and install those. So in the case of fcl-base, it will also download and 
install all packages that fcl-base itself depends on.
There is one other issue, though, and that is that fppkg needs the 
fpmkunit-package to compile packages. There is a fallback-mode to work 
without fpmkunit, but this might not work in all cases due to another 
bug in 3.0.0rc2. You can work-around this bug by installing the fpmkunit 
package before you try to install any other package. ('fppkg install 
fpmkunit')


___
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel