Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Help wanted] submit fastfetch to debian unstable #533

Open
CarterLi opened this issue Aug 22, 2023 · 27 comments
Open

[Help wanted] submit fastfetch to debian unstable #533

CarterLi opened this issue Aug 22, 2023 · 27 comments
Labels
enhancement New feature or request help wanted

Comments

@CarterLi
Copy link
Member

Debian and Ubuntu are two of most used Linux distros but we haven't got the official packages there.

@CarterLi CarterLi added enhancement New feature or request help wanted labels Aug 22, 2023
@xzl01
Copy link
Contributor

xzl01 commented Aug 31, 2023

我们在deepin的打包的时候做了一些工作,包括将vendor的依赖yyjson单独打包出来,现在正在尝试向debian提交这些包
cc:https:github.com/deepin-community/fastfetch https:github.com/deepin-community/yyjson
This work will be continued by @UTsweetyfish

@CarterLi
Copy link
Member Author

@xzl01 @UTsweetyfish Any progress?

@CarterLi
Copy link
Member Author

@xzl01
Copy link
Contributor

xzl01 commented Mar 27, 2024

可以参考: https://mentors.debian.net/intro-maintainers/

@xzl01
Copy link
Contributor

xzl01 commented Mar 27, 2024

你可以需要再发一个RFS:https://mentors.debian.net/accounts/register/ 在上面的链接里面有对此的介绍

@CarterLi
Copy link
Member Author

@xzl01
Copy link
Contributor

xzl01 commented Mar 27, 2024

你需要关注下
image
这是对包质量的检查,可能需要对此进行更改

@xzl01
Copy link
Contributor

xzl01 commented Mar 27, 2024

你可以使用 https://manpages.debian.org/testing/lintian/lintian.1.en.html 来检查你的包质量

@CarterLi
Copy link
Member Author

@CarterLi
Copy link
Member Author

CarterLi commented Mar 27, 2024

你可以使用 https://manpages.debian.org/testing/lintian/lintian.1.en.html 来检查你的包质量

我在用ubuntu。Ubuntu的lintian不报这些错🤣

我把能删的文件都删了,希望问题能少点吧

EDIT: 至少没有error了

@xzl01
Copy link
Contributor

xzl01 commented Mar 27, 2024

你可以使用distrobox 运行一个debian容器来跑lintian。 链接我也打不开(可能是debian的问题?)

@xzl01
Copy link
Contributor

xzl01 commented Apr 1, 2024

似乎目前的debian目录依然不符合标准,如果你愿意的话 我给你那个分支提一个pr进行修改

@CarterLi
Copy link
Member Author

CarterLi commented Apr 1, 2024

可以

@CrazyWolf13
Copy link

@xzl01 and @CarterLi
Thank you for the amazing work done.

I see there is a [Help wanted] tag, it seems like there is help wanted, but a lot of this issue is on chinese, sadly not everyone speaks chinese, wouldn't english be a bit a better way to communicate?
That way much more people could understand the current situation and possibly help.

@CarterLi
Copy link
Member Author

CarterLi commented May 4, 2024

I see there is a [Help wanted] tag, it seems like there is help wanted, but a lot of this issue is on chinese, sadly not everyone speaks chinese, wouldn't english be a bit a better way to communicate?

I'm aware of this issue and really sorry for that

I had submit ( an old and slightly modified ) fastfetch to debian mentors and got no response. Progress stuck there.

https://mentors.debian.net/package/fastfetch/

@CarterLi
Copy link
Member Author

CarterLi commented May 4, 2024

I don't know much about debian and personally I don't use debian. I hope someone has experience of packaging for debian can take this.

@hiagofranco
Copy link

Hi all, I would like to proceed with this task if possible. Is that ok?

I personally use Debian and I personally know some Debian developers and Debian maintainers that are used to contributing to Debian, I've already talked to one of them and they will help me. I will send an email to https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1053995.

Thank you for this nice project.

@CarterLi
Copy link
Member Author

CarterLi commented May 4, 2024

Thank you @hiagofranco! Really appreciated!

@mok0
Copy link

mok0 commented May 5, 2024

Also look at Maytham's comment at Bug #1067925. He suggests using salsa for maintaining the package. I succesfully built fastfetch using Carter's debian/ but Debian projects prefer there is no debian/ directory in the upstream tarball. If you maintain the package in git, debian/ only lives in the debian/latest branch, and the upstream source lives in the upstream/latest branch, look here.

@Maytha8
Copy link

Maytha8 commented May 5, 2024

Hello @hiagofranco

Hi all, I would like to proceed with this task if possible. Is that ok?

I've marked you as the owner of the ITP bug now.

Would you be willing to add me as a co-maintainer of this package? I'm also interested in getting this piece of software into Debian 😄.

I have a bit of experience in maintaining Debian packages, and have recently become a DM, so I can help out with packaging and uploading. I can also help with organising the creation of a repo under the debian/ group on Salsa.

Have you started work and/or created a Salsa repo yet?

Thanks,
Maytham (maytham on IRC)

@hiagofranco
Copy link

Hi all,

@mok0 thanks for sharing the links.

If you maintain the package in git, debian/ only lives in the debian/latest branch, and the upstream source lives in the upstream/latest branch, look here.

This would be the approach, yes. I believe I will have to ignore the /debian folder from fastfetch for now and rewrite it for the Debian package, but I will post any updates here. We can probably get rid of this folder in the folder and keep it only in the Debian repo.

@Maytha8

I've marked you as the owner of the ITP bug now.

Thank you! I will start to work on it today.

Would you be willing to add me as a co-maintainer of this package? I'm also interested in getting this piece of software into Debian 😄.
I have a bit of experience in maintaining Debian packages, and have recently become a DM, so I can help out with packaging and uploading. I can also help with organising the creation of a repo under the debian/ group on Salsa.

Of course, let's do that together, it will be nice to have someone with experience to help ;-)

Have you started work and/or created a Salsa repo yet?

Not yet, I plan to start today, I will try to create it here and I will ask for help if something goes wrong...

How can I contact you? Can I use the email you've shared here?

Best Regards,

Hiago.

@Maytha8
Copy link

Maytha8 commented May 6, 2024

@hiagofranco

Not yet, I plan to start today, I will try to create it here and I will ask for help if something goes wrong...

Exciting!

How can I contact you? Can I use the email you've shared here?

Yep, or on IRC or GitHub.

@hiagofranco
Copy link

hiagofranco commented May 6, 2024

@Maytha8 all right, thank you =)

I've started creating the Debian folder files and I noticed something I believe we will have to remove.

There is a LICENSE file for intel inside the src/3rdparty/igcl/ folder that is not in agreement with Debian. By removing this folder, I will have to patch the source code, and src/detection/gpu/gpu_intel.c will not work, so any user using this GPU will not get this info. Any comments on that?

I don't know exactly how the MIT + proprietary LICENSE works as we have two licenses here, but I believe this will not be possible for the Debian package to be accepted on the mainline.

Edit: it may apply to other files under 3rdparty as well.

@CarterLi
Copy link
Member Author

CarterLi commented May 6, 2024

Hello, I am aware of the license concerns. There are several folders in 3rd party folder and they all can be removed

  1. ags and igcl: AMD and Intel's proprietary driver connector. Not used in Linux and can be removed directly. src/detection/gpu/gpu_intel.c is not used in Linux. https://github.com/fastfetch-cli/fastfetch/blob/dev/CMakeLists.txt#L695-L704
  2. nvml: it is Nvidia's proprietary driver connector. We support a CMake option -DENABLE_PROPRIETARY_GPU_DRIVER_API=OFF to disable using it.
  3. mk_wcwidch: it is implementation of wcwidch(3) provided for Windows copatibility. It's not used in Linux since Linux support wcwidch(3) natively
  4. yyjson: this is core dependency of fastfetch to parse JSON files. It is licensed in MIT too. We also have CMake option -DENABLE_SYSTEM_YYJSON=ON to use system yyjson library if it is packaged officially (not the case for Debian). If system library is used, this folder can be removed too.

@hiagofranco
Copy link

hiagofranco commented May 7, 2024

Hi @CarterLi, thank you for the detailed explanation :)

good, points 1..3 will be easy to fix then. About point 4, I have a debian contributor colleague and he will package the yyjson for Debian, as you mentioned it is not available yet but there is an ITP opened for it. Then we can make the fastfetch package dependent on the libyyjson one. I will come back with more updates once we have it. Thanks!

@Maytha8
Copy link

Maytha8 commented May 7, 2024

@hiagofranco So I guess fastfetch will be repacked to remove the 3rd-party/ directory from the Debian package?

@hiagofranco
Copy link

@Maytha8 exactly, I used the gbp import-orig --filter=debian --filter=src/3rdparty fastfetch-2.11.3.tar.gz to get the tarball and remove the debian and 3rdparty folders completely. Once I upload it to salsa repo I can share here with you.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted
Projects
None yet
Development

No branches or pull requests

6 participants