dte.py 940 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #!/bin/python3
  2. """
  3. Arguments:
  4. name
  5. exec location
  6. """
  7. import sys
  8. try:
  9. name: str = sys.argv[1]
  10. path: str = sys.argv[2]
  11. except IndexError:
  12. print("Usage: dte NAME_OF_ENTRY EXEC_PATH")
  13. exit(1)
  14. try:
  15. with open(f"/home/aaro/.local/share/applications/{name}.desktop", "r") as f:
  16. print("Desktop entry already exists");
  17. exit(0)
  18. except FileNotFoundError:
  19. pass
  20. msg_str: str = f"""
  21. This will create a destop entry with the following values:
  22. Name={name}
  23. Exec={path}
  24. """
  25. print(msg_str)
  26. while True:
  27. sure: str = input("Are you sure? (y/n): ")
  28. sure = sure.lower()
  29. if sure == "y" or sure == "yes":
  30. break
  31. elif sure == "n" or sure == "no":
  32. exit(0)
  33. with open(f"/home/aaro/.local/share/applications/{name}.desktop", "x") as f:
  34. f.writelines([
  35. "[Desktop Entry]\n",
  36. "Type=Application\n",
  37. f"Name={name}\n",
  38. f"Exec={path}\n"
  39. ])