projecthamster / hamster

GNOME time tracker
http://projecthamster.org
GNU General Public License v3.0
1.07k stars 250 forks source link

No python3-distutils on ubuntu 24.04 #764

Open pwhipp opened 1 month ago

pwhipp commented 1 month ago
paul@PWC2:~$ hamster
Traceback (most recent call last):
  File "/usr/bin/hamster", line 40, in <module>
    from hamster import client, reports
  File "/usr/lib/python3/dist-packages/hamster/client.py", line 28, in <module>
    from distutils.version import LooseVersion
ModuleNotFoundError: No module named 'distutils'
paul@PWC2:~$ sudo apt install python3-distutils
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Package python3-distutils is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

No hamster on the latest Ubuntu LTS until this is addressed

pwhipp commented 1 month ago
paul@PWC2:~$ flatpak install flathub org.gnome.Hamster --user

Note that the directories 

'/var/lib/flatpak/exports/share'
'/home/paul/.local/share/flatpak/exports/share'

are not in the search path set by the XDG_DATA_DIRS environment variable, so
applications installed by Flatpak may not appear on your desktop until the
session is restarted.

Looking for matches…
error: No remote refs found for ‘flathub’

Flatpak not working per the instructions either.

pwhipp commented 1 month ago

Downloaded the flatpakref but still no luck:

(qcc) paul@PWC2:~/wk/qcc/qcc/club_site$ flatpak list
Name                                              Application ID                                            Version             Branch                  Installation
Mesa                                              org.freedesktop.Platform.GL.default                       24.0.7              22.08                   system
Mesa (Extra)                                      org.freedesktop.Platform.GL.default                       24.0.7              22.08-extra             system
nvidia-535-183-01                                 org.freedesktop.Platform.GL.nvidia-535-183-01                                 1.4                     system
openh264                                          org.freedesktop.Platform.openh264                         2.1.0               2.2.0                   system
Hamster                                           org.gnome.Hamster                                         3.0.2               stable                  system
GNOME Application Platform version 44             org.gnome.Platform                                                            44                      system
Yaru Gtk Theme                                    org.gtk.Gtk3theme.Yaru                                                        3.22                    system

(qcc) paul@PWC2:~/wk/qcc/qcc/club_site$ flatpak run org.gnome.Hamster

Note that the directories 

'/var/lib/flatpak/exports/share'
'/home/paul/.local/share/flatpak/exports/share'

are not in the search path set by the XDG_DATA_DIRS environment variable, so
applications installed by Flatpak may not appear on your desktop until the
session is restarted.

Gtk-Message: 11:07:25.599: Failed to load module "canberra-gtk-module"
Traceback (most recent call last):
  File "/app/lib/python3.10/site-packages/dbus/bus.py", line 177, in activate_name_owner
    return self.get_name_owner(bus_name)
  File "/app/lib/python3.10/site-packages/dbus/bus.py", line 361, in get_name_owner
    return self.call_blocking(BUS_DAEMON_NAME, BUS_DAEMON_PATH,
  File "/app/lib/python3.10/site-packages/dbus/connection.py", line 652, in call_blocking
    reply_message = self.send_message_with_reply_and_block(
dbus.exceptions.DBusException: org.freedesktop.DBus.Error.NameHasNoOwner: Could not get owner of name 'org.gnome.Hamster': no such name

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/app/bin/hamster", line 149, in on_activate_window
    self._open_window(action.get_name(), data)
  File "/app/bin/hamster", line 184, in _open_window
    self.overview_controller = Overview()
  File "/app/lib/python3.10/site-packages/hamster/overview.py", line 477, in __init__
    self.find_facts()
  File "/app/lib/python3.10/site-packages/hamster/overview.py", line 531, in find_facts
    self.facts = self.storage.get_facts(start, end, search_terms=search)
  File "/app/lib/python3.10/site-packages/hamster/client.py", line 156, in get_facts
    for fact in self.conn.GetFactsJSON(dbus_range, search_terms)]
  File "/app/lib/python3.10/site-packages/hamster/client.py", line 96, in conn
    self._connection = dbus.Interface(self.bus.get_object('org.gnome.Hamster',
  File "/app/lib/python3.10/site-packages/dbus/bus.py", line 241, in get_object
    return self.ProxyObjectClass(self, bus_name, object_path,
  File "/app/lib/python3.10/site-packages/dbus/proxies.py", line 250, in __init__
    self._named_service = conn.activate_name_owner(bus_name)
  File "/app/lib/python3.10/site-packages/dbus/bus.py", line 182, in activate_name_owner
    self.start_service_by_name(bus_name)
  File "/app/lib/python3.10/site-packages/dbus/bus.py", line 277, in start_service_by_name
    return (True, self.call_blocking(BUS_DAEMON_NAME, BUS_DAEMON_PATH,
  File "/app/lib/python3.10/site-packages/dbus/connection.py", line 652, in call_blocking
    reply_message = self.send_message_with_reply_and_block(
dbus.exceptions.DBusException: org.freedesktop.DBus.Error.ServiceUnknown: The name org.gnome.Hamster was not provided by any .service files
Traceback (most recent call last):
  File "/app/lib/python3.10/site-packages/dbus/bus.py", line 177, in activate_name_owner
    return self.get_name_owner(bus_name)
  File "/app/lib/python3.10/site-packages/dbus/bus.py", line 361, in get_name_owner
    return self.call_blocking(BUS_DAEMON_NAME, BUS_DAEMON_PATH,
  File "/app/lib/python3.10/site-packages/dbus/connection.py", line 652, in call_blocking
    reply_message = self.send_message_with_reply_and_block(
dbus.exceptions.DBusException: org.freedesktop.DBus.Error.NameHasNoOwner: Could not get owner of name 'org.gnome.Hamster': no such name

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/app/bin/hamster", line 149, in on_activate_window
    self._open_window(action.get_name(), data)
  File "/app/bin/hamster", line 184, in _open_window
    self.overview_controller = Overview()
  File "/app/lib/python3.10/site-packages/hamster/overview.py", line 477, in __init__
    self.find_facts()
  File "/app/lib/python3.10/site-packages/hamster/overview.py", line 531, in find_facts
    self.facts = self.storage.get_facts(start, end, search_terms=search)
  File "/app/lib/python3.10/site-packages/hamster/client.py", line 156, in get_facts
    for fact in self.conn.GetFactsJSON(dbus_range, search_terms)]
  File "/app/lib/python3.10/site-packages/hamster/client.py", line 96, in conn
    self._connection = dbus.Interface(self.bus.get_object('org.gnome.Hamster',
  File "/app/lib/python3.10/site-packages/dbus/bus.py", line 241, in get_object
    return self.ProxyObjectClass(self, bus_name, object_path,
  File "/app/lib/python3.10/site-packages/dbus/proxies.py", line 250, in __init__
    self._named_service = conn.activate_name_owner(bus_name)
  File "/app/lib/python3.10/site-packages/dbus/bus.py", line 182, in activate_name_owner
    self.start_service_by_name(bus_name)
  File "/app/lib/python3.10/site-packages/dbus/bus.py", line 277, in start_service_by_name
    return (True, self.call_blocking(BUS_DAEMON_NAME, BUS_DAEMON_PATH,
  File "/app/lib/python3.10/site-packages/dbus/connection.py", line 652, in call_blocking
    reply_message = self.send_message_with_reply_and_block(
dbus.exceptions.DBusException: org.freedesktop.DBus.Error.ServiceUnknown: The name org.gnome.Hamster was not provided by any .service files
pwhipp commented 1 month ago

Build needs global gi module so no luck there either.

aquaherd commented 1 month ago

Perhaps this can help: stackoverflow

TLDR: distutils deprecated in python 3.12 in favour of setuptools

matthijskooijman commented 1 month ago

No python3-distutils on ubuntu 24.04

I think this was fixed in master already, but not released yet: https://github.com/projecthamster/hamster/commit/f14e4276d11c5d69fb6da844735cffc7a718f1f1

Flatpak not working per the instructions either.

Can you open up a separate issue for that, maybe with a few more details about what you tried? IIRC installing flatpaks from flathub needs some setup to add the "flathub" remote, but it seems indeed our README does not say this (nor point to relevant upstream documentation).