diff --git a/config/tweaks.json b/config/tweaks.json index e1d6d2e9..ff64cf29 100644 --- a/config/tweaks.json +++ b/config/tweaks.json @@ -3050,102 +3050,26 @@ "Order": "a021_", "InvokeScript": [ " - # Define the URL of the remote HOSTS file and the local paths - $remoteHostsUrl = \"https://raw.githubusercontent.com/Ruddernation-Designs/Adobe-URL-Block-List/master/hosts\" - $localHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\hosts\" - $tempHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\temp_hosts\" + $hostsUrl = \"https://github.com/Ruddernation-Designs/Adobe-URL-Block-List/raw/refs/heads/master/hosts\" + $hosts = \"$env:SystemRoot\\System32\\drivers\\etc\\hosts\" - # Download the remote HOSTS file to a temporary location - try { - Invoke-WebRequest -Uri $remoteHostsUrl -OutFile $tempHostsPath - Write-Output \"Downloaded the remote HOSTS file to a temporary location.\" - } catch { - Write-Error \"Failed to download the HOSTS file. Error: $_\" - } - - # Check if the AdobeNetBlock has already been started - try { - $localHostsContent = Get-Content $localHostsPath -ErrorAction Stop - - # Check if AdobeNetBlock markers exist - $blockStartExists = $localHostsContent -like \"*#AdobeNetBlock-start*\" - if ($blockStartExists) { - Write-Output \"AdobeNetBlock-start already exists. Skipping addition of new block.\" - } else { - # Load the new block from the downloaded file - $newBlockContent = Get-Content $tempHostsPath -ErrorAction Stop - $newBlockContent = $newBlockContent | Where-Object { $_ -notmatch \"^\\s*#\" -and $_ -ne \"\" } # Exclude empty lines and comments - $newBlockHeader = \"#AdobeNetBlock-start\" - $newBlockFooter = \"#AdobeNetBlock-end\" - - # Combine the contents, ensuring new block is properly formatted - $combinedContent = $localHostsContent + $newBlockHeader, $newBlockContent, $newBlockFooter | Out-String - - # Write the combined content back to the original HOSTS file - $combinedContent | Set-Content $localHostsPath -Encoding ASCII - Write-Output \"Successfully added the AdobeNetBlock.\" - } - } catch { - Write-Error \"Error during processing: $_\" - } - - # Clean up temporary file - Remove-Item $tempHostsPath -ErrorAction Ignore - - # Flush the DNS resolver cache - try { - Invoke-Expression \"ipconfig /flushdns\" - Write-Output \"DNS cache flushed successfully.\" - } catch { - Write-Error \"Failed to flush DNS cache. Error: $_\" - } + Copy-Item $hosts \"$hosts.bak\" + Invoke-WebRequest $hostsUrl -OutFile $hosts + ipconfig flushdns + + Write-Host \"Added Adobe url block list from host file\" " ], "UndoScript": [ " - # Define the local path of the HOSTS file - $localHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\hosts\" + $hosts = \"$env:SystemRoot\\System32\\drivers\\etc\\hosts\" + $backup = \"$hosts.bak\" - # Load the content of the HOSTS file - try { - $hostsContent = Get-Content $localHostsPath -ErrorAction Stop - } catch { - Write-Error \"Failed to load the HOSTS file. Error: $_\" - return - } - - # Initialize flags and buffer for new content - $recording = $true - $newContent = @() - - # Iterate over each line of the HOSTS file - foreach ($line in $hostsContent) { - if ($line -match \"#AdobeNetBlock-start\") { - $recording = $false - } - if ($recording) { - $newContent += $line - } - if ($line -match \"#AdobeNetBlock-end\") { - $recording = $true - } - } - - # Write the filtered content back to the HOSTS file - try { - $newContent | Set-Content $localHostsPath -Encoding ASCII - Write-Output \"Successfully removed the AdobeNetBlock section from the HOSTS file.\" - } catch { - Write-Error \"Failed to write back to the HOSTS file. Error: $_\" - } - - # Flush the DNS resolver cache - try { - Invoke-Expression \"ipconfig /flushdns\" - Write-Output \"DNS cache flushed successfully.\" - } catch { - Write-Error \"Failed to flush DNS cache. Error: $_\" - } + Copy-Item $backup $hosts + Remove-Item $backup + ipconfig flushdns + + Write-Host \"Removed Adobe url block list from host file\" " ], "link": "https://winutil.christitus.com/dev/tweaks/z--advanced-tweaks---caution/blockadobenet"