Opened 9 years ago

Closed 9 years ago

Last modified 8 years ago

#4460 closed project (fixed)

Extend and integrate Vidalia and Thandy to install or update TBB components

Reported by: karsten Owned by: chiiph
Priority: Medium Milestone:
Component: Archived/Thandy Version:
Severity: Keywords: SponsorZ
Cc: Actual Points:
Parent ID: Points:
Reviewer: Sponsor:

Description (last modified by chiiph)

Thandy is a secure package manager that was able to manage only exe and rpm files. Recently, a new package format was born called Thp which will be used for every platform.

Thandy is in the process of being integrated with Vidalia through a plugin and a bootstrapper (to update Vidalia itself).

As children of this ticket will be listed the ones that are relevant to the above development.

Child Tickets

#3895closednickmThp package handling inside ThandyArchived/Thandy
#3896closedchiiphThandy bootstrapperArchived/Thandy
#3901closednickmParsable output for ThandyArchived/Thandy
#4402closednickmThandy should ignore config files only when upgrading a packageArchived/Thandy
#4403closednickmThandy should fail when trying to create an existing dir inside a packageArchived/Thandy
#4414closednickmScriptWrapper should be multiplatformArchived/Thandy
#4418closednickmThandy distributionArchived/Thandy

Change History (3)

comment:1 Changed 9 years ago by chiiph

Description: modified (diff)

comment:2 Changed 9 years ago by chiiph

Resolution: fixed
Status: newclosed

Executive summary:

Thandy is a package manager focusing on security against package
tampering. As of a couple of months ago, Thandy was only able to
handle exe and rpm files. That's why Nick and Erinn wrote a
specification for a package format called Thp to be a secure
replacement for exe and rpm. I implemented that specification, there
were a couple of things that weren't completely defined in it (that's
why it's still a draft), for example, the uninstall process isn't
specified nor implemented; but that was acceptable for a first
approach. This code was reviewed by Nick in #3895. Once that code was
merged, there were a couple of issues (#4402, #4403, #4414) that
needed a quick fix or just more thought.

Thandy itself isn't easy to use, so the first thought was to wrap it
under a Vidalia plugin, but the issue of "who updates Vidalia on
Windows if Vidalia is running Thandy?" made us come up with the idea
of a bootstrap application. The bootstrap application is a GUI app
that runs Thandy and translates its output into graphical
representations like download progress bars, and colored
messages. With it, Vidalia uses Thandy through this bootstrap
application, which in case of an update for Vidalia, it will wait a
few seconds to let Vidalia exit properly, and then update it. If
there's an update for bootstrap application available, Vidalia will
use Thandy directly to update the bootstrap application, and then use
the new bootstrap application to update the other applications. The
ticket for the bootstrap app is #3896.

Vidalia handles all the communication to Thandy and the bootstrap
applicationthrough a separate plugin. This plugin periodically checks
for updates and behaves as specified in the former paragraph. This
plugin doesn't have a ticket.

Thandy is a Python app, so the last issue is how to distribute it as
an executable, for that PyInstaller was selected among the
possibilities. The ticket for this is #4418.

There are a couple of core features, like updating Thandy itself, that
aren't a part of this milestone. But it can be adapted to be a part of
the bootstrap application behavior.

comment:3 Changed 8 years ago by karsten

Keywords: SponsorZ added
Milestone: Sponsor Z: December 31, 2011

Switching from using milestones to keywords for sponsor deliverables. See #6365 for details.

Note: See TracTickets for help on using tickets.