1. 22 Mar, 2024 1 commit
  2. 01 Mar, 2024 1 commit
  3. 30 May, 2023 1 commit
    • Anton Midyukov's avatar
      reports: DEBUG must be enabled, CHECK must be disabled · b627d755
      Anton Midyukov authored
      We cannot get IMAGE_OUTPATH from the build.log, and there is currently
      no other mechanism. Creating a CHECK directory was a bad idea. It should
      have been created only for CHECK, but it was always created when DEBUG
      was not enabled. So it's better to just issue a warning.
      b627d755
  4. 30 Dec, 2022 3 commits
  5. 22 Nov, 2021 1 commit
    • Anton Midyukov's avatar
      build.mk, params.txt: add parameter USE_QEMU · 1c50ff1f
      Anton Midyukov authored
      The parameter determines use of QEMU or not, if the target architecture
      does not correspond to the host architecture.
      By default, the parameter is on (Value 1).
      For architectures that do not support QEMU (e2k), the option is turned off.
      1c50ff1f
  6. 23 Aug, 2021 1 commit
  7. 18 Jun, 2021 2 commits
  8. 06 Jun, 2021 4 commits
  9. 17 May, 2021 1 commit
  10. 30 Apr, 2021 1 commit
  11. 19 Aug, 2019 1 commit
    • Michael Shigorin's avatar
      doc: drop the outdated arch list · 88018915
      Michael Shigorin authored
      It was misleading already, and riscv64 is going to join the gang
      (but not there yet) following aarch64, mipsel, ppc64le and more
      e2k* subarches...
      88018915
  12. 16 Jul, 2018 1 commit
  13. 09 Jun, 2017 1 commit
    • Michael Shigorin's avatar
      docs update · 31ecda72
      Michael Shigorin authored
      Another minor facelift:
      - s/ALT Linux/ALT/gc (where applicable);
      - s/7.0/8.0/g;
      - 2017;
      - e2k;
      - links.
      31ecda72
  14. 12 Sep, 2016 1 commit
  15. 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
  16. 05 Mar, 2014 1 commit
    • Michael Shigorin's avatar
      documentation: use paths relative to toplevel dir · 3f547e25
      Michael Shigorin authored
      This change is done to reduce ambiguity in some cases;
      the previous intention has been to ease navigation when
      staying in a particular directory, now it's been changed
      in favour of convenient toplevel `git grep' in fact.
      
      Both variants have their pros and cons, I just find myself
      leaning to this one by now hence the commit.  Feel free to
      provide constructive criticism :)
      
      Some path-related bitrot has also been fixed while at that.
      3f547e25
  17. 13 Aug, 2013 1 commit
    • Michael Shigorin's avatar
      clean.mk: allow to forbid cleanup explicitly · 674f7db2
      Michael Shigorin authored
      The behaviour that sort of settled didn't actually follow
      the principle of the least surprise when one really wanted
      to have BUILDDIR available for inspection; DEBUG=2 would be
      effective to achieve that but CLEAN=0 would not.
      
      Thanks led@ for spotting and reporting this.
      674f7db2
  18. 17 Jun, 2013 1 commit
    • Michael Shigorin's avatar
      tar2vm: rewrote as tar2fs · d7689f30
      Michael Shigorin authored
      Overview of the changes:
      - ARM support: separate ext2 /boot, no LILO
      - avoid race condition with devmapper
      - trap ERR so that -e in shebang doesn't result in extra cleanup hassle
      - configurable root filesystem type (ext4 by default)
      - jumps through parted hoops
      
      Details:
      
      1. LILO is x86-specific while the rest of the script can be used
         to prepare e.g. Marvell ArmadaXP or CuBox images; we can generally
         count on uboot supporting ext2 for relatively sane platforms but
         not ext4 that would be a better root filesystem performance-wise.
      
      2. Apparently /dev/mapper/loopXpY can be still missing at the time
         when kpartx returns and pop up a bit later... sit there, wait
         and check for it.
      
      3. If something went wrong with any command of the script it would bail out
         due to -e in shebang; it is now better to clean up the loopback device
         and its mappings in this situation either.
      
      4. One size doesn't fit all, really.
      
      5. The parted sizing was sloppy as in broken, now it's just half insane.
         Someone's decision to stick units and auto-alignment knobs into
         a single one was apparently hilarious...
      
         http://www.gnu.org/software/parted/manual/parted.html#unit
      
      Manual loop/dm cleanup is described in documentation just in case.
      
      /boot size meter is suboptimal in terms of additional I/O incurred,
      will be most likely rewritten to make use of advance "du -s".
      d7689f30
  19. 10 Jun, 2013 1 commit
    • Michael Shigorin's avatar
      README update · 5b21100b
      Michael Shigorin authored
      These have been proofread somewhat to correspond
      to the current state of affairs; a missing one
      was added for fonts feature.
      5b21100b
  20. 25 Mar, 2013 1 commit
    • Michael Shigorin's avatar
      isohybrid: drop postprocessing, xorriso is enough · 9c6b7065
      Michael Shigorin authored
      The original mkisofs would only care for the proper ISO9660 image
      but we've switched to xorriso which is able to perform the hack
      to yield UEFI hybrid images; thus no need for the postprocessing.
      
      Requires mkimage >= 0.2.5 and xorriso (obviously).
      9c6b7065
  21. 31 Oct, 2012 1 commit
  22. 03 Sep, 2012 1 commit
  23. 06 Aug, 2012 1 commit
    • Michael Shigorin's avatar
      image.in/Makefile: support image STATUS · 0d859e70
      Michael Shigorin authored
      Another feature suggested by Michael Radyuk (torabora):
      some images are known alpha/beta quality, it's more handy
      to just state this at the build time than to rename by hand.
      0d859e70
  24. 30 Jul, 2012 1 commit
    • Michael Shigorin's avatar
      lib/clean.mk: post-build cleanup revisited · 3a8af6b5
      Michael Shigorin authored
      The prerequisites for a cleanup after a successful build
      were somewhat weird at this point; now the rules are:
      - if DEBUG level is more than 1 or CHECK is set, don't do it;
      - otherwise if at least one of the following conditions is true:
        + there's more than one target being built in a row;
        + the build was run by e.g. alterator-mkimage;
        + metaprofile directory is read only
        ...then do a distclean.
      
      If these are still weird or feel unsuitable for profile hacking,
      drop me a note (or a patch).
      3a8af6b5
  25. 16 Jul, 2012 1 commit
    • Michael Shigorin's avatar
      initial PowerPC support · 1ee997e8
      Michael Shigorin authored
      As it happens, adding another architecture required almost no changes;
      native 32-bit ppc build took only ARCH and a repo, qemu-ppc one still
      has problems (/.host/entry hangs while unpacking setup for fakedata).
      
      Proof of concept on a QS22:
      
        $ make ve/bare.tar.gz
        ** ARCH: ppc
        /bin/sh: rpmvercmp: command not found
        21:41:01 cleaning up
        21:41:03 initializing BUILDDIR: build/
        21:41:03 preparing distro config
        21:41:05 starting image build (coffee time)
        21:42:48 done (1:42)
        ** image: $TMP/out/bare-20120716-ppc.tar.gz [21M]
      1ee997e8
  26. 09 Jul, 2012 1 commit
    • Michael Shigorin's avatar
      initial native ARM support · 3c26cc86
      Michael Shigorin authored
      The only thing to be fixed was setarch(8) symlinks assumption
      that is correct for x86 but not for ARM.
      
      There's also some hasher(7) setup to be done:
      
        mkdir -p ~/.hasher
        echo >> ~/.hasher/config <<-EOF
        def_target=arm
        #cache_dir=$HOME/tmp	# depends on RAM/storage configuration
        EOF
      
      ...and of course apt(8) should be properly set up too.
      
      An example PoC build on a CM-A510 board (tmpfs):
      
        $ make BRANDING=altlinux-centaurus ve/bare.tar.gz
        ** ARCH: arm
        18:10:45 initializing BUILDDIR: build/
        18:10:45 preparing distro config: build/distcfg.mk
        18:10:46 starting image build: tail -f build/build.log
        18:14:49 done (4:02)
        ** image: $TMP/out/bare-20120706-arm.tar.gz [23M]
      3c26cc86
  27. 25 Jun, 2012 1 commit
    • Michael Shigorin's avatar
      docs updated · f8af1c92
      Michael Shigorin authored
      Minor tweaks to toplevel docs as well as some doc/*.txt,
      doc/variables.txt renamed to doc/params.txt, and a brand new
      doc/pkglists.txt is added (thanks manowar@ for his considerations).
      f8af1c92
  28. 18 Jun, 2012 1 commit
    • Michael Shigorin's avatar
      initial build-vm feature · 75f7c62b
      Michael Shigorin authored
      Yes, mkimage-profiles is now able to build VM disk images.
      So far the support is pretty basic:
      
      - a single hard drive image with a single partition/FS
      - only stock root password is configurable
      - LILO is hardwired as a bootloader
      
      The resulting images tend to boot under qemu/kvm though.
      
      Please see doc/vm.txt for the warning regarding additional
      privileges and setup required.  This was started back in
      February but I still hoped to avoid sudo/privileged helper
      (and libguestfs is almost as undistributable as can be)...
      
      Thanks:
      
      - http://blog.quinthar.com/2008/07/building-1gb-bootable-qemu-image-using.html
      - Alexey Morarash who reworked that as https://github.com/tuxofil/linsygen
      - led@, legion@, vitty@, aen@ for providing advice and inspiration
      75f7c62b
  29. 21 May, 2012 1 commit
  30. 23 Apr, 2012 2 commits
    • Michael Shigorin's avatar
      better output directory and results structuring · 6e6f572b
      Michael Shigorin authored
      Following m-p-d, a more involved default output directory
      structure is feasible now:
      
        ~/out/name/date/name-date-arch.type
      
      instead of plain
      
        ~/out/name-date-arch.type
      
      This particular behaviour can be achieved by passing
      SORTDIR='$(IMAGE_NAME)/$(DATE)'; note the single quotes.
      
      Reports are also saved in this resulting structure
      albeit the place is still highly debatable.
      6e6f572b
    • Michael Shigorin's avatar
      reports.mk: added reports/scripts · 6ada32dc
      Michael Shigorin authored
      This one extracts the exact time-ordered list of script hooks
      run while building the image.
      
      Some commons refactoring is also due.
      6ada32dc
  31. 09 Apr, 2012 2 commits
    • Michael Shigorin's avatar
      doc/variables.txt: ARCHES explained · acaf12c3
      Michael Shigorin authored
      Multiple ARCHES won't just magically work without
      the ability to figure out the correct apt.conf;
      fortunately there's just the right example handy
      in profiles.mk.sample already.
      
      Thanks glebfm@ for feedback.
      acaf12c3
    • Michael Shigorin's avatar
      stage2: tunable squashfs compression · fe58c46e
      Michael Shigorin authored
      The existing implementation would handle kernel differences
      just fine but a bit too automatically: if it sees xz support,
      that's what will end up being used (and if there's -Xbcj binary
      compression filter available for the target platform, it will
      be applied unequivocally either).
      
      It's perfectly suitabe for getting fine-tuned release images
      but is also a bit too resource-consuming while developing the
      image configuration which has no business with its compression.
      
      The one and only knob is SQUASHFS (see doc/variables.txt);
      to give an idea of the differences, here are some numbers
      for a mostly-binary (43% as per 99-elf-stats) webkiosk livecd
      and a rather less so (18%) flightgear one on a dual quad-core
      X5570 node (each mksquashfs run used up all the cores):
      
      SQUASHFS | live-webkiosk.iso | live-flightgear.iso
      ---------+-------------------+---------------------
      fast     | 3:30 / 130M       | 5:11 / 852M
      normal * | 3:37 / 100M       | 5:35 / 688M
      tight    | 3:50 / 98M        | 6:47 / 683M
      
      Thus if the knob isn't fiddled with, the defaults will allow
      for a reasonably fast build of a pretty slim image; if one is
      building a release or if a particular image is very sensitive
      being close to the media capacity then just add SQUASHFS=tight
      and see it a percent or two down on size.
      
      Please note that lzo/gzip-compressed images are also quicker
      to uncompress thus further helping with test iterations.
      
      Thanks to led@ and glebfm@ for helpful hints and questions.
      fe58c46e
  32. 31 Mar, 2012 1 commit