october icon indicating copy to clipboard operation
october copied to clipboard

Does not install on Ubuntu linux 24.04 (with workaround)

Open KlfJoat opened this issue 5 months ago • 0 comments

Hi,

I love your tool here.

When I tried following your instructions, I ran into a dependency problem.

To start with, apt install ./filename usually works on Ubuntu to install .debs.

$ sudo apt install ./october_1.10.0_amd64.deb                             
Executing sudo -- bash -x -v -c "apt" 'install' './october_1.10.0_amd64.deb'                        
[sudo] password for klfjoat:                                                                        
"apt" 'install' './october_1.10.0_amd64.deb'                                                        
+ apt install ./october_1.10.0_amd64.deb                                                            
Reading package lists... Done                                                                       
Building dependency tree... Done                                                                    
Reading state information... Done                                                                   
Note, selecting 'october' instead of './october_1.10.0_amd64.deb'                                   
Some packages could not be installed. This may mean that you have                                   
requested an impossible situation or if you are using the unstable                                  
distribution that some required packages have not yet been created                                  
or been moved out of Incoming.                                                                      
The following information may help to resolve the situation:                                        
                                                                                                    
The following packages have unmet dependencies:                                                     
 october : Depends: libwebkit2gtk-4.0-dev but it is not installable                                 
E: Unable to correct problems, you have held broken packages.                                       
100 $

Okay, dependency problem. So I used dpkg -i in case it was a soft dependency.

$ sudo dpkg -i october_1.10.0_amd64.deb                               
Executing sudo -- bash -x -v -c "dpkg" '-i' 'october_1.10.0_amd64.deb'                              
"dpkg" '-i' 'october_1.10.0_amd64.deb'                                                              
+ dpkg -i october_1.10.0_amd64.deb                                                                  
Selecting previously unselected package october.                                                    
(Reading database ... 381473 files and directories currently installed.)                            
Preparing to unpack october_1.10.0_amd64.deb ...                                                    
Unpacking october (1.10.0) ...                                                                      
dpkg: dependency problems prevent configuration of october:                                         
 october depends on libgtk-3-dev; however:                                                          
  Package libgtk-3-dev is not installed.                                                            
 october depends on libwebkit2gtk-4.0-dev; however:                                                 
  Package libwebkit2gtk-4.0-dev is not installed.

dpkg: error processing package october (--install):
 dependency problems - leaving unconfigured
Processing triggers for desktop-file-utils (0.27-2build1) ...
Processing triggers for gnome-menus (3.36.0-1.1ubuntu3) ...
Processing triggers for hicolor-icon-theme (0.17-2) ...
Errors were encountered while processing:
 october
1 $

So, that didn't work. Unable to find the dependencies. So I checked and sure enough, hard dependencies on specific versions.

$ dpkg --info ./october_1.10.0_amd64.deb
 new Debian package, version 2.0.
 size 5332528 bytes: control archive=311 bytes.
     278 bytes,     9 lines      control
 Package: october
 Version: 1.10.0
 Section: base
 Priority: optional
 Architecture: amd64
 Depends: libgtk-3-dev, libwebkit2gtk-4.0-dev
 Maintainer: Marcus Crane <[email protected]>
 Homepage: https://october.utf9k.net
 Description: A tool for syncing your Kobo highlights with Readwise
$

So I typed this in and tabbed it out to get bash-completion to tell me what versions of libwebkit2 are available on Ubuntu 24.04.

$ apt show libwebkit2gtk-4.
libwebkit2gtk-4.0-37   libwebkit2gtk-4.0-doc  libwebkit2gtk-4.1-0    libwebkit2gtk-4.1-dev
$

FIX ABORTED INSTALL So I first removed the aborted install...

$ sudo apt --fix-broken install
Executing sudo -- bash -x -v -c "apt" '--fix-broken' 'install'
"apt" '--fix-broken' 'install'                                                                      
+ apt --fix-broken install                     
Reading package lists... Done                                                                       
Building dependency tree... Done                                                                    
Reading state information... Done                                                                   
Correcting dependencies... Done
The following packages will be REMOVED:                                                             
  october                                                                                           
0 upgraded, 0 newly installed, 1 to remove and 14 not upgraded.     
1 not fully installed or removed.                                                                   
After this operation, 0 B of additional disk space will be used.                               
Do you want to continue? [Y/n]                                                                      
(Reading database ... 381480 files and directories currently installed.)              
Removing october (1.10.0) ...                                                                       
dpkg: warning: while removing october, directory '/usr/local/bin' not empty so not removed
Processing triggers for hicolor-icon-theme (0.17-2) ...
Processing triggers for gnome-menus (3.36.0-1.1ubuntu3) ...
Processing triggers for desktop-file-utils (0.27-2build1) ...
needrestart is being skipped since dpkg has failed 

WORKAROUND INSTALL Then I installed v4.1 of the dependency and installed October, ignoring dependencies using --force-depends...

$ sudo apt install libwebkit2gtk-4.1-dev
Executing sudo -- bash -x -v -c "apt" 'install' 'libwebkit2gtk-4.1-dev'
"apt" 'install' 'libwebkit2gtk-4.1-dev'
+ apt install libwebkit2gtk-4.1-dev
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
  libatk-bridge2.0-dev libatk1.0-dev libatspi2.0-dev libcairo2-dev libdatrie-dev libegl1-mesa-dev
  libepoxy-dev libgdk-pixbuf-2.0-dev libglvnd-core-dev libglvnd-dev libgtk-3-dev
  libjavascriptcoregtk-4.1-dev libnghttp2-dev libopengl-dev libpango1.0-dev libpixman-1-dev
  libpsl-dev libsoup-3.0-dev libsqlite3-dev libsysprof-capture-4-dev libthai-dev libxcomposite-dev
  libxdamage-dev libxft-dev libxtst-dev pango1.0-tools
Suggested packages:
  libcairo2-doc libdatrie-doc libgtk-3-doc libnghttp2-doc libpango1.0-doc libsoup-3.0-doc
  sqlite3-doc libthai-doc graphicsmagick
The following NEW packages will be installed:
  libatk-bridge2.0-dev libatk1.0-dev libatspi2.0-dev libcairo2-dev libdatrie-dev libegl1-mesa-dev
  libepoxy-dev libgdk-pixbuf-2.0-dev libglvnd-core-dev libglvnd-dev libgtk-3-dev
  libjavascriptcoregtk-4.1-dev libnghttp2-dev libopengl-dev libpango1.0-dev libpixman-1-dev
  libpsl-dev libsoup-3.0-dev libsqlite3-dev libsysprof-capture-4-dev libthai-dev
  libwebkit2gtk-4.1-dev libxcomposite-dev libxdamage-dev libxft-dev libxtst-dev pango1.0-tools
0 upgraded, 27 newly installed, 0 to remove and 14 not upgraded.
Need to get 3,770 kB of archives.
After this operation, 34.7 MB of additional disk space will be used.
Do you want to continue? [Y/n]
...blah, blah, blah
Setting up libgtk-3-dev:amd64 (3.24.41-4ubuntu1.1) ...                                              
Setting up libwebkit2gtk-4.1-dev:amd64 (2.44.3-0ubuntu0.24.04.1) ...                                
Processing triggers for man-db (2.12.0-4build2) ...                                                 
Scanning processes...                                                                               
Scanning processor microcode...                                                                     
Scanning linux images...                                                                            
                                                                                                    
Running kernel seems to be up-to-date.                                                              
                                                                                                    
The processor microcode seems to be up-to-date.                                                     
                                                                                                    
No services need to be restarted.                                                                   

No containers need to be restarted.

No user sessions are running outdated binaries.

No VM guests are running outdated hypervisor (qemu) binaries on this host.


$ sudo dpkg -i --force-depends october_1.10.0_amd64.deb 
Executing sudo -- bash -x -v -c "dpkg" '-i' '--force-depends' 'october_1.10.0_amd64.deb'
"dpkg" '-i' '--force-depends' 'october_1.10.0_amd64.deb'
+ dpkg -i --force-depends october_1.10.0_amd64.deb
Selecting previously unselected package october.
(Reading database ... 382705 files and directories currently installed.)
Preparing to unpack october_1.10.0_amd64.deb ...
Unpacking october (1.10.0) ...
dpkg: october: dependency problems, but configuring anyway as you requested:
 october depends on libwebkit2gtk-4.0-dev; however:
  Package libwebkit2gtk-4.0-dev is not installed.

Setting up october (1.10.0) ...
Processing triggers for desktop-file-utils (0.27-2build1) ...
Processing triggers for gnome-menus (3.36.0-1.1ubuntu3) ...
Processing triggers for hicolor-icon-theme (0.17-2) ...

SUGGESTION I'm not sure if Wallis requires -dev packages to just run an application--that's unusual, but not unheard of. As a longtime linux admin (admittedly, not a programmer), I would suggest three things (pick and choose between them).

  1. Make sure you need the -dev- packages and not just the main package. My host has libwebkit2gtk-4.0-37 available, but not a 4.0-dev available.
  2. See if you can create a more liberal dependency specification. My host has both libwebkit2gtk-4.0-37 & libwebkit2gtk-4.1-0 available. Maybe a spec like Depends: libwebkit2gtk-4.0|libwebkit2gtk-4.1? (ref1, ref2)
  3. libwebkit2gtk-4.1, at the very least, itself depends on libgtk-3 in Debian. So you might be able to skip that dependency.

KlfJoat avatar Sep 10 '24 16:09 KlfJoat