我正在使用pandoc
安装一些软件包(pandoc-citeproc
和cabal install
),以便构建这些软件包的最新二进制文件,而不是当前通过我的软件包管理器提供的二进制文件(debian的{{ 1}})。这很好但是安装了大量额外的软件包,这些软件包可能是构建过程所需要的,占用的空间比单独安装debian二进制文件时要多得多。
如果二进制文件完成后,如何在不删除必要文件的情况下删除构建apt-get
和pandoc
二进制文件所需的这些文物? (例如,保留pandoc-citeproc
并删除其他所有内容是否已足够?cabal/bin
包在这里有用吗?或者在cabal中是否有内置方法?)
*是的,我关心磁盘空间。在这种情况下,因为我将它构建为一个docker镜像,我希望它不会超过必要的,尽管原则上这个问题比docker用例更通用。
答案 0 :(得分:2)
按照@ DiegoNolan的建议结束:
apt-get update && apt-get install -y cabal-install \
&& cabal update \
&& cabal install --bindir=/usr/local/bin --global pandoc pandoc-citeproc \
&& apt-get remove --auto-remove --purge -y cabal-install \
&& rm -rf /root/.cabal/lib /root/.cabal/packages
导致添加<图像大小为100 MB而不是1.2 GB。除了在安装后删除.cabal/lib
之外,在安装完成后,发现有必要使用cabal-install
命令删除--auto-remove --purge
添加的构建依赖项。 (由于我在Docker中执行此操作,所有命令必须出现在同一个AUFS层中,因此多个&&
)