Hi. I wanted to enable clipboard support for vim by installing x11 flavor of vim which is a build of vim with clipboard support and then you need to add a line to .vimrc and it's OK now. But, I use vimpager instead of less on my system and vimpager depends of console (default flavor of vim) flavor so I had to edit vimpager port's Makefile to change VIM_RUN_DEPENDS to vim:editors/vim-x11 and it said vim-x11 couldn't be found but it still kept on my system (vimpager didn't delete itself while vim-console is not installed), not a good way of doing it but it worked temporarily for me. I wanted to add flavors to vimpager like vim port has but I can't make it work properly, I mean, when i install one flavor of vimpager, it doesn't directly install that equal vim flavor. for example, i install vimpager-x11 but it still installs vim-console. They don't match each other. I will attach my work in progress patch here. Thanks in advance.
Created attachment 255741 [details] sysutils/vimpager.patch: work in progress patch
I found a workaround for keeping any vim flavor while vimpager should be kept. Locking vimpager with pkg does not uninstall vimpager when you install a flavor of editors/vim.
This temporary workaround does affect "pkg check -ad", it says: "vim should be installed because it's wanted by vimpager".
Created attachment 256387 [details] sysutils/vimpager: work in progress patch and also updated
Created attachment 256574 [details] sysutils/vimpager.patch: Work In Progress patch When I use # make FLAVOR=x11, it does try to build x11 flavor of editors/vim but when I package all flavors of sysutils/vimpager and editors/vim to /usr/ports/packages local repository and then install any flavor of sysutils/vimpager with pkg, it still depends on vanilla editors/vim. It doesn't match with editors/vim's flavor. I wonder if this would make a problem FreeBSD build system builds it when my patch that improperly (?) added flavors support to sysutils/vimpager. The port has no maintainer and if I could get this flavor support working properly (?), I would want to take maintainership of this port. I found out that a port does it like that below but in just one RUN_DEPENDS. Code: # cat ../../output ./editors/cream/Makefile:RUN_DEPENDS= ${LOCALBASE}/bin/gvim:editors/vim@gtk3 # pkg ins cream Updating FreeBSD repository catalogue... FreeBSD repository is up to date. Updating custom repository catalogue... Fetching meta.conf: 100% 178 B 0.2kB/s 00:01 Fetching data.pkg: 100% 5 KiB 4.7kB/s 00:01 Processing entries: 100% The provides database is up-to-date. custom repository update completed. 17 packages processed. All repositories are up to date. The following 2 package(s) will be affected (of 0 checked): New packages to be INSTALLED: cream: 0.43 [FreeBSD] vim-gtk3: 9.1.0764 [FreeBSD] Number of packages to be installed: 2 The process will require 43 MiB more space. 10 MiB to be downloaded. Proceed with this action? [y/N]: # pkg ins -r custom vimpager-x11 Updating custom repository catalogue... Fetching meta.conf: 100% 178 B 0.2kB/s 00:01 Fetching data.pkg: 100% 5 KiB 4.7kB/s 00:01 Processing entries: 100% The provides database is up-to-date. custom repository update completed. 17 packages processed. All repositories are up to date. Checking integrity... done (0 conflicting) The following 2 package(s) will be affected (of 0 checked): New packages to be INSTALLED: vim: 9.1.0915 [custom] vimpager-x11: 2.06.20241028 [custom] Number of packages to be installed: 2 The process will require 41 MiB more space. Proceed with this action? [y/N]:
Created attachment 256575 [details] sysutils/vimpager.patch: Work In Progress patch
Created attachment 256576 [details] sysutils/vimpager.patch: Work In Progress patch Added NeoVim to comment back (also added neovim support back) to notice users that vimpager is supporting neovim too
Created attachment 256577 [details] sysutils/vimpager.patch: Work In Progress patch attachment is reuploaded, previous attachment was same with old one.
Created attachment 256578 [details] sysutils/vimpager.patch: Update to 20241028, Add flavor support to enable compatibility with editors/vim flavors, Pet port{fmt,lint,clipy}, Adopt port
Created attachment 256579 [details] PKG install log, flavors are matching with vim
Created attachment 256580 [details] PKG install log, flavors are matching with vim Script ran with sh for better readability
Created attachment 256581 [details] sysutils/vimpager.patch: Update to 20241028, Add flavor support to enable compatibility with editors/vim flavors, Pet port{fmt,lint,clipy} This is a git patch.
Created attachment 256582 [details] sysutils/vimpager.patch: Update to 20241028, Add flavor support to enable compatibility with editors/vim flavors, Pet port{fmt,lint,clipy} Updated pkg-plist. Added ChangeLog to commit message. - Fixes for vimcat. - Fix vim bug: hang on blank Ins in scripts. - Added flavor support to enable compatibility with flavors of editors/vim. - Pet port{fmt,lint,clippy}. - Submitter becomes maintainer. ChangeLog: https://github.com/rkitover/vimpager/compare/85004fd...ce697c4cf34549796e1b533be3e337ca24b62c09
Created attachment 256584 [details] sysutils/vimpager.patch: Update to 20241028, Add flavor support to enable compatibility with editors/vim flavors, Pet port{fmt,lint,clipy} fixed stage-qa errors. diff --git a/sysutils/vimpager/Makefile b/sysutils/vimpager/Makefile index 2e5dfae627ba..1235cbc210da 100644 --- a/sysutils/vimpager/Makefile +++ b/sysutils/vimpager/Makefile @@ -30,6 +30,12 @@ LICENSE_FILE= ${WRKSRC}/LICENSE FLAVORS= console gtk2 gtk3 motif tiny x11 FLAVOR?= ${FLAVORS:[1]} +gtk2_PKGNAMESUFFIX= -gtk2 +gtk3_PKGNAMESUFFIX= -gtk3 +motif_PKGNAMESUFFIX= -motif +tiny_PKGNAMESUFFIX= -tiny +x11_PKGNAMESUFFIX= -x11 + USES= gmake USE_GITHUB= yes GH_ACCOUNT= rkitover @@ -57,15 +63,10 @@ NEOVIM_RUN_DEPENDS= ${LOCALBASE}/bin/nvim:editors/neovim .if ${PORT_OPTIONS:MVIM} console_RUN_DEPENDS= ${LOCALBASE}/bin/vim:editors/vim@console -gtk2_PKGNAMESUFFIX= -gtk2 gtk2_RUN_DEPENDS= ${LOCALBASE}/bin/vim:editors/vim@gtk2 -gtk3_PKGNAMESUFFIX= -gtk3 gtk3_RUN_DEPENDS= ${LOCALBASE}/bin/vim:editors/vim@gtk3 -motif_PKGNAMESUFFIX= -motif motif_RUN_DEPENDS= ${LOCALBASE}/bin/vim:editors/vim@motif -tiny_PKGNAMESUFFIX= -tiny tiny_RUN_DEPENDS= ${LOCALBASE}/bin/vim:editors/vim@tiny -x11_PKGNAMESUFFIX= -x11 x11_RUN_DEPENDS= ${LOCALBASE}/bin/vim:editors/vim@x11 .endif
Created attachment 256585 [details] sysutils/vimpager.patch Fixed patch.
Created attachment 256586 [details] sysutils/vimpager.patch Used a short GH_TAGNAME commit hash. Removed extinct CONFLICTS_INSTALL line. Port is working correctly for me. diff --git a/sysutils/vimpager/Makefile b/sysutils/vimpager/Makefile index 1235cbc210da..5d5a3bd7872c 100644 --- a/sysutils/vimpager/Makefile +++ b/sysutils/vimpager/Makefile @@ -39,11 +39,10 @@ x11_PKGNAMESUFFIX= -x11 USES= gmake USE_GITHUB= yes GH_ACCOUNT= rkitover -GH_TAGNAME= ce697c4cf34549796e1b533be3e337ca24b62c09 +GH_TAGNAME= ce697c4 # Register conflicts with all other flavors -CONFLICTS_INSTALL= ${FLAVORS:N${FLAVOR}:S/^/vim-/} \ - ${FLAVORS:N${FLAVOR}:S/^/vimpager-/} +CONFLICTS_INSTALL= ${FLAVORS:N${FLAVOR}:S/^/vimpager-/} NO_ARCH= yes diff --git a/sysutils/vimpager/distinfo b/sysutils/vimpager/distinfo index 956c9e4677ff..17be52c72c7c 100644 --- a/sysutils/vimpager/distinfo +++ b/sysutils/vimpager/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1735906352 -SHA256 (rkitover-vimpager-2.06.20241028-ce697c4cf34549796e1b533be3e337ca24b62c09_GH0.tar.gz) = 98531800fff14aa0f9c8a23e3b0970cc7c95b42318438e4d0a90fc3373dace97 -SIZE (rkitover-vimpager-2.06.20241028-ce697c4cf34549796e1b533be3e337ca24b62c09_GH0.tar.gz) = 164351 +TIMESTAMP = 1736445105 +SHA256 (rkitover-vimpager-2.06.20241028-ce697c4_GH0.tar.gz) = 03f5bb333f128a6c66a34df8f4c29f9c5ed16145d9f87788bb6ddea62cdc584d +SIZE (rkitover-vimpager-2.06.20241028-ce697c4_GH0.tar.gz) = 164295
Created attachment 256588 [details] sysutils/vimpager.patch Just removed one asterisk from git commit message.
It passes poudriere testport on 14.1-RELEASE.
Created attachment 259127 [details] PKG install log, flavors are matching with vim
Hi Yusuf, thanks for patch. I'd suggest NEOVIM should as a flavor not an option so can remove the OPTIONS. In the comments can use ${FLAVOR:U} doesn't need many ifs and the PKGNAMESUFFIX too. Maybe the information about flavor in comment isn't needed.
(In reply to Zsolt Udvari from comment #21) Hi, Zsolt. > I'd suggest NEOVIM should as a flavor not an option so can remove the OPTIONS. There is DOCS option, should i remove it too? I added neovim as flavor instead an option. > In the comments can use ${FLAVOR:U} doesn't need many ifs Okay, I just used ${FLAVOR:U} in the only one comment and it handled other comments too. > and the PKGNAMESUFFIX too. Portlint didn't like this change and warned me, i think it's fine that way. > Maybe the information about flavor in comment isn't needed. I think it does no harm.
Created attachment 259540 [details] sysutils/vimpager.patch
(In reply to Yusuf Yaman from comment #23) Thanks. I tried to build: WARNING: pandoc is not available, man pages and html will not be generated. If you want to install the man pages and html, install pandoc and re-run make. Would you like add pandoc to DOCS_RUN_DEPENDS? And for testing, devel/bats-core (IMHO should work instead of bats).