A bot written in Python3 that mirrors YouTube channels to PeerTube channels as videos are released in a YouTube channel.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

69 lines
5.5KB

  1. # This is a TOML document
  2. # This document is a configuration file for yt2pt (Youtube to Peertube) mirror bot
  3. # copy this file into the same directory and rename it "config.toml" and then modify config.toml as necessary.
  4. # These are global configuration options, they apply to the bot as a whole and therefore all channels.
  5. [global]
  6. video_download_dir = "/path/to/download/directory/" # must be absolute path and user writable directory
  7. use_pt_http_import = "true" # Peertube supports sending HTTP links to videos instead of downloading and uploading them. Use this option if you do not want to archive videos and have limited bandwidth. Setting this to true negates delete_videos as videos will not be downloaded, and disables transcoding.
  8. delete_videos = "true" # Delete videos and metadata after upload to peertube, lowercase string
  9. poll_frequency = 180 # poll frequency in minutes
  10. # For every channel, a new [channel.x] entry must be added in [channel] in sequential numerical order starting at 0
  11. # If you do not wish to append tags or descriptions then leave the quotes empty for those fields.
  12. # All other fields must have values.
  13. [channel]
  14. [channel.0]
  15. name = "channel_name" # name of the channel, does not have to match YT or PT channel names
  16. channel_id = "channel ID" # YT channel ID at the end of the url youtube.com/channel/<channel_id>
  17. peertube_instance = "https://peertube.url" # URL of peertube instance
  18. peertube_channel = "peertube_channel" # peertube channel handle to upload video to
  19. peertube_username = "user" # peertube username
  20. peertube_password = "password" # peertube password WARNING this file needs to be secure
  21. pt_channel_category = "entertainment" # category of channel contents. see pt_languages_categories.txt for categories
  22. pt_tags = "" # tags to be added to uploaded video in Peertube, comma separated, max 5, between 2 and 30 char each
  23. default_lang = "english" # default language if YT channel does not have a language, see pt_languages.txt for available languages
  24. nsfw = "false" # lowercase string, is this channel NSFW?
  25. comments_enabled = "true" # lowercase string, do you want comments enabled in this channel?
  26. pt_privacy = 1 # 1 = public, 2 = unlisted, 3 = private, 4 = internal, privacy for entire channel, default public
  27. description_prefix = "" # This description will be added to the beginning of the YT description
  28. description_suffix = "" # This description will be appended to the end of the YT description
  29. preferred_extension = "mp4" # preferred extension of download and upload
  30. max_resolution = "360" # maximum resolution of videos to download (incomplete)
  31. [channel.1]
  32. name = "channel_name" # name of the channel, does not have to match YT or PT channel names
  33. channel_id = "channel ID" # YT channel ID at the end of the url youtube.com/channel/<channel_id>
  34. peertube_instance = "https://peertube.url" # URL of peertube instance
  35. peertube_channel = "peertube_channel" # peertube channel handle to upload video to
  36. peertube_username = "user" # peertube username
  37. peertube_password = "password" # peertube password WARNING this file needs to be secure
  38. pt_channel_category = "entertainment" # category of channel contents. see pt_languages_categories.txt for categories
  39. pt_tags = "" # tags to be added to uploaded video in Peertube, comma separated, max 5, between 2 and 30 char each
  40. default_lang = "english" # default language if YT channel does not have a language, see pt_languages.txt for available languages
  41. nsfw = "false" # lowercase string, is this channel NSFW?
  42. comments_enabled = "true" # lowercase string, do you want comments enabled in this channel?
  43. pt_privacy = 1 # 1 = public, 2 = unlisted, 3 = private, privacy for entire channel, default public
  44. description_prefix = "" # This description will be added to the beginning of the YT description
  45. description_suffix = "" # This description will be appended to the end of the YT description
  46. preferred_extension = "mp4" # preferred extension of download and upload
  47. max_resolution = "360" # maximum resolution of videos to download (incomplete)
  48. [channel.2]
  49. name = "channel_name" # name of the channel, does not have to match YT or PT channel names
  50. channel_id = "channel ID" # YT channel ID at the end of the url youtube.com/channel/<channel_id>
  51. peertube_instance = "https://peertube.url" # URL of peertube instance
  52. peertube_channel = "peertube_channel" # peertube channel handle to upload video to
  53. peertube_username = "user" # peertube username
  54. peertube_password = "password" # peertube password WARNING this file needs to be secure
  55. pt_channel_category = "entertainment" # category of channel contents. see pt_languages_categories.txt for categories
  56. pt_tags = "" # tags to be added to uploaded video in Peertube, comma separated, max 5, between 2 and 30 char each
  57. default_lang = "english" # default language if YT channel does not have a language, see pt_languages.txt for available languages
  58. nsfw = "false" # lowercase string, is this channel NSFW?
  59. comments_enabled = "true" # lowercase string, do you want comments enabled in this channel?
  60. pt_privacy = 1 # 1 = public, 2 = unlisted, 3 = private, privacy for entire channel, default public
  61. description_prefix = "" # This description will be added to the beginning of the YT description
  62. description_suffix = "" # This description will be appended to the end of the YT description
  63. preferred_extension = "mp4" # preferred extension of download and upload
  64. max_resolution = "360" # maximum resolution of videos to download (incomplete)