1. 19 Dec, 2021 1 commit
    • Anton Midyukov's avatar
      lib/profile.mk: add branding-<BRANDING>-release to PACKAGES_REQUIRES_INITROOT · 8551e710
      Anton Midyukov authored
      It was a mistake to add branding package to the initialized chroot. There
      were no problems until the package had dependencies. Now, when most branding
      has a dependence on alt-os-release, chroot initialization broke.
      See also ALT bug 41570.
      Branding needed to be added to PACKAGES_REQUIRED_INITROOT so that it is
      installed with basesystem.
      8551e710
  2. 13 Dec, 2021 1 commit
    • Michael Shigorin's avatar
      profile.mk: quote variables properly · a028ee77
      Michael Shigorin authored
      ...otherwise:
      
      $ make QUIET=1 REPORT=1 THE_APT_CONF=branch BRANDING=alt-starterkit ...
      /bin/sh: line 5: [: too many arguments
      /bin/sh: line 28: [: too many arguments
      a028ee77
  3. 10 Dec, 2021 1 commit
  4. 19 Sep, 2021 1 commit
  5. 31 Aug, 2021 1 commit
  6. 30 Aug, 2021 1 commit
  7. 13 Jul, 2021 1 commit
  8. 24 Jun, 2021 1 commit
  9. 18 Jun, 2021 1 commit
  10. 17 May, 2021 1 commit
  11. 01 May, 2020 1 commit
  12. 05 Jun, 2018 1 commit
  13. 23 May, 2018 1 commit
  14. 29 Nov, 2016 1 commit
  15. 20 Apr, 2015 1 commit
    • Michael Shigorin's avatar
      pkg.in/lists: archdep suffices for pkglists · ac5dbb4b
      Michael Shigorin authored
      This is an initial implementation of architecture dependent
      contents handling for package lists more or less in the vein
      of mkimage-profiles-desktop's one *but* using suffix part to
      filter words in or out *not* prefix part to replace it with
      a comment marker (thus filtering out lines).
      
      The syntax should be pretty obvious:
      
        a b@i586 c@x86_64
      
      will get "a b" given ARCH=i586 and "a c" given ARCH=x86_64;
      please see doc/archdep.txt for a more elaborate description
      and a conversion script.
      ac5dbb4b
  16. 02 Apr, 2015 1 commit
    • Michael Shigorin's avatar
      introduce QUIET variable · 3cb4d9ae
      Michael Shigorin authored
      This one reduces the amount of output that's only
      interesting when one is actually watching the console
      during builds (at least the early stage) -- these tend
      to look boilerplate and be useless when inspecting the
      output of a large batch build like [[regular]] one.
      3cb4d9ae
  17. 27 Aug, 2014 1 commit
    • Michael Shigorin's avatar
      profile.mk: defer RC expansion · 851b4413
      Michael Shigorin authored
      Just spotted that .disk/profile.tgz would hold
      distcfg.mk with pre-expanded $(HOME) from build
      host which is both info leak (user account that
      was used to build the particular image) and just
      wrong given that the in-image profile archive was
      conceived as a means to pass that part of build
      environment over instead of tying it to vendor.
      
      Morale: premature optimization is premature.
      851b4413
  18. 19 Feb, 2013 1 commit
  19. 11 Feb, 2013 1 commit
    • Michael Shigorin's avatar
      fixed mp-commit and its use · ad264c70
      Michael Shigorin authored
      Now this is ugly: instead of commoditizing the repetitive code
      the result ended up working differently by creating several
      repositories for the target subdirs instead of the single one
      for the generated subprofile as a whole.
      
      This results in .disk/profile.tgz being basically useless
      in every image since c4311108.
      ad264c70
  20. 04 Feb, 2013 1 commit
    • Michael Shigorin's avatar
      ensure that IMAGEDIR exists (thus globbable) · e46c259a
      Michael Shigorin authored
      It appears that manually specified IMAGEDIR, e.g. by adding
      
        IMAGEDIR = ~/out/$(shell date +%Y%m%d)
      
      to ~/.mkimage/profiles.mk, might be problematic due to
      missing globbing.  Let's make sure the paths are globbed
      and directories are created -- since make's wildcard()
      returns an empty string when there's nothing there [yet].
      e46c259a
  21. 11 Nov, 2012 1 commit
  22. 11 Aug, 2012 2 commits
    • Michael Shigorin's avatar
      merged experimental support for opensuse · 23175f00
      Michael Shigorin authored
      This isn't ready for general consumption (just as centos one)
      but the notion of REPO is floating around along with apt-conf
      thoughts, and it might still be useful to someone poking around
      conf.d/test.mk.
      
      Request hasher-pkg-init.spec from mike@ or led@ if interested;
      the experiments were carried out using openSUSE 11.4 repository
      and slightly patched hasher (cpio blacklist for devices).
      23175f00
    • Michael Shigorin's avatar
      complex subprofile delimiter changed ("/" -> "@") · b21353a0
      Michael Shigorin authored
      That sub/stage2/install2 was somewhat clumsy actually as it looked
      like a hierarchical thing while being a substitution thing:
      generic stage2 would get put in place renamed as install2.
      
      This could only get worse with hierarchical features which have
      already been both requested and considered for quite a time,
      and "stage2 at install2" reads much more naturally.
      b21353a0
  23. 09 Aug, 2012 1 commit
    • Michael Shigorin's avatar
      git usage refactoring · c4311108
      Michael Shigorin authored
      There were heaps of "if type -t git" there already;
      it wasn't an unintentional mishap but rather a moderate
      copy-paste to get the use cases, and now these seem to
      have essentially settled.
      
      So time to scrap some dups.
      
      NB: the scripts in the generated profile can't rely on
      the contents of the metaprofile (these need to be able
      to work in standalone case either), so a bit of crap
      still lurks there.
      c4311108
  24. 16 Jul, 2012 1 commit
    • Michael Shigorin's avatar
      non-native ARM support via qemu · d31a2555
      Michael Shigorin authored
      mkimage and hasher can make use of qemu to run
      non-native binaries while working on the chroots;
      thanks kas@, manowar@ and sbolshakov@ for implementing
      this functionality as well as providing nice examples
      through mkimage-profiles-arm and mkimage-profile-armrootfs.
      
      This required the architecture check to be added since baking
      a tarball with "arm" as its specified arch and x86_64 inside
      isn't particularly good thing to let slip through; however
      the implementation is quite fragile, bugreports and patches
      are seriously welcome.
      
      NB: APTCONF evaluation order between lazy make and nimble shell
      turned out to be quite a delicate issue in this particular case.
      d31a2555
  25. 21 Jun, 2012 1 commit
  26. 23 Apr, 2012 1 commit
  27. 07 Apr, 2012 1 commit
  28. 27 Mar, 2012 1 commit
  29. 19 Mar, 2012 1 commit
  30. 10 Jan, 2012 1 commit
    • Michael Shigorin's avatar
      bin/mktmpdir: check for filesystem mount options · 5a1065c3
      Michael Shigorin authored
      As was found out by Vladimir Karpinsky (thanks for patience!),
      the autochosen directory might still have too restrictive mount
      options -- nodev and/or noexec.  Hopefully the diags are a bit
      better and faster by now.
      5a1065c3
  31. 02 Jan, 2012 2 commits
    • Michael Shigorin's avatar
      main.mk introduced, lib/*.mk partially rewritten · 2f307fff
      Michael Shigorin authored
      The former toplevel Makefile is now toplevel main.mk;
      this change allows for multi-target, multi-arch processing
      in the current toplevel Makefile.
      
      As the "build" symlink semantics change quite considerably
      when one is doing bulk builds (several pruned builddirs might
      be useful for comparison), BUILDDIR is now much more likely
      to be recreated: the cases when it will persist are when it's
      either a single-image build or when the prefix hasn't changed.
      
      There are some more or less subtle bugfixes and enhancements
      all over the map as well.
      
      Done within 20111230..20120102 timeframe, actually...
      2f307fff
    • Michael Shigorin's avatar
      lib/{clean,profile}.mk: robustness improvements · 3d2f69f1
      Michael Shigorin authored
      First, let's not do rsync --delete on an unverified target dir
      again: the lesson was learned during a subway hacking session
      and I must say that SSDs are frightening fast (even if it was
      more than a second to realize what happens and terminate the
      extermination before it got /home, thanks xterm).
      
      Second, let's use a variable for common name and make's own
      realpath function instead of external binary.
      3d2f69f1
  32. 06 Nov, 2011 4 commits
    • Michael Shigorin's avatar
      further toplevel logging tweaks · 07fdc6dd
      Michael Shigorin authored
      Essentially some more polishing:
      - image path extracted from downstream build log;
      - extended error/warning regexp a bit so those with
        color grep options get even prettier output.
      
      Notes:
      - "1024" a magic number (briefly explained when introduced)
        moved to a sort of variable;
      - "100 lines" for tail(1) is a rule-of-thumb taking into account
        typical amount of hasher/mkimage exhaust given GLOBAL_VERBOSE.
      07fdc6dd
    • Michael Shigorin's avatar
      toplevel build report now timestamped · 30b1aa9b
      Michael Shigorin authored
      Thanks torabora@ for yet again seemingly obvious feature request
      which strangely managed to evade implementation before.
      
      On an afterthought, mass builds would suggest too much coffee
      instead of a progress indicator -- so implemented the latter.
      
      NB: the actual downstream-make-calling rule would expand the "naive"
      $(shell date) too early: the rule is evaluated before starting its
      execution, and as it's the time consuming one the shell evaluation
      was in need, not make's.  The result is less generally available
      (needs to be double quoted and won't work inside e.g. awk programs)
      but way more precise.
      30b1aa9b
    • Michael Shigorin's avatar
      dump sources.list to build.log · 813571cb
      Michael Shigorin authored
      The seemingly obvious feature was proposed by torabora@.
      APTCONF complicates things a bit of course...
      (and was slightly kludgy btw; fixed)
      813571cb
    • Michael Shigorin's avatar
      live-builder distro: your self-hosted livecd · 83392012
      Michael Shigorin authored
      If you make distro/live-builder.iso, the result is an image
      containing almost everything (short of actual full enough
      repository) to rebuild itself.  It will attempt to configure
      eth0 with DHCP and reach http://ftp.altlinux.org for packages.
      
      RAM requirements start with 2Gb, self-build is accomplished
      on a 4Gb host with "make CLEAN=1 distro/live-builder.iso".
      
      Packages required for "make distro/syslinux.iso" get included.
      
      (some due fixups all over the place too)
      83392012
  33. 04 Nov, 2011 3 commits
    • Michael Shigorin's avatar
      logging tweaks for better readability · 0a8490ad
      Michael Shigorin authored
      ...and create a symlink to a just-built image from builddir too.
      0a8490ad
    • Michael Shigorin's avatar
      official {distro,ve}/* support · d5a5941f
      Michael Shigorin authored
      This is quite a large-scale change since mkimage-profiles got used to
      baking distributions over the last year, and virtual environments are
      quite different, so e.g. image.in/Makefile had to be split in two with
      the main part of it moved into features.in/iso/lib/.
      
      Short overview:
      
      - features.in/Makefile: lib/ support
        (supporting VE images requires dynamic modifications
        to image.in/Makefile before starting the build;
        the most natural way to achieve that seems to use
        features mechanism along with makefile include dir)
      
      - packaging format related part moved into features.in/pack
        (should be better prepared for diversity either)
      - features.in/iso renamed to features.in/build-distro
      - features.in/ve  renamed to features.in/build-ve
        + NB: these could not be merged as e.g. features.in/build
          due to completely different script hooks
      
      - lib/image.mk renamed to lib/build.mk
      - image, config, log postprocessing moved downstream
      - added a sort of a topping in the form of lib/sugar.mk
      - assorted style fixups (like ifeq usage)
      
      - clean.mk: reliability fix (the problem was observed by Oleg Ivanov
        and me too but finally it did get the attention quantum)
      
      - reviewed, updated and extended docs
        + QUICKSTART: should be[come] a step-by-step guide
          (thanks Leo-sp50 for prodiving feedback)
      d5a5941f
    • Michael Shigorin's avatar
      ensure that distcfg.mk gets included once at most · 75fd7952
      Michael Shigorin authored
      This was done while debugging GLOBAL_CLEANUP_PACKAGES
      getting doubled... as it got no hard initial value but
      rather was always added to, it appeared that at least
      stage2/Makefile would obtain a once-initialized value
      from upstream and double it while including distcfg.mk
      itself.
      
      It's way less hassle to just proxy the value once.
      75fd7952