Re: Patches for a slave port

2017-12-16 Thread Kevin Oberman
On Fri, Dec 15, 2017 at 7:19 AM, Chris H  wrote:

> On Thu, 14 Dec 2017 20:53:38 -0800 "Kevin Oberman" 
> said
>
> I am attempting to submit a fix for a slave port,
>> multimedia/avidemux_plugins. All of the patches are in the master port,
>> avidemux. So I make all of the fixes and run "make makepatch". All of the
>> patches are generated into avidemux/files. I then ran "svn diff" in
>> avidemux_plugins and the only thing generated is the removal of BROKEN.
>> OK.
>> The patches are in the master port, so I run "svn diff" there and no
>> differences are shown. Huh?
>>
>> Why does "svn diff" not see the new files? How do I get the diffs? Or am I
>> going to have to manually generate the diff the old fashioned way.
>>
> svn add, before running the diff?
>
>
How many years (or decades) have I been using and even hacking CVS and
Subversion? Oh, this is embarrassing!

Thanks, Chris
--
Kevin Oberman, Part time kid herder and retired Network Engineer
E-mail: rkober...@gmail.com
PGP Fingerprint: D03FB98AFA78E3B78C1694B318AB39EF1B055683
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: Patches for a slave port

2017-12-16 Thread Chris H

On Sat, 16 Dec 2017 00:16:39 -0800 "Kevin Oberman"  said


On Fri, Dec 15, 2017 at 7:19 AM, Chris H  wrote:

> On Thu, 14 Dec 2017 20:53:38 -0800 "Kevin Oberman" 
> said
>
> I am attempting to submit a fix for a slave port,
>> multimedia/avidemux_plugins. All of the patches are in the master port,
>> avidemux. So I make all of the fixes and run "make makepatch". All of the
>> patches are generated into avidemux/files. I then ran "svn diff" in
>> avidemux_plugins and the only thing generated is the removal of BROKEN.
>> OK.
>> The patches are in the master port, so I run "svn diff" there and no
>> differences are shown. Huh?
>>
>> Why does "svn diff" not see the new files? How do I get the diffs? Or am I
>> going to have to manually generate the diff the old fashioned way.
>>
> svn add, before running the diff?
>
>
How many years (or decades) have I been using and even hacking CVS and
Subversion? Oh, this is embarrassing!

Heh. Want to know that why that answer came so quickly to me?
Because, I too for get that. :-) It used to be so easy, back in the CVS
days. Those commands were the only ones you had to remember. Well, unless
you count RCS. Adding SVN, GIT, DARCS, ... -- enough, already!

There's *no* shame in forgetting, Kevin. :-)

--Chris


Thanks, Chris
--
Kevin Oberman, Part time kid herder and retired Network Engineer
E-mail: rkober...@gmail.com
PGP Fingerprint: D03FB98AFA78E3B78C1694B318AB39EF1B055683



___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: Patches for a slave port

2017-12-16 Thread Chris H

On Sat, 16 Dec 2017 01:17:29 -0800  said


On Sat, 16 Dec 2017 00:16:39 -0800 "Kevin Oberman" 
said

> On Fri, Dec 15, 2017 at 7:19 AM, Chris H  wrote:
> 
> > On Thu, 14 Dec 2017 20:53:38 -0800 "Kevin Oberman" 

> > said
> >
> > I am attempting to submit a fix for a slave port,
> >> multimedia/avidemux_plugins. All of the patches are in the master port,
> >> avidemux. So I make all of the fixes and run "make makepatch". All of the
> >> patches are generated into avidemux/files. I then ran "svn diff" in
> >> avidemux_plugins and the only thing generated is the removal of BROKEN.
> >> OK.
> >> The patches are in the master port, so I run "svn diff" there and no
> >> differences are shown. Huh?
> >>
> >> Why does "svn diff" not see the new files? How do I get the diffs? Or am
> I
> >> going to have to manually generate the diff the old fashioned way.
> >>
> > svn add, before running the diff?
> >
> >
> How many years (or decades) have I been using and even hacking CVS and
> Subversion? Oh, this is embarrassing!
Heh. Want to know that why that answer came so quickly to me?
Because, I too for get that. :-) It used to be so easy, back in the CVS
days. Those commands were the only ones you had to remember. Well, unless
you count RCS. Adding SVN, GIT, DARCS, ... -- enough, already!

There's *no* shame in forgetting, Kevin. :-)

OH. One more thing -- pro tip;

svn status

anytime something doesn't act the way you think it should.



--Chris
> 
> Thanks, Chris

> --
> Kevin Oberman, Part time kid herder and retired Network Engineer
> E-mail: rkober...@gmail.com
> PGP Fingerprint: D03FB98AFA78E3B78C1694B318AB39EF1B055683


___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"



___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Setting system user home directory

2017-12-16 Thread Dmytro Bilokha

Hello, Everyone!

I'm trying to change www/payara port to make it run under the payara user 
instead of root.
I've added the following line to the UIDs file:

payara:*:221:221::0:0:Payara Application Server 
user:/nonexistent:/usr/sbin/nologin

And this line to the port makefile:

USERS=  payara

Also, I've made some another changes to the port's scripts to start service 
under payara user.
Everything seems to be fine, but the service on start/shutdown creates some 
preferences files,
caches, etc in the payara user's homedir.
The problem is, that it is impossible to create these files in /nonexistent. 
This fact makes
service to show some annoying warnings on every startup/shutdown.
To make service to work properly I want to create directory writable by the 
payara user and
set it as payara's homedir.
And I don't want to put these dir under the /usr/home/, it should be somewhere 
in the application,
like /usr/local/payara-4.1.2.173/prefs.
As far as I understand, payara user will be created automatically by the 
bsd.port.pre.mk file included in the port's makefile. But, during every 
installation somehow payara user's homedir
should be changed. I can do it with the following one-liner:

/usr/sbin/pw usermod payara -d ${DATADIR}/prefs

So, the questions are:
1. Is it a proper way of doing such kind of things?
2. Where in the port's makefile should I put my one-liner? Will it be OK to 
make it like this:

...head of the make file with setting variables and so on is here..
.include 
do-install:
.doing some work here..
@/usr/sbin/pw usermod payara -d ${DATADIR}/prefs
.include 
end of the makefile.

Many thanks for your attention and help.

--
Dmytro Bilokha
dmy...@posteo.net
+38-050-607-41-43
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: new portmaster fails to build devel/py-libzfs@py36 because of failing cython

2017-12-16 Thread Stefan Esser
Am 16.12.17 um 07:02 schrieb Jim Trigg:
> On 12/15/2017 08:25 AM, Stefan Esser wrote:
>> Am 15.12.17 um 11:21 schrieb Kubilay Kocak:
>>> On 15/12/2017 8:50 pm, Johan Hendriks wrote:
 Hello all.
>>>
>>> Hi Johan
>>>
 First of all thank you for the update of portmaster, much appreciated.

 When i am updating my ports, portmaster fails with the following error.

 > Compressing man pages (compress-man)
 ===>>> Starting check for runtime dependencies
 ===>>> Gathering dependency list for lang/cython@py36 from ports
 ===>>> Dependency check complete for lang/cython@py36

 ===>>> devel/py-libzfs@py36 1/10 >> lang/cython@py36 (1/1)

 ===>  Installing for py36-cython-0.26
 ===>  Checking if py36-cython already installed
 ===>   Registering installation for py36-cython-0.26 as automatic
 Installing py36-cython-0.26...
 pkg-static: py36-cython-0.26 conflicts with cython3-0.26 (installs files
> 
>> Well, actually portmaster is expected to deal with that conversion of the
>> cython3 port.
>>
>> I have tested the upgrade of individual ports and of all ports that are
>> either back-level or where the ORIGIN changed (as in the case of this
>> particular port).
>>
>> Hmmm, now I see what's the problem: The package name seems to have been
>> changed during the conversion to a flavored port (from "cython3-0.26.tbz"
>> to "py36-cython-0.26.tar.bz"). This is not typical of ports that use
>> flavors now, in general they generate packages under the same name as the
>> non-flavored port did.
>>
>> I have to see, whether I can easily detect this case - the current logic
>> that distinguishes between fresh installs and re-installs does not see
>> that the old version needs to be deleted before installing the new one.
>>
>> For now the advice to manually delete the cython3 port is right and will
>> let you install the new version.
> 
> Would using -o work? portmaster -o lang/cython@py36 cython3

No, sadly not. The -o option is implicitly passed to an intermediate recursive
call of portmaster, but then another child is launched for the actual build,
which does not receive that option. And if it was passed, then the logic would
probably lead to another recursive invocation (leading to endless recursion).

I could try passing the old origin in an environment variable to the child
process, which is used if other means to detect the previous origin fail. That
should not break the control flow and decision to actually build the port in
the child process.

I do not fully understand, why portmaster calls itself in such a way (with
ever less options passed, while ever more context is in the environment), and
I can only guess, that this is a relict from pre-PKG_NG times, when portmaster
had to perform many more actions in the script instead of relying on pkg DB
state.

I plan to change this completely, but this will make it very hard to work on
existing PRs and GitHub issues, since any patches provided with those will not
cleanly apply anymore.

Regards, STefan
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: Setting system user home directory

2017-12-16 Thread Miroslav Lachman

Dmytro Bilokha wrote on 2017/12/16 10:40:

Hello, Everyone!

I'm trying to change www/payara port to make it run under the payara
user instead of root.
I've added the following line to the UIDs file:

payara:*:221:221::0:0:Payara Application Server
user:/nonexistent:/usr/sbin/nologin

And this line to the port makefile:

USERS=payara

Also, I've made some another changes to the port's scripts to start
service under payara user.
Everything seems to be fine, but the service on start/shutdown creates
some preferences files,
caches, etc in the payara user's homedir.
The problem is, that it is impossible to create these files in
/nonexistent. This fact makes
service to show some annoying warnings on every startup/shutdown.
To make service to work properly I want to create directory writable by
the payara user and
set it as payara's homedir.
And I don't want to put these dir under the /usr/home/, it should be
somewhere in the application,
like /usr/local/payara-4.1.2.173/prefs.
As far as I understand, payara user will be created automatically by the
bsd.port.pre.mk file included in the port's makefile. But, during every
installation somehow payara user's homedir
should be changed. I can do it with the following one-liner:

/usr/sbin/pw usermod payara -d ${DATADIR}/prefs

So, the questions are:
1. Is it a proper way of doing such kind of things?
2. Where in the port's makefile should I put my one-liner? Will it be OK
to make it like this:

...head of the make file with setting variables and so on is here..
.include 
do-install:
 .doing some work here..
 @/usr/sbin/pw usermod payara -d ${DATADIR}/prefs
.include 
end of the makefile.

Many thanks for your attention and help.


I don't know Payara but applications should not write its files to 
/usr/local. This should work even if /usr/local is mounted Read Only.
If you need to store configuration (preferences) then it should be in 
/usr/local/etc/payara.
If the application writes some data files like databases, it goes under 
/var/db/payara and log in to /var/log/payara.log or /var/log/payara 
(directory)


Miroslav Lachman

___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


FreeBSD ports you maintain which are out of date

2017-12-16 Thread portscout
Dear port maintainer,

The portscout new distfile checker has detected that one or more of your
ports appears to be out of date. Please take the opportunity to check
each of the ports listed below, and if possible and appropriate,
submit/commit an update. If any ports have already been updated, you can
safely ignore the entry.

You will not be e-mailed again for any of the port/version combinations
below.

Full details can be found at the following URL:
http://portscout.freebsd.org/po...@freebsd.org.html


Port| Current version | New version
+-+
devel/py-mwlib  | 0.15.14 | 0.15.19
+-+


If any of the above results are invalid, please check the following page
for details on how to improve portscout's detection and selection of
distfiles on a per-port basis:

http://portscout.freebsd.org/info/portscout-portconfig.txt

Thanks.
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Can we have multiple flavors for a port?

2017-12-16 Thread Matthew Seaman

I have a review up to add a USES=django --
https://reviews.freebsd.org/D12592 which I'm now modifying to be FLAVORS
compatible given that has hit the tree.

Now, we currently have ports for 4 different versions of django (1.8,
1.10, 1.11, 2.0) and the obvious next move is to add django-based
flavouring.  Currently, most django ports depend on django-1.8, with a
few depending on django-1.10, but this I think is mostly due to inertia
and django ports should be compatible with more recent versions.  Having
four different versions of django in ports seems excessive -- so, for
the sake of argument I'd cut that down to just django-1.11 and django-2.0

But this is all python code, and the python flavouring would also apply...

Given that django-2.0 requires python-3.5+ we end up with the following
combinations:

   py27 django111
   py36 django111
   py36 django20

and there's some 104 django ports which will mostly end up needing all
three of these variants built -- so as combinatorial explosions go, it's
not particularly earth-shattering.

However, my questions are:

  - Is it possible or desirable to have multiple flavourings like this?

  - If so, what should the syntax look like for specifying a particular
combination?  eg. www/py-django-mezzanine@py27+django111 ?

Cheers,

Matthew




signature.asc
Description: OpenPGP digital signature


Re: Setting system user home directory

2017-12-16 Thread Dmytro Bilokha

On Sat, Dec 16, 2017 at 01:44:05PM +0100, Miroslav Lachman wrote:

Dmytro Bilokha wrote on 2017/12/16 10:40:

Hello, Everyone!

I'm trying to change www/payara port to make it run under the payara
user instead of root.
I've added the following line to the UIDs file:

payara:*:221:221::0:0:Payara Application Server
user:/nonexistent:/usr/sbin/nologin

And this line to the port makefile:

USERS=payara

Also, I've made some another changes to the port's scripts to start
service under payara user.
Everything seems to be fine, but the service on start/shutdown creates
some preferences files,
caches, etc in the payara user's homedir.
The problem is, that it is impossible to create these files in
/nonexistent. This fact makes
service to show some annoying warnings on every startup/shutdown.
To make service to work properly I want to create directory writable by
the payara user and
set it as payara's homedir.
And I don't want to put these dir under the /usr/home/, it should be
somewhere in the application,
like /usr/local/payara-4.1.2.173/prefs.
As far as I understand, payara user will be created automatically by the
bsd.port.pre.mk file included in the port's makefile. But, during every
installation somehow payara user's homedir
should be changed. I can do it with the following one-liner:

/usr/sbin/pw usermod payara -d ${DATADIR}/prefs

So, the questions are:
1. Is it a proper way of doing such kind of things?
2. Where in the port's makefile should I put my one-liner? Will it be OK
to make it like this:

...head of the make file with setting variables and so on is here..
.include 
do-install:
 .doing some work here..
 @/usr/sbin/pw usermod payara -d ${DATADIR}/prefs
.include 
end of the makefile.

Many thanks for your attention and help.


I don't know Payara but applications should not write its files to
/usr/local. This should work even if /usr/local is mounted Read Only.
If you need to store configuration (preferences) then it should be in
/usr/local/etc/payara.
If the application writes some data files like databases, it goes under
/var/db/payara and log in to /var/log/payara.log or /var/log/payara
(directory)

Miroslav Lachman


Thanks for the information. Now I'm a little bit confused.
I've checked and seems to me that nither www/tomcat85 (servlet container) nor 
www/glassfish and java/wildfly10 (application servers) ports follow this convention.

All of them has directories for logs, configuration and Java applications under 
the
/usr/local. Is there something special in Java servers ports?

--
Dmytro Bilokha
dmy...@posteo.net
+38-050-607-41-43
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: Setting system user home directory

2017-12-16 Thread Miroslav Lachman

Dmytro Bilokha wrote on 2017/12/16 14:59:

On Sat, Dec 16, 2017 at 01:44:05PM +0100, Miroslav Lachman wrote:

Dmytro Bilokha wrote on 2017/12/16 10:40:

Hello, Everyone!

I'm trying to change www/payara port to make it run under the payara
user instead of root.
I've added the following line to the UIDs file:

payara:*:221:221::0:0:Payara Application Server
user:/nonexistent:/usr/sbin/nologin

And this line to the port makefile:

USERS=payara

Also, I've made some another changes to the port's scripts to start
service under payara user.
Everything seems to be fine, but the service on start/shutdown creates
some preferences files,
caches, etc in the payara user's homedir.
The problem is, that it is impossible to create these files in
/nonexistent. This fact makes
service to show some annoying warnings on every startup/shutdown.
To make service to work properly I want to create directory writable by
the payara user and
set it as payara's homedir.
And I don't want to put these dir under the /usr/home/, it should be
somewhere in the application,
like /usr/local/payara-4.1.2.173/prefs.
As far as I understand, payara user will be created automatically by the
bsd.port.pre.mk file included in the port's makefile. But, during every
installation somehow payara user's homedir
should be changed. I can do it with the following one-liner:

/usr/sbin/pw usermod payara -d ${DATADIR}/prefs

So, the questions are:
1. Is it a proper way of doing such kind of things?
2. Where in the port's makefile should I put my one-liner? Will it be OK
to make it like this:

...head of the make file with setting variables and so on is
here..
.include 
do-install:
 .doing some work here..
 @/usr/sbin/pw usermod payara -d ${DATADIR}/prefs
.include 
end of the makefile.

Many thanks for your attention and help.


I don't know Payara but applications should not write its files to
/usr/local. This should work even if /usr/local is mounted Read Only.
If you need to store configuration (preferences) then it should be in
/usr/local/etc/payara.
If the application writes some data files like databases, it goes under
/var/db/payara and log in to /var/log/payara.log or /var/log/payara
(directory)

Miroslav Lachman


Thanks for the information. Now I'm a little bit confused.
I've checked and seems to me that nither www/tomcat85 (servlet
container) nor www/glassfish and java/wildfly10 (application servers)
ports follow this convention.
All of them has directories for logs, configuration and Java
applications under the
/usr/local. Is there something special in Java servers ports?



I know there are ports not following this convention (and I don't 
understand why). Those ports are making troubles if you want to serve 
/usr/local as read only NFS for example.


Miroslav Lachman


___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: AIM is shutting down today

2017-12-16 Thread René Ladan
On 15-12-2017 22:37, Dmitri Goutnik wrote:
> With AOL Instant Messenger products and services going dark today(*)
> (December 15th 2017), a few ports will stop working and probably need to be
> deprecated:
> 
> net-im/bsflite
> net-im/p5-Net-AIM
> net-im/pork
> security/aimsniff
> 
I have removed net-im/pork and security/aimsniff, they were
unmaintained. I plan to remove net-im/bsflite and net-im/p5-Net-AIM
before the end of the year to not drag them into 2018Q1.

> Additionally, these ports
> 
> irc/bitlbee
> net-im/centerim
> net-im/centerim-devel
> net-im/libpurple
>
I will have a look.

> have "AIM" either as a configure option or as a part of option description.
> These ports probably need to be reviewed/updated to have "AIM" removed to
> avoid user confusion.
> 
> (*): https://help.aol.com/articles/aim-discontinued
> 
René

___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: Can we have multiple flavors for a port?

2017-12-16 Thread Stefan Esser
Am 16.12.17 um 14:51 schrieb Matthew Seaman:
> 
> I have a review up to add a USES=django --
> https://reviews.freebsd.org/D12592 which I'm now modifying to be FLAVORS
> compatible given that has hit the tree.
> 
> Now, we currently have ports for 4 different versions of django (1.8,
> 1.10, 1.11, 2.0) and the obvious next move is to add django-based
> flavouring.  Currently, most django ports depend on django-1.8, with a
> few depending on django-1.10, but this I think is mostly due to inertia
> and django ports should be compatible with more recent versions.  Having
> four different versions of django in ports seems excessive -- so, for
> the sake of argument I'd cut that down to just django-1.11 and django-2.0
> 
> But this is all python code, and the python flavouring would also apply...
> 
> Given that django-2.0 requires python-3.5+ we end up with the following
> combinations:
> 
>py27 django111
>py36 django111
>py36 django20
> 
> and there's some 104 django ports which will mostly end up needing all
> three of these variants built -- so as combinatorial explosions go, it's
> not particularly earth-shattering.
> 
> However, my questions are:
> 
>   - Is it possible or desirable to have multiple flavourings like this?
> 
>   - If so, what should the syntax look like for specifying a particular
> combination?  eg. www/py-django-mezzanine@py27+django111 ?

I asked portmgr@ the same question when I started to work on portmaster
and did not want to implement a solution that does only support a single
flavor per port (or rather, waste time and effort on a portmaster version
that only supported 1 flavor per port, when there were plans to support
multiple flavors in the ports framework in the future).

The answer I received was very clear: There can only be 1 flavor per port
and there are no plans to remove that restriction.

I questioned the wise-ness of that decision, but had better use for my
time than to continue arguing, that multi-flavor support was probably
going to be required very soon.


My questions were specifically, how a dependency with multiple flavors
should be specified (e.g. "@py36@xyz") and how to query a port for this
case. The same notation should be used in the MOVED file in such a case.

The order of flavors added to an origin must either be ignored by all
tools operating on them (which precludes simple string comparisons to
see whether one origin+flavors is identical to another one) or should
be required to follow some (e.g.) lexical order.


I'd also like to see the flavor(s) (if any) become part of the port origin
(or some other variable in the PKG DB that can easily be queried). The
value should be identical to the format in dependencies and the MOVED
file to simplify tools like portmaster, which currently must execute a
complex series of queries to get at that information.

The origin@flavor does not encode the information previously contained
in just the origin.


IMHO, multi-flavor support should have been one of the initial considerations
when designing the flavor extension to the ports system!

Regards, STefan
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: Option vs. flavor?

2017-12-16 Thread Thierry Thomas
Le sam. 16 déc. 17 à  2:38:51 +0100, Yuri 
 écrivait :

> One port is small by itself, but it semi-optionally requires 4.5GB of 
> static data installed.
> 
> It is possible to download this data optionally, conditional on the port 
> option DATA_FILES which will be "off" by default, so that the users who 
> need the data will install it with DATA_FILES=on.
> 
> Alternatively, it is possible to create a flavor, something like @withData.
> 
> 
> Should the option be preferred, or should the flavor be preferred?

I'd say that this is a case for sub-packages.
-- 
Th. Thomas.


signature.asc
Description: PGP signature


Re: Setting system user home directory

2017-12-16 Thread Dmytro Bilokha

On Sat, Dec 16, 2017 at 03:20:21PM +0100, Miroslav Lachman wrote:

Dmytro Bilokha wrote on 2017/12/16 14:59:

On Sat, Dec 16, 2017 at 01:44:05PM +0100, Miroslav Lachman wrote:

Dmytro Bilokha wrote on 2017/12/16 10:40:

Hello, Everyone!

I'm trying to change www/payara port to make it run under the payara
user instead of root.
I've added the following line to the UIDs file:

payara:*:221:221::0:0:Payara Application Server
user:/nonexistent:/usr/sbin/nologin

And this line to the port makefile:

USERS=payara

Also, I've made some another changes to the port's scripts to start
service under payara user.
Everything seems to be fine, but the service on start/shutdown creates
some preferences files,
caches, etc in the payara user's homedir.
The problem is, that it is impossible to create these files in
/nonexistent. This fact makes
service to show some annoying warnings on every startup/shutdown.
To make service to work properly I want to create directory writable by
the payara user and
set it as payara's homedir.
And I don't want to put these dir under the /usr/home/, it should be
somewhere in the application,
like /usr/local/payara-4.1.2.173/prefs.
As far as I understand, payara user will be created automatically by the
bsd.port.pre.mk file included in the port's makefile. But, during every
installation somehow payara user's homedir
should be changed. I can do it with the following one-liner:

/usr/sbin/pw usermod payara -d ${DATADIR}/prefs

So, the questions are:
1. Is it a proper way of doing such kind of things?
2. Where in the port's makefile should I put my one-liner? Will it be OK
to make it like this:

...head of the make file with setting variables and so on is
here..
.include 
do-install:
 .doing some work here..
 @/usr/sbin/pw usermod payara -d ${DATADIR}/prefs
.include 
end of the makefile.

Many thanks for your attention and help.


I don't know Payara but applications should not write its files to
/usr/local. This should work even if /usr/local is mounted Read Only.
If you need to store configuration (preferences) then it should be in
/usr/local/etc/payara.
If the application writes some data files like databases, it goes under
/var/db/payara and log in to /var/log/payara.log or /var/log/payara
(directory)

Miroslav Lachman


Thanks for the information. Now I'm a little bit confused.
I've checked and seems to me that nither www/tomcat85 (servlet
container) nor www/glassfish and java/wildfly10 (application servers)
ports follow this convention.
All of them has directories for logs, configuration and Java
applications under the
/usr/local. Is there something special in Java servers ports?



I know there are ports not following this convention (and I don't
understand why). Those ports are making troubles if you want to serve
/usr/local as read only NFS for example.

Miroslav Lachman


Ok, than I'll try to move everything writable from /usr/local to /var.
I plan to put system user's caches and properties to the 
/var/payara/X.Y.Z/prefs,
where X.Y.Z is an application's version.
And this returns me to the first question: how to properly change user's home
directory on port installation?

--
Dmytro Bilokha
dmy...@posteo.net
+38-050-607-41-43
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: Linux ports tutorial? WPS Office

2017-12-16 Thread Tijl Coosemans
On Thu, 14 Dec 2017 18:27:10 -0500 Pedro Giffuni  wrote:
> The port still doesn't work:
> - It appears it wants to use a old version of libpng that is not in our 
> centos7.
> - USE_RPM doesn't install anything, it seems like we are missing support 
> for non-base RPMs.
> 
> I think I'll bail on this port, it requires some packaging-foo that I 
> don't want to spend time on.
> 
> I'll leave my WIP here, for someone else to play with it:
> 
> https://people.freebsd.org/~pfg/ports/linux-wps-office.tgz

USE_LINUX_RPM is only for Linux infrastructure ports.  You should remove
that and add your own do-install.  You also need NO_WRKSUBDIR=yes and
PLIST_SUB=LINUXBASE=${LINUXBASE}.

The do-install target should copy WRKSRC/opt and WRKSRC/usr/bin to
${STAGEDIR}${LINUXBASE}.  WRKSRC/etc and WRKSRC/usr/share look like
they should go to ${STAGEDIR}${PREFIX}.

Then you also need to add startup scripts for et, wpp and wps containing
something like this:

#! /bin/sh
exec /compat/linux/bin/sh /usr/bin/et "$@"

And let do-install copy them to ${STAGEDIR}${PREFIX/bin.

You also need to replace /usr/bin with ${PREFIX} in .desktop files.

I would also add -office to PORTNAME and remove PKGNAMESUFFIX.

The old libpng it is looking for is in CentOS 6, so USES=linux:c7 won't
work.  For now it's best to simply use USES=linux.
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: Setting system user home directory

2017-12-16 Thread Kevin Oberman
On Sat, Dec 16, 2017 at 9:04 AM, Dmytro Bilokha  wrote:

> On Sat, Dec 16, 2017 at 03:20:21PM +0100, Miroslav Lachman wrote:
>
>> Dmytro Bilokha wrote on 2017/12/16 14:59:
>>
>>> On Sat, Dec 16, 2017 at 01:44:05PM +0100, Miroslav Lachman wrote:
>>>
 Dmytro Bilokha wrote on 2017/12/16 10:40:

> Hello, Everyone!
>
> I'm trying to change www/payara port to make it run under the payara
> user instead of root.
> I've added the following line to the UIDs file:
>
> payara:*:221:221::0:0:Payara Application Server
> user:/nonexistent:/usr/sbin/nologin
>
> And this line to the port makefile:
>
> USERS=payara
>
> Also, I've made some another changes to the port's scripts to start
> service under payara user.
> Everything seems to be fine, but the service on start/shutdown creates
> some preferences files,
> caches, etc in the payara user's homedir.
> The problem is, that it is impossible to create these files in
> /nonexistent. This fact makes
> service to show some annoying warnings on every startup/shutdown.
> To make service to work properly I want to create directory writable by
> the payara user and
> set it as payara's homedir.
> And I don't want to put these dir under the /usr/home/, it should be
> somewhere in the application,
> like /usr/local/payara-4.1.2.173/prefs.
> As far as I understand, payara user will be created automatically by
> the
> bsd.port.pre.mk file included in the port's makefile. But, during
> every
> installation somehow payara user's homedir
> should be changed. I can do it with the following one-liner:
>
> /usr/sbin/pw usermod payara -d ${DATADIR}/prefs
>
> So, the questions are:
> 1. Is it a proper way of doing such kind of things?
> 2. Where in the port's makefile should I put my one-liner? Will it be
> OK
> to make it like this:
>
> ...head of the make file with setting variables and so on is
> here..
> .include 
> do-install:
>  .doing some work here..
>  @/usr/sbin/pw usermod payara -d ${DATADIR}/prefs
> .include 
> end of the makefile.
>
> Many thanks for your attention and help.
>

 I don't know Payara but applications should not write its files to
 /usr/local. This should work even if /usr/local is mounted Read Only.
 If you need to store configuration (preferences) then it should be in
 /usr/local/etc/payara.
 If the application writes some data files like databases, it goes under
 /var/db/payara and log in to /var/log/payara.log or /var/log/payara
 (directory)

 Miroslav Lachman

>>>
>>> Thanks for the information. Now I'm a little bit confused.
>>> I've checked and seems to me that nither www/tomcat85 (servlet
>>> container) nor www/glassfish and java/wildfly10 (application servers)
>>> ports follow this convention.
>>> All of them has directories for logs, configuration and Java
>>> applications under the
>>> /usr/local. Is there something special in Java servers ports?
>>>
>>
>>
>> I know there are ports not following this convention (and I don't
>> understand why). Those ports are making troubles if you want to serve
>> /usr/local as read only NFS for example.
>>
>> Miroslav Lachman
>>
>
> Ok, than I'll try to move everything writable from /usr/local to /var.
> I plan to put system user's caches and properties to the
> /var/payara/X.Y.Z/prefs,
> where X.Y.Z is an application's version.
> And this returns me to the first question: how to properly change user's
> home
> directory on port installation?
>
> --
> Dmytro Bilokha
> dmy...@posteo.net
> +38-050-607-41-43
>

How did you add the user? If you did not use the adduser script or vipw,
you must rebuild the database. pwd_mkdb. I would suggest always using vipw
as it automatically does everything

Kevin Oberman, Part time kid herder and retired Network Engineer
E-mail: rkober...@gmail.com
PGP Fingerprint: D03FB98AFA78E3B78C1694B318AB39EF1B055683
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: Setting system user home directory

2017-12-16 Thread Dmytro Bilokha

On Sat, Dec 16, 2017 at 10:48:34AM -0800, Kevin Oberman wrote:

On Sat, Dec 16, 2017 at 9:04 AM, Dmytro Bilokha  wrote:


On Sat, Dec 16, 2017 at 03:20:21PM +0100, Miroslav Lachman wrote:


Dmytro Bilokha wrote on 2017/12/16 14:59:


On Sat, Dec 16, 2017 at 01:44:05PM +0100, Miroslav Lachman wrote:


Dmytro Bilokha wrote on 2017/12/16 10:40:


Hello, Everyone!

I'm trying to change www/payara port to make it run under the payara
user instead of root.
I've added the following line to the UIDs file:

payara:*:221:221::0:0:Payara Application Server
user:/nonexistent:/usr/sbin/nologin

And this line to the port makefile:

USERS=payara

Also, I've made some another changes to the port's scripts to start
service under payara user.
Everything seems to be fine, but the service on start/shutdown creates
some preferences files,
caches, etc in the payara user's homedir.
The problem is, that it is impossible to create these files in
/nonexistent. This fact makes
service to show some annoying warnings on every startup/shutdown.
To make service to work properly I want to create directory writable by
the payara user and
set it as payara's homedir.
And I don't want to put these dir under the /usr/home/, it should be
somewhere in the application,
like /usr/local/payara-4.1.2.173/prefs.
As far as I understand, payara user will be created automatically by
the
bsd.port.pre.mk file included in the port's makefile. But, during
every
installation somehow payara user's homedir
should be changed. I can do it with the following one-liner:

/usr/sbin/pw usermod payara -d ${DATADIR}/prefs

So, the questions are:
1. Is it a proper way of doing such kind of things?
2. Where in the port's makefile should I put my one-liner? Will it be
OK
to make it like this:

...head of the make file with setting variables and so on is
here..
.include 
do-install:
 .doing some work here..
 @/usr/sbin/pw usermod payara -d ${DATADIR}/prefs
.include 
end of the makefile.

Many thanks for your attention and help.



I don't know Payara but applications should not write its files to
/usr/local. This should work even if /usr/local is mounted Read Only.
If you need to store configuration (preferences) then it should be in
/usr/local/etc/payara.
If the application writes some data files like databases, it goes under
/var/db/payara and log in to /var/log/payara.log or /var/log/payara
(directory)

Miroslav Lachman



Thanks for the information. Now I'm a little bit confused.
I've checked and seems to me that nither www/tomcat85 (servlet
container) nor www/glassfish and java/wildfly10 (application servers)
ports follow this convention.
All of them has directories for logs, configuration and Java
applications under the
/usr/local. Is there something special in Java servers ports?




I know there are ports not following this convention (and I don't
understand why). Those ports are making troubles if you want to serve
/usr/local as read only NFS for example.

Miroslav Lachman



Ok, than I'll try to move everything writable from /usr/local to /var.
I plan to put system user's caches and properties to the
/var/payara/X.Y.Z/prefs,
where X.Y.Z is an application's version.
And this returns me to the first question: how to properly change user's
home
directory on port installation?

--
Dmytro Bilokha
dmy...@posteo.net
+38-050-607-41-43



How did you add the user? If you did not use the adduser script or vipw,
you must rebuild the database. pwd_mkdb. I would suggest always using vipw
as it automatically does everything

Kevin Oberman, Part time kid herder and retired Network Engineer
E-mail: rkober...@gmail.com
PGP Fingerprint: D03FB98AFA78E3B78C1694B318AB39EF1B055683


I've add following lines to the port's makefile:
USERS=  payara
GROUPS= payara

And user is created automatically during port installation process.
--
Dmytro Bilokha
dmy...@posteo.net
+38-050-607-41-43
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: Option vs. flavor?

2017-12-16 Thread Ben Woods
On Sun, 17 Dec 2017 at 3:29 am, Thierry Thomas  wrote:

> Le sam. 16 déc. 17 à  2:38:51 +0100, Yuri 
>  écrivait :
>
> > One port is small by itself, but it semi-optionally requires 4.5GB of
> > static data installed.
> >
> > It is possible to download this data optionally, conditional on the port
> > option DATA_FILES which will be "off" by default, so that the users who
> > need the data will install it with DATA_FILES=on.
> >
> > Alternatively, it is possible to create a flavor, something like
> @withData.
> >
> >
> > Should the option be preferred, or should the flavor be preferred?
>
> I'd say that this is a case for sub-packages.
> --
> Th. Thomas.
>

I believe Sub-packages would normally still download the data for the port
build (make fetch), but it would not be included main pkg.

The original post was requesting that the port make fetch only downloads
the data conditionally based on the option. Not sure how possible that is.

Regards,
Ben
-- 

--
From: Benjamin Woods
woods...@gmail.com
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: Option vs. flavor?

2017-12-16 Thread Yuri

On 12/16/17 11:14, Ben Woods wrote:

The original post was requesting that the port make fetch only downloads
the data conditionally based on the option. Not sure how possible that is.



Yes, I was in doubt too. sub-packages will probably always fetch and 
build, and I am trying to avoid that.


So I would just stick to flavor. @withData should be a virtual flavor, 
that can be built on demand.


IMO, this makes most sense.


Yuri


___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: Setting system user home directory

2017-12-16 Thread Dmytro Bilokha

On Sat, Dec 16, 2017 at 08:53:17PM +0200, Dmytro Bilokha wrote:

On Sat, Dec 16, 2017 at 10:48:34AM -0800, Kevin Oberman wrote:

On Sat, Dec 16, 2017 at 9:04 AM, Dmytro Bilokha  wrote:


On Sat, Dec 16, 2017 at 03:20:21PM +0100, Miroslav Lachman wrote:


Dmytro Bilokha wrote on 2017/12/16 14:59:


On Sat, Dec 16, 2017 at 01:44:05PM +0100, Miroslav Lachman wrote:


Dmytro Bilokha wrote on 2017/12/16 10:40:


Hello, Everyone!

I'm trying to change www/payara port to make it run under the payara
user instead of root.
I've added the following line to the UIDs file:

payara:*:221:221::0:0:Payara Application Server
user:/nonexistent:/usr/sbin/nologin

And this line to the port makefile:

USERS=payara

Also, I've made some another changes to the port's scripts to start
service under payara user.
Everything seems to be fine, but the service on start/shutdown creates
some preferences files,
caches, etc in the payara user's homedir.
The problem is, that it is impossible to create these files in
/nonexistent. This fact makes
service to show some annoying warnings on every startup/shutdown.
To make service to work properly I want to create directory writable by
the payara user and
set it as payara's homedir.
And I don't want to put these dir under the /usr/home/, it should be
somewhere in the application,
like /usr/local/payara-4.1.2.173/prefs.
As far as I understand, payara user will be created automatically by
the
bsd.port.pre.mk file included in the port's makefile. But, during
every
installation somehow payara user's homedir
should be changed. I can do it with the following one-liner:

/usr/sbin/pw usermod payara -d ${DATADIR}/prefs

So, the questions are:
1. Is it a proper way of doing such kind of things?
2. Where in the port's makefile should I put my one-liner? Will it be
OK
to make it like this:

...head of the make file with setting variables and so on is
here..
.include 
do-install:
 .doing some work here..
 @/usr/sbin/pw usermod payara -d ${DATADIR}/prefs
.include 
end of the makefile.

Many thanks for your attention and help.



I don't know Payara but applications should not write its files to
/usr/local. This should work even if /usr/local is mounted Read Only.
If you need to store configuration (preferences) then it should be in
/usr/local/etc/payara.
If the application writes some data files like databases, it goes under
/var/db/payara and log in to /var/log/payara.log or /var/log/payara
(directory)

Miroslav Lachman



Thanks for the information. Now I'm a little bit confused.
I've checked and seems to me that nither www/tomcat85 (servlet
container) nor www/glassfish and java/wildfly10 (application servers)
ports follow this convention.
All of them has directories for logs, configuration and Java
applications under the
/usr/local. Is there something special in Java servers ports?




I know there are ports not following this convention (and I don't
understand why). Those ports are making troubles if you want to serve
/usr/local as read only NFS for example.

Miroslav Lachman



Ok, than I'll try to move everything writable from /usr/local to /var.
I plan to put system user's caches and properties to the
/var/payara/X.Y.Z/prefs,
where X.Y.Z is an application's version.
And this returns me to the first question: how to properly change user's
home
directory on port installation?

--
Dmytro Bilokha
dmy...@posteo.net
+38-050-607-41-43



How did you add the user? If you did not use the adduser script or vipw,
you must rebuild the database. pwd_mkdb. I would suggest always using vipw
as it automatically does everything

Kevin Oberman, Part time kid herder and retired Network Engineer
E-mail: rkober...@gmail.com
PGP Fingerprint: D03FB98AFA78E3B78C1694B318AB39EF1B055683


I've add following lines to the port's makefile:
USERS=  payara
GROUPS= payara

And user is created automatically during port installation process.
--
Dmytro Bilokha
dmy...@posteo.net
+38-050-607-41-43


Guys, thanks for your help. I've managed to adjust user's homedir
using pkg-install script. Now I'll try to move everything writable
from /usr/local to /var (as Miroslav suggested), test and submit 
the new port version.

--
Dmytro Bilokha
dmy...@posteo.net
+38-050-607-41-43
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: Option vs. flavor?

2017-12-16 Thread Ben Woods
On Sun, 17 Dec 2017 at 8:29 am, Yuri  wrote:

> On 12/16/17 11:14, Ben Woods wrote:
> > The original post was requesting that the port make fetch only downloads
> > the data conditionally based on the option. Not sure how possible that
> is.
>
>
> Yes, I was in doubt too. sub-packages will probably always fetch and
> build, and I am trying to avoid that.
>
> So I would just stick to flavor. @withData should be a virtual flavor,
> that can be built on demand.
>
> IMO, this makes most sense.
>
>
> Yuri


Hi Yuri,

Is there any reason why you want to avoid the download with the port “make
fetch”?

This should not impact you if it uses subpackages and you just install the
program with pkg.

Regards,
Ben

> --

--
From: Benjamin Woods
woods...@gmail.com
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: Setting system user home directory

2017-12-16 Thread Miroslav Lachman

Dmytro Bilokha wrote on 2017/12/16 21:10:

On Sat, Dec 16, 2017 at 08:53:17PM +0200, Dmytro Bilokha wrote:

On Sat, Dec 16, 2017 at 10:48:34AM -0800, Kevin Oberman wrote:

On Sat, Dec 16, 2017 at 9:04 AM, Dmytro Bilokha 


[...]


Kevin Oberman, Part time kid herder and retired Network Engineer
E-mail: rkober...@gmail.com
PGP Fingerprint: D03FB98AFA78E3B78C1694B318AB39EF1B055683


I've add following lines to the port's makefile:
USERS=payara
GROUPS=payara

And user is created automatically during port installation process.



Guys, thanks for your help. I've managed to adjust user's homedir
using pkg-install script. Now I'll try to move everything writable
from /usr/local to /var (as Miroslav suggested), test and submit the new
port version.


Ideally you should not silently change existing user account. There is 
possibility that user (sysadmin) made some tweaks (different UID, 
different home, shell etc.) and if your port will do some silent changes 
it can break some setup.
Better way is to use this setting only on newly created user (fresh pkg 
install) or print pkg-message with instruction (command) what should 
user do to have this setup corrected to new port properties.

Or maybe you can do this change interactively with user confirmation Y/N.
Maybe create UPDATING entry.

Just my $0.02

Miroslav Lachman
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: Option vs. flavor?

2017-12-16 Thread Yuri

On 12/16/17 12:42, Ben Woods wrote:

Is there any reason why you want to avoid the download with the port “make
fetch”?


To not clog the package builder with huge unnecessary data? Or maybe 
this shouldn't be a concern.



This should not impact you if it uses subpackages and you just install the
program with pkg.



But are subpackages already available?


Yuri

___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: Setting system user home directory

2017-12-16 Thread Dmytro Bilokha

On Sat, Dec 16, 2017 at 09:47:46PM +0100, Miroslav Lachman wrote:

Dmytro Bilokha wrote on 2017/12/16 21:10:

On Sat, Dec 16, 2017 at 08:53:17PM +0200, Dmytro Bilokha wrote:

On Sat, Dec 16, 2017 at 10:48:34AM -0800, Kevin Oberman wrote:

On Sat, Dec 16, 2017 at 9:04 AM, Dmytro Bilokha 


[...]


Kevin Oberman, Part time kid herder and retired Network Engineer
E-mail: rkober...@gmail.com
PGP Fingerprint: D03FB98AFA78E3B78C1694B318AB39EF1B055683


I've add following lines to the port's makefile:
USERS=payara
GROUPS=payara

And user is created automatically during port installation process.



Guys, thanks for your help. I've managed to adjust user's homedir
using pkg-install script. Now I'll try to move everything writable
from /usr/local to /var (as Miroslav suggested), test and submit the new
port version.


Ideally you should not silently change existing user account. There is
possibility that user (sysadmin) made some tweaks (different UID,
different home, shell etc.) and if your port will do some silent changes
it can break some setup.
Better way is to use this setting only on newly created user (fresh pkg
install) or print pkg-message with instruction (command) what should
user do to have this setup corrected to new port properties.
Or maybe you can do this change interactively with user confirmation Y/N.
Maybe create UPDATING entry.

Just my $0.02

Miroslav Lachman


Thanks, Miroslav! It is useful advice. I'll proceed with pkg-message
approach.

--
Dmytro Bilokha
dmy...@posteo.net
+38-050-607-41-43
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: Option vs. flavor?

2017-12-16 Thread Franco Fichtner
Why not use a separate data package as optional dependency? Solves the 
conditional fetch.

> On 16. Dec 2017, at 22:02, Yuri  wrote:
> 
>> On 12/16/17 12:42, Ben Woods wrote:
>> Is there any reason why you want to avoid the download with the port “make
>> fetch”?
> 
> To not clog the package builder with huge unnecessary data? Or maybe this 
> shouldn't be a concern.
> 
>> This should not impact you if it uses subpackages and you just install the
>> program with pkg.
> 
> 
> But are subpackages already available?
> 
> 
> Yuri
> 
> ___
> freebsd-ports@freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-ports
> To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"

___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: Option vs. flavor?

2017-12-16 Thread Yuri

On 12/16/17 13:39, Franco Fichtner wrote:

Why not use a separate data package as optional dependency? Solves the 
conditional fetch.



But with the port option fetch is also conditional. There is no need to 
create an extra-package.



Yuri

___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: OSS Audio

2017-12-16 Thread Sid
I've had a few misconceptions.

Bluebee Blubeeme said, 4Front has a modern OSS implementation that is under a 
FreeBSD license.

The model of Sound on FreeBSD is, three layers:
1. The API, where programs use libraries (of respective sound architecture) to 
access the sound server.
2. The sound server: OSS, Sndio, Portaudio, JACK, ALSA, native, etc
3. FreeBSD's base is always OSS (OpenBSD's driver is sndio); sound servers 
connect to and use this.

To use 4Front's OSS, FreeBSD's kernel will have to be recompiled without OSS, 
"snd" and "sound" references, and then that version of OSS installed.

The part of OSS in name, that is a mess, is the API structure, and various 
implementations. In FreeBSD for instance, when a program uses an OSS API, I 
hear that developers, need to write so many patches, because different OSS 
frontends are not standardized. Most applications in ports use Sndio, because 
across BSD's the API to it is standard. Bluebee claims that 4Front's OSS is 
standard as well. As for API on programs/ports, just use the FreeBSD API that 
is available for it, OSS, Sndio, Portaudio, to connect to that sound server.

As long as OSS covers the wide range of implementations of it, OSS In Name, 
without clarifiers, will carry this burden of being complex and having a 
nonstandard API, even when certain implementations don't or may not have this 
issue.

Bluebee says, to my understanding, that 4Front's OSS doesn't have certain 
coding inefficiencies that certain sound architectures have. That is something 
for the developers to be informed about, and to consider in FreeBSD current.
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: OSS Audio

2017-12-16 Thread blubee blubeeme
On Sun, Dec 17, 2017 at 6:53 AM, Sid  wrote:

> I've had a few misconceptions.
>
> Bluebee Blubeeme said, 4Front has a modern OSS implementation that is
> under a FreeBSD license.
>
> The model of Sound on FreeBSD is, three layers:
> 1. The API, where programs use libraries (of respective sound
> architecture) to access the sound server.
> 2. The sound server: OSS, Sndio, Portaudio, JACK, ALSA, native, etc
> 3. FreeBSD's base is always OSS (OpenBSD's driver is sndio); sound servers
> connect to and use this.
>
FreeBSD base is an older fork of 4Front OSS, somewhere around version 3
something.
There's a 3,200 line diff between freebsd /sys/sys/soundcard.h and the one
available in 4Front repo right now, there's been a lot of improvements
between FreeBSD fork and 4Front OSS 4.2
Plus the OSS 4.x soundcard.h handles ALL legacy devices. The main thing
that changed is the API, follow updated coding styles for new applications
while old applications still just work.

The sound server madness goes away with 4Front OSS.
The API would be stable with 4Front OSS
There's no single place with a more straight forward audio programming
guide online compared to this: http://manuals.opensound.com/developer/

If there is please share.

To use 4Front's OSS, FreeBSD's kernel will have to be recompiled without
> OSS, "snd" and "sound" references, and then that version of OSS installed.
>

without the legacy oss, snd and sound references. That would be replaced by
the 4Front OSS implementation. Then improvements/ fixes can be made on our
end and tried to have upstreamed.
The API is stable, well documented and the sound server madness goes away
as well.

>
> The part of OSS in name, that is a mess, is the API structure, and various
> implementations. In FreeBSD for instance, when a program uses an OSS API, I
> hear that developers, need to write so many patches, because different OSS
> frontends are not standardized. Most applications in ports use Sndio,
> because across BSD's the API to it is standard. Bluebee claims that
> 4Front's OSS is standard as well. As for API on programs/ports, just use
> the FreeBSD API that is available for it, OSS, Sndio, Portaudio, to connect
> to that sound server.
>

This is what can happen w/ open source software. Everyone took from Hannu's
work and then no one credited him for his accomplishments but everyone dog
piles on him.

>
> As long as OSS covers the wide range of implementations of it, OSS In
> Name, without clarifiers, will carry this burden of being complex and
> having a nonstandard API, even when certain implementations don't or may
> not have this issue.
>

This is a Linuxism, spread right around the time they wanted to push ALSA.
Since there are very few to NO audio developers who build software from the
ground up for FreeBSD, all these Linuxism seeped in through the porting of
software from Linux to FreeBSD.

>
> Bluebee says, to my understanding, that 4Front's OSS doesn't have certain
> coding inefficiencies that certain sound architectures have. That is
> something for the developers to be informed about, and to consider in
> FreeBSD current.
>

This is why I am bringing up the issue and why I said the first step would
be porting the proper 4Front OSS into the kernel.

It doesn't have to be the default at first but if it's not in the kernel
why bother wasting time to have it rejected because of all the
misconceptions I've been dealing with in these threads.

Add 4Front OSS to the kernel
Use the 4.x API/ Documentation
Add it to an audio programming section of FBSD Handbook
Upstream changes that make sense
Simplify audio programming, documentation, all those audio sound servers
Port device drivers to the OSS Device Driver API:
http://manuals.opensound.com/sources/drv_index.html

> ___
> freebsd-ports@freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-ports
> To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"
>

That's a lot of work and without being able to get this into the kernel
because people just say "oss is a mess" isn't a valid reason.
A lot of these opinions seeped into FreeBSD from other sources.
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: Option vs. flavor?

2017-12-16 Thread Shane Ambler
On 17/12/2017 08:32, Yuri wrote:
> On 12/16/17 13:39, Franco Fichtner wrote:
>> Why not use a separate data package as optional dependency? Solves the
>> conditional fetch.
> 
> 
> But with the port option fetch is also conditional. There is no need to
> create an extra-package.

Flavours aren't for option variations, they are for the same code being
linked against multiple versions of other ports, each with different
dependencies - eg python 2.7/3.6 or ruby 2.2/ruby2.4

You could either make a separate port for the data files or add it as an
option to the main port.

Using an option for the data files, you either make it a default option
so that the data is installed by anyone that installs the pkg or have it
off so that anyone who wants the data files needs to build the port
themselves. Having 4.5GB of optional data, I wouldn't suggest having it
as an option that is on, this way the package repos don't need to add
4.5GB of data for each arch that pkgs are built for.

Add a second port for data files - see games/alephone and alephone-data
for an example. To prevent the pkg being added to pkg repos, add
NO_PACKAGE= Data files too big, user to download manually
Using a second data port means the user can download and install the
data without having to compile the program.

Add info about this to pkg-message for the user to read, even if it is
about building the data port to get the extra data.

As for adding it as an option -

OPTIONS_DEFINE= EXTRADATA

EXTRADATA_DISTFILES= extra_data_files.tgz

post-install-EXTRADATA-on:
${COPYTREE_SHARE} ${WRKDIR}/extra_data_files ${STAGEDIR}/${DATADIR}

-- 
FreeBSD - the place to B...Software Developing

Shane Ambler

___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: new portmaster fails to build devel/py-libzfs@py36 because of failing cython

2017-12-16 Thread Jim Trigg


On December 15, 2017 4:50:53 AM EST, Johan Hendriks  
wrote:
>Hello all.
>First of all thank you for the update of portmaster, much appreciated.
>
>When i am updating my ports, portmaster fails with the following error.
>
>> Compressing man pages (compress-man)
>===>>> Starting check for runtime dependencies
>===>>> Gathering dependency list for lang/cython@py36 from ports
>===>>> Dependency check complete for lang/cython@py36
>
>===>>> devel/py-libzfs@py36 1/10 >> lang/cython@py36 (1/1)
>
>===>  Installing for py36-cython-0.26
>===>  Checking if py36-cython already installed
>===>   Registering installation for py36-cython-0.26 as automatic
>Installing py36-cython-0.26...
>pkg-static: py36-cython-0.26 conflicts with cython3-0.26 (installs
>files
>into the same place).  Problematic file: /usr/local/bin/cygdb-3.6
>*** Error code 70
>
>Stop.
>make: stopped in /usr/ports/lang/cython
>
>===>>> Installation of py36-cython-0.26 (lang/cython@py36) failed
>===>>> Aborting update
>
>===>>> Update for lang/cython@py36 failed
>===>>> Aborting update
>
>===>>> Update for devel/py-libzfs@py36 failed
>===>>> Aborting update
>
>
>Is there someting i can try or do?

Question: is 3.6 your default python version? I've discovered that the current 
version of portmaster uses python default version for dependencies when 
building a flavored port.

Thanks,
Jim Trigg

-- 
Sent from my Android device with K-9 Mail. Please excuse my brevity.
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: Option vs. flavor?

2017-12-16 Thread Adam Weinberger

On 15 Dec, 2017, at 18:38, Yuri  wrote:

One port is small by itself, but it semi-optionally requires 4.5GB of  
static data installed.


It is possible to download this data optionally, conditional on the port  
option DATA_FILES which will be "off" by default, so that the users who  
need the data will install it with DATA_FILES=on.


Alternatively, it is possible to create a flavor, something like @withData.


Should the option be preferred, or should the flavor be preferred?


Hi Yuri,

Is the port of any use without the data file? If everybody who uses the  
port needs the data file, I wouldn't make it an option at all. The  
precedent is that ports with huge data files are marked NO_PACKAGE, so  
there's no impact on the package builders. Make it non-optional, mark it as  
NO_PACKAGE, and then the port works for all users.


If, however, the port IS real-world usable without the data files, I'd turn  
the data file into a second port. That way, package people can very easily  
install the NO_BUILD slave and still install the main program by pkg.


# Adam


--
Adam Weinberger
ad...@adamw.org
http://www.adamw.org

___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"