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

Removal of delta support in pacman 5.2 breaks Kalu build process in src/kalu-dbus/kalu-dbus.c #73

Open
FredBezies opened this issue Oct 22, 2019 · 4 comments

Comments

@FredBezies
Copy link

@FredBezies FredBezies commented Oct 22, 2019

Hello.

Pacman 5.2 landed in archlinux testing repositories. One of the main removal is delta support: http://allanmcrae.com/2019/10/pacman-5-2-release/

We have completely removed support for delta packages. This was a massively underused feature, usually made updates slower for a slight saving on bandwidth, and had a massive security hole.

When I tried to build Kalu 4.3.0, it fails.

Here is the error log related to delta support removal:

src/kalu-dbus/kalu-dbus.c:444:29: error: 'ALPM_EVENT_DELTA_PATCHES_START' undeclared (first use in this function); did you mean 'ALPM_EVENT_DISKSPACE_START'?
  444 |     else if (event->type == ALPM_EVENT_DELTA_PATCHES_START)
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                             ALPM_EVENT_DISKSPACE_START
src/kalu-dbus/kalu-dbus.c:449:29: error: 'ALPM_EVENT_DELTA_PATCH_START' undeclared (first use in this function); did you mean 'ALPM_EVENT_DISKSPACE_START'?
  449 |     else if (event->type == ALPM_EVENT_DELTA_PATCH_START)
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                             ALPM_EVENT_DISKSPACE_START
src/kalu-dbus/kalu-dbus.c:451:9: error: unknown type name 'alpm_event_delta_patch_t'
  451 |         alpm_event_delta_patch_t *e = (alpm_event_delta_patch_t *) event;
      |         ^~~~~~~~~~~~~~~~~~~~~~~~
src/kalu-dbus/kalu-dbus.c:451:40: error: 'alpm_event_delta_patch_t' undeclared (first use in this function)
  451 |         alpm_event_delta_patch_t *e = (alpm_event_delta_patch_t *) event;
      |                                        ^~~~~~~~~~~~~~~~~~~~~~~~
src/kalu-dbus/kalu-dbus.c:451:66: error: expected expression before ')' token
  451 |         alpm_event_delta_patch_t *e = (alpm_event_delta_patch_t *) event;
      |                                                                  ^
src/kalu-dbus/kalu-dbus.c:453:18: error: request for member 'delta' in something not a structure or union
  453 |                 e->delta->delta, e->delta->to);
      |                  ^~
src/kalu-dbus/kalu-dbus.c:103:64: note: in definition of macro 'emit_signal'
  103 |                                    g_variant_new ("(" fmt ")", __VA_ARGS__),   \
      |                                                                ^~~~~~~~~~~
src/kalu-dbus/kalu-dbus.c:453:35: error: request for member 'delta' in something not a structure or union
  453 |                 e->delta->delta, e->delta->to);
      |                                   ^~
src/kalu-dbus/kalu-dbus.c:103:64: note: in definition of macro 'emit_signal'
  103 |                                    g_variant_new ("(" fmt ")", __VA_ARGS__),   \
      |                                                                ^~~~~~~~~~~
src/kalu-dbus/kalu-dbus.c:455:29: error: 'ALPM_EVENT_DELTA_PATCH_DONE' undeclared (first use in this function); did you mean 'EVENT_DELTA_PATCH_DONE'?
  455 |     else if (event->type == ALPM_EVENT_DELTA_PATCH_DONE)
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                             EVENT_DELTA_PATCH_DONE
src/kalu-dbus/kalu-dbus.c:459:29: error: 'ALPM_EVENT_DELTA_PATCH_FAILED' undeclared (first use in this function); did you mean 'EVENT_DELTA_PATCH_FAILED'?
  459 |     else if (event->type == ALPM_EVENT_DELTA_PATCH_FAILED)
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                             EVENT_DELTA_PATCH_FAILED
src/kalu-dbus/kalu-dbus.c: In function 'init_alpm':
src/kalu-dbus/kalu-dbus.c:944:5: warning: implicit declaration of function 'alpm_option_set_deltaratio'; did you mean 'alpm_option_set_noextracts'? [-Wimplicit-function-declaration]
  944 |     alpm_option_set_deltaratio (handle, usedelta);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~
      |     alpm_option_set_noextracts
src/kalu-dbus/kalu-dbus.c: In function 'thread_sysupgrade':
src/kalu-dbus/kalu-dbus.c:1424:27: error: 'ALPM_ERR_DLT_INVALID' undeclared (first use in this function); did you mean 'ALPM_ERR_DB_INVALID'?
 1424 |                 || err == ALPM_ERR_DLT_INVALID)
      |                           ^~~~~~~~~~~~~~~~~~~~
      |                           ALPM_ERR_DB_INVALID
make[2]: *** [Makefile:1186: src/kalu-dbus/kalu_dbus-kalu-dbus.o] Error 1
@Vistaus

This comment has been minimized.

Copy link

@Vistaus Vistaus commented Oct 23, 2019

Fixed by using deraffe's branch: https://github.com/deraffe/kalu/tree/pacman-5.2-next

@noraj

This comment has been minimized.

Copy link

@noraj noraj commented Nov 2, 2019

People updating their system see this and are forced to uninstall kalu temporary:

error: failed to prepare transaction (could not satisfy dependencies)
:: installing pacman (5.2.0-2) breaks dependency 'pacman<5.2' required by kalu-kde

Using --nodeps (Skips dependency version checks) is very discouraged and can damaged your system. Please don't use it when upgrading your system. HanFox solution should be avoided.

@HanFox

This comment has been minimized.

Copy link

@HanFox HanFox commented Nov 2, 2019

@noraj

pacman -Sdd pacman

Updates pacman (and ignores dependants), then you can just update kalu after.

-d, --nodeps
Skips dependency version checks. Package names are still checked. Normally, pacman will always check a package’s dependency fields to ensure that all dependencies are installed and there are no package conflicts in the system. Specify this option twice to skip all dependency checks.

@obelix1502

This comment has been minimized.

Copy link

@obelix1502 obelix1502 commented Nov 3, 2019

Good evening,
I also had this problem with pacman.
So I installed on my Manjaro XFCE kalu-kde 4.3.0-2 and I didn't have this dependency problem.
It works perfectly well for me.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
5 participants
You can’t perform that action at this time.