Commit Graph

195 Commits (main)

Author SHA1 Message Date
Arnaud Rebillout b31a1ddaa4 Sync 0031-kali-user-setup with kali-finish-install
Not sure why there was no info messsages at all in this script, I'm
adding it now to reduce the diff with kali-finish-install, hopefully I'm
not breaking anything by using stdout for informative messages...
2 weeks ago
Arnaud Rebillout f270865323 Document other duplicates of kali-finish-install 2 weeks ago
Daniel Ruiz de Alegría f7c53c8738
Update boot menu background 1 month ago
Arnaud Rebillout b1be7b0cf4 Remove texlive-latex-extra (temporary)
In order to free some space on the live iso, which is too big at the
moment
1 month ago
Arnaud Rebillout 8ca1bfd664 Set executable bit on remove-bloat-from-recommended-packages.chroot
Doesn't change anything to the build. It's just that it's easier to spot
scripts when looking at the git repo with eg. `tree`: executable files
are highlighted.
1 month ago
Arnaud Rebillout bc4f41d5fe Add compat symlinks for xfce variants
The variants were renamed in 530b22106b,
breaking scripts that used the old name (like, our own build infra that
uses `--variant everything`, for example).

This commit adds compat symlinks so that things keep working.
1 month ago
Daniel Ruiz de Alegría 7abf80c77f
Optimize boot menu image 2 months ago
Daniel Ruiz de Alegría a7ed79a2f6
Merge remote-tracking branch 'origin/master' 2 months ago
Daniel Ruiz de Alegría 75b83129e6
Update boot menu background 2 months ago
g0t mi1k 4e4382e8c1 Sync preseed files 2 months ago
g0t mi1k fb95194293 Consistency: tabs to spaces 2 months ago
g0t mi1k 26efadcc71 Refresh live profile 2 months ago
g0t mi1k 530b22106b Prefix desktop to variant
Tool metapackages
2 months ago
g0t mi1k 2a549aa31a Split simple-cdd/debian-cd & live-build
## Live
`--live` = kali-live (previouly live-build-config)
<https://gitlab.com/kalilinux/build-scripts/kali-live>
Uses live-build

## Installer
`--installer` = kali-installer
<https://gitlab.com/kalilinux/build-scripts/kali-installer>
Uses simple-cdd (which is a wrapper for debian-cd)
2 months ago
Arnaud Rebillout 796bb62679
Configure default terminal according to the kali desktop package installed
This is necessary in case more than one terminal is installed, and they
both have the same alternative priority.

For example, while installing all packages at once, sometimes apt will
resolve a dependency "x-terminal-emulator" to one of the many packages
that provide it, for example "zutty". And then it will also install the
terminal listed in the "kali-desktop-${desktop}" metapackage that is
selected, eg. "qterminal" for "kali-desktop-xfce".

Both zutty and qterminal have a alternative priority of 40 at the
moment, so if zutty gets unpacked first, it will have precendence and be
the default terminal.

It's a long-standing issue. By the past, We tried to make sure that the
default desktop terminal is installed first, by listing it early in the
dependencies of the "kali-desktop-{desktop}" metapackage, and it kind of
works with the debian-installer, but it was hard to make it work (we had
to do some changes in tasksel), and it's still brittle as it relies on
apt's dependency solving, which is apt's internal sauce and might change
(hint, apt will get a new solver soon, cf [1]).

As it turns out, it doesn't work for the live iso, somehow we still get
zutty taking precedence over qterminal, I didn't check why, it probably
has to do with how live-build constructs the apt command-line in order
to install everything.

In any case: I think our approach so far didn't work, so with this
commit, we take another approach: we set the default terminal from the
finish-install script, for both the installer iso and the live iso. That
should solve the issue for good.

[1]: https://blog.jak-linux.org/2024/05/14/solver3/
8 months ago
Arnaud Rebillout cdca823618
Add console-data for the live image
- https://bugs.kali.org/view.php?id=8741
- https://bugs.debian.org/1070679
11 months ago
Daniel Ruiz de Alegría 474fa5f39a
Fix optimized png boot background not working 1 year ago
Daniel Ruiz de Alegría 3118f95975
Last tweaks to boot menu background 1 year ago
Daniel Ruiz de Alegría 196e624229
Add bottom black gradient to boot background 1 year ago
Daniel Ruiz de Alegría cb86d249bf
Resize boot image 1 year ago
Daniel Ruiz de Alegría 651911def5
Optimize boot menu background 1 year ago
Daniel Ruiz de Alegría f8f9eac7da
Update boot menu background 1 year ago
Arszilla ba88f8c900
Remove the deprecated copy to /usr/bin/ 1 year ago
Arnaud Rebillout 972cedebd2
Minor edits to i3 variant
No need to explicitly list kali-themes in the packages to install, it's
pulled in anyway via the following dependency chain: kali-desktop-i3 ->
kali-desktop-core -> kali-themes

I removed the pulseaudio hook. I really don't see a reason to start
pulseaudio once, during the build process, as root. Plus, the second
line of the hook (rm -rf .pulse-cookieaa) has no effect, since there's
no file named .pulse-cookieaa. I added some debug logs to the hook to
confirm that.
2 years ago
Arszilla 138dc4bed8 Rename variant-i3wm to variant-i3 and enable i3-dotfiles 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 17f0a70d80
Install kali-linux-firmware in Live images
It used to be pulled in as a dependency of kali-linux-headless, but it
just changed, now we must install it manually.
2 years ago
Arnaud Rebillout 828222a5b1
Make sure to include kali-linux-firmware in the installer images
Usually it's pulled in via dependency (as it's a dep of
kali-linux-headless IIRC itself a dep of kali-linux-default). But that's
not the case for Kali Purple, as it doesn't depend on
kali-linux-default.

Furthermore, kali-linux-firmware is now installed in all cases by
tasksel, so we must make sure it's there, instead of relying on
metapackage's dependencies.

Hopefully it will fix:
- https://gitlab.com/kalilinux/kali-purple/documentation/-/issues/8
- https://gitlab.com/kalilinux/kali-purple/documentation/-/issues/11
2 years ago
Arnaud Rebillout fa983c5966
Revert "Make sure to include kali-linux-firmare"
This reverts commit 7bb52e4991.

I wanted to make sure firmware are included in the installer image, but
I missed it, I modified a config file that is only for live images, it
seems...

Also, note that the previous commit message

  Kali purple: install kali-system-gui (instead of core)

Should have been:

  Kali purple: include kali-system-gui (instead of core) in the installer

Because this commit is really about having the package available in the
installer, but it doesn't "install it" on the system. Sorry for the
confusion.
2 years ago
Arnaud Rebillout af49e4d25a
Kali purple: install kali-system-gui (instead of core)
The dep chain is kali-system-gui > kali-system-cli > kali-system-core.

kali-system-cli contains wget and curl, which we probably want to have,
and will fix https://gitlab.com/kalilinux/kali-purple/documentation/-/issues/9

I'm not sure about kali-system-gui, but I have the impression that it
was the intention to install it in Kali Purple, but at some point it was
forgotten and we install kali-system-core instead.
2 years ago
Arnaud Rebillout 7bb52e4991
Make sure to include kali-linux-firmare
As it's now installed in all cases by tasksel, so we must make sure it's
there. This should fix:

- https://gitlab.com/kalilinux/kali-purple/documentation/-/issues/8
- https://gitlab.com/kalilinux/kali-purple/documentation/-/issues/11
2 years ago
Ben Wilson 9502b5ff80
Match ordering 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 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 209293f322
Add preseed for tripwire
tripwire comes as a Recommends of tiger, itself a Depends of
kali-tools-identify.

It needs to be heavily pre-seeded, otherwise it's very chatty.
2 years ago
Arnaud Rebillout b327625da0
Add installer-purple variant
build.sh:

Note that the installer-purple variant does NOT include the offline
profile, that's on purpose. There's no requirement for this installer to
work offline, and on top of that, we can't include all the packages in
the iso at the moment (the package exploitdb-papers is too big). So we
very much expect to have network, and to download big packages during
the installation.

See next commits for more details.

    kali-config/installer-purple/packages:

Unlike other variants, the "base" metapackage is kali-system-core,
which is a very stripped down metapackage with no offensive tools.
(kali-system-core is basically what used to be kali-linux-core, minus
the few offensive tools that were in there).
2 years ago
Daniel Ruiz de Alegría fad74bec02
Change hotsel background in syslinux menu 2 years ago
Daniel Ruiz de Alegría f292986de0
Tweak selected item background in syslinux menu 2 years ago
Daniel Ruiz de Alegría 84eca223b8
Update new boot images 2 years ago
Arnaud Rebillout d904078515
Disable the encfs error message
Ths first line ('... boolean true') is needed to trick debian-cd into
believing that the type of the question is a boolean.

Otherwise debian-cd will think that the question doesn't exist, probably
because it doesn't know the type, probably because there's no type to
start with (this is an error message, not a question).

FTR, without the first line, it fails with:

  2022-08-04 10:05:37,846 DEBUG Checking configuration...
  error: Cannot find a question for encfs/security-information
  2022-08-04 10:05:38,016 ERROR preseed file invalid:
    <<LBDIR>>/simple-cdd/profiles/kali.preseed
3 years ago
Arnaud Rebillout f20801c8ed
Add usr-is-merged to netinst 3 years ago
Arnaud Rebillout 9088bb6a4f
Workaround mariadb crash, seemingly due to overlayfs 3 years ago
Daniel Ruiz de Alegría e75c056b37
Add hook to remove bloat from xfce variant 3 years ago
Arnaud Rebillout dd2d78c7d6
get_user_list: output warning to stderr
The function get_user_list returns a list of users on stdout, so
obviously it can't use stdout to also display messages. Use stderr
instead.

Note that we could also silently skip if we find a directory in /home
that is not a user. Does it happen in practice?
3 years ago
Arnaud Rebillout a90925b444
Add kali user to the vboxsf group, if ever it exists
The vboxsf group is created by the postinst script of the package
virtualbox-guest-utils. The kali user needs to be part of this group
in order to access VirtualBox's shared folders.

This change does just that. It's effective for all the Live images
(where VirtualBox guest additions are installed unconditionnally),
and for the systems installed by the Installer image where VirtualBox
was detected (and therefore VirtualBox guest additions were installed).

Ref: <https://bugs.kali.org/view.php?id=7643>
3 years ago
Arnaud Rebillout 6ea2a3ce82
Add kali user to additional groups one by one
Up to now, it was fine to use a command such as:

    usermod -a -G group1,group2,... kali

However a limitation is that all the groups that are given to the option
-G must exist. If that's not the case, usermod fails (return code: 6)
without doing anything, and the user is not added to any group.

So with this commit, we prepare the code to support optional groups,
that might or might not exist. If ever a group does not exist, it's
skipped silently.
3 years ago
Arnaud Rebillout da484826f4
Nitpicks in kali-{user-setup,finish-install}
Changes:
- order groups alphabetically
- use the same comment "Ensure those groups exist" consistently in the 2
  scripts, and also drop the comment regarding a "generically named"
  function.
- adds "|| true" to the usermod command in kali-user-setup (only for
  consistency, the script is not run with "set -e" anyway).

After those changes, the two functions "configure_usergroups()" are very
similar, and it's very easy to spot the differences between both.
3 years ago
Arnaud Rebillout 10bf866807
Don't add root to any group
This was introduced in 5989ec37de, and
probably that was not the intention.

Adding root to groups doesn't break anything, but I don't think it makes
any sense either.
3 years ago
Sophie Brun 444d0ba359
Add missing Utilities menu entry for UEFI 3 years ago
Sophie Brun 491815e7ae
Harmonize menus entries
* Override *.cfg instead of using hooks
* Harmonize the menu entries labels (same text, add architectures...)
3 years ago