Branch | Commit message | Author | Age |
master | Detect legacy (non-PCI) Intel SST audio DSP devices (mga#33145) | Martin Whitaker | 2 months |
user/jibz/aarch64 | fix(install): grub2-efi was not found using default_bootloader() | Jybz | 3 months |
distro/mga9 | 18.66 | Martin Whitaker | 12 months |
user/pterjan/arm64 | foo | Pascal Terjan | 14 months |
distro/mga8 | drakxtools/stage2: 18.45: update NEWS | Thomas Backlund | 3 years |
distro/mga7 | 18.21.1 | Thomas Backlund | 5 years |
distro/mga6 | 17.88.3 | Martin Whitaker | 6 years |
topic/extlinux | bootloader: add cma=256M@512M for Raspberry Pi DRM/VC4 | Olivier Blin | 6 years |
topic/switching_to_dnf | perl-install/pkgs.pm: Port 'urpme' call to 'dnf remove' call | Neal Gompa | 7 years |
distro/mga5 | Fix the display of the clock in drakclock (mga#11776) | Frédéric Buclin | 7 years |
user/ennael/mga6 | - Add 60-block.rules in the installer (mga#20074) | Nicolas Lécureuil | 7 years |
user/martinw/mga6 | Always tell the kernel about partition table changes when running the classic... | Martin Whitaker | 7 years |
user/animtim/designWork | new icons for harddrake categories | Timothée Giet | 8 years |
distro/mga4 | fix moving fonts (mga#16074) | Thierry Vignaud | 9 years |
topic/bug-13680 | make_boot_img: Avoid gfxboot install string for chain.c32 | Erwan Velu | 10 years |
user/erwan/bug-13680 | make_boot_img: Avoid gfxboot install string for chain.c32 | Erwan Velu | 10 years |
topic/efi | sync with code | Thierry Vignaud | 11 years |
distro/mga3 | Slovenian translation updated | filip | 11 years |
user/colin/rescue-systemd | images: Pass audit=0 to the rescue system. | Colin Guthrie | 11 years |
distro/mga2 | SVN_SILENT Ukrainian translation update | Yuri Chornoivan | 11 years |
distro/mga1 | Ukrainian translation update | Yuri Chornoivan | 12 years |
distro/mes5-2.6.33 | Revert as it breaks auto_inst | Nicolas Lécureuil | 12 years |
distro/mes6 | fix unused-but-set-variable | Antoine Ginies | 13 years |
distro/mes5 | fix installing from hard drive on cciss (#57973) | Antoine Ginies | 14 years |
distro/mdv2009.0 | increase version | Pascal Terjan | 14 years |
distro/mdv2010.0 | - detect_devices: | Olivier Blin | 14 years |
distro/mdv2008.0 | run_program: set XAUTHORITY and HOME for the user we will drop privileges to | Pascal Terjan | 14 years |
distro/mdv2008.1 | run_program: set XAUTHORITY and HOME for the user we will drop privileges to | Pascal Terjan | 14 years |
distro/mdv2009.1 | run_program: set XAUTHORITY and HOME for the user we will drop privileges to | Pascal Terjan | 14 years |
topic/switching_to_urpmi | (rpmDbOpen) make it more readable | Thierry Vignaud | 16 years |
topic/before_matchbox_wm | 2009.0 beta 1 logo | Thierry Vignaud | 16 years |
topic/MDK-2006_0-update | Add stex and e1000_ng | Pascal Terjan | 17 years |
distro/mdv2007.1 | - fix range max value >2TB when creating a partition (useful for LVs >2TB) | Pascal Rigaux | 17 years |
topic/mlcd4 | copy 2007.1 as mlcd4 branch (for drakauth changes) | Olivier Blin | 17 years |
topic/MDK-10-update | Better (and fix) SMP detection, aka. also check for populated & enabled CPU | Gwenolé Beauchesne | 18 years |
topic/MDK-10_2-update | package lsb is requiring many locales though we don't want it to be installed | Pascal Rigaux | 19 years |
topic/MDK-10_1-update | Fix mis-sorted progress bars | Stew Benedict | 19 years |
topic/a | This commit was manufactured by cvs2svn to create branch 'a'. | Mystery Man | 20 years |
topic/mandrakesoft | This commit was manufactured by cvs2svn to create branch 'mandrakesoft'. | Mystery Man | 20 years |
topic/MDK92-branch | workaround anthil bug #369 | Thierry Vignaud | 20 years |
topic/Corpo_2_1 | Corporate Server 2.1.1 release | Nicolas Planel | 21 years |
topic/KA9_0 | Removing sundance | Erwan Velu | 21 years |
topic/R9_0-64bit-branch | no imm/ppa on ia64 | Gwenolé Beauchesne | 21 years |
topic/MDKC_1_0 | This commit was manufactured by cvs2svn to create branch 'MDKC_1_0'. | Mystery Man | 21 years |
topic/R9_1_HP-branch | This commit was manufactured by cvs2svn to create branch | Mystery Man | 21 years |
topic/x86_64-branch | More xf86 modules for x86-64 | Gwenolé Beauchesne | 21 years |
topic/gdk-pixbuf-0-branch | - lots of cleanups | Thierry Vignaud | 22 years |
topic/ia64-8_1 | - Don't forget to link the initrd to the real image in /boot/efi/ too | Gwenolé Beauchesne | 23 years |
topic/PCMCIA_CS_DISTRO | This commit was manufactured by cvs2svn to create branch | Mystery Man | 23 years |
topic/v_webmin_0_87 | This commit was manufactured by cvs2svn to create branch | Mystery Man | 23 years |
topic/gi-ppc | This commit was manufactured by cvs2svn to create branch 'gi-ppc'. | Mystery Man | 23 years |
topic/rp-pppoe | This commit was manufactured by cvs2svn to create branch 'rp-pppoe'. | Mystery Man | 23 years |
topic/ppp | This commit was manufactured by cvs2svn to create branch 'ppp'. | Mystery Man | 23 years |
topic/dietlibc | This commit was manufactured by cvs2svn to create branch 'dietlibc'. | Mystery Man | 23 years |
topic/firewall | readded passwd. Must verify that it's secure vs msec. | damien | 23 years |
topic/unlabeled-1.1.1 | branch to build the firewall install. | damien | 24 years |
|
Tag | Download | Author | Age |
18.68 | drakx-18.68.tar drakx-18.68.tar.gz drakx-18.68.tar.bz2 drakx-18.68.tar.xz drakx-18.68.zip | Jani Välimaa | 3 months |
18.67 | drakx-18.67.tar drakx-18.67.tar.gz drakx-18.67.tar.bz2 drakx-18.67.tar.xz drakx-18.67.zip | Dan Fandrich | 7 months |
drakx-installer-images-2.91 | drakx-installer-images-2.91.tar drakx-installer-images-2.91.tar.gz drakx-installer-images-2.91.tar.bz2 drakx-installer-images-2.91.tar.xz drakx-installer-images-2.91.zip | Thomas Backlund | 11 months |
18.66 | drakx-18.66.tar drakx-18.66.tar.gz drakx-18.66.tar.bz2 drakx-18.66.tar.xz drakx-18.66.zip | Martin Whitaker | 12 months |
2.90 | drakx-2.90.tar drakx-2.90.tar.gz drakx-2.90.tar.bz2 drakx-2.90.tar.xz drakx-2.90.zip | Thomas Backlund | 12 months |
18.64 | drakx-18.64.tar drakx-18.64.tar.gz drakx-18.64.tar.bz2 drakx-18.64.tar.xz drakx-18.64.zip | Martin Whitaker | 13 months |
18.63 | drakx-18.63.tar drakx-18.63.tar.gz drakx-18.63.tar.bz2 drakx-18.63.tar.xz drakx-18.63.zip | Giuseppe Ghibò | 14 months |
1.67 | drakx-1.67.tar drakx-1.67.tar.gz drakx-1.67.tar.bz2 drakx-1.67.tar.xz drakx-1.67.zip | Martin Whitaker | 15 months |
18.62 | drakx-18.62.tar drakx-18.62.tar.gz drakx-18.62.tar.bz2 drakx-18.62.tar.xz drakx-18.62.zip | Martin Whitaker | 15 months |
18.61 | drakx-18.61.tar drakx-18.61.tar.gz drakx-18.61.tar.bz2 drakx-18.61.tar.xz drakx-18.61.zip | Martin Whitaker | 15 months |
18.60 | drakx-18.60.tar drakx-18.60.tar.gz drakx-18.60.tar.bz2 drakx-18.60.tar.xz drakx-18.60.zip | Martin Whitaker | 16 months |
18.59 | drakx-18.59.tar drakx-18.59.tar.gz drakx-18.59.tar.bz2 drakx-18.59.tar.xz drakx-18.59.zip | Giuseppe Ghibò | 16 months |
18.58 | drakx-18.58.tar drakx-18.58.tar.gz drakx-18.58.tar.bz2 drakx-18.58.tar.xz drakx-18.58.zip | Giuseppe Ghibò | 16 months |
18.57 | drakx-18.57.tar drakx-18.57.tar.gz drakx-18.57.tar.bz2 drakx-18.57.tar.xz drakx-18.57.zip | Martin Whitaker | 16 months |
18.56 | drakx-18.56.tar drakx-18.56.tar.gz drakx-18.56.tar.bz2 drakx-18.56.tar.xz drakx-18.56.zip | Thomas Backlund | 18 months |
drakx-installer-images-2.88 | drakx-installer-images-2.88.tar drakx-installer-images-2.88.tar.gz drakx-installer-images-2.88.tar.bz2 drakx-installer-images-2.88.tar.xz drakx-installer-images-2.88.zip | Thomas Backlund | 18 months |
drakx-installer-binaries-2.60 | drakx-installer-binaries-2.60.tar drakx-installer-binaries-2.60.tar.gz drakx-installer-binaries-2.60.tar.bz2 drakx-installer-binaries-2.60.tar.xz drakx-installer-binaries-2.60.zip | Thomas Backlund | 18 months |
18.55 | drakx-18.55.tar drakx-18.55.tar.gz drakx-18.55.tar.bz2 drakx-18.55.tar.xz drakx-18.55.zip | Pascal Terjan | 19 months |
18.54 | drakx-18.54.tar drakx-18.54.tar.gz drakx-18.54.tar.bz2 drakx-18.54.tar.xz drakx-18.54.zip | Martin Whitaker | 19 months |
18.53 | drakx-18.53.tar drakx-18.53.tar.gz drakx-18.53.tar.bz2 drakx-18.53.tar.xz drakx-18.53.zip | Martin Whitaker | 19 months |
18.52 | drakx-18.52.tar drakx-18.52.tar.gz drakx-18.52.tar.bz2 drakx-18.52.tar.xz drakx-18.52.zip | Martin Whitaker | 20 months |
2.87 | drakx-2.87.tar drakx-2.87.tar.gz drakx-2.87.tar.bz2 drakx-2.87.tar.xz drakx-2.87.zip | Martin Whitaker | 21 months |
18.51 | drakx-18.51.tar drakx-18.51.tar.gz drakx-18.51.tar.bz2 drakx-18.51.tar.xz drakx-18.51.zip | Martin Whitaker | 21 months |
2.86 | drakx-2.86.tar drakx-2.86.tar.gz drakx-2.86.tar.bz2 drakx-2.86.tar.xz drakx-2.86.zip | Martin Whitaker | 23 months |
18.50 | drakx-18.50.tar drakx-18.50.tar.gz drakx-18.50.tar.bz2 drakx-18.50.tar.xz drakx-18.50.zip | Martin Whitaker | 23 months |
18.48 | drakx-18.48.tar drakx-18.48.tar.gz drakx-18.48.tar.bz2 drakx-18.48.tar.xz drakx-18.48.zip | Thierry Vignaud | 3 years |
2.59 | drakx-2.59.tar drakx-2.59.tar.gz drakx-2.59.tar.bz2 drakx-2.59.tar.xz drakx-2.59.zip | Thierry Vignaud | 3 years |
2.57 | drakx-2.57.tar drakx-2.57.tar.gz drakx-2.57.tar.bz2 drakx-2.57.tar.xz drakx-2.57.zip | Thierry Vignaud | 3 years |
18.47 | drakx-18.47.tar drakx-18.47.tar.gz drakx-18.47.tar.bz2 drakx-18.47.tar.xz drakx-18.47.zip | Thierry Vignaud | 3 years |
18.46 | drakx-18.46.tar drakx-18.46.tar.gz drakx-18.46.tar.bz2 drakx-18.46.tar.xz drakx-18.46.zip | Thierry Vignaud | 3 years |
2.83 | drakx-2.83.tar drakx-2.83.tar.gz drakx-2.83.tar.bz2 drakx-2.83.tar.xz drakx-2.83.zip | Thomas Backlund | 3 years |
18.45 | drakx-18.45.tar drakx-18.45.tar.gz drakx-18.45.tar.bz2 drakx-18.45.tar.xz drakx-18.45.zip | Thomas Backlund | 3 years |
2.56 | drakx-2.56.tar drakx-2.56.tar.gz drakx-2.56.tar.bz2 drakx-2.56.tar.xz drakx-2.56.zip | Thomas Backlund | 3 years |
18.44 | drakx-18.44.tar drakx-18.44.tar.gz drakx-18.44.tar.bz2 drakx-18.44.tar.xz drakx-18.44.zip | Donald Stewart | 3 years |
2.82 | drakx-2.82.tar drakx-2.82.tar.gz drakx-2.82.tar.bz2 drakx-2.82.tar.xz drakx-2.82.zip | Thomas Backlund | 3 years |
18.43 | drakx-18.43.tar drakx-18.43.tar.gz drakx-18.43.tar.bz2 drakx-18.43.tar.xz drakx-18.43.zip | Martin Whitaker | 4 years |
18.42 | drakx-18.42.tar drakx-18.42.tar.gz drakx-18.42.tar.bz2 drakx-18.42.tar.xz drakx-18.42.zip | Martin Whitaker | 4 years |
18.40 | drakx-18.40.tar drakx-18.40.tar.gz drakx-18.40.tar.bz2 drakx-18.40.tar.xz drakx-18.40.zip | Martin Whitaker | 4 years |
2.81 | drakx-2.81.tar drakx-2.81.tar.gz drakx-2.81.tar.bz2 drakx-2.81.tar.xz drakx-2.81.zip | Thomas Backlund | 4 years |
2.55 | drakx-2.55.tar drakx-2.55.tar.gz drakx-2.55.tar.bz2 drakx-2.55.tar.xz drakx-2.55.zip | Thomas Backlund | 4 years |
18.39 | drakx-18.39.tar drakx-18.39.tar.gz drakx-18.39.tar.bz2 drakx-18.39.tar.xz drakx-18.39.zip | Nicolas Lécureuil | 4 years |
18.38 | drakx-18.38.tar drakx-18.38.tar.gz drakx-18.38.tar.bz2 drakx-18.38.tar.xz drakx-18.38.zip | Thierry Vignaud | 4 years |
18.37 | drakx-18.37.tar drakx-18.37.tar.gz drakx-18.37.tar.bz2 drakx-18.37.tar.xz drakx-18.37.zip | Thierry Vignaud | 4 years |
2.78 | drakx-2.78.tar drakx-2.78.tar.gz drakx-2.78.tar.bz2 drakx-2.78.tar.xz drakx-2.78.zip | Martin Whitaker | 4 years |
2.77 | drakx-2.77.tar drakx-2.77.tar.gz drakx-2.77.tar.bz2 drakx-2.77.tar.xz drakx-2.77.zip | Martin Whitaker | 4 years |
2.76 | drakx-2.76.tar drakx-2.76.tar.gz drakx-2.76.tar.bz2 drakx-2.76.tar.xz drakx-2.76.zip | Martin Whitaker | 4 years |
2.50 | drakx-2.50.tar drakx-2.50.tar.gz drakx-2.50.tar.bz2 drakx-2.50.tar.xz drakx-2.50.zip | Martin Whitaker | 4 years |
18.36 | drakx-18.36.tar drakx-18.36.tar.gz drakx-18.36.tar.bz2 drakx-18.36.tar.xz drakx-18.36.zip | Thierry Vignaud | 4 years |
18.35 | drakx-18.35.tar drakx-18.35.tar.gz drakx-18.35.tar.bz2 drakx-18.35.tar.xz drakx-18.35.zip | Thierry Vignaud | 4 years |
18.34 | drakx-18.34.tar drakx-18.34.tar.gz drakx-18.34.tar.bz2 drakx-18.34.tar.xz drakx-18.34.zip | Thierry Vignaud | 4 years |
18.33 | drakx-18.33.tar drakx-18.33.tar.gz drakx-18.33.tar.bz2 drakx-18.33.tar.xz drakx-18.33.zip | Thierry Vignaud | 4 years |
18.32 | drakx-18.32.tar drakx-18.32.tar.gz drakx-18.32.tar.bz2 drakx-18.32.tar.xz drakx-18.32.zip | Martin Whitaker | 4 years |
18.31 | drakx-18.31.tar drakx-18.31.tar.gz drakx-18.31.tar.bz2 drakx-18.31.tar.xz drakx-18.31.zip | Martin Whitaker | 4 years |
1.65 | drakx-1.65.tar drakx-1.65.tar.gz drakx-1.65.tar.bz2 drakx-1.65.tar.xz drakx-1.65.zip | Thierry Vignaud | 4 years |
18.30 | drakx-18.30.tar drakx-18.30.tar.gz drakx-18.30.tar.bz2 drakx-18.30.tar.xz drakx-18.30.zip | Martin Whitaker | 4 years |
18.29 | drakx-18.29.tar drakx-18.29.tar.gz drakx-18.29.tar.bz2 drakx-18.29.tar.xz drakx-18.29.zip | Martin Whitaker | 4 years |
18.28 | drakx-18.28.tar drakx-18.28.tar.gz drakx-18.28.tar.bz2 drakx-18.28.tar.xz drakx-18.28.zip | Martin Whitaker | 4 years |
18.27.1 | drakx-18.27.1.tar drakx-18.27.1.tar.gz drakx-18.27.1.tar.bz2 drakx-18.27.1.tar.xz drakx-18.27.1.zip | Thomas Backlund | 4 years |
18.27 | drakx-18.27.tar drakx-18.27.tar.gz drakx-18.27.tar.bz2 drakx-18.27.tar.xz drakx-18.27.zip | Thierry Vignaud | 4 years |
1.64 | drakx-1.64.tar drakx-1.64.tar.gz drakx-1.64.tar.bz2 drakx-1.64.tar.xz drakx-1.64.zip | Thierry Vignaud | 4 years |
18.26 | drakx-18.26.tar drakx-18.26.tar.gz drakx-18.26.tar.bz2 drakx-18.26.tar.xz drakx-18.26.zip | Thierry Vignaud | 4 years |
1.63 | drakx-1.63.tar drakx-1.63.tar.gz drakx-1.63.tar.bz2 drakx-1.63.tar.xz drakx-1.63.zip | Thierry Vignaud | 4 years |
18.25 | drakx-18.25.tar drakx-18.25.tar.gz drakx-18.25.tar.bz2 drakx-18.25.tar.xz drakx-18.25.zip | Thierry Vignaud | 4 years |
18.24 | drakx-18.24.tar drakx-18.24.tar.gz drakx-18.24.tar.bz2 drakx-18.24.tar.xz drakx-18.24.zip | Martin Whitaker | 4 years |
18.23 | drakx-18.23.tar drakx-18.23.tar.gz drakx-18.23.tar.bz2 drakx-18.23.tar.xz drakx-18.23.zip | Thierry Vignaud | 5 years |
2.42 | drakx-2.42.tar drakx-2.42.tar.gz drakx-2.42.tar.bz2 drakx-2.42.tar.xz drakx-2.42.zip | Thomas Backlund | 5 years |
2.69 | drakx-2.69.tar drakx-2.69.tar.gz drakx-2.69.tar.bz2 drakx-2.69.tar.xz drakx-2.69.zip | Thomas Backlund | 5 years |
18.22 | drakx-18.22.tar drakx-18.22.tar.gz drakx-18.22.tar.bz2 drakx-18.22.tar.xz drakx-18.22.zip | Thierry Vignaud | 5 years |
2.67 | drakx-2.67.tar drakx-2.67.tar.gz drakx-2.67.tar.bz2 drakx-2.67.tar.xz drakx-2.67.zip | Thomas Backlund | 5 years |
1.62 | drakx-1.62.tar drakx-1.62.tar.gz drakx-1.62.tar.bz2 drakx-1.62.tar.xz drakx-1.62.zip | Thomas Backlund | 5 years |
18.20 | drakx-18.20.tar drakx-18.20.tar.gz drakx-18.20.tar.bz2 drakx-18.20.tar.xz drakx-18.20.zip | Thomas Backlund | 5 years |
2.66 | drakx-2.66.tar drakx-2.66.tar.gz drakx-2.66.tar.bz2 drakx-2.66.tar.xz drakx-2.66.zip | Thomas Backlund | 5 years |
2.40 | drakx-2.40.tar drakx-2.40.tar.gz drakx-2.40.tar.bz2 drakx-2.40.tar.xz drakx-2.40.zip | Thomas Backlund | 5 years |
2.65 | drakx-2.65.tar drakx-2.65.tar.gz drakx-2.65.tar.bz2 drakx-2.65.tar.xz drakx-2.65.zip | Thomas Backlund | 5 years |
2.64 | drakx-2.64.tar drakx-2.64.tar.gz drakx-2.64.tar.bz2 drakx-2.64.tar.xz drakx-2.64.zip | Martin Whitaker | 5 years |
2.63 | drakx-2.63.tar drakx-2.63.tar.gz drakx-2.63.tar.bz2 drakx-2.63.tar.xz drakx-2.63.zip | Martin Whitaker | 5 years |
2.62 | drakx-2.62.tar drakx-2.62.tar.gz drakx-2.62.tar.bz2 drakx-2.62.tar.xz drakx-2.62.zip | Martin Whitaker | 5 years |
18.19 | drakx-18.19.tar drakx-18.19.tar.gz drakx-18.19.tar.bz2 drakx-18.19.tar.xz drakx-18.19.zip | Martin Whitaker | 5 years |
2.61 | drakx-2.61.tar drakx-2.61.tar.gz drakx-2.61.tar.bz2 drakx-2.61.tar.xz drakx-2.61.zip | Martin Whitaker | 5 years |
18.17 | drakx-18.17.tar drakx-18.17.tar.gz drakx-18.17.tar.bz2 drakx-18.17.tar.xz drakx-18.17.zip | Jani Välimaa | 5 years |
1.61 | drakx-1.61.tar drakx-1.61.tar.gz drakx-1.61.tar.bz2 drakx-1.61.tar.xz drakx-1.61.zip | Thomas Backlund | 5 years |
18.16 | drakx-18.16.tar drakx-18.16.tar.gz drakx-18.16.tar.bz2 drakx-18.16.tar.xz drakx-18.16.zip | Thomas Backlund | 5 years |
2.60 | drakx-2.60.tar drakx-2.60.tar.gz drakx-2.60.tar.bz2 drakx-2.60.tar.xz drakx-2.60.zip | Thomas Backlund | 5 years |
2.39 | drakx-2.39.tar drakx-2.39.tar.gz drakx-2.39.tar.bz2 drakx-2.39.tar.xz drakx-2.39.zip | Thomas Backlund | 5 years |
18.15 | drakx-18.15.tar drakx-18.15.tar.gz drakx-18.15.tar.bz2 drakx-18.15.tar.xz drakx-18.15.zip | Thierry Vignaud | 5 years |
18.14 | drakx-18.14.tar drakx-18.14.tar.gz drakx-18.14.tar.bz2 drakx-18.14.tar.xz drakx-18.14.zip | Thierry Vignaud | 5 years |
18.13 | drakx-18.13.tar drakx-18.13.tar.gz drakx-18.13.tar.bz2 drakx-18.13.tar.xz drakx-18.13.zip | Martin Whitaker | 5 years |
2.58 | drakx-2.58.tar drakx-2.58.tar.gz drakx-2.58.tar.bz2 drakx-2.58.tar.xz drakx-2.58.zip | Martin Whitaker | 5 years |
18.12 | drakx-18.12.tar drakx-18.12.tar.gz drakx-18.12.tar.bz2 drakx-18.12.tar.xz drakx-18.12.zip | Martin Whitaker | 5 years |
18.11 | drakx-18.11.tar drakx-18.11.tar.gz drakx-18.11.tar.bz2 drakx-18.11.tar.xz drakx-18.11.zip | Martin Whitaker | 5 years |
18.10 | drakx-18.10.tar drakx-18.10.tar.gz drakx-18.10.tar.bz2 drakx-18.10.tar.xz drakx-18.10.zip | Martin Whitaker | 6 years |
2.36 | drakx-2.36.tar drakx-2.36.tar.gz drakx-2.36.tar.bz2 drakx-2.36.tar.xz drakx-2.36.zip | Martin Whitaker | 6 years |
18.9 | drakx-18.9.tar drakx-18.9.tar.gz drakx-18.9.tar.bz2 drakx-18.9.tar.xz drakx-18.9.zip | Martin Whitaker | 6 years |
18.8.1 | drakx-18.8.1.tar drakx-18.8.1.tar.gz drakx-18.8.1.tar.bz2 drakx-18.8.1.tar.xz drakx-18.8.1.zip | Thomas Backlund | 6 years |
2.33 | drakx-2.33.tar drakx-2.33.tar.gz drakx-2.33.tar.bz2 drakx-2.33.tar.xz drakx-2.33.zip | Thierry Vignaud | 6 years |
18.8 | drakx-18.8.tar drakx-18.8.tar.gz drakx-18.8.tar.bz2 drakx-18.8.tar.xz drakx-18.8.zip | Thierry Vignaud | 6 years |
18.7 | drakx-18.7.tar drakx-18.7.tar.gz drakx-18.7.tar.bz2 drakx-18.7.tar.xz drakx-18.7.zip | Thierry Vignaud | 6 years |
1.60 | drakx-1.60.tar drakx-1.60.tar.gz drakx-1.60.tar.bz2 drakx-1.60.tar.xz drakx-1.60.zip | Thierry Vignaud | 6 years |
18.6 | drakx-18.6.tar drakx-18.6.tar.gz drakx-18.6.tar.bz2 drakx-18.6.tar.xz drakx-18.6.zip | Thierry Vignaud | 6 years |
18.5 | drakx-18.5.tar drakx-18.5.tar.gz drakx-18.5.tar.bz2 drakx-18.5.tar.xz drakx-18.5.zip | Thierry Vignaud | 6 years |
2.54 | drakx-2.54.tar drakx-2.54.tar.gz drakx-2.54.tar.bz2 drakx-2.54.tar.xz drakx-2.54.zip | Martin Whitaker | 6 years |
2.32 | drakx-2.32.tar drakx-2.32.tar.gz drakx-2.32.tar.bz2 drakx-2.32.tar.xz drakx-2.32.zip | Martin Whitaker | 6 years |
18.4 | drakx-18.4.tar drakx-18.4.tar.gz drakx-18.4.tar.bz2 drakx-18.4.tar.xz drakx-18.4.zip | Martin Whitaker | 6 years |
18.2 | drakx-18.2.tar drakx-18.2.tar.gz drakx-18.2.tar.bz2 drakx-18.2.tar.xz drakx-18.2.zip | Thomas Backlund | 6 years |
18.1 | drakx-18.1.tar drakx-18.1.tar.gz drakx-18.1.tar.bz2 drakx-18.1.tar.xz drakx-18.1.zip | Thierry Vignaud | 6 years |
1.59 | drakx-1.59.tar drakx-1.59.tar.gz drakx-1.59.tar.bz2 drakx-1.59.tar.xz drakx-1.59.zip | Thomas Backlund | 6 years |
1.58 | drakx-1.58.tar drakx-1.58.tar.gz drakx-1.58.tar.bz2 drakx-1.58.tar.xz drakx-1.58.zip | Thomas Backlund | 6 years |
18.0 | drakx-18.0.tar drakx-18.0.tar.gz drakx-18.0.tar.bz2 drakx-18.0.tar.xz drakx-18.0.zip | Thierry Vignaud | 6 years |
17.88.3 | drakx-17.88.3.tar drakx-17.88.3.tar.gz drakx-17.88.3.tar.bz2 drakx-17.88.3.tar.xz drakx-17.88.3.zip | Martin Whitaker | 6 years |
17.99 | drakx-17.99.tar drakx-17.99.tar.gz drakx-17.99.tar.bz2 drakx-17.99.tar.xz drakx-17.99.zip | Thierry Vignaud | 6 years |
2.46.3 | drakx-2.46.3.tar drakx-2.46.3.tar.gz drakx-2.46.3.tar.bz2 drakx-2.46.3.tar.xz drakx-2.46.3.zip | Thomas Backlund | 6 years |
2.24.2 | drakx-2.24.2.tar drakx-2.24.2.tar.gz drakx-2.24.2.tar.bz2 drakx-2.24.2.tar.xz drakx-2.24.2.zip | Thomas Backlund | 6 years |
2.52 | drakx-2.52.tar drakx-2.52.tar.gz drakx-2.52.tar.bz2 drakx-2.52.tar.xz drakx-2.52.zip | Thomas Backlund | 6 years |
2.30 | drakx-2.30.tar drakx-2.30.tar.gz drakx-2.30.tar.bz2 drakx-2.30.tar.xz drakx-2.30.zip | Thomas Backlund | 6 years |
2.51 | drakx-2.51.tar drakx-2.51.tar.gz drakx-2.51.tar.bz2 drakx-2.51.tar.xz drakx-2.51.zip | Thomas Backlund | 6 years |
2.29 | drakx-2.29.tar drakx-2.29.tar.gz drakx-2.29.tar.bz2 drakx-2.29.tar.xz drakx-2.29.zip | Thomas Backlund | 6 years |
17.98 | drakx-17.98.tar drakx-17.98.tar.gz drakx-17.98.tar.bz2 drakx-17.98.tar.xz drakx-17.98.zip | Thierry Vignaud | 6 years |
12.75e36beb8669302615274ffbb013ac2c92605cafa6 | drakx-12.75e36beb8669302615274ffbb013ac2c92605cafa6.tar drakx-12.75e36beb8669302615274ffbb013ac2c92605cafa6.tar.gz drakx-12.75e36beb8669302615274ffbb013ac2c92605cafa6.tar.bz2 drakx-12.75e36beb8669302615274ffbb013ac2c92605cafa6.tar.xz drakx-12.75e36beb8669302615274ffbb013ac2c92605cafa6.zip | Thierry Vignaud | 6 years |
17.97 | drakx-17.97.tar drakx-17.97.tar.gz drakx-17.97.tar.bz2 drakx-17.97.tar.xz drakx-17.97.zip | Thierry Vignaud | 6 years |
17.88.2 | drakx-17.88.2.tar drakx-17.88.2.tar.gz drakx-17.88.2.tar.bz2 drakx-17.88.2.tar.xz drakx-17.88.2.zip | Martin Whitaker | 6 years |
17.96 | drakx-17.96.tar drakx-17.96.tar.gz drakx-17.96.tar.bz2 drakx-17.96.tar.xz drakx-17.96.zip | Martin Whitaker | 6 years |
1.57 | drakx-1.57.tar drakx-1.57.tar.gz drakx-1.57.tar.bz2 drakx-1.57.tar.xz drakx-1.57.zip | Thierry Vignaud | 6 years |
17.95 | drakx-17.95.tar drakx-17.95.tar.gz drakx-17.95.tar.bz2 drakx-17.95.tar.xz drakx-17.95.zip | Thierry Vignaud | 6 years |
17.94 | drakx-17.94.tar drakx-17.94.tar.gz drakx-17.94.tar.bz2 drakx-17.94.tar.xz drakx-17.94.zip | Thierry Vignaud | 6 years |
1.56 | drakx-1.56.tar drakx-1.56.tar.gz drakx-1.56.tar.bz2 drakx-1.56.tar.xz drakx-1.56.zip | Thomas Backlund | 7 years |
17.93 | drakx-17.93.tar drakx-17.93.tar.gz drakx-17.93.tar.bz2 drakx-17.93.tar.xz drakx-17.93.zip | Thomas Backlund | 7 years |
2.48 | drakx-2.48.tar drakx-2.48.tar.gz drakx-2.48.tar.bz2 drakx-2.48.tar.xz drakx-2.48.zip | Thomas Backlund | 7 years |
2.26 | drakx-2.26.tar drakx-2.26.tar.gz drakx-2.26.tar.bz2 drakx-2.26.tar.xz drakx-2.26.zip | Thomas Backlund | 7 years |
17.92 | drakx-17.92.tar drakx-17.92.tar.gz drakx-17.92.tar.bz2 drakx-17.92.tar.xz drakx-17.92.zip | Thomas Backlund | 7 years |
17.91 | drakx-17.91.tar drakx-17.91.tar.gz drakx-17.91.tar.bz2 drakx-17.91.tar.xz drakx-17.91.zip | Thierry Vignaud | 7 years |
17.88.1 | drakx-17.88.1.tar drakx-17.88.1.tar.gz drakx-17.88.1.tar.bz2 drakx-17.88.1.tar.xz drakx-17.88.1.zip | Thierry Vignaud | 7 years |
17.90 | drakx-17.90.tar drakx-17.90.tar.gz drakx-17.90.tar.bz2 drakx-17.90.tar.xz drakx-17.90.zip | Thierry Vignaud | 7 years |
17.89 | drakx-17.89.tar drakx-17.89.tar.gz drakx-17.89.tar.bz2 drakx-17.89.tar.xz drakx-17.89.zip | Thierry Vignaud | 7 years |
17.88 | drakx-17.88.tar drakx-17.88.tar.gz drakx-17.88.tar.bz2 drakx-17.88.tar.xz drakx-17.88.zip | Thomas Backlund | 7 years |
17.87 | drakx-17.87.tar drakx-17.87.tar.gz drakx-17.87.tar.bz2 drakx-17.87.tar.xz drakx-17.87.zip | Anne Nicolas | 7 years |
17.86 | drakx-17.86.tar drakx-17.86.tar.gz drakx-17.86.tar.bz2 drakx-17.86.tar.xz drakx-17.86.zip | Martin Whitaker | 7 years |
17.85 | drakx-17.85.tar drakx-17.85.tar.gz drakx-17.85.tar.bz2 drakx-17.85.tar.xz drakx-17.85.zip | Thierry Vignaud | 7 years |
17.84 | drakx-17.84.tar drakx-17.84.tar.gz drakx-17.84.tar.bz2 drakx-17.84.tar.xz drakx-17.84.zip | Rémi Verschelde | 7 years |
17.83 | drakx-17.83.tar drakx-17.83.tar.gz drakx-17.83.tar.bz2 drakx-17.83.tar.xz drakx-17.83.zip | Thierry Vignaud | 7 years |
17.82 | drakx-17.82.tar drakx-17.82.tar.gz drakx-17.82.tar.bz2 drakx-17.82.tar.xz drakx-17.82.zip | Martin Whitaker | 7 years |
17.81 | drakx-17.81.tar drakx-17.81.tar.gz drakx-17.81.tar.bz2 drakx-17.81.tar.xz drakx-17.81.zip | Rémi Verschelde | 7 years |
17.80 | drakx-17.80.tar drakx-17.80.tar.gz drakx-17.80.tar.bz2 drakx-17.80.tar.xz drakx-17.80.zip | Rémi Verschelde | 7 years |
17.79 | drakx-17.79.tar drakx-17.79.tar.gz drakx-17.79.tar.bz2 drakx-17.79.tar.xz drakx-17.79.zip | Thomas Backlund | 7 years |
17.78 | drakx-17.78.tar drakx-17.78.tar.gz drakx-17.78.tar.bz2 drakx-17.78.tar.xz drakx-17.78.zip | Anne Nicolas | 7 years |
17.77 | drakx-17.77.tar drakx-17.77.tar.gz drakx-17.77.tar.bz2 drakx-17.77.tar.xz drakx-17.77.zip | Rémi Verschelde | 7 years |
17.76 | drakx-17.76.tar drakx-17.76.tar.gz drakx-17.76.tar.bz2 drakx-17.76.tar.xz drakx-17.76.zip | Thierry Vignaud | 7 years |
17.75 | drakx-17.75.tar drakx-17.75.tar.gz drakx-17.75.tar.bz2 drakx-17.75.tar.xz drakx-17.75.zip | Thierry Vignaud | 7 years |
17.74 | drakx-17.74.tar drakx-17.74.tar.gz drakx-17.74.tar.bz2 drakx-17.74.tar.xz drakx-17.74.zip | Jani Välimaa | 7 years |
17.73 | drakx-17.73.tar drakx-17.73.tar.gz drakx-17.73.tar.bz2 drakx-17.73.tar.xz drakx-17.73.zip | Thierry Vignaud | 7 years |
17.72 | drakx-17.72.tar drakx-17.72.tar.gz drakx-17.72.tar.bz2 drakx-17.72.tar.xz drakx-17.72.zip | Thierry Vignaud | 7 years |
17.71 | drakx-17.71.tar drakx-17.71.tar.gz drakx-17.71.tar.bz2 drakx-17.71.tar.xz drakx-17.71.zip | Pascal Terjan | 8 years |
17.70 | drakx-17.70.tar drakx-17.70.tar.gz drakx-17.70.tar.bz2 drakx-17.70.tar.xz drakx-17.70.zip | Anne Nicolas | 8 years |
17.69 | drakx-17.69.tar drakx-17.69.tar.gz drakx-17.69.tar.bz2 drakx-17.69.tar.xz drakx-17.69.zip | Thierry Vignaud | 8 years |
17.68 | drakx-17.68.tar drakx-17.68.tar.gz drakx-17.68.tar.bz2 drakx-17.68.tar.xz drakx-17.68.zip | Thierry Vignaud | 8 years |
17.67 | drakx-17.67.tar drakx-17.67.tar.gz drakx-17.67.tar.bz2 drakx-17.67.tar.xz drakx-17.67.zip | Pascal Terjan | 8 years |
17.66 | drakx-17.66.tar drakx-17.66.tar.gz drakx-17.66.tar.bz2 drakx-17.66.tar.xz drakx-17.66.zip | Pascal Terjan | 8 years |
17.65 | drakx-17.65.tar drakx-17.65.tar.gz drakx-17.65.tar.bz2 drakx-17.65.tar.xz drakx-17.65.zip | Thierry Vignaud | 8 years |
17.64 | drakx-17.64.tar drakx-17.64.tar.gz drakx-17.64.tar.bz2 drakx-17.64.tar.xz drakx-17.64.zip | Anne Nicolas | 8 years |
17.63 | drakx-17.63.tar drakx-17.63.tar.gz drakx-17.63.tar.bz2 drakx-17.63.tar.xz drakx-17.63.zip | Anne Nicolas | 8 years |
17.62 | drakx-17.62.tar drakx-17.62.tar.gz drakx-17.62.tar.bz2 drakx-17.62.tar.xz drakx-17.62.zip | Anne Nicolas | 8 years |
17.61 | drakx-17.61.tar drakx-17.61.tar.gz drakx-17.61.tar.bz2 drakx-17.61.tar.xz drakx-17.61.zip | Thierry Vignaud | 8 years |
17.60 | drakx-17.60.tar drakx-17.60.tar.gz drakx-17.60.tar.bz2 drakx-17.60.tar.xz drakx-17.60.zip | Thierry Vignaud | 8 years |
17.59 | drakx-17.59.tar drakx-17.59.tar.gz drakx-17.59.tar.bz2 drakx-17.59.tar.xz drakx-17.59.zip | Thierry Vignaud | 8 years |
17.58 | drakx-17.58.tar drakx-17.58.tar.gz drakx-17.58.tar.bz2 drakx-17.58.tar.xz drakx-17.58.zip | Thierry Vignaud | 8 years |
17.57 | drakx-17.57.tar drakx-17.57.tar.gz drakx-17.57.tar.bz2 drakx-17.57.tar.xz drakx-17.57.zip | Thierry Vignaud | 8 years |
17.56 | drakx-17.56.tar drakx-17.56.tar.gz drakx-17.56.tar.bz2 drakx-17.56.tar.xz drakx-17.56.zip | Thierry Vignaud | 8 years |
17.54 | drakx-17.54.tar drakx-17.54.tar.gz drakx-17.54.tar.bz2 drakx-17.54.tar.xz drakx-17.54.zip | Thierry Vignaud | 8 years |
17.53 | drakx-17.53.tar drakx-17.53.tar.gz drakx-17.53.tar.bz2 drakx-17.53.tar.xz drakx-17.53.zip | Thierry Vignaud | 8 years |
17.52 | drakx-17.52.tar drakx-17.52.tar.gz drakx-17.52.tar.bz2 drakx-17.52.tar.xz drakx-17.52.zip | Thierry Vignaud | 8 years |
17.51 | drakx-17.51.tar drakx-17.51.tar.gz drakx-17.51.tar.bz2 drakx-17.51.tar.xz drakx-17.51.zip | Thierry Vignaud | 8 years |
17.50 | drakx-17.50.tar drakx-17.50.tar.gz drakx-17.50.tar.bz2 drakx-17.50.tar.xz drakx-17.50.zip | Thierry Vignaud | 8 years |
17.49 | drakx-17.49.tar drakx-17.49.tar.gz drakx-17.49.tar.bz2 drakx-17.49.tar.xz drakx-17.49.zip | Thierry Vignaud | 8 years |
17.48 | drakx-17.48.tar drakx-17.48.tar.gz drakx-17.48.tar.bz2 drakx-17.48.tar.xz drakx-17.48.zip | Thierry Vignaud | 8 years |
17.47 | drakx-17.47.tar drakx-17.47.tar.gz drakx-17.47.tar.bz2 drakx-17.47.tar.xz drakx-17.47.zip | Thierry Vignaud | 8 years |
17.46 | drakx-17.46.tar drakx-17.46.tar.gz drakx-17.46.tar.bz2 drakx-17.46.tar.xz drakx-17.46.zip | Thierry Vignaud | 8 years |
17.45 | drakx-17.45.tar drakx-17.45.tar.gz drakx-17.45.tar.bz2 drakx-17.45.tar.xz drakx-17.45.zip | Thierry Vignaud | 8 years |
17.44 | drakx-17.44.tar drakx-17.44.tar.gz drakx-17.44.tar.bz2 drakx-17.44.tar.xz drakx-17.44.zip | Thierry Vignaud | 8 years |
17.43 | drakx-17.43.tar drakx-17.43.tar.gz drakx-17.43.tar.bz2 drakx-17.43.tar.xz drakx-17.43.zip | Thierry Vignaud | 8 years |
17.42 | drakx-17.42.tar drakx-17.42.tar.gz drakx-17.42.tar.bz2 drakx-17.42.tar.xz drakx-17.42.zip | Thierry Vignaud | 8 years |
17.41 | drakx-17.41.tar drakx-17.41.tar.gz drakx-17.41.tar.bz2 drakx-17.41.tar.xz drakx-17.41.zip | Thierry Vignaud | 8 years |
17.40 | drakx-17.40.tar drakx-17.40.tar.gz drakx-17.40.tar.bz2 drakx-17.40.tar.xz drakx-17.40.zip | Thierry Vignaud | 8 years |
17.39 | drakx-17.39.tar drakx-17.39.tar.gz drakx-17.39.tar.bz2 drakx-17.39.tar.xz drakx-17.39.zip | Thierry Vignaud | 8 years |
17.38 | drakx-17.38.tar drakx-17.38.tar.gz drakx-17.38.tar.bz2 drakx-17.38.tar.xz drakx-17.38.zip | Thierry Vignaud | 8 years |
17.37 | drakx-17.37.tar drakx-17.37.tar.gz drakx-17.37.tar.bz2 drakx-17.37.tar.xz drakx-17.37.zip | Thierry Vignaud | 8 years |
17.36.1 | drakx-17.36.1.tar drakx-17.36.1.tar.gz drakx-17.36.1.tar.bz2 drakx-17.36.1.tar.xz drakx-17.36.1.zip | Thierry Vignaud | 8 years |
17.36 | drakx-17.36.tar drakx-17.36.tar.gz drakx-17.36.tar.bz2 drakx-17.36.tar.xz drakx-17.36.zip | Thierry Vignaud | 8 years |
17.35.1 | drakx-17.35.1.tar drakx-17.35.1.tar.gz drakx-17.35.1.tar.bz2 drakx-17.35.1.tar.xz drakx-17.35.1.zip | Thierry Vignaud | 8 years |
17.35 | drakx-17.35.tar drakx-17.35.tar.gz drakx-17.35.tar.bz2 drakx-17.35.tar.xz drakx-17.35.zip | Thierry Vignaud | 8 years |
17.34.1 | drakx-17.34.1.tar drakx-17.34.1.tar.gz drakx-17.34.1.tar.bz2 drakx-17.34.1.tar.xz drakx-17.34.1.zip | Thierry Vignaud | 8 years |
17.34 | drakx-17.34.tar drakx-17.34.tar.gz drakx-17.34.tar.bz2 drakx-17.34.tar.xz drakx-17.34.zip | Thierry Vignaud | 8 years |
17.33 | drakx-17.33.tar drakx-17.33.tar.gz drakx-17.33.tar.bz2 drakx-17.33.tar.xz drakx-17.33.zip | Thierry Vignaud | 8 years |
17.31 | drakx-17.31.tar drakx-17.31.tar.gz drakx-17.31.tar.bz2 drakx-17.31.tar.xz drakx-17.31.zip | Anne Nicolas | 8 years |
17.29 | drakx-17.29.tar drakx-17.29.tar.gz drakx-17.29.tar.bz2 drakx-17.29.tar.xz drakx-17.29.zip | Thierry Vignaud | 8 years |
17.28 | drakx-17.28.tar drakx-17.28.tar.gz drakx-17.28.tar.bz2 drakx-17.28.tar.xz drakx-17.28.zip | Thierry Vignaud | 8 years |
17.27 | drakx-17.27.tar drakx-17.27.tar.gz drakx-17.27.tar.bz2 drakx-17.27.tar.xz drakx-17.27.zip | Thierry Vignaud | 8 years |
17.26.1 | drakx-17.26.1.tar drakx-17.26.1.tar.gz drakx-17.26.1.tar.bz2 drakx-17.26.1.tar.xz drakx-17.26.1.zip | Thierry Vignaud | 8 years |
17.26 | drakx-17.26.tar drakx-17.26.tar.gz drakx-17.26.tar.bz2 drakx-17.26.tar.xz drakx-17.26.zip | Thierry Vignaud | 8 years |
17.25 | drakx-17.25.tar drakx-17.25.tar.gz drakx-17.25.tar.bz2 drakx-17.25.tar.xz drakx-17.25.zip | Thierry Vignaud | 8 years |
17.24 | drakx-17.24.tar drakx-17.24.tar.gz drakx-17.24.tar.bz2 drakx-17.24.tar.xz drakx-17.24.zip&n
syscall_('mount', $_->{real_mntpoint}, type2fs($_), c::MS_MGC_VAL()) or log# write the partition table
sub write {
my ($hd) = @_;
$hd->{isDirty} or return;
$hd->{readonly} and die "a read-only partition table should not be dirty!";
#- set first primary partition active if no primary partitions are marked as active.
if (my @l = @{$hd->{primary}{raw}}) {
foreach (@l) {
$_->{local_start} = $_->{start};
$_->{active} ||= 0;
}
$l[0]{active} = 0x80 if !any { $_->{active} } @l;
}
#- last chance for verification, this make sure if an error is detected,
#- it will never be writed back on partition table.
verifyParts($hd);
$hd->write(0, $hd->{primary}{raw}, $hd->{primary}{info}) or die "writing of partition table failed";
#- should be fixed but a extended exist with no real extended partition, that blanks mbr!
if (arch() !~ /^sparc/) {
foreach (@{$hd->{extended}}) {
# in case of extended partitions, the start sector must be local to the partition
$_->{normal}{local_start} = $_->{normal}{start} - $_->{start};
$_->{extended} and $_->{extended}{local_start} = $_->{extended}{start} - $hd->{primary}{extended}{start};
$hd->write($_->{start}, $_->{raw}) or die "writing of partition table failed";
}
}
$hd->{isDirty} = 0;
$hd->{hasBeenDirty} = 1; #- used in undo (to know if undo should believe isDirty or not)
if (my $tell_kernel = delete $hd->{will_tell_kernel}) {
tell_kernel($hd, $tell_kernel);
}
}
sub active {
my ($hd, $part) = @_;
$_->{active} = 0 foreach @{$hd->{primary}{normal}};
$part->{active} = 0x80;
$hd->{isDirty} = 1;
}
# remove a normal partition from hard drive hd
sub remove {
my ($hd, $part) = @_;
my $i;
#- first search it in the primary partitions
$i = 0; foreach (@{$hd->{primary}{normal}}) {
if ($_ eq $part) {
will_tell_kernel($hd, del => $_);
splice(@{$hd->{primary}{normal}}, $i, 1);
%$_ = (); #- blank it
$hd->raw_removed($hd->{primary}{raw});
return 1;
}
$i++;
}
my ($first, $second, $third) = map { $_->{normal} } @{$hd->{extended} || []};
if ($third && $first eq $part) {
die "Can't handle removing hda5 when hda6 is not the second partition" if $second->{start} > $third->{start};
}
#- otherwise search it in extended partitions
foreach (@{$hd->{extended} || []}) {
$_->{normal} eq $part or next;
delete $_->{normal}; #- remove it
remove_empty_extended($hd);
assign_device_numbers($hd);
will_tell_kernel($hd, del => $part);
return 1;
}
0;
}
# create of partition at starting at `start', of size `size' and of type `pt_type' (nice comment, uh?)
sub add_primary {
my ($hd, $part) = @_;
{
local $hd->{primary}{normal}; #- save it to fake an addition of $part, that way add_primary do not modify $hd if it fails
push @{$hd->{primary}{normal}}, $part;
adjust_main_extended($hd); #- verify
$hd->raw_add($hd->{primary}{raw}, $part);
}
push @{$hd->{primary}{normal}}, $part; #- really do it
}
sub add_extended {
arch() =~ /^sparc|ppc/ and die N("Extended partition not supported on this platform");
my ($hd, $part, $extended_type) = @_;
$extended_type =~ s/Extended_?//;
my $e = $hd->{primary}{extended};
if ($e && !verifyInside($part, $e)) {
#-die "sorry, can't add outside the main extended partition" unless $::unsafe;
my $end = $e->{start} + $e->{size};
my $start = min($e->{start}, $part->{start});
$end = max($end, $part->{start} + $part->{size}) - $start;
{ #- faking a resizing of the main extended partition to test for problems
local $e->{start} = $start;
local $e->{size} = $end - $start;
eval { verifyPrimary($hd->{primary}) };
$@ and die
N("You have a hole in your partition table but I can't use it.
The only solution is to move your primary partitions to have the hole next to the extended partitions.");
}
}
if ($e && $part->{start} < $e->{start}) {
my $l = first(@{$hd->{extended}});
#- the first is a special case, must recompute its real size
$l->{start} = round_down($l->{normal}{start} - 1, $hd->cylinder_size);
$l->{size} = $l->{normal}{start} + $l->{normal}{size} - $l->{start};
my $ext = { %$l };
unshift @{$hd->{extended}}, { pt_type => 5, raw => [ $part, $ext, {}, {} ], normal => $part, extended => $ext };
#- size will be autocalculated :)
} else {
my ($ext, $ext_size) = is_empty_array_ref($hd->{extended}) ?
($hd->{primary}, -1) : #- -1 size will be computed by adjust_main_extended
(top(@{$hd->{extended}}), $part->{size});
my %ext = (pt_type => $extended_type || 5, start => $part->{start}, size => $ext_size);
$hd->raw_add($ext->{raw}, \%ext);
$ext->{extended} = \%ext;
push @{$hd->{extended}}, { %ext, raw => [ $part, {}, {}, {} ], normal => $part };
}
$part->{start}++; $part->{size}--; #- let it start after the extended partition sector
adjustStartAndEnd($hd, $part);
adjust_main_extended($hd);
}
sub add {
my ($hd, $part, $b_primaryOrExtended, $b_forceNoAdjust) = @_;
get_normal_parts($hd) >= ($hd->{device} =~ /^rd/ ? 7 : $hd->{device} =~ /^(sd|ida|cciss|ataraid)/ ? 15 : 63) and cdie "maximum number of partitions handled by linux reached";
$part->{notFormatted} = 1;
$part->{isFormatted} = 0;
$part->{rootDevice} = $hd->{device};
$part->{start} ||= 1 if arch() !~ /^sparc/; #- starting at sector 0 is not allowed
adjustStartAndEnd($hd, $part) unless $b_forceNoAdjust;
my $nb_primaries = $hd->{device} =~ /^rd/ ? 3 : 1;
if (arch() =~ /^sparc|ppc/ ||
$b_primaryOrExtended eq 'Primary' ||
$b_primaryOrExtended !~ /Extended/ && @{$hd->{primary}{normal} || []} < $nb_primaries) {
eval { add_primary($hd, $part) };
goto success if !$@;
}
if ($hd->hasExtended) {
eval { add_extended($hd, $part, $b_primaryOrExtended) };
goto success if !$@;
}
{
add_primary($hd, $part);
}
success:
assign_device_numbers($hd);
will_tell_kernel($hd, add => $part);
}
# search for the next partition
sub next {
my ($hd, $part) = @_;
first(
sort { $a->{start} <=> $b->{start} }
grep { $_->{start} >= $part->{start} + $part->{size} }
get_normal_parts($hd)
);
}
sub next_start {
my ($hd, $part) = @_;
my $next = &next($hd, $part);
$next ? $next->{start} : $hd->{totalsectors};
}
sub load {
my ($hd, $file, $b_force) = @_;
open(my $F, $file) or die N("Error reading file %s", $file);
my $h;
{
local $/ = "\0";
eval <$F>;
}
$@ and die N("Restoring from file %s failed: %s", $file, $@);
ref($h) eq 'ARRAY' or die N("Bad backup file");
my %h; @h{@fields2save} = @$h;
$h{totalsectors} == $hd->{totalsectors} or $b_force or cdie "bad totalsectors";
#- unsure we don't modify totalsectors
local $hd->{totalsectors};
@$hd{@fields2save} = @$h;
delete @$_{qw(isMounted isFormatted notFormatted toFormat toFormatUnsure)} foreach get_normal_parts($hd);
will_tell_kernel($hd, 'force_reboot'); #- just like undo, do not force write_partitions so that user can see the new partition table but can still discard it
}
sub save {
my ($hd, $file) = @_;
my @h = @$hd{@fields2save};
require Data::Dumper;
eval { output($file, Data::Dumper->Dump([\@h], ['$h']), "\0") }
or die N("Error writing to file %s", $file);
}
|