GithubHelp home page GithubHelp logo

Comments (6)

clayrisser avatar clayrisser commented on August 19, 2024

You aren't required to install mkpm since mkpm works with or without the mkpm binary installed.

The above error means you're not using GNU tar. Since it's not GNU tar, it fails to extract the mkpm cache, which is why the .bin/mkpm is not found.

Can you send me the version of tar you are using?

tar --version

Should give a similar output (could be a different version which is ok).

tar (GNU tar) 1.34
Copyright (C) 2021 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

If you're on OSX you can install GNU tar with the following command.

brew install gnu-tar

from docker-openldap.

clayrisser avatar clayrisser commented on August 19, 2024

The reason mkpm requires gnu tar is because it supports a feature that prevents the tar file from changing the timestamp. This is necessary to prevent the mkpm cache from thinking it's a new cache file when it has the exact same files.

I could implement a fallback to other tar versions (which I might do), but it would make the cache.tar.gz think it's a new file sometimes, when nothing has actually changed, which could pollute the git lfs.

I might still do this for the convenience of those who don't have gnu-tar, but for now make sure gnu-tar is installed.

from docker-openldap.

thesefer avatar thesefer commented on August 19, 2024

Thanks for your reply. I am on Linux not OSX. Here is my tar version, identical to yours in this case

tar --version
tar (GNU tar) 1.34
Copyright (C) 2021 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by John Gilmore and Jay Fenlason

EDIT: Above was from Ubuntu22. Sorry. Here is the Ubuntu20 machine where I tried it

tar (GNU tar) 1.30
Copyright (C) 2017 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

from docker-openldap.

clayrisser avatar clayrisser commented on August 19, 2024

Oh, I bet you never enabled git lfs.

Can you cat the .mkpm/cache.tar.gz? If it's showing a git lfs pointer instead of binary data, then you probably didn't enable git lfs.

You can setup git lfs on debian/ubuntu with the following commands.

sudo apt install -y git-lfs
git lfs install

Then either re-clone the project or run the following command to lookup the lfs files.

git lfs fetch --all

from docker-openldap.

thesefer avatar thesefer commented on August 19, 2024

git lfs is installed but I indeed did not enable it because I didn't expect to (it is nowhere mentioned). You should mention it in the readme because I didn't check every folder and simply cloned it. It is a prerequisite to build it.

93aaaf3d2dbdad0ef89a10357290e7c0a3f7bffd18f9143609d4e864c61bfb3e .mkpm/cache.tar.gz

Now it just comes down to docker compose v1/v2 issues (v2 installed)

make build
/bin/sh: 1: docker-compose: not found
make[1]: *** [/data/home/test/test/docker-openldap/.mkpm/mkpm/.pkgs/docker/main.mk:177: build] Error 127
make: *** [Makefile:8: build] Error 2

Change export DOCKER_COMPOSE := docker-compose to export DOCKER_COMPOSE := docker compose in Mkpmfile

from docker-openldap.

clayrisser avatar clayrisser commented on August 19, 2024

Yes, sorry about that. I will update the README.md to include that.

I will also fix the docker compose issue.

For now, you could alias it.

alias docker-compose="docker compose"

from docker-openldap.

Related Issues (8)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.