LinuxQuestions.org
Review your favorite Linux distribution.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Software
User Name
Password
Linux - Software This forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum.

Notices


Reply
  Search this Thread
Old 09-25-2019, 10:24 AM   #1
underscoreus
LQ Newbie
 
Registered: Sep 2019
Distribution: Linux Mint 19.2
Posts: 16

Rep: Reputation: Disabled
Software for tagging files in Linux and why some can't be installed


Hello!
As a preface I'd like to state right out of the gate that I am fairly new to Linux, so please bear with me if there are obvious I ask questions about.

I am currently looking for a way to tag and subsequently search for my files that I can use on my VM that's running Linux mint 19.2 cinnamon edition. I've already tried to install a program called TSMU (https://github.com/oniony/TMSU) but there seems to be a problem with it (maybe because it has not been updated for so long?) where when I try to get the ppa I get an error stating "Cannot add PPA: ''This PPA does not support bionic''.
".

If this is a solvable problem that would be great, but as far as I've been able to read up on and understand this means that the ppa is no longer up to date and can only really be fixed by it being updated, is this correct?

If it is indeed out of date I am looking for tips on other programs that can do the same thing. I do have a few requirements though (sorry if this comes across as demanding):
- It has to support a wide varriety of file formats like (but not limited to): .jpeg, .jpg, .png, .gif, .mp3, .wav, .pdf, .txt, .mp4, .avi, .mov (essentially I'd like something that works on any file type but atleast most common image files, audio files, video files and text files).
- I'd like for it to be appliable via CLI and be searchable in the normal file browser (what I mean by the last part is that I'd like for it to not mean having to put all my files into a virtual container of sorts like a vault and risk the developer no longer supporting the program and have the files be lost. If the developer stops supporting the software ideally just the tags would stop work, not loose my whole library all together).
- Files should be able to be tagged freely and one should be able to tag a single file with multiple tags, preferably as many as one would like. And as such should be able to search for multiple tags when searching.
- A big plus would be if one can move files/folders around without them losing their tags.
- Another big plus would be if the system/database of tags could be backed up.

Alright, again, sorry if the long list of demands comes off as entitled or demanding, it was not my intention.

Thank you so much for reading, any tips are very much welcome, even if they don't meet my exhaustive list, I am open to trying almost anything!
 
Old 09-25-2019, 11:28 AM   #2
Sefyir
Member
 
Registered: Mar 2015
Distribution: Linux Mint
Posts: 634

Rep: Reputation: 316Reputation: 316Reputation: 316Reputation: 316
Quote:
that I can use on my VM that's running Linux mint 19.2 cinnamon edition
...
Cannot add PPA: ''This PPA does not support bionic''.
Linux Mint 19.* is based on Ubuntu 18.04 (Codename Bionic) LTS (Long Term Support)

The PPA only seems to support up to 17.04 and was last updated Jan 3

If you're determined for this software, you can try compiling it yourself

However, you seem inclined to use the commmand line and have more control over how it works,
Perhaps just use exiftool?

Code:
man exiftool
NAME
       exiftool - Read and write meta information in files



         -TAG or --TAG                    Extract or exclude specified tag
         -TAG[+-^]=[VALUE]                Write new value for tag
         -TAG[+-]<=DATFILE                Write tag value from contents of file
         -TAG[+-]<SRCTAG                  Copy tag value (see -tagsFromFile)

       -TAG[+-^]=[VALUE]
            Write a new value for the specified tag (eg. "-comment=wow"), or
            delete the tag if no VALUE is given (eg. "-comment=").  "+=" and
            "-=" are used to add or remove existing entries from a list, or to
            shift date/time values (see Image::ExifTool::Shift.pl and note 6
            below for more details).  "+=" may also be used to increment
            numerical values (or decrement if VALUE is negative), and "-=" may
            be used to conditionally delete or replace a tag (see "WRITING
            EXAMPLES" for examples).  "^=" is used to write an empty string
            instead of deleting the tag when no VALUE is given, but otherwise
            it is equivalent to "=".
It should support the file types you mention

Code:
         File Types
         ------------+-------------+-------------+-------------+------------
         3FR   r     | DVB   r/w   | JPEG  r/w   | ODT   r     | RIFF  r
         3G2   r/w   | DYLIB r     | JSON  r     | OFR   r     | RSRC  r
         3GP   r/w   | EIP   r     | K25   r     | OGG   r     | RTF   r
         A     r     | EPS   r/w   | KDC   r     | OGV   r     | RW2   r/w
         AA    r     | EPUB  r     | KEY   r     | OPUS  r     | RWL   r/w
         AAX   r/w   | ERF   r/w   | LA    r     | ORF   r/w   | RWZ   r
         ACR   r     | EXE   r     | LFP   r     | OTF   r     | RM    r
         AFM   r     | EXIF  r/w/c | LNK   r     | PAC   r     | SEQ   r
         AI    r/w   | EXR   r     | M2TS  r     | PAGES r     | SO    r
         AIFF  r     | EXV   r/w/c | M4A/V r/w   | PBM   r/w   | SR2   r/w
         APE   r     | F4A/V r/w   | MAX   r     | PCD   r     | SRF   r
         ARW   r/w   | FFF   r/w   | MEF   r/w   | PDB   r     | SRW   r/w
         ASF   r     | FLA   r     | MIE   r/w/c | PDF   r/w   | SVG   r
         AVI   r     | FLAC  r     | MIFF  r     | PEF   r/w   | SWF   r
         AZW   r     | FLIF  r/w   | MKA   r     | PFA   r     | THM   r/w
         BMP   r     | FLV   r     | MKS   r     | PFB   r     | TIFF  r/w
         BPG   r     | FPF   r     | MKV   r     | PFM   r     | TORRENT r
         BTF   r     | FPX   r     | MNG   r/w   | PGF   r     | TTC   r
         CHM   r     | GIF   r/w   | MOBI  r     | PGM   r/w   | TTF   r
         COS   r     | GPR   r/w   | MODD  r     | PLIST r     | VCF   r
         CR2   r/w   | GZ    r     | MOI   r     | PICT  r     | VRD   r/w/c
         CRW   r/w   | HDP   r/w   | MOS   r/w   | PMP   r     | VSD   r
         CS1   r/w   | HDR   r     | MOV   r/w   | PNG   r/w   | WAV   r
         DCM   r     | HEIC  r     | MP3   r     | PPM   r/w   | WDP   r/w
         DCP   r/w   | HEIF  r     | MP4   r/w   | PPT   r     | WEBP  r
         DCR   r     | HTML  r     | MPC   r     | PPTX  r     | WEBM  r
         DFONT r     | ICC   r/w/c | MPG   r     | PS    r/w   | WMA   r
         DIVX  r     | ICS   r     | MPO   r/w   | PSB   r/w   | WMV   r
         DJVU  r     | IDML  r     | MQV   r/w   | PSD   r/w   | WV    r
         DLL   r     | IIQ   r/w   | MRW   r/w   | PSP   r     | X3F   r/w
         DNG   r/w   | IND   r/w   | MXF   r     | QTIF  r/w   | XCF   r
         DOC   r     | INX   r     | NEF   r/w   | R3D   r     | XLS   r
         DOCX  r     | ISO   r     | NRW   r/w   | RA    r     | XLSX  r
         DPX   r     | ITC   r     | NUMBERS r   | RAF   r/w   | XMP   r/w/c
         DR4   r/w/c | J2C   r     | O     r     | RAM   r     | ZIP   r
         DSS   r     | JNG   r/w   | ODP   r     | RAR   r     |
         DV    r     | JP2   r/w   | ODS   r     | RAW   r/w   |
 
Old 09-25-2019, 02:45 PM   #3
michaelk
Moderator
 
Registered: Aug 2002
Posts: 25,702

Rep: Reputation: 5896Reputation: 5896Reputation: 5896Reputation: 5896Reputation: 5896Reputation: 5896Reputation: 5896Reputation: 5896Reputation: 5896Reputation: 5896Reputation: 5896
From a quick glance at the documentation TMSU has nothing to do with a file's metadata It is basically a database to organize your files based on name,extension and a fuse filesytem as a way to browse your catalogued files.

As suggested compiling from source code would solve your problem.

Just as an introduction when you install an application from Ubuntu's software manager program or from the command line it is stored in what is known as a repository. The downloaded file is called a package and contains the compiled program, configuration files, man pages and whatever else is need to run the the program. Packages from the official repositories are compiled for your version and have been tested. The programs in the official repositories may not be the latest and greatest. For those that want the latest and greatest version or programs that are not in the official repositories there are the Personal Package Archive (PPA). As a newcomer I might suggest not using PPA until you have become more familar with linux and how do diagnose problems because you could possibly break your system.

I am not aware of a similar type program but that does not mean one does not exist.
 
Old 09-25-2019, 03:28 PM   #4
BW-userx
LQ Guru
 
Registered: Sep 2013
Location: Somewhere in my head.
Distribution: Slackware (15 current), Slack15, Ubuntu studio, MX Linux, FreeBSD 13.1, WIn10
Posts: 10,342

Rep: Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242
Quote:
Originally Posted by underscoreus View Post
Hello!
As a preface I'd like to state right out of the gate that I am fairly new to Linux, so please bear with me if there are obvious I ask questions about.

I am currently looking for a way to tag and subsequently search for my files that I can use on my VM that's running Linux mint 19.2 cinnamon edition. ....[removed for length ]
Thank you so much for reading, any tips are very much welcome, even if they don't meet my exhaustive list, I am open to trying almost anything!
to look for files you can use on a Linux Distro that just happens to be LinuxMint installed on a Box... basically any file will work on Linux/GNU that is not Windows, mac OS ,*BSD, etc executables, ie images, movies, sound files, text (flat) files, other types of files, ie shell files.

Mostly all files as that will work on cross platforms OS'es. no real need to 'tag' them to find them, just use find and the extension to search and locate them.
 
Old 09-25-2019, 03:39 PM   #5
Firerat
Senior Member
 
Registered: Oct 2008
Distribution: Debian sid
Posts: 2,683

Rep: Reputation: 783Reputation: 783Reputation: 783Reputation: 783Reputation: 783Reputation: 783Reputation: 783
after very quickly looking at TMSU

it appears to be organising media

Something like kodi might work for you
( Edit: not sure how well it will do in a VM
it makes heavy use of OpenGL so won't be optimal )


no CLI ( as far as I know )
It will "scrape" metadata from the internet, and present it to you in a Multimedia rich GUI
or you can craft your own xml files

Code:
sudo apt install kodi
it can also act as a dlna server
Code:
Description: Open Source Home Theatre (executable binaries)
 Kodi, formerly known as XBMC is an award winning free and
 open source software media-player and entertainment hub for all your digital
 media. Kodi is available for Linux, Mac OS X (Leopard, Tiger and Apple TV)
 and Microsoft Windows, as well as the original Xbox game console. Created in
 2003 by a group of like minded programmers, Kodi is a non-profit project run
 and developed by volunteers located around the world. More than 50 software
 developers have contributed to Kodi, and 100-plus translators have worked to
 expand its reach, making it available in more than 30 languages.
 .
 While Kodi functions very well as a standard media player application for
 your computer, it has been designed to be the perfect companion for your
 HTPC. Supporting an almost endless range of remote controls, and combined
 with its beautiful interface and powerful skinning engine, Kodi feels very
 natural to use from the couch and is the ideal solution for your home
 theater. Once installed, your computer will become a fully functional
 multimedia jukebox.

Last edited by Firerat; 09-25-2019 at 03:43 PM.
 
Old 09-26-2019, 02:22 AM   #6
ondoho
LQ Addict
 
Registered: Dec 2013
Posts: 19,872
Blog Entries: 12

Rep: Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053
...and back to TMSU:
I had a quick look at the contents of the latest release package; it would appear that you can simply run it from the command line.
Go here and download the latest release, unpack it and read the README, it should contain all the info. No compilation required afaics.
 
Old 09-26-2019, 03:38 AM   #7
syg00
LQ Veteran
 
Registered: Aug 2003
Location: Australia
Distribution: Lots ...
Posts: 21,128

Rep: Reputation: 4120Reputation: 4120Reputation: 4120Reputation: 4120Reputation: 4120Reputation: 4120Reputation: 4120Reputation: 4120Reputation: 4120Reputation: 4120Reputation: 4120
Looks like a great idea - especially for filetypes that don't natively accommodate tags, like txt. Better than millions of sidecar files floating around.
I would doubt any of the various exif tools would build the segments required in such non-supported formats - all hell would break loose when the files were updated by "normal" tools.
 
Old 09-27-2019, 02:31 PM   #8
underscoreus
LQ Newbie
 
Registered: Sep 2019
Distribution: Linux Mint 19.2
Posts: 16

Original Poster
Rep: Reputation: Disabled
Wow! Sorry for the lateness in getting back to this thread, this was alot more response than I thought I'd ever get. Thank you all so much for sharing!

Quote:
Originally Posted by Sefyir View Post
...
Perhaps just use exiftool?
...
Thanks for the tip on exiftool! I'll be sure to look into it.

Quote:
Originally Posted by michaelk View Post
...
As suggested compiling from source code would solve your problem.

... because you could possibly break your system.
Damn, did not know it could actually go as far as that. I'll try to be carefull, thanks. So far this VM is almost entierly empty so I am not that worried but good to know for future referance. Thank you!

Quote:
Originally Posted by BW-userx View Post
Mostly all files as that will work on cross platforms OS'es. no real need to 'tag' them to find them, just use find and the extension to search and locate them.
Thanks for the reply. I'd like to be able to tag the files based on content. I.e "a day at the beach", "Family photo" etc etc, and just search for these tags instead. I just know that whatever folder structure I make will eventually fail me either in me not bothering to keep it up or in being un-intuative when I need to look for photos. My hope is that I'll have better luck tagging them.

Quote:
Originally Posted by Firerat View Post
...
Something like kodi might work for you
...
Thanks for the tip! I am more looking at storing personal files though. Like family photos, inspirational pictures etc. And as far as I can see Kodi seems more like its for actual movies and tv series. But if it can automatically fetch tags for my family photos so I don't have to tag them myself, I'll gladly get i it right now!

Quote:
Originally Posted by ondoho View Post
...and back to TMSU:
I had a quick look at the contents of the latest release package; it would appear that you can simply run it from the command line.
Go here and download the latest release, unpack it and read the README, it should contain all the info. No compilation required afaics.
Thank you so much for knowledge your knowledge upon this beginner!

Quote:
Originally Posted by syg00 View Post
Looks like a great idea - especially for filetypes that don't natively accommodate tags, like txt. Better than millions of sidecar files floating around.
I would doubt any of the various exif tools would build the segments required in such non-supported formats - all hell would break loose when the files were updated by "normal" tools.
Thats good to know. Thank you for sharing that!
 
Old 09-27-2019, 03:12 PM   #9
underscoreus
LQ Newbie
 
Registered: Sep 2019
Distribution: Linux Mint 19.2
Posts: 16

Original Poster
Rep: Reputation: Disabled
Quote:
Originally Posted by ondoho View Post
...and back to TMSU:
I had a quick look at the contents of the latest release package; it would appear that you can simply run it from the command line.
Go here and download the latest release, unpack it and read the README, it should contain all the info. No compilation required afaics.
Thanks for the reply! So here is one of those hallmark newbie questions: When I try to install it this way, I should follow the installation instructions in the README under "Binary" right?
So according to the README I just need to get FUSE and sqlite3 installed and then just move/copy the folder to the bin folder and that's it?
 
Old 09-28-2019, 02:48 PM   #10
ondoho
LQ Addict
 
Registered: Dec 2013
Posts: 19,872
Blog Entries: 12

Rep: Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053
Yes, that's how I see it.
Maybe you don't even need to copy it to any system directories, might run straight from the dir it was downloaded to.
In that case you need to prepend ./ to the command.
 
Old 09-28-2019, 10:44 PM   #11
underscoreus
LQ Newbie
 
Registered: Sep 2019
Distribution: Linux Mint 19.2
Posts: 16

Original Poster
Rep: Reputation: Disabled
Quote:
Originally Posted by ondoho View Post
Yes, that's how I see it.
Maybe you don't even need to copy it to any system directories, might run straight from the dir it was downloaded to.
In that case you need to prepend ./ to the command.
Thanks for the reply. Hopefully this is not veering too far off the subject of this thread, but I have gotten to the point where I've got most of the (dependencies?) installed, fuse (libfuse) and sqlite3. The last portion I apparently need is glibc 2.28, however I can't seem to get that one working after running an install for it. Any advice? I've tried to simply follow the instructions in the readme for glibc to install it but I get this as a response when I try to fire up tmsu
Quote:
tmsu: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.28' not found (required by tmsu)

Last edited by underscoreus; 09-28-2019 at 10:47 PM.
 
Old 09-30-2019, 02:19 PM   #12
ondoho
LQ Addict
 
Registered: Dec 2013
Posts: 19,872
Blog Entries: 12

Rep: Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053
Quote:
Originally Posted by underscoreus View Post
The last portion I apparently need is glibc 2.28, however I can't seem to get that one working after running an install for it. Any advice? I've tried to simply follow the instructions in the readme for glibc to install it but I get this as a response when I try to fire up tmsu
You won't be able to change the version that comes with your system without breaking it.
Which means you will need to compile from source after all. Sorry.
 
Old 09-30-2019, 08:57 PM   #13
underscoreus
LQ Newbie
 
Registered: Sep 2019
Distribution: Linux Mint 19.2
Posts: 16

Original Poster
Rep: Reputation: Disabled
Quote:
Originally Posted by ondoho View Post
You won't be able to change the version that comes with your system without breaking it.
Which means you will need to compile from source after all. Sorry.
Gotcha, nothing to be sorry for! If anything I feel a little bad using this forum thread so heavily as a support pillar for learning how to do this stuff. Especially since it's been advice that a beginner should not do this as his/her first project in Linux.

Thanks for your continued help!
 
Old 10-01-2019, 10:10 PM   #14
underscoreus
LQ Newbie
 
Registered: Sep 2019
Distribution: Linux Mint 19.2
Posts: 16

Original Poster
Rep: Reputation: Disabled
Hello again, here to post a "final" update to hopefully neatly round of the thread and in case anyone else ever find themselves in this situation in the future!

First of all I'd just like to thank everyone that posted a reply, thank you for your insights!
And a special thanks to ondoho for continuing to answer my questions!

So if it wasn't obvious, I managed to make it work! Don't know if this is some super trivial feet for linux users but I at least feel pretty good that I managed to make this work, hence this post

So, right of the bat, I found that compiling from the source code was actually way easier and cleaner than trying to mess around with the binaries, at least in this instance. When compiling from the source there was alot more of simple one line get commands compared to with the binaries where you had to find the dependencies and then find the dependencies dependencies etc etc. Many more steps which in turn gives many more possibilities for something to go wrong.

So compiling from the source, just download go, set the gopath variable (note here, the guide instructs to use $HOME/go, however I ran into some issues later down the line when actually installing tmsu where it could not find some files, I tried to set the environment variable to an absolute path of /home/username/go instead of the shortcut $HOME and it seemed to fix the issue), clone the repo (another note here, the documentation says the stable branch is v0.6 however, just as a heads up, that is a 4 year old release as of me posting this, so I went with the latest release which was posted almost 1 year ago and so far no problems), install the dependencies with go install one line commands (yet another note, I found that the go get command did not work for the sqlite3 package and had to install it manually. I had to reinstall and reconfigure build-essentials and gcc for sqlite3 to install though as I was meeting some issues with the installer. After that I ran the go install command for sqlite3 just to make sure it was added to the gopath variable), then just run the make and sudo make install commands from inside the downloaded tmsu directory and you should be good to go!

Its been a journey, surely the first among many, but I've learned alot and am looking forward to learning more! I'll probably be back with other threads and more questions, thanks for the extremely warm welcome guys and gals!
 
Old 10-01-2019, 11:05 PM   #15
syg00
LQ Veteran
 
Registered: Aug 2003
Location: Australia
Distribution: Lots ...
Posts: 21,128

Rep: Reputation: 4120Reputation: 4120Reputation: 4120Reputation: 4120Reputation: 4120Reputation: 4120Reputation: 4120Reputation: 4120Reputation: 4120Reputation: 4120Reputation: 4120
All downhill from here ...
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
[SOLVED] Is there a version of the tagging software 'KID3' for Centos 7? comcastuser Linux - Software 6 04-30-2016 08:34 AM
LQ Tagging- needs some explanation text titanium_geek LQ Suggestions & Feedback 1 12-16-2009 10:35 AM
How to use samba implementing some files can visible and some files can not visible willie118 Linux - Server 7 09-18-2007 12:27 AM
Sound Juicer is tagging song files badly s|k Linux - Software 1 03-18-2006 04:24 PM
Subversion - version tagging in files? thinksincode Linux - Software 0 11-27-2004 12:47 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Software

All times are GMT -5. The time now is 09:52 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration