Announcements

uCareSystem 24.07.14: Improved System Restart Detection

ucaresystem-core

uCareSystem has had the ability to detect if a system reboot is needed after applying maintenance tasks for some time now. With the new release, it will also show you the list of packages that requested the reboot. Additionally, the new release has squashed some annoying bugs.

Restart ? Why though ?

uCareSystem has had the restart detection feature since 2018 (from version 4.4.0). However, knowing why a restart is needed is crucial. As a normal desktop user, you might not care if your system requests a restart after a major update because you probably shut down your PC at the end of the day. But this is not the case for servers.

Server system administrators need to make informed decisions and carefully schedule system restarts because the services running on these servers will be interrupted. The new version 24.07.14 will show which packages requested the restart, helping administrators decide whether a full system restart is urgently needed or not.

IPv6…. meh…

One annoying drawback of some rare case systems is the IPv6 protocol. You never know when it will cause issues. IPv6, the latest Internet Protocol (IP) version since 1998, is a communication protocol that directs data across the Internet, providing machines with identity and location. It was designed to replace the IPv4 protocol. However, IPv6 can occasionally pose challenges with certain applications, placing this functionality lower on their priority list.

This is the case with some rare system installations of Ubuntu where IPv6 is enabled and used by default for system updates and package installations. For example, Ubuntu Server minimal edition is used on systems where user interaction is minimal to none, primarily serving as a minimal web service providing OS.

When trying to install uCareSystem on these machines, the installation would crash with an error as reported in this bug report #55.

Adding Utappia Repository
Traceback (most recent call last):
  File "/usr/bin/add-apt-repository", line 364, in <module>
    sys.exit(0 if addaptrepo.main() else 1)
  File "/usr/bin/add-apt-repository", line 347, in main
    shortcut = handler(source, **shortcut_params)
  File "/usr/lib/python3/dist-packages/softwareproperties/shortcuts.py", line 40, in shortcut_handler
    return handler(shortcut, **kwargs)
  File "/usr/lib/python3/dist-packages/softwareproperties/ppa.py", line 82, in __init__
    if self.lpppa.publish_debug_symbols:
  File "/usr/lib/python3/dist-packages/softwareproperties/ppa.py", line 120, in lpppa
    self._lpppa = self.lpteam.getPPAByName(name=self.ppaname)
  File "/usr/lib/python3/dist-packages/softwareproperties/ppa.py", line 107, in lpteam
    self._lpteam = self.lp.people(self.teamname)
  File "/usr/lib/python3/dist-packages/softwareproperties/ppa.py", line 98, in lp
    self._lp = login_func("%s.%s" % (self.__module__, self.__class__.__name__),
  File "/usr/lib/python3/dist-packages/launchpadlib/launchpad.py", line 494, in login_anonymously
    return cls(
  File "/usr/lib/python3/dist-packages/launchpadlib/launchpad.py", line 230, in __init__
    super(Launchpad, self).__init__(
  File "/usr/lib/python3/dist-packages/lazr/restfulclient/resource.py", line 472, in __init__
    self._wadl = self._browser.get_wadl_application(self._root_uri)
  File "/usr/lib/python3/dist-packages/lazr/restfulclient/_browser.py", line 447, in get_wadl_application
    response, content = self._request(url, media_type=wadl_type)
  File "/usr/lib/python3/dist-packages/lazr/restfulclient/_browser.py", line 389, in _request
    response, content = self._request_and_retry(
  File "/usr/lib/python3/dist-packages/lazr/restfulclient/_browser.py", line 359, in _request_and_retry
    response, content = self._connection.request(
  File "/usr/lib/python3/dist-packages/httplib2/__init__.py", line 1725, in request
    (response, content) = self._request(
  File "/usr/lib/python3/dist-packages/launchpadlib/launchpad.py", line 144, in _request
    response, content = super(LaunchpadOAuthAwareHttp, self)._request(
  File "/usr/lib/python3/dist-packages/lazr/restfulclient/_browser.py", line 184, in _request
    return super(RestfulHttp, self)._request(
  File "/usr/lib/python3/dist-packages/httplib2/__init__.py", line 1441, in _request
    (response, content) = self._conn_request(conn, request_uri, method, body, headers)
  File "/usr/lib/python3/dist-packages/httplib2/__init__.py", line 1363, in _conn_request
    conn.connect()
  File "/usr/lib/python3/dist-packages/httplib2/__init__.py", line 1153, in connect
    sock.connect((self.host, self.port))
TimeoutError: [Errno 110] Connection timed out

The new 24.07.14 version of uCareSystem includes a built-in workaround to bypass this issue, ensuring that systems relying on IPv6 will not affect the installation of uCareSystem.

Ping… pong… No Ping…

Since uCareSystem 24.04.0, the utility first checks for internet connectivity before proceeding with system maintenance tasks. This is crucial for systems with unstable internet connections because of the way uCareSystem checks and downloads system package updates.

Unfortunately, some minimalistic Ubuntu installations lack the “ping” package that was used until now. This caused the issue of falsely reporting no internet connection and exiting the entire maintenance, as reported in bug report #54, titled “No internet connection detected in VMs

I am deeply sorry for any confusion that this bug may have created but it was an edge case that I recently discovered on one of my friends server. The new 24.07.14 fixed this issue once and hopefully for all.

24.06 Sponsors

With version 24.06 of uCareSystem, I added a section to acknowledge the people who supported the development of the previous cycle.

This addition was warmly received by the community, and I can’t express enough gratitude to those who donated during the previous development cycle:

  • P. Loughman (the legend ! I wish you the best my friend),
  • E. Dennis,
  • L. Alexander,
  • I. Eleftherios,
  • W. Shreinemachers

Where can I download uCareSystem ?

As always, I want to express my gratitude for your support over the past 15 years. I have received countless messages from inside and outside Greece about how useful they found the application. I hope you find the new version useful as well.

If you’ve found uCareSystem to be valuable and it has saved you time, consider showing your appreciation with a donation. You can contribute via PayPal or Debit/Credit Card by clicking on the banner.

Pay what you want Maybe next time
Click the donate button and enter the amount you want to donate. Then you will be navigated to the page with the latest version to download the installer If you don’t want to Donate this time, just click the download icon to be navigated to the page with the latest version to download the installer
btn_donateCC_LG ucare-system-download
   

Once installed, the updates for new versions will be installed along with your regular system updates.

Leave a Reply