Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update flatpak to latest version #53

Open
ACiDxCHRiST opened this issue Aug 13, 2024 · 32 comments
Open

Update flatpak to latest version #53

ACiDxCHRiST opened this issue Aug 13, 2024 · 32 comments

Comments

@ACiDxCHRiST
Copy link

ACiDxCHRiST commented Aug 13, 2024

VDF version 0x107564429 is not supported.

This error message is displayed when launching Steam Metadata Editor Flatpak after updating to new Steam beta.

Steam Beta Branch: Steam Deck Beta
Steam Version: 1722380543
Steam Client Build Date: Tue, Jul 30 17:44 UTC -08:00
Steam Web Build Date: Tue, Jul 30 17:44 UTC -08:00
Steam API Version: SteamClient021

@tralph3
Copy link
Owner

tralph3 commented Aug 13, 2024

This issue has been fixed on the regular version already. I need to update the flatpak, but on Flathub they are asking me to remove copyrighted material from the project, so I need to change the name and icon.

Can't update untill that's done... Suggestions welcome.

@tralph3 tralph3 changed the title VDF version 0x107564429 is not supported. Update flatpak to latest version Aug 13, 2024
@ACiDxCHRiST
Copy link
Author

ACiDxCHRiST commented Aug 13, 2024

I can understand wanting the icon removed but the name is just what it does. I don't understand why the application would need some unique and meaningless or generic and esoteric name. Is it really a requirement that Steam can't be in the name? Considering that the only function of the application is to interact and edit a file format that is unique to Steam, something like "Game Library Metadata Editor" is too generic and doesn't readily identify that this is a tool that is only for, and inextricably linked to Steam. "VDF Metadata Editor" is esoteric and has no meaning to those outside of a small few that already understand.

Would they accept "Metadata Editor for Steam"? Even that to me seems stupid because it is less efficient and therefore even less suitable as a name, but being forced to create a unique "Brand" for an application that is so narrow in scope, is too.

SteamSpy
SteamDB
SteamEdit
steamfiles
SteamTinkerLaunch
etc etc

Maybe that's what you gotta do; remove the spaces. It then becomes a new word that is not "Steam" even though those letters are in it, lol

@tralph3
Copy link
Owner

tralph3 commented Aug 13, 2024

I'll discuss it a bit with the flathub guys.

@ACiDxCHRiST
Copy link
Author

I have reverted back to Steam stable and everything works fine for now. I figure we may have a week (maybe less) until Steam promotes the current beta to stable.

Before reverting to stable I did try running the "paru -Syu steam-metadata-editor-git" command but it didn't work and I got an error. It seems I need to do some research on what I need to do to get it to work. But first, I figured I would ask your advice on the best way to install the updated code on the Steam Deck in a clean way in case the beta gets promoted to stable before the Flathub situation is sorted.

I rely on this app set to run silently everytime I jump to desktop mode to keep all of my launch options updated since Steam likes to revert the changes every couple days.

@tralph3
Copy link
Owner

tralph3 commented Aug 18, 2024

@ACiDxCHRiST

I did try running the "paru -Syu steam-metadata-editor-git" command but it didn't work and I got an error

What error did you get? That should work.

@ACiDxCHRiST
Copy link
Author

ACiDxCHRiST commented Aug 18, 2024

What error did you get? That should work.

:: Synchronizing package databases...
error: failed to synchronize all databases (unable to lock database)

@tralph3
Copy link
Owner

tralph3 commented Aug 18, 2024

That has nothing to do with this project. When you use pacman, (or paru, in this case), it creates a .lock file. The presence of this file tells other pacman processes to not touch the database files since they are already being accessed. When the process that created the file finishes, it should delete the .lock file, and allow other processes to complete their tasks.

What you ran into, is likely the result of an interrupted update. The pacman process didn't exit cleanly, because the system was shutdown or something of the sorts, and the .lock file was never removed.

TL;DR, you have a .lock file preventing you from using pacman. Simply delete it, it should be in /etc/pacman or somewhere like that, just google it.

@tralph3
Copy link
Owner

tralph3 commented Aug 18, 2024

It's either that, or pacman is not running as root, so it can't create the file.

@ACiDxCHRiST
Copy link
Author

That has nothing to do with this project. When you use pacman, (or paru, in this case), it creates a .lock file. The presence of this file tells other pacman processes to not touch the database files since they are already being accessed. When the process that created the file finishes, it should delete the .lock file, and allow other processes to complete their tasks.

What you ran into, is likely the result of an interrupted update. The pacman process didn't exit cleanly, because the system was shutdown or something of the sorts, and the .lock file was never removed.

TL;DR, you have a .lock file preventing you from using pacman. Simply delete it, it should be in /etc/pacman or somewhere like that, just google it.

After you asked what the error was, I decided to start looking into it and this is pretty much what I learned from researching the error. I wasn't able to find a db.lck file anywhere to delete.

I'm pretty sure the issue is the read only Steam OS.

@tralph3
Copy link
Owner

tralph3 commented Aug 19, 2024

There's a pacman.lock file aswell.

@ACiDxCHRiST
Copy link
Author

The day has come. Steam released the new update that folds these beta changes into the stable branch. Is there any progress with flathub?

@tralph3
Copy link
Owner

tralph3 commented Sep 12, 2024

I'm very sorry but I've been busy.

I'll try to get to it when I can.

In the meantime I recommend to use the non-flatpak version.

@ACiDxCHRiST
Copy link
Author

ACiDxCHRiST commented Sep 12, 2024

(deck@steamdeck ~)$ paru -Syu steam-metadata-editor-git
[sudo] password for deck: 
:: Synchronizing package databases...
 jupiter-3.5 is up to date
 holo-3.5 is up to date
 core-3.5 is up to date
 extra-3.5 is up to date
 community-3.5 is up to date
 multilib-3.5 is up to date
:: Starting full system upgrade...
 there is nothing to do
:: Looking for AUR upgrades...
:: Looking for devel upgrades...
:: Resolving dependencies...
:: Calculating conflicts...
:: Calculating inner conflicts...

Aur (1) steam-metadata-editor-git-1.0.2-4

:: Proceed to review? [Y/n]: y

:: Downloading PKGBUILDs...
 (1/1) steam-metadata-editor-git-1.0.2-4             [------------------------------------------------------------]
/home/deck/.cache/paru/clone/steam-metadata-editor-git/PKGBUILD
# Maintainer: Tomás Ralph <[email protected]>
_pkgname=Steam-Metadata-Editor
pkgver=1.0.2
pkgname=steam-metadata-editor-git
pkgrel=4
pkgdesc="A metadata editor for Steam"
arch=(any)
url="https://github.com/tralph3/Steam-Metadata-Editor.git"
license=('GPL3')
depends=(tk python)
makedepends=(git)
source=("git+$url")
md5sums=('SKIP')

pkgver() {
  cd "$srcdir/$_pkgname"
  printf "1.0.2.r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
}

package() {
  mkdir -pv $HOME/.local/share/${_pkgname}/config

  local licdir="$pkgdir/usr/share/licenses/${pkgname%-git}"
  local progdir="$pkgdir/opt/sme"
:: Proceed with installation? [Y/n]: y
fetching devel info...
==> Making package: steam-metadata-editor-git 1.0.2-4 (Thu 12 Sep 2024 02:22:34 PM CDT)
==> Retrieving sources...
  -> Cloning Steam-Metadata-Editor git repo...
Cloning into bare repository '/home/deck/.cache/paru/clone/steam-metadata-editor-git/Steam-Metadata-Editor'...
remote: Enumerating objects: 757, done.
remote: Counting objects: 100% (358/358), done.
remote: Compressing objects: 100% (166/166), done.
remote: Total 757 (delta 237), reused 278 (delta 186), pack-reused 399 (from 1)
Receiving objects: 100% (757/757), 2.38 MiB | 45.00 KiB/s, done.
Resolving deltas: 100% (414/414), done.
==> Validating source files with md5sums...
    Steam-Metadata-Editor ... Skipped
==> Making package: steam-metadata-editor-git 1.0.2-4 (Thu 12 Sep 2024 02:23:32 PM CDT)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Updating Steam-Metadata-Editor git repo...
==> Validating source files with md5sums...
    Steam-Metadata-Editor ... Skipped
==> Removing existing $srcdir/ directory...
==> Extracting sources...
  -> Creating working copy of Steam-Metadata-Editor git repo...
Cloning into 'Steam-Metadata-Editor'...
done.
==> Starting pkgver()...
==> Updated version: steam-metadata-editor-git 1.0.2.r81.5c6ec34-1
==> Sources are ready.
steam-metadata-editor-git-1.0.2-4: parsing pkg list...
==> ERROR: Cannot find the fakeroot binary.
error: failed to build 'steam-metadata-editor-git-1.0.2-4': 
error: packages failed to build: steam-metadata-editor-git-1.0.2-4
(1)(deck@steamdeck ~)$ 

Still trying to workout how to get this installed.

@tralph3
Copy link
Owner

tralph3 commented Sep 12, 2024

==> ERROR: Cannot find the fakeroot binary

This seems like a you problem. Can you install other AUR packages?

@ACiDxCHRiST
Copy link
Author

It's not a me problem, it's a Steam Deck problem. Just like the fact that I had to disable the steamos-readonly, and initialize the keyring, and how to use paru and exit out of the review, so that it will prompt to install. I have to read the manual for every little thing to learn why it just won't work then figure out why they still don't work because of SteamOS's immutable root filesystem.

Now I need to learn how to use and configure rwfus, Nix, or Distrobox/podman, because without some solution, all this work including Steam Metadata Editor and any other packages installed via pacman will be wiped out by the next SteamOS update.

I'll figure it out. I am just annoyed that I have to learn how all these different systems and programs work through trial and error, just to install a program. Flatpak really is a superior way of doing things on SteamOS.

@tralph3
Copy link
Owner

tralph3 commented Sep 12, 2024

I get that, but I can't just update the program. I need to come up with a name, logo, and make a request to allow filesystem access.

I just don't want to bother with that right now.

@Rhomagus
Copy link

Has there been a solution for this yet? having the same issues on Steam Deck OLED Stable Branch.

@ACiDxCHRiST
Copy link
Author

ACiDxCHRiST commented Sep 17, 2024

Has there been a solution for this yet? having the same issues on Steam Deck OLED Stable Branch.

I got it to work by creating an Arch Linux Distrobox container, installing paru, using paru to install Steam Metadata Editor, then exporting the app from the container to the host.

It was a pain because I didn't know how to do any of that and especially because paru is not updated for Pacman v7.0.0 so I had to manually build paru-git with git and makepkg. At least I learned a method to install apps that aren't flatpaks that will survive SteamOS updates.

distrobox create -i archlinux && distrobox enter archlinux
sudo pacman -S --needed base-devel git
git clone https://aur.archlinux.org/paru.git
cd paru
makepkg -si
cd ..
rm -rf paru
paru -Syu steam-metadata-editor-git
distrobox-export -a steam-metadata-editor
exit

paru will take a few minutes to build. The file created at ~/.local/share/applications/archlinux-steam-metadata-editor.desktop has the wrong path to the icon so it will show up without an icon in the application launcher. You can fix it by editing archlinux-steam-metadata-editor.desktop and removing just the /run/host part from the beggining of the Icon= section so that everything looks pretty.

See #53 (comment) for a better solution.

@Rhomagus
Copy link

Rhomagus commented Sep 19, 2024

paru-git will take a few minutes to build. When you run the distrobox-export command, the file created at ~/.local/share/applications/archlinux-steam-metadata-editor.desktop has the wrong path to the icon so it will show up without an icon in the application launcher. You can fix it by editing archlinux-steam-metadata-editor.desktop and removing just the /run/host part from the beggining of the Icon= section so that everything looks pretty.

For some reason at the last step it asks me for review and when I say yes my Konsole just hangs. This is similar to what it did when I was trying to natively install it via the CLI. Nothing shows up on my desktop.

@ACiDxCHRiST
Copy link
Author

ACiDxCHRiST commented Sep 19, 2024

For some reason at the last step it asks me for review and when I say yes my Konsole just hangs. This is similar to what it did when I was trying to natively install it via the CLI. Nothing shows up on my desktop.

It's not hung, you're probably in less. Hit q to quit and continue with the install.

Also, nothing is going to show up on your desktop, Steam Metadata Editor will be in the application launcher AKA the "Start Menu" but not on the desktop unless you put it there yourself.

@Rhomagus
Copy link

It's not hung, you're probably in less. Hit q to quit and continue with the install. Or next time, just hit Enter instead of y when it asks you to review.

That did the trick. Also not being in the Arch box and being in SteamOS solved the problem. Thanks!

@ACiDxCHRiST
Copy link
Author

ACiDxCHRiST commented Oct 11, 2024

@tralph3 I just found another project (https://github.com/fgsfdsfgs/perfect_dark/releases), that provides a .flatpak file as a release asset. Is there any reason why you couldn't provide an up-to-date .flatpak file that we could manually install?

I made one: #53 (comment)

@TCaptainPancake
Copy link

Since it seems this isn't happening soon how would I go about updating it myself this seems like a good learning opportunity.

@overwatcheddude
Copy link

Since it seems this isn't happening soon how would I go about updating it myself this seems like a good learning opportunity.

Thank you for volunteering. You could do the following:

I get that, but I can't just update the program. I need to come up with a name, logo, and make a request to allow filesystem access.

I just don't want to bother with that right now.

@ACiDxCHRiST
Copy link
Author

ACiDxCHRiST commented Oct 27, 2024

steammetadataeditor.tar.gz

I built a .flatpak file from the latest commit. I really don't know what I am doing, but it works. I built this for myself; but if anyone else wants to use it, I have attached it to this post. Extract the steammetadataeditor.flatpak from the archive and then use:

flatpak install --user steammetadataeditor.flatpak

@TCaptainPancake
Copy link

Thanks acid I'll try it out!

All I could really help with in terms of branding is name cause I suck at graphic design lol but with helping find a name what would be the best place to send suggestions like here or open a separate issue or open my own fork and submit a poll request sorry I'm just not very familiar with project structure on github.

@TCaptainPancake
Copy link

Update on trying it I got a window and info but it seemed nothing was intractable guessing I did something wrong but don't wanna play with it rn

@ACiDxCHRiST
Copy link
Author

ACiDxCHRiST commented Oct 28, 2024

Update on trying it I got a window and info but it seemed nothing was intractable guessing I did something wrong but don't wanna play with it rn

It might be a permissions issue. I use Flatseal. You may need to give it access to the Steam directory and/or All user files if you're on the Steam Deck like me.
Screenshot_20241028_064002

@TCaptainPancake
Copy link

TCaptainPancake commented Oct 28, 2024

alr ill check flatseal make sure it gave it perms in the morning its 6:49 am where im at just getting to bed

thank you so much for your help btw i appreciate it a lot

@tralph3
Copy link
Owner

tralph3 commented Oct 28, 2024

Hi guys. Yeah updating the flatpak means updating the commit hashes and not much else. It's pretty straight forward.

But since v2 is in the horizon, and I need to do a rebrand, I guess I'll combine the two.

Fell free to suggest or vote on new names in #56

@ACiDxCHRiST
Copy link
Author

Update on trying it I got a window and info but it seemed nothing was intractable guessing I did something wrong but don't wanna play with it rn

It might be a permissions issue. I use Flatseal. You may need to give it access to the Steam directory and/or All user files if you're on the Steam Deck like me. Screenshot_20241028_064002

I actually just tried removing the 2 Flatseal overrides that you can see in my screenshot for Steam Metadata Editor, and it still works for me. I am not sure what originally prompted me to add those overrides months ago when I originally set this up. So I am not sure why you are getting a window that is not interactive.

Hi guys. Yeah updating the flatpak means updating the commit hashes and not much else. It's pretty straight forward.

Yup, that's all I did. I did try to update the runtime to 23.08 because of the end-of-life warning you get when building it with 22.08. But that did not work. The resulting flatpak installed, but the app wouldn't launch (window never appeared). Despite the end-of-life warning when building with 22.08, it appears to work just fine.

@TCaptainPancake
Copy link

Alr ill try the flatseal changes in a few minutes!

Thanks for letting me know about the open issue ill try thinking of something!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants