Как включить запятую в определение Apt?

Я хотел бы создать файл предпочтений Apt с определением пина, который соответствует пакетам, происходящим из Google, Inc.,

Следующее определение, похоже, ничего не делает:

Package: *
Pin: release o=Google, Inc.
Pin-priority: 900

Я подозреваю, что запятая вызывает проблемы. Как я могу избежать этого?

Ничто из следующего не сработало:

  • release o="Google, Inc."
  • release o='Google, Inc.'
  • release o=Google\, Inc.
  • release o=Google\\, Inc.

Любопытно, что следующее соответствует Google, Inc. успешно:

  • release o=Google? Inc.

Но это не то решение, которое я ищу. Я хочу знать, как соответствовать Google, Inc. без обращения к (ненадежным) групповым символам.

Дополнительная информация:

$ apt-cache policy | grep -C 1 'Google, Inc.'
 500 http://dl.google.com/linux/earth/deb/ stable/main amd64 Packages
     release v=1.0,o=Google, Inc.,a=stable,n=stable,l=Google,c=main
     origin dl.google.com
 500 http://dl.google.com/linux/chrome/deb/ stable/main amd64 Packages
     release v=1.0,o=Google, Inc.,a=stable,n=stable,l=Google,c=main
     origin dl.google.com
$ grep Origin /var/lib/apt/lists/dl.google.com_*_Release
/var/lib/apt/lists/dl.google.com_linux_chrome_deb_dists_stable_Release:Origin: Google, Inc.
/var/lib/apt/lists/dl.google.com_linux_earth_deb_dists_stable_Release:Origin: Google, Inc.

2 ответа

Не совсем то, что вы пытались сделать, но это может сработать и для вас, попробуйте:

Pin: origin dl.google.com

Я остановился на этом после того, как отказался от попытки прикрепить его к релизу, и он имеет тот же эффект, если у вас нет других репозиториев с этого хоста...

Если вы избежите запятой, пробел также должен быть экранирован, как в:

o = Google \, \ Inc.
Другие вопросы по тегам