답변1
가능합니까? 예. 두 프로그램 모두 오픈 소스입니다. 편리합니까? 설마.
왜?
패키지 관리자는 대략 다음과 같이 작동합니다.
- 시스템에 설치된 패키지(및 해당 버전)를 추적합니다.
- 이를 위해 그들은 자신만의 패키지 형식(예: .deb)을 지정하고 이러한 패키지를 프로그램 설치 방법 및 추적 방법에 대한 지침으로 사용합니다.
- 또한 종속성을 추적합니다(예: "이 프로그램이 작동하려면 openssl이 필요합니다!")
이것이 소수의 패키지 관리자를 사용하는 시스템을 갖는 것이 최선의 아이디어가 아닌 이유입니다.
- 각 패키지 관리자는 설치되는 패키지에 대한 정보를 받아야 합니다(예:
brew
을 설치했다는 사실firefox
과apt
를 설치했다는 사실을 알아야 합니다tldr
). - 각 패키지 관리자는 다른 패키지 관리자의 종속성을 해결해야 합니다(예: "Brew: 이 프로그램에는 가 필요
ncurses
하지만apt
이미 설치되어 있으므로ncurses
가져올 필요가 없습니다!").
문제는 2
패키지 관리자가 기본 저장소에 대한 추상화라는 것입니다. 데비안 같은 사람들은 사용자가 사용하기를 원하는 패키지를 선택하고 다른 사람들이 사용할 수 있도록 합니다. 그러나 시스템의 일관성을 유지하기 위해 이러한 패키지도 선택합니다. 그들은 가장 많은 기능을 제공하기 위해 최소한의 패키지를 원합니다. 모든 것이 버전 2에서 작동하도록 할 수 있는데 ncurses 버전 1,2,3을 설치하는 이유는 무엇입니까?
첫 번째 문제도 나쁜 소식이다. 패키지 관리자는 자신이 수행하는 작업에 대해 서로에게 알려야 합니다. 그렇지 않으면 충돌할 수 있습니다( 이미 설치되어 있는지는 brew
알 수 없음 ncurses
).
그러면 왜 힘든가요?
- 패키지 관리자는 긴밀하게 협력해야 합니다.
- 패키지 관리자는 패키지에 동의할 수 없을 때 어떻게 해야 하는지에 대한 엄격한 정책을 가지고 있어야 합니다.
- 패키지 관리자는 사용 가능한 프로그램만 눈에 띄는 차이점을 제외하고 거의 상호 교환적으로 작업할 수 있어야 합니다.
- 패키지 관리자는 업데이트 시 서로의 저장소를 추적할 수 있어야 합니다.
이는 사실상 두 개의 패키지 관리자로 구성된 패키지 관리자가 필요하다는 것을 의미합니다. 새로운 프로그램이 필요할 것입니다.
그래서 내가 무엇을 할 수 있니?
우선, "나는 왜 이 일을 하고 싶은가?"라고 스스로에게 물어볼 것입니다. 솔직히 배포판에는 많은 패키지가 제공되어야 합니다. 가지고 있는 패키지 수가 만족스럽지 않으면 필요한 패키지가 더 많은 다른 배포판으로 전환하는 것을 고려할 수 있습니다.
당신이있는 경우정말이 brew
작업을 수행하기 위해 필사적으로 다음 솔루션을 제안하겠습니다. 비록 이것이 완전히 가능한지는 확실하지 않습니다.
- 의 소스를 가져옵니다
brew
. - 양조 레시피 형식을 알아보세요.
- 레시피를 데비안 패키지로 자동 번역하는 프로그램을 작성하세요.
brew
실행할 때마다 프로그램을 호출하여 레시피를.deb
패키지로 변환하고 배포판 저장소에 있는 프로그램을 검색 하도록 수정한 다음 호출하여apt
이 패키지를 설치합니다.
그러한 수정을 수행하는 데는 아마도 많은 시간이 걸리고 쉬운 일이 아닙니다. 대신 distro를 변경하거나 패키지 관리자를 고수하는 것이 좋습니다.
답변2
예, 하지만 그것은 적지 않은 노력의 낭비일 것입니다. 만드는 것이 더 합리적일 것입니다.아빠tldr을 사용하거나 기본 데비안 저장소에 허용하거나 그냥 사용하려면https://tldr.ostera.io.