I made the icy-nord and icy-nord-darker themes.

change suggestions

issues

update notifications

@promitheas:matrix.org

  • 4 Posts
  • 16 Comments
Joined 2 years ago
cake
Cake day: June 12th, 2023

help-circle
  • The other comments do a good job explaining why you would go with X or Y distro based on your requirements. What I want to do is give you a general recommendation/piece of advice based on a feeling I get from reading your post that, that you are not excluding the possibility of tinkering with your system at some point in the future to get it less bloated and more streamlined to your use case (please absolutely correct me if I’m wrong about my interpretation).

    As such, I think if your current computer has the ability to reasonably run Mint you should go with that. The reason is that it simply works most of the time without much hassle. As someone new to Linux, that’s a big part of the transition. A lot of stuff is new, so there’s no need to force extra complexity on top. You have the ability to dabble in said complexity even with Mint, but its not required, and while I am dying to recommend Arch to you having read that your PC is a bit on the less powerful side (the meme is real guys), I don’t think its a productive use of your time nor a healthy level of stress to deal with at this point of your “Linux progression”. That’s why I recommend Mint; make the transition, have the ability to slowly and eventually play with your system to an increasing degree as you get more comfortable with everything, but don’t handicap yourself from the get-go. Eventually, if you do decide to go with a distro which gives you more control in exchange for higher experience/knowledge/tinkering then you should have a solid foundation of skills to build on.

    tl;dr: I recommend Mint so you get used to Linux, looking up solutions online, using the tools (commands) available to you to diagnose problems you may encounter, and if you decide its good enough for your use case - stick with it. If you want more control, think of it as a learning experience which will allow you to at some point delve into the more hands-on, complex distributions.







  • Oh, Im sorry. If I’m honest I completely forgot. Here it is:

    You will need ffmpeg installed, and I did write it for Linux, so I’m not sure if there are differences for windows. Worst case you need to slightly modify it to work on windows.

    #!/usr/bin/env python3
    
    import requests
    import os
    import subprocess
    from urllib.parse import urljoin
    import sys
    
    def download_video_chunks(base_url, output_file):
        """
        Downloads video chunks from the given base URL and merges them into a single file.
    
        :param base_url: The URL to the playlist or base directory containing the video chunks.
        :param output_file: The name of the output video file (e.g., "output.mp4").
        """
        try:
            # Get the playlist file (e.g., .m3u8 or .ts index file)
            print(f"Fetching playlist or video chunk URLs from: {base_url}", flush=True)
            response = requests.get(base_url, timeout=10)
            response.raise_for_status()
            
            # Parse the playlist to get the chunk URLs
            lines = response.text.splitlines()
            chunk_urls = [urljoin(base_url, line) for line in lines if line and not line.startswith("#")]
    
            if not chunk_urls:
                print("No video chunks found in the provided URL.", flush=True)
                return
    
            # Create a directory for storing chunks
            os.makedirs("video_chunks", exist_ok=True)
    
            # Download each chunk
            chunk_files = []
            for idx, chunk_url in enumerate(chunk_urls):
                chunk_file = os.path.join("video_chunks", f"chunk_{idx:04d}.ts")
                print(f"Downloading {chunk_url}...", flush=True)
    
                with requests.get(chunk_url, stream=True) as chunk_response:
                    chunk_response.raise_for_status()
                    with open(chunk_file, "wb") as f:
                        for chunk in chunk_response.iter_content(chunk_size=1024):
                            f.write(chunk)
    
                chunk_files.append(chunk_file)
    
            # Merge the chunks into a single file using ffmpeg
            print("Merging chunks...", flush=True)
            with open("file_list.txt", "w") as f:
                for chunk_file in chunk_files:
                    f.write(f"file '{chunk_file}'\n")
    
            subprocess.run(["ffmpeg", "-f", "concat", "-safe", "0", "-i", "file_list.txt", "-c", "copy", output_file], check=True)
    
            print(f"Video saved as {output_file}", flush=True)
    
        except requests.exceptions.RequestException as e:
            print(f"An error occurred while downloading: {e}", flush=True)
        except subprocess.CalledProcessError as e:
            print(f"An error occurred while merging: {e}", flush=True)
        finally:
            # Clean up temporary files
            if os.path.exists("file_list.txt"):
                os.remove("file_list.txt")
            for chunk_file in chunk_files:
                os.remove(chunk_file)
            # if os.path.exists("video_chunks"):
                # os.rmdir("video_chunks")
    
    if __name__ == "__main__":
        base_url = input("Enter the URL of the video playlist or base directory: ")
        output_file = input("Enter the output video file name (e.g., output.mp4): ")
        print(f"Starting download process for playlist: {base_url}", flush=True)
        download_video_chunks(base_url, output_file)
    

    If you guys can recommend a fair and open pastebin alternative for me I will upload it there as well and edit this with the link