title: Reallocate full Conda installation
body: <p>I want to create a tar.gz file with a complete Miniconda installation, including some packages to be able to distribute it to offline machines. This tar.gz will be installed with an RPM.</p>
  
  <p>I've tried to pack everything doing:</p>
  
  <pre><code>sudo sh miniconda.sh -b -p /opt/miniconda
  sudo /opt/miniconda/bin/conda create -p /opt/miniconda/envs --file packages.txt
  tar -czf miniconda.tar.gz /opt/miniconda
  </code></pre>
  
  <p>Then I create a .spec file that extracts all the contents. This is the structure of rpmbuild directory:</p>
  
  <pre><code>[user@linux rpmbuild]$ tree -L 5
  .
  ├── BUILD
  ├── BUILDROOT
  ├── RPMS
  │   └── x86_64
  │       └── foo-1.0-1.x86_64.rpm
  ├── SOURCES
  │   ├── foo-1.0
  │   │   └── opt
  │   │       └── miniconda
  │   │           ├── bin
  │   │           ├── conda-meta
  │   │           ├── envs
  │   │           ├── etc
  │   │           ├── include
  │   │           ├── lib
  │   │           ├── LICENSE.txt
  │   │           ├── pkgs
  │   │           ├── share
  │   │           └── ssl
  │   └── foo-1.0.tar.gz
  ├── SPECS
  │   └── foo.spec
  └── SRPMS
      └── foo-1.0-1.src.rpm
  </code></pre>
  
  <p>.spec file</p>
  
  <pre><code>%define        __spec_install_post %{nil}
  %define          debug_package %{nil}
  %define        __os_install_post %{_dbpath}/brp-compress
  
  Summary: Trying to distribute miniconda
  Name: foo
  Version: 1.0
  Release: 1
  License: GPL+
  Group: Development/Tools
  SOURCE0 : %{name}-%{version}.tar.gz
  BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
  
  %description
  "Here's the description"
  
  %prep
  %setup -q
  
  %build
  # Nothing
  
  %install
  rm -rf %{buildroot}
  mkdir -p  %{buildroot}
  cp -a * %{buildroot}
  
  %clean
  rm -rf %{buildroot}
  
  %files
  %defattr(-,root,root,-)
  /opt/miniconda
  
  %changelog
  </code></pre>
  
  <p>And when I try to install the rpm, it fails:</p>
  
  <pre><code>[user@linux rpmbuild]$ sudo yum localinstall ./RPMS/x86_64/foo-1.0-1.x86_64.rpm 
  [sudo] password for user: 
  Loaded plugins: langpacks, product-id, rhnplugin, search-disabled-repos, subscription-manager
  This system is receiving updates from RHN Classic or Red Hat Satellite.
  Examining ./RPMS/x86_64/foo-1.0-1.x86_64.rpm: foo-1.0-1.x86_64
  Marking ./RPMS/x86_64/foo-1.0-1.x86_64.rpm to be installed
  Resolving Dependencies
  --&gt; Running transaction check
  ---&gt; Package foo.x86_64 0:1.0-1 will be installed
  --&gt; Processing Dependency: /opt/anaconda1anaconda2anaconda3/bin/python for package: foo-1.0-1.x86_64
  
  
   One of the configured repositories failed (Unknown),
   and yum doesn't have enough cached data to continue. At this point the only
   safe thing yum can do is fail. There are a few ways to work "fix" this:
  
       1. Contact the upstream for the repository and get them to fix the problem.
  
       2. Reconfigure the baseurl/etc. for the repository, to point to a working
          upstream. This is most often useful if you are using a newer
          distribution release than is supported by the repository (and the
          packages for the previous distribution release still work).
  
       3. Run the command with the repository temporarily disabled
              yum --disablerepo=&lt;repoid&gt; ...
  
       4. Disable the repository permanently, so yum won't use it by default. Yum
          will then just ignore the repository until you permanently enable it
          again or use --enablerepo for temporary usage:
  
              yum-config-manager --disable &lt;repoid&gt;
          or
              subscription-manager repos --disable=&lt;repoid&gt;
  
       5. Configure the failing repository to be skipped, if it is unavailable.
          Note that yum will try to contact the repo. when it runs most commands,
          so will have to try and fail each time (and thus. yum will be be much
          slower). If it is a very temporary problem though, this is often a nice
          compromise:
  
              yum-config-manager --save --setopt=&lt;repoid&gt;.skip_if_unavailable=true
  
  Cannot retrieve metalink for repository: epel/x86_64. Please verify its path and try again
  </code></pre>