diff --git a/HAHAHA/citra-texture-pack.md b/HAHAHA/citra-texture-pack.md
new file mode 100644
index 00000000..217f6d4a
--- /dev/null
+++ b/HAHAHA/citra-texture-pack.md
@@ -0,0 +1,51 @@
+# Citra - Texture Pack Guide
+The `~/retrodeck/texture_packs/citra/` represents the `/load/textures` folder in Citra.
+
+**Note:**
+Some texture packs could made for a specific version or region of a game. Make sure you have the right game and textures for it.
+
+**Note:**
+`TITLEID` is different for every game.
+
+## Enable Custom Textures
+* Open up Citra inside `RetroDECK Configurator` by pressing `Open Emulator` - `Citra`.
+* Press `Emulation` -> `Configure` -> `Graphics` -> `Use Custom Textures` and set it to `On`.
+
+
+## How do I add texture packs?
+
+**Requirements:** Texture pack files
+
+**NOTE:** On the Steam Deck this could be easier to do in `Desktop Mode`.
+
+
+There are two ways of adding texture packs into Citra
+
+
+### From Citra
+1. Extract any texture files from compressed `.zip` or any other format to folders.
+2. Open up Citra inside `RetroDECK Configurator` by pressing `Open Emulator` - `Citra`.
+3. Right click on the game you want to add textures into.
+4. Click on `Open Custom Textures Location`.
+5. Paste the texture folders inside that directory, each folder is stored by the `TITLLEID` of the game.
+6. Quit Citra
+
+### From the texture folder directly
+
+1. Extract any texture pack files from compressed `.zip` or any other format into folders.
+2. Go into `~/retrodeck/texture_packs/citra/`. The folders are all named by `TITLEID`.
+3. Move textures into the right `~/retrodeck/texture_packs/citra/` folder.
+
+Example:
+
+* You have a `.zip` file for a game that contains the `/load/textures/0000001000` folders.
+* All you need to do is take the TITLEID folder: `0000001000` and put it into `~/retrodeck/texture_packs/citra/`
+* So the end result looks like: `~/retrodeck/texture_packs/citra/0000001000`
+
+
+----------
+
+Related wiki article can be found here:
+https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/citra/citra-texture-pack
+
+The RetroDECK Team
diff --git a/emu-configs/defaults/retrodeck/helper_files/how-to-install-Duckstation-textures.txt b/emu-configs/defaults/retrodeck/helper_files/how-to-install-Duckstation-textures.txt
deleted file mode 100644
index 4deee10f..00000000
--- a/emu-configs/defaults/retrodeck/helper_files/how-to-install-Duckstation-textures.txt
+++ /dev/null
@@ -1,28 +0,0 @@
-The ~/retrodeck/texture_packs/duckstaiton/ represents the /duckstation/textures/ folder in Duckstation.
-
-Note:
-Some texture packs could made for a specific version or region of a game. Make sure you have the right game and textures for it.
-
-Note:
-TITLEID is different for every game.
-
-Enable Custom Textures
-- Open up Duckstation inside RetroDECK Configurator by pressing Open Emulator - Duckstation.
-- Go to Settings -> Advanced -> Tweaks/Hacks
-- Enable VRAM Write Texture Replacement and set it to On.
-- Preload Texture Replacements and set it to On.
-
-How do I add texture packs?
-Requirements: Texture pack files
-
-NOTE: On the Steam Deck this could be easier to do in Desktop Mode.
-
-Texture folder directly
-- Extract any texture pack files from compressed .zip or any other format into folders.
-- Go into ~/retrodeck/texture_packs/duckstation/. The folders are all named by TITLEID.
-- Move textures into the right ~/retrodeck/texture_packs/duckstation/ folder.
-
-Related wiki article can be found here:
-https://github.com/XargonWan/RetroDECK/wiki/Duckstation%3A-Texture-Packs
-
-The RetroDECK Team
\ No newline at end of file
diff --git a/emu-configs/defaults/retrodeck/helper_files/how-to-install-Mesen-textures.txt b/emu-configs/defaults/retrodeck/helper_files/how-to-install-Mesen-textures.txt
deleted file mode 100644
index 33e9d9c8..00000000
--- a/emu-configs/defaults/retrodeck/helper_files/how-to-install-Mesen-textures.txt
+++ /dev/null
@@ -1,32 +0,0 @@
-RetroArch - NES - Mesen
-The texture_packs/RetroArch-Mesen/ represents /retroarch/system/HdPacks/ folder.
-
-Note:
-Some texture packs could made for a specific version or region of a game. Make sure you have the right game and textures for it.
-
-Enable Texture Packs in the Mesen core for certain games
-From the RetroArch Quick Menu
-
-- Go to Core Options -> Enable HD Packs set to On
-- Then save the current configuration for that game under Core Options -> Manage Core Options -> Save Game Options
-
-How do I add texture packs that can be used by the Mesen Core?
-NOTE: On the Steam Deck this could be easier to do in Desktop Mode.
-
-- All texture packs go into the texture_packs/RetroArch-Mesen/ folder.
-- The texture pack have to be extracted from .zip or other compressed format into a folder.
-- The name of the folder must be the same name as that of the rom file the texture pack is for.
-Example:
-
-You want apply a texture pack to a game called ScaryCastle USA.nes and you have downloaded the ScaryCastle TexturePACK HD.zip.
-
-- Extract the ScaryCastle TexturePACK HD.zip
-- Move the extracted ScaryCastle TexturePACK HD folder into texture_packs/RetroArch-Mesen/
-- Rename the ScaryCastle TexturePACK HD folder so it has the same name as the rom ScaryCastle USA without the .nes file extension.
-- Start up RetroDECK and select the ScaryCastle nes games.
-NOTE: On the Steam Deck go into GameMode first, then launch RetroDECK.
-
-Related wiki article can be found here:
-https://github.com/XargonWan/RetroDECK/wiki/RetroArch-Mesen%3A-Texture-Packs
-
-The RetroDECK Team
\ No newline at end of file
diff --git a/emu-configs/defaults/retrodeck/helper_files/how-to-install-Mupen64Plus-textures.txt b/emu-configs/defaults/retrodeck/helper_files/how-to-install-Mupen64Plus-textures.txt
deleted file mode 100644
index 6cfe0670..00000000
--- a/emu-configs/defaults/retrodeck/helper_files/how-to-install-Mupen64Plus-textures.txt
+++ /dev/null
@@ -1,30 +0,0 @@
-RetroArch - N64 - Mupen64Plus-Next
-
-The directory 'texture_packs/RetroArch-Mupen64Plus/' corresponds to the '/retroarch/system/Mupen64plus/' folder.
-
-Please note that some texture packs may be designed for a specific version or region of the game. Ensure you have the correct ROM and textures for it.
-
-To enable Texture Packs in the Mupen64Plus-Next core for certain games, follow these steps:
-
-1. Open the RetroArch Quick Menu.
-2. Navigate to Core Options -> GLideN64.
-3. Set 'Use High-Res Textures', 'Cache Textures', 'Use High-Res Full Alpha Channel', and 'Use Hi-Res Storage' to On.
-4. Save the current configuration for that game under Core Options -> Manage Core Options -> Save Game Options.
-
-Optionally, you can set 'Use High-Res Texture Cache Compression' to On to compress uncompressed HD Textures into .hts files.
-
-To add texture packs that can be used by the Mupen64Plus-Next Core:
-
-Note: On the Steam Deck, this could be easier to do in Desktop Mode.
-
-1. All texture packs go into the 'texture_packs//RetroArch-Mupen64Plus/hires_texture/' or 'texture_packs/RetroArch-Mupen64Plus/cache/' folder.
-2. The texture pack must be extracted from .zip or other compressed format into a folder.
-
-For compressed textures stored in .hts files, place them in the 'texture_packs/RetroArch-Mupen64Plus/cache/' folder.
-
-For uncompressed textures stored in loose folders or files, place them in the 'texture_packs/RetroArch-Mupen64Plus/hires_texture/' folder.
-
-Related wiki article can be found here:
-https://github.com/XargonWan/RetroDECK/wiki/RetroArch-Mupen64Plus-Next%3A-Texture-Packs
-
-The RetroDECK Team
\ No newline at end of file
diff --git a/emu-configs/defaults/retrodeck/helper_files/how-to-install-PCSX2-textures.txt b/emu-configs/defaults/retrodeck/helper_files/how-to-install-PCSX2-textures.txt
deleted file mode 100644
index 807513b7..00000000
--- a/emu-configs/defaults/retrodeck/helper_files/how-to-install-PCSX2-textures.txt
+++ /dev/null
@@ -1,26 +0,0 @@
-PCSX2 - Playstation 2
-
-The directory '~/retrodeck/texture_packs/PCSX2/' corresponds to the '/PCSX2/textures/' folder in PCSX2.
-
-Please note that some texture packs may be designed for a specific version or region of a game. Ensure you have the correct game and textures for it.
-
-Also, keep in mind that 'TITLEID' is different for every game.
-
-To enable Custom Textures, follow these steps:
-
-1. Open up PCSX2 inside RetroDECK Configurator by pressing 'Open Emulator' - 'PCSX2'.
-2. Press 'Settings' -> 'Graphics'.
-3. Set 'Load Textures' and 'Async Texture Loading' to On.
-
-To add texture packs, you'll need the texture pack files. On the Steam Deck, this could be easier to do in Desktop Mode.
-
-For direct texture folder:
-
-1. Extract any texture pack files from compressed .zip or any other format into folders.
-2. Go into '~/retrodeck/texture_packs/PCSX2/'. The folders are all named by 'TITLEID'.
-3. Move textures into the correct '~/retrodeck/texture_packs/PCSX2/' folder.
-
-Related wiki article can be found here:
-https://github.com/XargonWan/RetroDECK/wiki/PCSX2%3A-Texture-Packs
-
-The RetroDECK Team
\ No newline at end of file
diff --git a/emu-configs/defaults/retrodeck/helper_files/how-to-install-PPSSPP-textures.txt b/emu-configs/defaults/retrodeck/helper_files/how-to-install-PPSSPP-textures.txt
deleted file mode 100644
index 6fabb0e4..00000000
--- a/emu-configs/defaults/retrodeck/helper_files/how-to-install-PPSSPP-textures.txt
+++ /dev/null
@@ -1,26 +0,0 @@
-PPSSPP - PSP
-
-The directory '~/retrodeck/texture_packs/ppsspp/' corresponds to the '/PSP/TEXTURES/' folder in PPSSPP.
-
-Please note that some texture packs may be designed for a specific version or region of the game. Ensure you have the correct ROM and textures for it.
-
-Also, keep in mind that 'TITLEID' is different for every game.
-
-To enable Custom Textures, follow these steps:
-
-1. Open up PPSSPP inside RetroDECK Configurator by pressing 'Open Emulator' - 'PPSSPP'.
-2. Press 'Settings' -> 'Tools' -> 'Developer Tools'.
-3. Set 'Replace Textures' to On.
-
-To add texture packs, you'll need the texture pack files. On the Steam Deck, this could be easier to do in Desktop Mode.
-
-For adding textures:
-
-1. Extract any texture pack files from compressed .zip or any other format into folders.
-2. Go into '~/retrodeck/texture_packs/ppsspp/'. The folders are all named by 'TITLEID'.
-3. Paste the textures into the correct '~/retrodeck/texture_packs/ppsspp/' folder.
-
-Related wiki article can be found here:
-https://github.com/XargonWan/RetroDECK/wiki/PPSSPP%3A-Texture-Packs
-
-The RetroDECK Team
\ No newline at end of file
diff --git a/emu-configs/defaults/retrodeck/helper_files/how-to-install-citra-mods.txt b/emu-configs/defaults/retrodeck/helper_files/how-to-install-citra-mods.txt
deleted file mode 100644
index 8918ba2d..00000000
--- a/emu-configs/defaults/retrodeck/helper_files/how-to-install-citra-mods.txt
+++ /dev/null
@@ -1,19 +0,0 @@
-There are two ways of adding mods into Citra
-
-From Citra
-- Extract any mod from compressed .zip or any other format to folders.
-- Open up Citra inside RetroDECK Configurator by pressing Open Emulator - Citra.
-- Right click on the game you want to add mods into.
-- Click on Open Mods Location.
-- Paste the mod files inside that directory, each folder is stored by the TITLLEID of the game.
-- Quit Citra
-
-From the mod folder directly
-- Extract any mod files from compressed .zip or any other format into folders.
-- Go into ~/retrodeck/mods/citra/. The folders are all named by TITLEID.
-- Past the mods into the right ~/retrodeck/mods/yuzu/ folder.
-
-Related wiki article can be found here:
-https://github.com/XargonWan/RetroDECK/wiki/Citra%3A-Mods#citra---3ds
-
-The RetroDECK Team
\ No newline at end of file
diff --git a/emu-configs/defaults/retrodeck/helper_files/how-to-install-custom-emulators.txt b/emu-configs/defaults/retrodeck/helper_files/how-to-install-custom-emulators.txt
deleted file mode 100644
index 2c35cf4a..00000000
--- a/emu-configs/defaults/retrodeck/helper_files/how-to-install-custom-emulators.txt
+++ /dev/null
@@ -1,16 +0,0 @@
-There is the possibility to provide custom emutlators provided by the user.
-
-At the moment the only one available is Yuzu.
-Place your custom Yuzu files (AppImage and such) in the custom/yuzu folder without any other subfolders, like in the example:
-retrodeck/customs/yuzu/yuzu*.AppImage
-
-WARNINGS on custom emulators:
-- Custom emulators are self managed: means that RetroDECK Team is not supporting nor troubleshooting them.
-- Custom emulators could potentially break other included emulators configs: use them at your own risk.
-- Remember to make the binary executable, otherwise they won't be launched.
-- Hotkeys might not be working if not configured by the users.
-
-Related wiki article can be found here:
----
-
-The RetroDECK Team
diff --git a/emu-configs/defaults/retrodeck/helper_files/how-to-install-dolphin-mods.txt b/emu-configs/defaults/retrodeck/helper_files/how-to-install-dolphin-mods.txt
deleted file mode 100644
index 33a50c8c..00000000
--- a/emu-configs/defaults/retrodeck/helper_files/how-to-install-dolphin-mods.txt
+++ /dev/null
@@ -1,19 +0,0 @@
-Prerequisites
-- Open up Dolphin inside RetroDECK Configurator by pressing Open Emulator - Dolphin.
-- Press Options -> Graphic Settings
-- Enable Graphics Mods and set it to On.
-
-Installation
-- Extract any mod files from compressed .zip or any other format into folders.
-- Go into mods folders, they contain folders that are all named by GAME_ID. ~/retrodeck/mods/dolphin/.
-- Move the mods into the right folder: ~/retrodeck/mods/dolphin/
-
-Notes:
-- The ~/retrodeck/mods/dolphin/ that represents the /load/GraphicMods folder.
-- Some texture packs could made for a specific version or region of a game. Make sure you have the right game and textures for it.
-- GAME_ID is different for every game.
-
-Related wiki article can be found here:
-https://github.com/XargonWan/RetroDECK/wiki/Dolphin-and-Primehack%3A-Mods
-
-The RetroDECK Team
\ No newline at end of file
diff --git a/emu-configs/defaults/retrodeck/helper_files/how-to-install-primehack-mods.txt b/emu-configs/defaults/retrodeck/helper_files/how-to-install-primehack-mods.txt
deleted file mode 100644
index 1bcbbc05..00000000
--- a/emu-configs/defaults/retrodeck/helper_files/how-to-install-primehack-mods.txt
+++ /dev/null
@@ -1,19 +0,0 @@
-Prerequisites
-- Open up Primehack inside RetroDECK Configurator by pressing Open Emulator - Primehack.
-- Press Options -> Graphic Settings
-- Enable Graphics Mods and set it to On.
-
-Installation
-- Extract any mod files from compressed .zip or any other format into folders.
-- Go into mods folders, they contain folders that are all named by GAME_ID. ~/retrodeck/mods/primehack/.
-- Move the mods into the right folder: ~/retrodeck/mods/primehack/
-
-Notes:
-- The ~/retrodeck/mods/primehack/ that represents the /load/GraphicMods folder.
-- Some texture packs could made for a specific version or region of a game. Make sure you have the right game and textures for it.
-- GAME_ID is different for every game.
-
-Related wiki article can be found here:
-https://github.com/XargonWan/RetroDECK/wiki/Dolphin-and-Primehack%3A-Mods
-
-The RetroDECK Team
\ No newline at end of file
diff --git a/emu-configs/defaults/retrodeck/helper_files/how-to-install-psvita-games.txt b/emu-configs/defaults/retrodeck/helper_files/how-to-install-psvita-games.txt
deleted file mode 100644
index febbde78..00000000
--- a/emu-configs/defaults/retrodeck/helper_files/how-to-install-psvita-games.txt
+++ /dev/null
@@ -1,22 +0,0 @@
-# Guide: Vita3K
-
-Please note that the PSVita support is still experimental and it will be available starting from RetroDECK 0.8.0b, and for the way Vita3K is actually working the automation is limited.
-In order to install a PSVita games is needed to:
-
-- Install a game opening the Vita3K emulator via Configurator, the supported formats are `pkg`, `zip`, `vpk`.
-- Upon installation the `zRIF` may be asked, it's different for each game, you can find it via web search by searching for example `WipEout 2048 (EU) zRIF`.
-- Install DLCs and patches in the same way.
-- Create an empty file in `retrodeck/roms/psvita/gamename.psvita`, please mind the `.psvita` extension.
-For example: `roms/psvita/WipEout 2048 (EU).psvita.`
-- Edit the empty file adding the game `Title ID` (more below).
-- The game should appear in the game list after RetroDECK is re-opened or reloaded from the Utilities.
-
-## How to find a title ID
-It can be found inside the Vita3K GUI in the Title ID column, or found via web search.
-For example the game `WipEout 2048 (EU)` has an ID that is `PCSF00007`.
-So simply add `PCSF00007` to the `WipEout 2048 (EU).psvita` file and the setup for this game is complete.
-
-Related wiki article can be found here:
---
-
-The RetroDECK Team
\ No newline at end of file
diff --git a/emu-configs/defaults/retrodeck/helper_files/how-to-install-yuzu-mods.txt b/emu-configs/defaults/retrodeck/helper_files/how-to-install-yuzu-mods.txt
deleted file mode 100644
index 1f41c698..00000000
--- a/emu-configs/defaults/retrodeck/helper_files/how-to-install-yuzu-mods.txt
+++ /dev/null
@@ -1,25 +0,0 @@
-There are two ways of adding mods into Yuzu
-
-From Yuzu directly
-- Extract any mod files from compressed .zip or any other format to folders.
-- Open up Yuzu inside RetroDECK Configurator by pressing Open Emulator - Yuzu.
-- Right click on the game you want to add mods into.
-- Click on Open Mod Data Destination.
-- Paste the mod folders inside that directory.
-- Right clicking on the game and selecting Properties.
-- Enable the mods you want to enable by pressing the checkboxes in the Add-Ons tab and press OK.
-- Quit Yuzu
-
-From the mods/yuzu folder
-- Extract any mod files from compressed .zip or any other format into folders.
-- Go into ~/retrodeck/mods/yuzu/ and file the right folder for the game you want to add mods to. The folders are all named by TITLEID.
-- Move those folders into ~/retrodeck/mods/yuzu/
-- Open up Yuzu inside RetroDECK Configurator by pressing Open Emulator - Yuzu.
-- Right clicking on the game and selecting Properties.
-- Enable the mods you want to enable by pressing the checkboxes in the Add-Ons tab and press OK.
-- Quit Yuzu
-
-Related wiki article can be found here:
-https://github.com/XargonWan/RetroDECK/wiki/Yuzu%3A-Mods
-
-The RetroDECK Team
\ No newline at end of file
diff --git a/emu-configs/defaults/retrodeck/reference_lists/helper_files_list.cfg b/emu-configs/defaults/retrodeck/reference_lists/helper_files_list.cfg
index 1e1e68b7..3967ef5b 100644
--- a/emu-configs/defaults/retrodeck/reference_lists/helper_files_list.cfg
+++ b/emu-configs/defaults/retrodeck/reference_lists/helper_files_list.cfg
@@ -1,26 +1,25 @@
# The proper format of this file is
-# FILE NAME^DESTINATION
+# URL^DESTINATION
# The destination can be an internal variable name like $roms_folder if needed
-# The FILE name can have spaces in it, but the DESTINATION cannot, even in variable form
+# The URL must not contin a / in the end, otherwise the script breaks
+# If the destination directory does not exist it will be created, so be aware to insert the correct path
# mods
-https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/citra/citra-texture-pack/^$mods_folder/Citra
+https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/citra/citra-texture-pack^$mods_folder/Citra
+https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/dolphin-primehack/dolphin-primehack-mod^$mods_folder/Dolphin
+https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/dolphin-primehack/dolphin-primehack-mod^$mods_folder/Primehack
+https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/yuzu/yuzu-mod^$mods_folder/Yuzu
-# TODO: fi it's working populate this
-# how-to-install-dolphin-mods.txt^$mods_folder/Dolphin
-# how-to-install-primehack-mods.txt^$mods_folder/Primehack
-# how-to-install-yuzu-mods.txt^$mods_folder/Yuzu
-#
-# # textures
-# how-to-install-Mesen-textures.txt^$texture_packs_folder/RetroArch-Mesen
-# how-to-install-PPSSPP-textures.txt^$texture_packs_folder/PPSSPP
-# how-to-install-PCSX2-textures.txt^$texture_packs_folder/PCSX2
-# how-to-install-Mupen64Plus-textures.txt^$texture_packs_folder/RetroArch-Mupen64Plus/cache
-# how-to-install-Mupen64Plus-textures.txt^$texture_packs_folder/RetroArch-Mupen64Plus/hires_texture
-# how-to-install-Duckstation-textures.txt^$texture_packs_folder/Duckstation
-#
-# # customs
-# how-to-install-custom-emulators.txt^$rdhome/customs
-#
-# # emulators
-# how-to-install-psvita-games.txt^$roms_folder/psvita
+# textures
+https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/retroarch/retroarch-mesen-texture-pack^$texture_packs_folder/RetroArch-Mesen
+https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/ppsspp/ppsspp-texture-pack^$texture_packs_folder/PPSSPP
+https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/pcsx2/pcsx2-texture-pack^$texture_packs_folder/PCSX2
+https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/retroarch/retroarch-mupen64plus-texture-pack^$texture_packs_folder/RetroArch-Mupen64Plus/cache
+https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/retroarch/retroarch-mupen64plus-texture-pack^$texture_packs_folder/RetroArch-Mupen64Plus/hires_texture
+https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/duckstation/duckstation-texture-pack^$texture_packs_folder/Duckstation
+
+# customs
+# how-to-install-custom-emulators.txt^$rdhome/customs <- We don't have a wiki page for this
+
+# emulators
+https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/vita3k/vita3k-guide^$roms_folder/psvita
diff --git a/functions/functions.sh b/functions/functions.sh
index 09fb2fec..a30a33a2 100644
--- a/functions/functions.sh
+++ b/functions/functions.sh
@@ -490,43 +490,52 @@ update_splashscreens() {
deploy_helper_files() {
# This script will distribute helper documentation files throughout the filesystem according to the $helper_files_list
- # USAGE: deploy_helper_files
+ # USAGE: deploy_helper_files
- local file_path=$1
- local wiki_link
- local destination_path
- local wiki_url="https://github.com/XargonWan/RetroDECK-Wiki"
- local link_content
- local wiki_path="/tmp/wiki"
+ local helper_files_list=$1
+ local article_url
+ local helper_file_destination
+ local wiki_repo="https://github.com/XargonWan/RetroDECK-Wiki"
+ local wiki_local_clone="/tmp/wiki"
# Check if the file exists
- if [ ! -f "$file_path" ]; then
- echo "Error: File not found: $file_path"
+ if [ ! -f "$helper_files_list" ]; then
+ echo "Error: File not found: $helper_files_list"
return 1
fi
- # Read parameters from the file
- IFS='^' read -r wiki_link destination_path < "$file_path"
+ # Read parameters from the file, ignoring lines starting with '#', and skipping empty lines
+ IFS='^' read -r article_url helper_file_destination _ < <(awk -F'#' '/./ && !/^#/ {gsub(/\/$/, "", $1); print $1}' "$helper_files_list")
+
+ # Substitute variables in helper_file_destination
+ helper_file_destination=$(eval echo "$helper_file_destination")
+ echo -e "Found link: $article_url\nDestination: $helper_file_destination"
# Check if the repository is already cloned
- if [ ! -d "$wiki_path" ]; then
+ if [ ! -d "$wiki_local_clone" ]; then
# Clone the repository
- git clone "$wiki_url" "$wiki_path"
+ git clone "$wiki_repo" "$wiki_local_clone" --depth 1
fi
# Change to the destination path and pull the latest changes
- cd "$wiki_path" || return
+ cd "$wiki_local_clone"
git pull origin main
+ cd -
- # Copy the wiki_link file to the destination path
- cp "$wiki_link" "$destination_path"
+ # Check if article_url is not empty before copying
+ if [ -n "$article_url" ]; then
+ # Adjust the destination path based on the cloned directory structure
+ local adjusted_helper_file_destination="$wiki_local_clone/wiki-rtd/docs/${article_url#https://retrodeck.readthedocs.io/en/latest/}.md"
- # Append the link content to the end of the file
- link_content="Related wiki article can be found here:\n$wiki_link\n\nThe RetroDECK Team"
- echo -e "$link_content" >> "$destination_path"
-
- # Return to the original directory if needed
- cd - || return
+ # Copy the article_url file to the adjusted destination path
+ mkdir -p "$helper_file_destination"
+ cp -fv "$adjusted_helper_file_destination" "$helper_file_destination/$(basename $adjusted_helper_file_destination)"
+
+ # Append the footer
+ echo -e "\n\n----------\n\nRelated wiki article can be found here:\n$article_url\n\nThe RetroDECK Team" >> "$helper_file_destination/$(basename $adjusted_helper_file_destination)"
+ else
+ echo "Error: Empty article_url. Please check the format of the file specified by $helper_files_list."
+ fi
}
easter_eggs() {