Bug#593105: tasksel: Please add a "Smartphone" task
Package: tasksel
Version: 2.82
Severity: wishlist
Tags: d-i patch
Hi,
A "Smartphone" task providing a lightweight and small-screen-optimized dekstop
environment (e17 might be a good candidate) as well as smartphone specific
software (FreeSmartphone.org task, for instance) would be a good thing to have
in tasksel.
Here is a patch providing such a task, although its content and the way it is
implemented might be discussable.
-- System Information:
Debian Release: squeeze/sid
APT prefers testing
APT policy: (990, 'testing'), (120, 'unstable'), (105, 'experimental')
Architecture: i386 (i686)
Kernel: Linux 2.6.35-rc3+ (SMP w/2 CPU cores)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages tasksel depends on:
ii aptitude 0.6.3-3 terminal-based package manager (te
ii debconf [debconf-2.0] 1.5.33 Debian configuration management sy
ii liblocale-gettext-perl 1.05-6 Using libc functions for internati
ii tasksel-data 2.82 Official tasks used for installati
tasksel recommends no packages.
tasksel suggests no packages.
-- debconf information excluded
>From bd2031bedd76d5adc62ae00c216a6a6c47db39fa Mon Sep 17 00:00:00 2001
From: Thibaut Girka <thib@sitedethib.com>
Date: Sun, 15 Aug 2010 13:58:25 +0200
Subject: [PATCH] Add smartphone task
---
Makefile | 5 +++++
info/smartphone.postinst | 8 ++++++++
tasks/smartphone | 21 +++++++++++++++++++++
tasks/smartphone-gta02 | 18 ++++++++++++++++++
tests/smartphone | 31 +++++++++++++++++++++++++++++++
5 files changed, 83 insertions(+), 0 deletions(-)
create mode 100644 info/smartphone.postinst
create mode 100644 tasks/smartphone
create mode 100644 tasks/smartphone-gta02
create mode 100644 tests/smartphone
diff --git a/Makefile b/Makefile
index bdff344..af55cf6 100644
--- a/Makefile
+++ b/Makefile
@@ -49,6 +49,8 @@ install:
install-data:
install -d $(DESTDIR)$(TASKDIR) \
$(DESTDIR)/usr/lib/tasksel/tests
+ install -d $(DESTDIR)$(TASKDIR) \
+ $(DESTDIR)/usr/lib/tasksel/info
install -m 0644 $(TASKDESC) $(DESTDIR)$(TASKDIR)
for test in tests/*; do \
[ "$$test" = "tests/new-install" ] && continue; \
@@ -56,6 +58,9 @@ install-data:
[ "$$test" = "tests/lang" ] && continue; \
install -m 755 $$test $(DESTDIR)/usr/lib/tasksel/tests/; \
done
+ for script in info/*; do \
+ install -m 755 $$script $(DESTDIR)/usr/lib/tasksel/info/; \
+ done
for package in packages/*; do \
[ "$$package" = "packages/list" ] && continue; \
install -m 755 $$package $(DESTDIR)/usr/lib/tasksel/packages/; \
diff --git a/info/smartphone.postinst b/info/smartphone.postinst
new file mode 100644
index 0000000..915fda1
--- /dev/null
+++ b/info/smartphone.postinst
@@ -0,0 +1,8 @@
+#/bin/sh
+. /usr/share/debconf/confmodule
+
+db_get passwd/username
+if [ -n "$RET" ]; then
+ sed -i -r -e "s,^NODM_ENABLED=.*,NODM_ENABLED=true," \
+ -e "s,^NODM_USER=.*,NODM_USER=$RET," /etc/default/nodm
+fi
diff --git a/tasks/smartphone b/tasks/smartphone
new file mode 100644
index 0000000..6969fef
--- /dev/null
+++ b/tasks/smartphone
@@ -0,0 +1,21 @@
+Task: smartphone
+Section: user
+Relevance: 8
+Test-smartphone: 1
+Description: SmartPhone
+ This task installs software useful for a smartphone.
+Key:
+ xorg
+ xserver-xorg-video-all
+ xserver-xorg-input-all
+ desktop-base
+ menu
+ e17
+ nodm
+Packages: list
+ fso-frameworkd
+ fso-utils
+# Other stuff
+ xdg-utils
+ anacron
+ vala-terminal
diff --git a/tasks/smartphone-gta02 b/tasks/smartphone-gta02
new file mode 100644
index 0000000..b1717c5
--- /dev/null
+++ b/tasks/smartphone-gta02
@@ -0,0 +1,18 @@
+Task: smartphone-gta02
+Relevance: 8
+Section: user
+Enhances: smartphone
+Test-smartphone: GTA02
+Description: Environment for GTA02
+ Hey, that rox TODO
+Key:
+ fso-config-gta02
+Packages: list
+# xserver-xorg-input-tslib
+ xserver-xorg-video-glamo
+ mtd-utils
+# fso-gpsd
+ fso-gsmd
+ fso-abyss
+ zhone
+ foxtrotgps
diff --git a/tests/smartphone b/tests/smartphone
new file mode 100644
index 0000000..99d4855
--- /dev/null
+++ b/tests/smartphone
@@ -0,0 +1,31 @@
+#!/bin/sh
+# Causes a task to be selected if the machine appears to be a smartphone.
+set -e
+
+#TODO: more generic test?
+# probably not, since we want device-specific things
+
+machine=$(grep "^Hardware" /proc/cpuinfo | sed 's/Hardware\s*:\s*//')
+
+case "$machine" in
+ "GTA02")
+ ;;
+ *)
+ # Machine not found
+ exit 3
+ ;;
+esac
+
+if [ "$TESTING_ENHANCER" ]; then
+ if [ "$machine" = "$2" ]; then
+ exit 0 # Mark for installation
+ else
+ exit 1 # Do not mark for installation
+ fi
+else
+ if [ "$NEW_INSTALL" ]; then
+ exit 2 # Mark for installation
+ else
+ exit 3 # Do not mark for installation
+ fi
+fi
--
1.7.1
Reply to: