Compare commits

..

No commits in common. "5777e35c09e260b3ffe185047c04f1e221ce83a0" and "fe11c67cea46838e0ece8ceda35fe9bd689fcca6" have entirely different histories.

5 changed files with 60 additions and 60 deletions

View file

@ -2,11 +2,14 @@
Origin: https://git.la10cy.net/DeltaLima/nanodesk Origin: https://git.la10cy.net/DeltaLima/nanodesk
nanodesk is a lightweight debian linux flavor/distribution, using the nanodesk is a less resources consuming debian linux "distribution" using the
jwm window manager. jwm window manager, which I made for fun and learning.
This is just a fun and learning project. My goal is to have a (live) system "distribution" because, it is just a debootstrap with some extra packages and
which is very lightweight and still usable too as daily driver. custom jwm config, baked together with live-boot and a little installer script
for installing nanodesk on a harddrive.
My goal is to have a (live) system which is very lightweight and still usable too.
This is for a VM where you need a basic graphical environment or for an old computer This is for a VM where you need a basic graphical environment or for an old computer
with less resources. with less resources.
@ -38,22 +41,20 @@ If you want to build nanodesk by your own, maybe with your own customisations -
This script will perform all tasks which are necessary to build nanodesk from scratch, including installing packages on your host machine where you build nanodesk. This script will perform all tasks which are necessary to build nanodesk from scratch, including installing packages on your host machine where you build nanodesk.
The script is tested running with Ubuntu 22.04, Debian 11 and Debian 12. The script is tested running with Ubuntu 22.04.
Simply run `./makeanything.sh` and the show will start! Simply run `./makeanything.sh` and the show will start!
Your .iso file will be generated in `build`, named like `nanodesk-vX.Y.Z.iso`. Your .iso file will be in `build/nanodesk-vX.Y.Z`. Git tags are used for versioning.
Git tags and commit count are used for versioning.
You can give the script a custom debian-mirror, if your prefer e.g. You can give the script a custom debian-mirror, if your prefer e.g. `./makeanything.sh http://ftp.debian.org/debian/`
`./makeanything.sh http://ftp.debian.org/debian/`
## customize nanodesk ## customize nanodesk
Of course you can customize nanodesk to fit your needs! Of course you can customize nanodesk to fit your needs!
The simplest way is to add your favorite packages to the nanodesk live-image. The simplest way is to add your favorite packages to the nanodesk live-image. Just add them to
Just add them to the file `templates/install_base.custompkg.sh` the file `templates/install_base.custompkg.tpl.sh`
For example, let's add Abiword and Pidgin to nanodesk, the file would look like For example, let's add Abiword and Pidgin to nanodesk, the file would look like
@ -66,21 +67,16 @@ pidgin
Now run `makeanything.sh` and you will have both programs on your live-linux. Now run `makeanything.sh` and you will have both programs on your live-linux.
You can also jump into the chroot with `chroot build/chroot/ /bin/bash` and do You can also jump into the chroot with `chroot build/chroot/ /bin/bash` and do customizations by hand. Just run `makeanything.sh` afterwards to recreate the .iso
customizations by hand. Just run `makeanything.sh` afterwards to recreate the
.iso
Keep in mind that the chroot does not get recreated everytime you run Keep in mind that the chroot does not get recreated everytime you run `makeanything.sh`.
`makeanything.sh`. While experimenting around it could be helpful to delete your complete `build/` directory
While experimenting around it could be helpful to delete your complete `build/`
directory
```bash ```bash
sudo rm -Rf build sudo rm -Rf build
``` ```
keeping a fresh copy of `build/chroot/` after the first debootstrap is also a keeping a fresh copy of `build/chroot/` after the first debootstrap is also a good idea to save bandwidth :)
good idea to save bandwidth :)
```bash ```bash
sudo cp -a build/chroot build/chroot.bak sudo cp -a build/chroot build/chroot.bak
@ -88,15 +84,11 @@ sudo cp -a build/chroot build/chroot.bak
## install nanodesk on harddrive ## install nanodesk on harddrive
When you booted nanodesk from the iso, then you can install nanodesk to your When you booted nanodesk from the iso, then you can install nanodesk to your harddrive. In the homefolder of `root` ist the installerscript `install_nanodesk.sh`
harddrive. The installer is called `nanodesk-installer`.
Before doing so, you have to create, if not already existing, a partition with Before doing so, you have to create, if not already existing, a partition with a formatted linux compatible filesystem (e.g. ext4).
a formatted linux compatible filesystem (e.g. ext4).
nanodesk comes with fdisk, so you can create it very quick and format the nanodesk comes with fdisk, so you can create it very quick and format the partition afterwards. When you decide to create a swap-partiotion, do not forget to run mkswap.
partition afterwards. When you decide to create a swap-partiotion, do not
forget to run mkswap.
Then the installer will detect it automatically (I hope so!) and use it. Then the installer will detect it automatically (I hope so!) and use it.
This is an example, how to do the partitioning and formatting. This is an example, how to do the partitioning and formatting.

View file

@ -124,7 +124,7 @@ $CHROOTCMD sed -i '/<\!-- GENERATED ICONLIST -->/r /tmp/jwm.iconlist' /etc/jwm/s
message "correct file permissions" message "correct file permissions"
#$CHROOTCMD /usr/bin/chmod 440 /etc/sudoers || error #$CHROOTCMD /usr/bin/chmod 440 /etc/sudoers || error
$CHROOTCMD /usr/bin/chmod 755 /usr/sbin/nanodesk-installer || error $CHROOTCMD /usr/bin/chmod 755 /root/nanodesk-installer.sh || error
$CHROOTCMD /usr/bin/chmod 755 /usr/bin/nanodesk || error $CHROOTCMD /usr/bin/chmod 755 /usr/bin/nanodesk || error
$CHROOTCMD /usr/bin/chmod 755 /usr/bin/nanodesk-first-start || error $CHROOTCMD /usr/bin/chmod 755 /usr/bin/nanodesk-first-start || error

View file

@ -45,26 +45,28 @@
<!-- Tray at the bottom. --> <!-- Tray at the bottom. -->
<Tray x="0" y="0" height="25" autohide="off"> <Tray x="0" y="0" height="25" autohide="off">
<TrayButton icon="/usr/share/nanodesk/images/linux_button.svg">root:1</TrayButton> <TrayButton icon="/usr/share/nanodesk/images/linux_button.svg">root:1</TrayButton>
<Spacer width="2"/> <Spacer width="2"/>
<TrayButton label="_" popup="Show desktop">showdesktop</TrayButton> <TrayButton label="_" popup="Show desktop">showdesktop</TrayButton>
<Spacer width="2"/> <Spacer width="2"/>
<!-- custom TrayButton -->
<TrayButton popup="LXTerminal" icon="lxterminal">exec:lxterminal </TrayButton>
<Spacer width="2"/>
<TrayButton popup="Falkon Webbrowser" icon="falkon">exec:falkon</TrayButton>
<Spacer width="2"/>
<TrayButton popup="PCManFM" icon="system-file-manager">exec:pcmanfm</TrayButton>
<Spacer width="2"/>
<Pager labeled="true"/>
<TaskList maxwidth="256"/>
<Dock/>
<Clock format="%H:%M"><Button mask="123">exec:gsimplecal</Button></Clock>
</Tray> <!-- custom TrayButton -->
<TrayButton popup="LXTerminal" icon="lxterminal">exec:lxterminal </TrayButton>
<Spacer width="2"/>
<TrayButton popup="Falkon Webbrowser" icon="falkon">exec:falkon</TrayButton>
<Spacer width="2"/>
<TrayButton popup="PCManFM" icon="system-file-manager">exec:pcmanfm</TrayButton>
<Spacer width="2"/>
<Pager labeled="true"/>
<TaskList maxwidth="256"/>
<Dock/>
<Clock format="%H:%M"><Button mask="123">exec:gsimplecal</Button></Clock>
</Tray>
<!-- Visual Styles --> <!-- Visual Styles -->
<WindowStyle> <WindowStyle>

View file

@ -49,9 +49,11 @@ error () {
} }
finish () { finish () {
message "removing firststart dialoge from jwm config"
$CHROOTCMD /usr/bin/sed -i '/doc\/nanodesk\/welcome\/welcome\.html/d' /etc/jwm/system.jwmrc || error
message "removing installer files from target" message "removing installer files from target"
$CHROOTCMD /usr/bin/rm -Rf /usr/sbin/nanodesk-installer || error $CHROOTCMD /usr/bin/rm -Rf /root/nanodesk-installer.sh || error
message "removing live-packages from target" message "removing live-packages from target"
$CHROOTCMD /usr/bin/apt -y purge 'live-boot*' 'live-tools*' $CHROOTCMD /usr/bin/apt -y purge 'live-boot*' 'live-tools*'

View file

@ -1,35 +1,39 @@
# Welcome to nanodesk # Welcome to nanodesk
`nanodesk` is yet another leightweight Debian flavor/distribution,
that comes with the `jwm` window manager.
This is just a fun project for learning purposes. nanodesk is a debian base linux "distribution". I put distribution in ""
becuase it is just a minimal debian debootstrap installation, which you
can boot from a DVD or usb-stick and install it to disk, with well picked
packages I like and a customized jwm config. Taddaa - a new distribution.
Everything done with having the goal to consume as less ram as possible.
## install to disk ## install to disk
You can install nanodesk to your harddrive. Before doing so, You can install nanodesk to your harddrive. Before doing so,
you have to get your drive partitioned and formated. you have to get your drive partitioned and formated.
Partitioning on an empty drive is simple, you need two partitions Partiotioning on an empty drive is simple, you need two partitions
- partition1: ext4 , mainfilesystem. - partition1: ext4 , mainfilesystem.
- partition2 (optional, but recommended): swap - partition2 (optional, but recommended): swap
You can use `Menu -> System -> Gparted` or `fdisk` on the shell for this. You can use `gparted` or `fdisk` for this. Please read their manuals.
Please read their manuals.
This done, just run `sudo nanodesk-installer /dev/sdXY` from the terminal This done, just run `sudo /root/nanodesk-installer.sh /dev/sdXY` from the terminal
and the installation will start. (change /dev/sdXY to your drive) and the installation will start. (change /dev/sdXY to your drive)
## installing software ## installing software
There is `Menu -> System -> Synaptic` for installing software as GUI. There is no GUI tool for installing software. You have to use `apt` from the
Alternatively you can use `apt` from the terminal. terminal.
## getting root ## getting root
When booting as livesystem, the default user is `debian` and the In the LiveCD mode you can just do `sudo su -` without being asked for a password.
password is `debian` as well.
Depending on your choice by the installation, you will have to enter a password, Depending on your choice by the installation, you will have to enter a password,
when you created your own using by the installer. when you created your own using by the installer.
So or so good old `su - ` works fine as well, just type in the root password.