更改 ttf-mscorefonts-installer 的镜像

woj*_*902 5 apt fonts software-installation

是否可以更改 ttf-mscorefonts-installer 从中下载字体的镜像?目前,例如http://downloads.sourceforge.net/corefonts/arial32.exe从我的公司办公室被阻止,但我可以看到例如https://cfhcable.dl.sourceforge.net/project/corefonts/the%20fonts /final/arial32.exe有效。

Eli*_*gan 1

您可以从您选择的镜像下载字体,然后运行update-ms-fonts以使用它们。您不想手动下载每一个,因此可以使用Videonauth对如何安装软件包 ttf-mscorefonts-installer 的回答中的过程。由于该过程(如所写)将下载带有您无法使用的 URL 的字体,因此您必须将其更改为使用这些URL。这是修改后的程序:downloads.sourceforge.netcfhcable.dl.sourceforge.net

  1. ttf-mscorefonts-installer按照通常的方式安装。也就是说,运行这些命令并接受许可证:

    sudo apt update
    sudo apt install ttf-mscorefonts-installer
    
    Run Code Online (Sandbox Code Playgroud)

    您可能会看到这个停顿,通常持续不到半分钟:

    0% [Connecting to downloads.sourceforge.net (216.105.38.13)]
    
    Run Code Online (Sandbox Code Playgroud)

    然后出现如下错误:

    Err:1 http://downloads.sourceforge.net/corefonts/andale32.exe
      Could not connect to downloads.sourceforge.net:80 (216.105.38.13), connection timed out
    E: Failed to fetch http://downloads.sourceforge.net/corefonts/andale32.exe  Could not connect to downloads.sourceforge.net:80 (216.105.38.13), connection timed out
    E: Download Failed
    
    Run Code Online (Sandbox Code Playgroud)

    没关系。至少目前,安装程序不会继续尝试连接后续文件。

  2. 创建一个临时目录并cd放入其中。我更喜欢在我的主目录中创建一个tmp子目录,并在完成后将其删除。如果您编写此脚本,最好按照 Videonauth 建议的方式创建目录。

    mkdir ~/tmp
    cd ~/tmp
    
    Run Code Online (Sandbox Code Playgroud)

    如果该目录已经存在,我建议不要使用它,删除其内容,或者至少确保其中没有任何名称以 结尾的文件,.exe然后再继续。

  3. 下载字体,替换您要使用的 URL。这是与Videonauth 的答案中的过程有重要不同的部分。

    awk '/Url/ {sub("downloads[.]sourceforge[.]net/corefonts","cfhcable.dl.sourceforge.net/project/corefonts/the%20fonts/final",$2); system("wget "$2)}' /usr/share/package-data-downloads/ttf-mscorefonts-installer
    
    Run Code Online (Sandbox Code Playgroud)
  4. 跑步update-ms-fonts。这只接受绝对路径(所以你不能写*.exe而不是~/tmp/*.exe)。如果您的临时目录不是tmp主目录的子目录,请相应地调整命令。

    sudo /usr/lib/msttcorefonts/update-ms-fonts ~/tmp/*.exe
    
    Run Code Online (Sandbox Code Playgroud)
  5. 更新 APT 文件上的时间戳,以确定仍需要完成哪些安装步骤:

    sudo touch /var/lib/update-notifier/package-data-downloads/ttf-mscorefonts-installer
    
    Run Code Online (Sandbox Code Playgroud)

    您现在应该能够使用这些字体,并且您不应该出现任何有关如何下载文件的软件更新程序对话框。

  6. 删除临时目录:

    cd
    rm -r tmp
    
    Run Code Online (Sandbox Code Playgroud)

感谢Videonauth编写了这个答案,这个答案就是从这个答案中衍生出来的。