[Request] Debian/Ubuntu Repository to use non-free, and added to extrepo.
-
extrepo, on Debian, has a means to add and support 3rd party repositories to make adding and using repos, like Vivaldi's, easily.
Since Vivaldi is not opensource, however, the policy would be to use "non-free" rather than "main" for the repository. For the sake of this extrepo it could be a simple symlink to keep things working nicely for all that it truly matters.
Ultimately, it would be very handy to have Vivaldi listed in extrepo to simply:
extrepo enable vivaldi apt install vivaldi-stable
And be done.
Submission to extrepo is also very simple and provided here:
https://salsa.debian.org/extrepo-team/extrepo-data -
@ericrenfro If you download and install the Vivaldi .deb package, updates will automatically download/install from Vivaldi's repository.
-
@edwardp said in [Request] Debian/Ubuntu Repository to use non-free, and added to extrepo.:
@ericrenfro If you download and install the Vivaldi .deb package, updates will automatically download/install from Vivaldi's repository.
While true, this is kind of a pretty dirty hacky way to do it, via a cron job in /etc/cron.daily.. You'd literally be better off including the /etc/apt/sources.list.d/vivaldi.list in the package, the GPG key properly installed also in /usr/share/keyrings (this is for system installed packages like .deb packages to use). and stop manually installing the repo in a cron job.
At worst, this should be using the postinst and prerm scripts in the package itself, just in case you somehow need to make any distro-specific issues between Debian and Ubuntu and the likes.
-
@ericrenfro I'm not too familiar with cron jobs, but what I was referring to, is once the Vivaldi .deb is installed, then running apt or nala to update the system, it will update Vivaldi along with any other updated Debian packages that may be available.
-
@edwardp said in [Request] Debian/Ubuntu Repository to use non-free, and added to extrepo.:
@ericrenfro I'm not too familiar with cron jobs, but what I was referring to, is once the Vivaldi .deb is installed, then running apt or nala to update the system, it will update Vivaldi along with any other updated Debian packages that may be available.
That's what I'm talking about.
The vivaldi-stable package has a cron job that runs daily:dpkg -L vivaldi-stable | grep cron /etc/cron.daily /opt/vivaldi/cron /opt/vivaldi/cron/vivaldi /etc/cron.daily/vivaldi
That what it specifically does is extract, by base64, the GPG keyring for the repository, and generates the /etc/apt/sources.list.d/vivaldi.list, every day.
This is not the most ideal or correct way to handle this, at all.
-
@ericrenfro That could be related to Update Status. I have seen this when using Vivaldi and an updated package is downloaded and installed, while Vivaldi is running.
The cron job possibly causes the update notifier in the Address Bar to appear.
-
@edwardp said in [Request] Debian/Ubuntu Repository to use non-free, and added to extrepo.:
@ericrenfro That could be related to Update Status. I have seen this when using Vivaldi and an updated package is downloaded and installed, while Vivaldi is running.
The cron job possibly causes the update notifier in the Address Bar to appear.
It's not that at all. Let's dig through it, publically then.
In /etc/cron.daily/ there's a symlink, vivaldi to /opt/vivaldi/cron/vivaldi.
Inside that, there's literaly variables being setup, promptly:# System-wide package configuration. DEFAULTS_FILE="/etc/default/vivaldi" # sources.list setting for vivaldi updates. REPOCONFIG="deb [arch=amd64] https://repo.vivaldi.com/stable/deb/ stable main" REPOCONFIGREGEX="deb (\[arch=[^]]*\bamd64\b[^]]*\][[:space:]]*) https?://repo.vivaldi.com/stable/deb/ stable main" APT_GET="`command -v apt-get 2> /dev/null`" APT_CONFIG="`command -v apt-config 2> /dev/null`"
functions to install_key() which has the GPG key stored directly in the cron script in base64 encoding.
And oh, here's the repository itself being generated by a function as well:
create_sources_lists() { if [ ! "$REPOCONFIG" ]; then return 0 fi find_apt_sources SOURCELIST="$APT_SOURCESDIR/vivaldi.list" if [ -d "$APT_SOURCESDIR" ]; then printf "$SOURCES_PREAMBLE" > "$SOURCELIST" printf "$REPOCONFIG\n" >> "$SOURCELIST" if [ $? -eq 0 ]; then return 0 fi fi return 2 }
A function to handle detection of distro upgrades, so if say I changed from Ubuntu 22.04 to 24.04, it would update that from jammy to noble, or whatever the names are appropriately.
That's it. No notifications, just manual intervention of the repository, once daily.
I just wanted to make this concern clear. This is not the usual or expected ways to handle this kind of situation. It would be much more ideal if Vivaldi did better.
Eric
-
@ericrenfro It's a Chromium "feature", also used by Brave and, maybe, by the other Chromium derivatives.
-
ZZalex108 moved this topic from Vivaldi for Linux on