-
Notifications
You must be signed in to change notification settings - Fork 53
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
feat(24.04): add vim and vim-tiny slices #301
base: ubuntu-24.04
Are you sure you want to change the base?
Conversation
Diff of dependencies: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice slices!
essential: | ||
- libc6_libs | ||
- libexpat1_libs | ||
- libpython3.12-stdlib_core |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Would you please double-check why we need libpython3.12-stdlib
? I am guessing libpython3.12-stdlib
is a dependency of libpython3.12t64
because of the copyright paths. But I could be wrong.
lrwxrwxrwx root/root 0 2024-07-31 17:43 ./usr/share/doc/libpython3.12t64 -> libpython3.12-stdlib
Does the shared objects in this package access any python libs? ldd
didn't produce anything like that:
# ldd ./usr/lib/x86_64-linux-gnu/libpython3.12.so.1.0
linux-vdso.so.1 (0x00007fff4bd6c000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007d44f1f83000)
libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007d44f1f67000)
libexpat.so.1 => not found
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007d44f13ee000)
/lib64/ld-linux-x86-64.so.2 (0x00007d44f2070000)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Without going into the source, strings
shows that many of the libraries in libpython3.12-stdlib
are referenced in libpython3.12t64
. Im guessing the dependency here is on python libraries that don't show up with ldd
@@ -0,0 +1,12 @@ | |||
package: libpython3.12t64 | |||
|
|||
slices: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is it possible to add a copyright slice with the following path?
/usr/share/doc/libpython3.12t64
Have to check the deps though. It's a symlink, might need other package to fill in the target path.
data: | ||
contents: | ||
/usr/bin/helpztags: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am not sure if data
is the appropriate slice name here. helpztags
is a perl script:
#!/usr/bin/perl
#
# helpztags generates tags for Vim helpfiles, for both .txt and .txt.gz files
# Author: Jakub Turski <[email protected]>
# Artur R. Czechowski <[email protected]>
# Version: 0.4
# Please use following command for generate a manual file:
# pod2man -c "User Commands" -s 1 -q none -r "vim 6.2" -d "September 2003" helpztags helpztags.1
=head1 NAME
helpztags - generate the help tags file for directory
...
How about bins
?
config: | ||
contents: | ||
/etc/vim/vimrc: | ||
/usr/share/vim/vim91/debian.vim: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am a bit sceptic on whether or not we should include this file in config
. It seems quite specific for Debian.
Having said that, if we do include it upon agreement, would you kindly omit the vim91
word with vim*
?
- vim-common_config | ||
- vim-tiny_config | ||
contents: | ||
/usr/bin/vi: {symlink: /usr/bin/vim.tiny} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good call not making the view
, editor
symlinks! 👍
- vim-common_config | ||
- vim-tiny_config | ||
contents: | ||
/usr/bin/vi: {symlink: /usr/bin/vim.tiny} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Coming back to this again, vim
also tries to create a symlink from vi
:
update-alternatives --install /usr/bin/vi vi /usr/bin/vim.basic 30
Perhaps we should ignore making the vi
symlink?
- vim-common_config | ||
- vim-runtime_plugins | ||
contents: | ||
/usr/bin/vim: {symlink: /usr/bin/vim.basic} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is fine, until we have packages like vim-gtk3
coming in where it demands with a higher priority that vim
should point to vim.gtk3
:
update-alternatives --install /usr/bin/vim vim /usr/bin/vim.gtk3 50
Thoughts on how we should address the vi
and vim
symlinks?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we have a similar issue with symlinking sh to various shells. Maybe we should have an explicit symlink slice in the future so we could have both bash_bins and dash_bins installed, but specify dash as sh via dash_links or dash_sh
- vim-common_config | ||
- vim-runtime_plugins | ||
contents: | ||
/usr/bin/vim: {symlink: /usr/bin/vim.basic} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we have a similar issue with symlinking sh to various shells. Maybe we should have an explicit symlink slice in the future so we could have both bash_bins and dash_bins installed, but specify dash as sh via dash_links or dash_sh
essential: | ||
- libc6_libs | ||
- libexpat1_libs | ||
- libpython3.12-stdlib_core |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Without going into the source, strings
shows that many of the libraries in libpython3.12-stdlib
are referenced in libpython3.12t64
. Im guessing the dependency here is on python libraries that don't show up with ldd
Proposed changes
Add vim and vim-tiny slices for 24.04
Related issues/PRs
None
Forward porting
N/A
Checklist
Additional Context
Tested vi/vim interactive manually, and tested vi/vim running scripts properly with spread tests.