On 2024/12/07 00:33, Li Carter wrote:
> The only hard dependency of fastfetch is libc.
> 
>  
> 
> If a user uses xfce as his DE, xfconf is likey preinstalled. Fastfetch will 
> detect if the user
> uses xfce; dlopen xfconf and acquire xfconf configurations by xfconf 
> functions. If a user
> doesn’t use xfce (even if he has xfce installed), xfconf related code will 
> not be touched at
> all.
> 
>  
> 
> In order to have xfce detection feature compiled into fastfetch binary, 
> xfconf development
> package needs to be available when building fastfetch. If you want to compile 
> fastfetch for
> your personal use and you don’t use xfce, it’s ok not build fastfetch without 
> xfconf because
> cmake will detect if xfconf is available and disable xfconf related code with 
> #ifs. However,
> since we are building fastfetch for general use, I’d like to have all these 
> optional features
> pre-built into fastfetch binary.
> 
>  
> 
> To check if fastfetch is built with some features, you may use `fastfetch 
> --list-features`

As I said:

I see it builds against headers for various libraries in BUILD_DEPENDS
but dlopen()'s them at runtime and no run dependency information is
recorded in the package, therefore there's no way to get this
automatically updated if there are API changes in those libraries,
short of somebody monitoring about a dozen ports for changes and
manually bumping REVISION where needed. This doesn't seem a great
approach for ports.

>  
> 
> Thanks,
> 
> Carter
> 
>  
> 
>  
> ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
> 
> From: izzy Meyer <izder...@disroot.org>
> Sent: Saturday, December 7, 2024 12:16:16 AM
> To: ports@openbsd.org <ports@openbsd.org>
> Cc: s...@spacehopper.org <s...@spacehopper.org>; zhangsong...@live.cn 
> <zhangsong...@live.cn>
> Subject: Re: Fastfetch: new package
> 
>  
> 
> Well I compiled it manually on my system outside of ports just to play with 
> the software.
> 
> I don't use xfce so I know it doesn't hard require xfconf in LIB_DEPENDS.
> 
> Li, I'm betting most of these libraries aren't actually hard-required to 
> build. Could you go
> through these one by one and actually verify they are needed to build the 
> port?
> 
> Thanks.
> 
> 
> -------- Original Message --------
> From: Stuart Henderson <s...@spacehopper.org>
> Sent: December 6, 2024 6:23:40 AM CST
> To: izzy Meyer <izder...@disroot.org>
> Cc: ports@openbsd.org
> Subject: Re: Fastfetch: new package
> 
> On 2024/12/05 18:39, izzy Meyer wrote:
> > On Thu, 5 Dec 2024 12:29:41 +0000
> > Stuart Henderson <s...@spacehopper.org> wrote:
> >
> > > On 2024/12/05 02:13, Li Carter wrote:
> > > > Hello OpenBSD team,
> > > >
> > > > Fastfetch is a maintained, feature-rich and performance oriented
> > > > system information tool, which aims to replace neofetch completely.
> > > > Fastfetch has been in FreeBSD ports for a while and I’d like to
> > > > submit fastfetch to OpenBSD too.
> > > >
> > > > https://github.com/fastfetch-cli/fastfetch
> > > >
> > > > Thanks,
> > > > Carter
> > > >  
> > >
> > > I see it builds against headers for various libraries in BUILD_DEPENDS
> > > but dlopen()'s them at runtime and no run dependency information is
> > > recorded in the package, therefore there's no way to get this
> > > automatically updated if there are API changes in those libraries,
> > > short of somebody monitoring about a dozen ports for changes and
> > > manually bumping REVISION where needed. This doesn't seem a great
> > > approach for ports.
> > >
> >
> > Wouldn't you want to check depends for these via LIB_DEPENDS? Just an
> > idea.
> 
> Yes but then it would pull in a bunch of rather heavy dependencies
> at runtime which is probably a bit excessive
> 
> 
> --
> Sent from a mobile, please excuse shitty formatting.
> 

Reply via email to