{"id":13656806,"url":"https://github.com/Firemoon777/tgfs","last_synced_at":"2025-04-24T00:31:59.998Z","repository":{"id":52214140,"uuid":"72355160","full_name":"Firemoon777/tgfs","owner":"Firemoon777","description":"telegram attachments in FUSE filesystem","archived":false,"fork":false,"pushed_at":"2018-01-22T06:38:04.000Z","size":212,"stargazers_count":186,"open_issues_count":5,"forks_count":14,"subscribers_count":11,"default_branch":"master","last_synced_at":"2024-11-10T10:39:03.284Z","etag":null,"topics":["filesystem","fuse","fuse-filesystem","telegram"],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Firemoon777.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-10-30T14:44:17.000Z","updated_at":"2024-11-03T03:41:54.000Z","dependencies_parsed_at":"2022-09-11T02:01:38.615Z","dependency_job_id":null,"html_url":"https://github.com/Firemoon777/tgfs","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Firemoon777%2Ftgfs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Firemoon777%2Ftgfs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Firemoon777%2Ftgfs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Firemoon777%2Ftgfs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Firemoon777","download_url":"https://codeload.github.com/Firemoon777/tgfs/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250539519,"owners_count":21447328,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["filesystem","fuse","fuse-filesystem","telegram"],"created_at":"2024-08-02T05:00:32.522Z","updated_at":"2025-04-24T00:31:58.070Z","avatar_url":"https://github.com/Firemoon777.png","language":"C","funding_links":[],"categories":["C (61)"],"sub_categories":[],"readme":"## tgfs [![Build Status](https://travis-ci.org/Firemoon777/tgfs.svg?branch=master)](https://travis-ci.org/Firemoon777/tgfs)\n\nUser space filesystem for [Telegram](http://telegram.org) attachments\n\n### API, Protocol documentation\n\nDocumentation for Telegram API is available here: http://core.telegram.org/api\n\nDocumentation for MTproto protocol is available here: http://core.telegram.org/mtproto\n\n### Installation from source\n\n#### Install libs\n\nDebian:\n\n```\nsudo apt-get install fuse libfuse-dev libjansson-dev libreadline-dev libssl-dev libevent-dev\n```\n\t \nArch Linux:\n\n```\nsudo pacman -S fuse2 jansson readline libevent\n```\n\nFedora:\n```\nsudo dnf install fuse-devel libjansson-devel readline-devel readline-devel openssl-devel libevent-devel\n```\n\n#### Clone GitHub Repository\n\n```\ngit clone --recursive https://github.com/Firemoon777/tgfs.git \u0026\u0026 cd tgfs\n```\n\n#### Build\n\n```\n./configure \u0026\u0026 make\n```\n\t \n#### Then, install\n\n```\nsudo make install\n```\n\n### Installation from AUR (Archlinux)\n```\nyaourt -S tgfs\n```\n\t \n### Startup\n\nYou must run ```telegram-tgfs``` before the first launch of tgfs. ```telegram-tgfs``` is ```telegram-cli``` patched to show list of attachments.\nAfter you have logged in you can use tgfs.\n\n### Usage\n\nCreate empty dir\n```\nmkdir mnt\n``` \nMount tgfs\n```\ntgfs mnt\n```\n\t \n### `ls -l` interpretation\n\nFilesystem root\n\n```\n$ ls -l mnt\n\ndrwx------ 0 firemoon firemoon 0 jan 12 21:12  Alex_Ivanov\ndrwx-----T 0 firemoon firemoon 0 jan 12 22:22  Firemoon777\ndr-x------ 0 firemoon firemoon 0 jan  1  1970  Wizard's_jokes\n\n```\n\n1. Permissions\n\t* `rwx` = user or chat (you can share anything)\n\t* `r-x` = public channel\n\t* `sticky bit` = self chat\n2. atime, ctime, mtime = last seen time\n\t* if time is equal to zero POSIX time, it means last active time is unknown\n3. display name\n\t \nDirectories with attachments\n```\n$ ls  Firemoon777/\nAudio  Documents  Photo  Video  Voice\n```\n\n\nDirectory with all voice messages\n```\n$ ls -lh  Firemoon777/Voice/\n \n-r-------- 1 firemoon firemoon 2,9K aug 31  2015 '2015-08-31 08:30:08 - 1527876055.ogg'\n-r-------- 1 firemoon firemoon 4,9K sep 28  2015 '2015-09-28 07:09:20 - 3870023017.ogg\n```\n\nSending document to user\n```\ncp ~/test.zip test/Documents/Firemoon777/\n```\n\nSending any media to user (file extention is important!)\n```\ncp ~/000.gif mnt/Firemoon777/ # Uploaded as gif\ncp ~/001.jpg mnt/Firemoon777/ # Uploaded as photo\ncp ~/002.zip mnt/Firemoon777/ # Uploaded as document\n```\n\nRemoving media (required ```--enable-unlink``` mount option)\n```\nrm mnt/tgfs/Photo/remove_test.jpg\n```\n\n## To do list:\n- [ ] Show profile picture\n- [ ] Setting profile photo with `cp`\n- [X] Removing attachments with `rm`\n- [ ] FIFO-like files for chatting\n\n## Known issues\n\n- No dialog list reloading (if you start a new chat, you should unmount and mount tgfs again)\n- No progress bars (big file will be copied in few seconds, but appears in tg within a minute)\n- No multithreading\n- Files with spaces in name doesn't upload\n\n## Join \n\nProject chat:\nhttps://t.me/joinchat/AAAAAApRIgKzmYvzXeh_0w\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FFiremoon777%2Ftgfs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FFiremoon777%2Ftgfs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FFiremoon777%2Ftgfs/lists"}