Commit Graph

52 Commits (81bd738d0cfaba62a5dc007c2817899f02814c45)

Author SHA1 Message Date
Arnaud Rebillout 56fb4a09c3 Merge branch 'misc' into 'master'
Miscellaneous consistencies

See merge request kalilinux/build-scripts/live-build-config!36
1 year ago
Ben Wilson ae9b552efd
Misc formatting 1 year ago
Ben Wilson 0a814e13a7
Simple-CDD: consistency with other settings 1 year ago
Ben Wilson 42f2e223d8
Simple-CDD: fix typo 1 year ago
Ben Wilson fc25ab4848
Simple-CDD: Switch to kali.download as default mirror 1 year ago
Arnaud Rebillout 00a213b179
Depend on Kali's fork of debian-cd, and disable DEP11 support
More details can be found at:
* https://gitlab.com/kalilinux/internal/roles/packager/-/issues/30
* https://salsa.debian.org/images-team/debian-cd/-/merge_requests/31
2 years ago
Arnaud Rebillout 41a8565ff5
Drop misc package from offline.downloads
These packages were added at a time when debian-cd didn't resolve
Recommends to the end, so we needed to list it explicitly there. But
it's been fixed now, in debian-cd 3.1.36 (cf. #601203), so we can drop
those lines.
2 years ago
Arnaud Rebillout a1c636e7a6
Drop usr-is-merged from offline.downloads and installer-netinst
usr-is-merged is included in simple-cdd offline.downloads's since
version 0.6.9. Not sure why I needed to list it in installer-netinst as
well at the time, but after testing, I can confirm it's not needed
anymore.
2 years ago
Arnaud Rebillout c8531ad33c
Drop python3-unicodedata2 from offline.downloads
As python 3.11 is now in Kali (rolling and last release)
2 years ago
Arnaud Rebillout 4561884cbe
Make Kali Purple installer offline
The package exploitdb-papers was removed from kali-tools-identify in
src:kali-meta 2023.1.11, so there's no need to exclude it here anymore.

As a consequence, no need for the network during installation anymore.
2 years ago
Arnaud Rebillout 384f071f0a
Fix deb822 sources 2 years ago
Raphaël Hertzog e521a18dcf
Enable non-free-firmware by default everywhere
Even though it's currently empty, we want users to have this component
enabled so that they don't miss on updates when we start to move
packages from non-free to non-free-firmware.
2 years ago
Arnaud Rebillout a364ca4abf
Update kali-purple.postinst to use deb822 sources format 2 years ago
Arnaud Rebillout 243700c73f
Enable Kali Purple installer theme
Other things that I tried, but that didn't work, below:

I tried adding the preseed to simple-cdd/profiles/kali-purple.preseed,
however that didn't work, I guess that this preseed file is loaded only
later during installation, and that at this point the GUI was already
loaded and it's too late to set the theme.

I also tried to do this in simple-cdd.conf:

  # Theming
  if echo " $profiles " | grep -q " kali-purple "; then
    export KERNEL_PARAMS="${KERNEL_PARAMS} debian-installer/theme=Clearlooks-Purple "
  fi

But it doesn't work, seemingly 'profiles' is not set when simple-cdd
loads the conf, and even though we build with the command:

    build-simple-cdd [...] --profiles "$profiles" [...]

Given the fact that uppercase variables are exported, and what we
actually want to change is KERNEL_PARAMS, it seems that the most
straightforward is just to preset it from build.sh.
2 years ago
Arnaud Rebillout ede795dc4c
Drop comment in simple-cdd.conf
Kali won't have a non-free-firmware component in the short-term.
2 years ago
Arnaud Rebillout 825d3dcc52
Add kali-purple simple-cdd profile
This profile does the following:
- it enables the elastic apt repo
- it also enables the network during installation
- finally, it makes sure to exclude the very big package
  exploitdb-papers, otherwise the iso is too big (~ 6 GB)

I'm a bit surprised that we need to enable the network via a preseed
file. I thought that it would be enough to just make sure that the
installer-purple variant does NOT include the offline profile, but in
practice no, it's not enough.
2 years ago
Arnaud Rebillout ee4d243ac5
Set simple-cdd profiles from build.sh (instead of guessing from config)
With this change, we do NOT set profiles based on DISKTYPE anymore.
Instead, we set profiles (and auto_profiles) in build.sh, depending on
the variant.

This change is in preparation for next commit, where we'll introduce a
new installer variant.
2 years ago
Arnaud Rebillout a0e7685a32
Update conf for debian-cd 3.1.36
Otherwise we get plenty of error messages:

DEBUG build/debian-cd stderr: Use of uninitialized value
$ENV{"NONFREE_COMPONENTS"} in split at
<<DIR>>/simple-cdd/debian-cd/tools/which_deb line 23.
2 years ago
Daniel Ruiz de Alegría a84dc79ee5
Remove win32 loader in installer image too 2 years ago
Arnaud Rebillout a626b13fa8
Add link to Debian bug for python3-unicodedata2 3 years ago
Arnaud Rebillout 0dac9978cf
Ensure python3-unicodedata2 is available in installer iso
Installation from the weekly installer image fails (2022-W40 and
2022-W41). From syslog:

    in-target: The following packages have unmet dependencies:
    in-target:  king-phisher : Depends: python3-matplotlib (>= 1.4.3) but it is not installable
    in-target:                 Recommends: python3-mpltoolkits.basemap (>= 1.0.7) but it is not installable

From a manual install, using the iso packages set in sources.list:

    # apt install king-phisher
    [...]
    The following packages have unmet dependencies:
     python3-fonttools : Depends: python3-unicodedata2 (>= 14.0.0) but it is not installable or
                                  python3-all (>= 3.11.0) but 3.10.6-1 is to be installed
    E: Unable to correct problems, you have held broken packages.

Dependency chain is as follow:

    king-phisher
    +-- python3-matplotlib
      +-- python3-fonttools
        +-- python3-unicodedata2 (>= 14.0.0) | python3-all (>= 3.11.0)

In the set of packages that are available in the iso, we don't have
python3-unicodedata2 , however we have python3-all , BUT it's at version
3.10.6-1 ... So nothing can satisfy the dependency.

For now, let's manually force python3-unicodedata2 in the iso, as a
workaround.
3 years ago
Arnaud Rebillout 35e8e43efa
Add usr-is-merged to the list of offline packages 3 years ago
Arnaud Rebillout 1c93b09f27
Ensure speech-dispatcher recommendations are in the installer
In a real situation, those packages are installed by the chain of
depends/recommends orca -> speech-dispatcher ->
(speech-dispatcher-espeak-ng, sound-icons).

However that chain is broken, in all likelyhood by debian-cd dependency
handling, cf. #601203.

This mention should ensure these packages are present in the generated
ISO.

Fixes: #46
3 years ago
Raphaël Hertzog f673530399
Add reference to debian-cd bug to remember to drop the hacks when possible 3 years ago
Daniel Ruiz de Alegría bb399b8bf6
Update script to copy grub theme to installer iso 3 years ago
Raphaël Hertzog 8c0a1c7b7d
Ensure pipewire-pulse is in the installer
In a real situation, the package is installed by a chain of recommends
pipewire-bin -> wireplumber -> pipewire-pulse and that chain is broken
either by debian-cd's dependency handling or by simple-cdd's logic to
build its local mirror. But this mention should ensure its presence in
the generated ISO.
3 years ago
Arnaud Rebillout 1ec65ba50c
Revert "Remove empty folders"
This reverts commit d1ad9e1ea2.

The empty directory `local_packages` was there for a reason.
`simple-cdd` gives a warning when this directory doesn't exist:

  WARNING local package source /home/kali/live-build-config/simple-cdd/local_packages is neither a file nor a directory

So re-instate this empty dir to keep the logs clean.

I assume that `variant-minimal` was also there for a good reason.
3 years ago
Arnaud Rebillout fb799cf349
Nitpick, sort some lists alphabetically 3 years ago
Raphaël Hertzog 69bf2252e4
Enable offline installation for all images except NETINST
We recently switched from DVD to BD (Bluray Disc) because the image
didn't fit in a single layer DVD anymore and that changed broke
a further check enabling the offline logic.
4 years ago
Raphaël Hertzog 6dcbf56610
Revert "Remove un-used default profile"
This reverts commit e695c81d1a.

The default profile is always enabled by simple-cdd and we want to
override it!
4 years ago
Ben Wilson 4b6aa7a76d Symlink to live file, rather than copying (we do it with preseed anyway) 4 years ago
Ben Wilson e695c81d1a Remove un-used default profile 4 years ago
Ben Wilson d1ad9e1ea2 Remove empty folders 4 years ago
Ben Wilson c00a132d10 Remove trailing spaces 4 years ago
Ben Wilson 665bb3af6f Delete duplicate files and move to consistent naming location 4 years ago
Ben e470475f02 Update default generated files 4 years ago
Raphaël Hertzog 05baf250ab
Force inclusion of unrar in the installer ISO 4 years ago
Raphaël Hertzog 1205bf686f
Pass "net.ifnames=0" to the kernel command line of the installer images
We want debian-installer to see "ethX" device names and not the
other names that we have disabled via kali-defaults anyway. That
discrepancy even breaks networking for minimal installations
where /etc/network/interfaces gets the wrong name.
4 years ago
Raphaël Hertzog f3a8a2d472
Make it easy to include local packages in the generated installer images 4 years ago
Raphaël Hertzog ef71f0e3e9
Check that files that we want to update do exist
On arm64 the set of available files is different because we don't use
isolinux and win32-loader.
4 years ago
Raphaël Hertzog 71ee6a3001
Group arm64 specific overrides in the same if statement 4 years ago
Steev Klimaszewski 319e6a39db Don't actually pass a hostname
This causes the install to fail.

Signed-off-by: Steev Klimaszewski <steev@kali.org>
4 years ago
Steev Klimaszewski 2d9668a335 Export a default console for arm64
Signed-off-by: Steev Klimaszewski <steev@kali.org>
4 years ago
Steev Klimaszewski 817f168d8c Inital arm64 work 4 years ago
Raphaël Hertzog 5989ec37de
Also set zsh by default for the root user 4 years ago
Raphaël Hertzog 897caba82b
Use the same kali-finish-install script in live and installer images
This ensures that we do the same set of customizations whatever way
Kali is installed.
4 years ago
Raphaël Hertzog 208c080989
Ensure initial user is part of kaboxer group 4 years ago
Raphaël Hertzog 7ec405792b
Enable zsh by default 4 years ago
Raphaël Hertzog 1ee97cc44f Embed virtualization related packages in any offline image
This ensures that they can be installed by finish-install.d/08hw-detect
when virtualization is detected. Otherwise the lack of network breaks
this step.
5 years ago
Raphaël Hertzog 830d863fa6 Change simple-cdd configuration to have full installer work offline
We move the default preseed to the kali profile so that the default
preseed can actually again enable simple-cdd-profiles that we need
because we want the other profiles to have their preseed and postinst
working (and they work through the script run when simple-cdd-profiles
is installed).

We add an offline profile that disables the network mirror (but not
the networking!) and we add a "postinst" script that is run in the
finish-install step to actually configure /etc/apt/sources.list that
is empty due to the preseed.
5 years ago