Why Script Importing into Photos?

Recently, Apple deprecated iPhoto on the Mac in favor of a new iPhoto-like app called Photos. The nice thing about iPhoto was that you could drag a bunch of photos onto the iPhoto icon, and those photos would automatically import as a new album. I've found a bit of bugginess with Photos (perhaps it will be fixed in newer versions). Sometimes dragging photos into the app won't do anything. Sometimes it will launch up a preview and then ask to import. Other times it will just import.

I use Dropbox's camera upload function to have the pictures from my Android phone automatically upload to Dropbox's servers and then down to my Mac.

The Automator Script

I made an Automator .app with a Run AppleScript action that runs the following script (substitute in your own path and username to whatever folder you want to import):

set importFolder to POSIX file "/Users/yourusername/Dropbox/Camera Uploads/" as alias

set extensionsList to {"jpg", "png", "tiff"}
tell application "Finder" to set theFiles to every file of importFolder whose name extension is in extensionsList

set timeNow to time string of (current date)
set today to date string of (current date)
set albumName to today & " " & timeNow
set imageList to {}
repeat with i from 1 to number of items in theFiles
set this_item to item i of theFiles as alias
set the end of imageList to this_item
end repeat

tell application "Photos"
activate
delay 10
import imageList into (make new album named albumName) skip check duplicates no end tell

tell application "Finder"
delete imageList
end tell

Acknowledgements

The basis for this script (with my own tweaks, of course) is how to easily import images into new Photos.app.

Tweaks in This Script

The main differences in my version of the script are:

  • Specification of the folder ahead of time instead of a prompt for the user to choose a folder
  • No check that there are images in the folder (Photos itself will tell you there's nothing to import if the Dropbox folder is empty).
  • Album name is based only on the date and time instead of prompting for a name and then appending a date and time.
  • Waiting longer after launching ("activat[ing]") Photos before doing the import. I found (on my non-SSD hard drive) that 2 seconds would make the Automator .app crash before importing.
  • Deleting (moving to the Trash, actually) the imported folders when done.

Pure Kubuntu 15.04

May 18th, 2015

Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.

These removal commands were created based on what Ubuntu, Xubuntu, etc. packages were added to a default Kubuntu 15.04 installation. It's possible that the commands might remove some other packages you have since added to the default and want to keep. If that's the case, keep track of which packages those are and reinstall them. Theoretically, your settings should still be there. I am not responsible for any damage you do to your *buntu installation. If you're worried about breaking anything, do a full back up of your *buntu installation.

Remove Ubuntu
Paste this command into the terminal.

sudo apt-get remove account-plugin-aim account-plugin-facebook account-plugin-flickr account-plugin-google account-plugin-jabber account-plugin-salut account-plugin-yahoo activity-log-manager adium-theme-ubuntu adwaita-icon-theme aisleriot apg appmenu-qt appmenu-qt5 apport-gtk aptdaemon-data apturl avahi-utils bamfdaemon baobab branding-ubuntu brasero brasero-cdrkit brasero-common brltty build-essential cgmanager checkbox-gui checkbox-ng checkbox-ng-service cheese cheese-common compiz compiz-core compiz-gnome compiz-plugins-default cups-pk-helper dconf-cli deja-dup deja-dup-backend-gvfs dmz-cursor-theme doc-base dpkg-dev duplicity empathy empathy-common eog espeak-data evince evince-common evolution-data-server evolution-data-server-common evolution-data-server-online-accounts example-content fakeroot file-roller folks-common g++ g++-4.9 gcc gcc-4.9 gedit gedit-common geoclue geoclue-ubuntu-geoip gir1.2-accounts-1.0 gir1.2-appindicator3-0.1 gir1.2-atk-1.0 gir1.2-atspi-2.0 gir1.2-dbusmenu-glib-0.4 gir1.2-dee-1.0 gir1.2-freedesktop gir1.2-gdata-0.0 gir1.2-gdkpixbuf-2.0 gir1.2-gmenu-3.0 gir1.2-gnomebluetooth-1.0 gir1.2-gnomekeyring-1.0 gir1.2-goa-1.0 gir1.2-gst-plugins-base-1.0 gir1.2-gstreamer-1.0 gir1.2-gtk-3.0 gir1.2-gtksource-3.0 gir1.2-gudev-1.0 gir1.2-ibus-1.0 gir1.2-javascriptcoregtk-3.0 gir1.2-json-1.0 gir1.2-notify-0.7 gir1.2-packagekitglib-1.0 gir1.2-pango-1.0 gir1.2-peas-1.0 gir1.2-rb-3.0 gir1.2-secret-1 gir1.2-signon-1.0 gir1.2-totem-1.0 gir1.2-totem-plparser-1.0 gir1.2-udisks-2.0 gir1.2-unity-5.0 gir1.2-vte-2.91 gir1.2-webkit-3.0 gir1.2-wnck-3.0 gkbd-capplet gnome-accessibility-themes gnome-bluetooth gnome-calculator gnome-contacts gnome-control-center-shared-data gnome-desktop3-data gnome-disk-utility gnome-font-viewer gnome-mahjongg gnome-menus gnome-mines gnome-orca gnome-power-manager gnome-screensaver gnome-screenshot gnome-session-bin gnome-session-canberra gnome-session-common gnome-settings-daemon-schemas gnome-sudoku gnome-system-log gnome-system-monitor gnome-terminal gnome-terminal-data gnome-user-guide gnome-user-share gnome-video-effects grilo-plugins-0.2-base gsettings-ubuntu-schemas gstreamer0.10-alsa gstreamer0.10-plugins-base-apps gstreamer0.10-pulseaudio gstreamer0.10-tools gstreamer1.0-alsa gstreamer1.0-clutter gstreamer1.0-plugins-base-apps gstreamer1.0-tools gucharmap guile-2.0-libs gvfs-backends gvfs-bin gvfs-fuse hud humanity-icon-theme hwdata ibus ibus-gtk ibus-gtk3 ibus-table indicator-applet indicator-application indicator-appmenu indicator-bluetooth indicator-datetime indicator-keyboard indicator-messages indicator-power indicator-printers indicator-session indicator-sound intel-gpu-tools jayatana landscape-client-ui-install language-selector-gnome libaccount-plugin-1.0-0 libaccount-plugin-generic-oauth libaccount-plugin-google libaccounts-qt5-1 libalgorithm-diff-perl libalgorithm-diff-xs-perl libalgorithm-merge-perl libappindicator3-1 libasan1 libatk-adaptor libatkmm-1.6-1 libatomic1 libavahi-ui-gtk3-0 libbamf3-2 libbrasero-media3-1 libbrlapi0.6 libburn4 libc-dev-bin libc6-dev libcairomm-1.0-1 libcamel-1.2-49 libcanberra-gtk-module libcanberra-gtk0 libcdio-cdda1 libcdio-paranoia1 libcgmanager0 libcheese-gtk23 libcheese7 libcilkrts5 libclutter-1.0-0 libclutter-1.0-common libclutter-gst-2.0-0 libclutter-gtk-1.0-0 libcogl-common libcogl-pango20 libcogl-path20 libcogl20 libcolumbus1 libcolumbus1-common libcompizconfig0 libdbusmenu-gtk3-4 libdecoration0 libdee-1.0-4 libdmapsharing-3.0-2 libdotconf0 libebackend-1.2-7 libebook-1.2-14 libebook-contacts-1.2-0 libecal-1.2-16 libedata-book-1.2-20 libedata-cal-1.2-23 libedataserver-1.2-18 libespeak1 libevdocument3-4 libevent-2.0-5 libevview3-3 libexempi3 libfakeroot libfolks-eds25 libfolks-telepathy25 libfolks25 libframe6 libgail-3-0 libgail-common libgail18 libgc1c2 libgcc-4.9-dev libgdata-common libgdata19 libgee-0.8-2 libgee2 libgeis1 libgeocode-glib0 libgexiv2-2 libglewmx1.10 libglibmm-2.4-1c2a libgmime-2.6-0 libgnome-bluetooth11 libgnome-control-center1 libgnome-desktop-3-10 libgnome-keyring-common libgnome-keyring0 libgnome-menu-3-0 libgnomekbd-common libgnomekbd8 libgoa-1.0-0b libgoa-1.0-common libgrail6 libgrilo-0.2-1 libgsettings-qt1 libgtkmm-3.0-1 libgtksourceview-3.0-1 libgtksourceview-3.0-common libgtop2-10 libgtop2-common libgucharmap-2-90-7 libgweather-3-6 libgweather-common libgxps2 libhud2 libido3-0.1-0 libindicator3-7 libinput7 libisofs6 libitm1 libjson0 libjte1 libkpathsea6 liblightdm-gobject-1-0 liblircclient0 liblouis-data liblouis2 libmediaart-1.0-0 libmessaging-menu0 libmetacity-private2 libminiupnpc10 libnatpmp1 libnautilus-extension1a libnm-gtk-common libnm-gtk0 libnotify-bin libnux-4.0-0 libnux-4.0-common liboauth0 liboxideqt-qmlplugin liboxideqtcore0 liboxideqtquick0 libpackagekit-glib2-16 libpanel-applet0 libpangomm-1.4-1 libpeas-1.0-0 libpeas-common libpocketsphinx1 libpoppler-glib8 libportaudio2 libproxy1-plugin-gsettings libproxy1-plugin-networkmanager libqqwing2 libqt5feedback5 libqt5organizer5 libqt5positioning5 libquadmath0 libquvi-scripts libquvi7 libraw10 libreoffice-gnome libreoffice-gtk libreoffice-ogltrans libreoffice-style-human librhythmbox-core8 librsvg2-2 librsvg2-common librsync1 libsigc++-2.0-0c2a libsignon-extension1 libsignon-glib1 libsignon-plugins-common1 libsignon-qt5-1 libsonic0 libspeechd2 libsphinxbase1 libstdc++-4.9-dev libtimezonemap-data libtimezonemap1 libtotem-plparser18 libtotem0 libtracker-sparql-1.0-0 libubsan0 libufe-xidgetter0 libunity-action-qt1 libunity-control-center1 libunity-core-6.0-9 libunity-gtk2-parser0 libunity-gtk3-parser0 libunity-misc4 libunity-protocol-private0 libunity-scopes-json-def-desktop libunity-settings-daemon1 libunity-webapps0 libunity9 libunityvoice1 liburl-dispatcher1 libuuid-perl libvte-2.91-0 libvte-2.91-common libwacom-bin libwacom-common libwacom2 libwmf0.2-7 libwmf0.2-7-gtk libwnck-3-0 libwnck-3-common libxklavier16 libxres1 libyaml-tiny-perl libyelp0 libzeitgeist-1.0-1 libzeitgeist-2.0-0 light-themes lightdm linux-libc-dev manpages-dev mcp-account-manager-uoa metacity-common mousetweaks mtools nautilus nautilus-data nautilus-sendto nautilus-share network-manager-gnome network-manager-pptp-gnome notify-osd notify-osd-icons nux-tools onboard onboard-data oneconf oneconf-common overlay-scrollbar overlay-scrollbar-gtk2 overlay-scrollbar-gtk3 oxideqt-codecs pkg-config plainbox-provider-checkbox plainbox-provider-resource-generic plainbox-secure-policy plymouth-theme-ubuntu-logo python-aptdaemon python-aptdaemon.gtk3widgets python-bs4 python-cairo python-commandnotfound python-cups python-debtagshw python-defer python-gdbm python-gi-cairo python-html5lib python-imaging python-ldb python-lockfile python-lxml python-ntdb python-oneconf python-pil python-piston-mini-client python-qt4 python-samba python-sip python-tdb python-xdg python-zeitgeist python3-aptdaemon.gtk3widgets python3-aptdaemon.pkcompat python3-brlapi python3-bs4 python3-cairo python3-checkbox-ng python3-checkbox-support python3-crypto python3-debian python3-feedparser python3-gi-cairo python3-html5lib python3-httplib2 python3-louis python3-lxml python3-mako python3-markupsafe python3-oauthlib python3-oneconf python3-piston-mini-client python3-plainbox python3-pyatspi python3-pyparsing python3-smbc python3-speechd python3-xdg qml-module-qt-labs-folderlistmodel qml-module-qt-labs-settings qml-module-qtfeedback qml-module-qtquick-localstorage qml-module-ubuntu-onlineaccounts qt-at-spi qtdeclarative5-accounts-plugin qtdeclarative5-localstorage-plugin qtdeclarative5-qtfeedback-plugin qtdeclarative5-qtquick2-plugin qtdeclarative5-ubuntu-ui-extras-browser-plugin qtdeclarative5-ubuntu-ui-toolkit-plugin qtdeclarative5-ubuntu-web-plugin qtdeclarative5-ubuntu-web-plugin-assets qtdeclarative5-unity-action-plugin remmina remmina-common remmina-plugin-rdp remmina-plugin-vnc rhythmbox rhythmbox-data rhythmbox-mozilla rhythmbox-plugin-cdrecorder rhythmbox-plugin-magnatune rhythmbox-plugin-zeitgeist rhythmbox-plugins samba-common samba-common-bin seahorse session-migration sessioninstaller shotwell shotwell-common signon-keyring-extension signon-plugin-oauth2 signon-plugin-password signon-ui signon-ui-service signon-ui-x11 signond simple-scan software-center software-center-aptdaemon-plugins software-properties-gtk speech-dispatcher speech-dispatcher-audio-plugins sphinx-voxforge-hmm-en sphinx-voxforge-lm-en ssh-askpass-gnome suru-icon-theme syslinux syslinux-common syslinux-legacy system-config-printer-common system-config-printer-gnome systemd-shim telepathy-idle telepathy-indicator thunderbird thunderbird-gnome-support totem totem-common totem-plugins transmission-common transmission-gtk ubuntu-artwork ubuntu-desktop ubuntu-docs ubuntu-mobile-icons ubuntu-mono ubuntu-release-upgrader-gtk ubuntu-session ubuntu-settings ubuntu-sounds ubuntu-sso-client-qt ubuntu-system-service ubuntu-touch-sounds ubuntu-ui-toolkit-theme ubuntu-wallpapers ubuntu-wallpapers-vivid ubuntuone-client-data unity unity-asset-pool unity-control-center unity-control-center-signon unity-greeter unity-gtk-module-common unity-gtk2-module unity-gtk3-module unity-lens-applications unity-lens-files unity-lens-music unity-lens-photos unity-lens-video unity-schemas unity-scope-audacious unity-scope-calculator unity-scope-chromiumbookmarks unity-scope-clementine unity-scope-colourlovers unity-scope-devhelp unity-scope-firefoxbookmarks unity-scope-gdrive unity-scope-gmusicbrowser unity-scope-gourmet unity-scope-guayadeque unity-scope-home unity-scope-manpages unity-scope-musicstores unity-scope-musique unity-scope-openclipart unity-scope-texdoc unity-scope-tomboy unity-scope-video-remote unity-scope-virtualbox unity-scope-yelp unity-scope-zotero unity-scopes-master-default unity-scopes-runner unity-services unity-settings-daemon unity-voice-service unity-webapps-common unity-webapps-qml unity-webapps-service update-manager update-notifier upstart upstart-bin usb-creator-common usb-creator-gtk vino webaccounts-extension-common webapp-container webbrowser-app xbrlapi xcursor-themes xdg-user-dirs-gtk xdiagnose xterm xul-ext-unity xul-ext-webaccounts xul-ext-websites-integration yelp yelp-xsl zeitgeist zeitgeist-core zeitgeist-datahub && sudo apt-get install kubuntu-desktop

Remove Xubuntu
Paste this command into the terminal.

sudo apt-get remove abiword abiword-common abiword-plugin-grammar abiword-plugin-mathview adwaita-icon-theme apg apport-gtk apt-offline aptdaemon-data avahi-utils blueman brltty brltty-x11 build-essential catfish cgmanager cheese-common cups-pk-helper dconf-cli desktop-base dmz-cursor-theme doc-base dpkg-dev espeak espeak-data evince-common evince-gtk evolution-data-server evolution-data-server-common evolution-data-server-online-accounts exo-utils fakeroot file-roller fonts-lyx g++ g++-4.9 gawk gcc gcc-4.9 geoclue geoclue-ubuntu-geoip gigolo gimp gimp-data gir1.2-appindicator3-0.1 gir1.2-atk-1.0 gir1.2-atspi-2.0 gir1.2-freedesktop gir1.2-gconf-2.0 gir1.2-gdkpixbuf-2.0 gir1.2-gmenu-3.0 gir1.2-gnomebluetooth-1.0 gir1.2-gnomekeyring-1.0 gir1.2-gst-plugins-base-1.0 gir1.2-gstreamer-1.0 gir1.2-gtk-3.0 gir1.2-gudev-1.0 gir1.2-ibus-1.0 gir1.2-javascriptcoregtk-3.0 gir1.2-notify-0.7 gir1.2-packagekitglib-1.0 gir1.2-pango-1.0 gir1.2-vte-2.91 gir1.2-webkit-3.0 gir1.2-wnck-3.0 gkbd-capplet gmusicbrowser gnome-accessibility-themes gnome-bluetooth gnome-calculator gnome-control-center-shared-data gnome-desktop-data gnome-desktop3-data gnome-icon-theme gnome-icon-theme-symbolic gnome-menus gnome-mines gnome-power-manager gnome-screensaver gnome-session-bin gnome-settings-daemon-schemas gnome-sudoku gnome-system-tools gnome-themes-standard gnome-themes-standard-data gnome-user-guide gnome-user-share gnumeric gnumeric-common gnumeric-doc greybird-gtk-theme gsettings-ubuntu-schemas gstreamer0.10-alsa gstreamer0.10-plugins-base-apps gstreamer0.10-pulseaudio gstreamer0.10-tools gstreamer1.0-clutter gstreamer1.0-tools gtk-theme-config gtk2-engines-pixbuf gucharmap gvfs-backends gvfs-bin gvfs-fuse hddtemp humanity-icon-theme hwdata ibus indicator-applet indicator-application indicator-bluetooth indicator-datetime indicator-keyboard indicator-messages indicator-power indicator-session indicator-sound inxi language-selector-gnome libabiword-3.0 libaccount-plugin-1.0-0 libaccount-plugin-generic-oauth libaccount-plugin-google libaccounts-qt5-1 libalgorithm-diff-perl libalgorithm-diff-xs-perl libalgorithm-merge-perl libamd2.3.1 libappindicator3-1 libasan1 libatkmm-1.6-1 libatomic1 libbabl-0.1-0 libblas-common libblas3 libbrlapi0.6 libburn4 libc-dev-bin libc6-dev libcairo-perl libcairomm-1.0-1 libcamd2.3.1 libcamel-1.2-49 libccolamd2.8.0 libcdio-cdda1 libcdio-paranoia1 libcgmanager0 libchamplain-0.12-0 libchamplain-gtk-0.12-0 libcheese-gtk23 libcheese7 libcholmod2.1.2 libcilkrts5 libclutter-1.0-0 libclutter-1.0-common libclutter-gst-2.0-0 libclutter-gtk-1.0-0 libcogl-common libcogl-pango20 libcogl-path20 libcogl20 libdbusmenu-gtk3-4 libdee-1.0-4 libdigest-crc-perl libdotconf0 libebackend-1.2-7 libebook-1.2-14 libebook-contacts-1.2-0 libecal-1.2-16 libedata-book-1.2-20 libedata-cal-1.2-23 libedataserver-1.2-18 libespeak1 libevdocument3-4 libevent-2.0-5 libevview3-3 libexo-1-0 libexo-common libexo-helpers libfakeroot libgarcon-1-0 libgarcon-common libgcc-4.9-dev libgdata-common libgdata19 libgdome2-0 libgdome2-cpp-smart0c2a libgee-0.8-2 libgee2 libgegl-0.2-0 libgeocode-glib0 libgfortran3 libgimp2.0 libglade2-0 libglib-perl libglibmm-2.4-1c2a libgnome-bluetooth11 libgnome-desktop-3-10 libgnome-keyring-common libgnome-keyring0 libgnome-menu-3-0 libgnomekbd-common libgnomekbd8 libgoa-1.0-0b libgoa-1.0-common libgoffice-0.10-10 libgoffice-0.10-10-common libgsf-1-114 libgsf-1-common libgstreamer-perl libgtk2-notify-perl libgtk2-perl libgtk2-trayicon-perl libgtkmathview0c2a libgtkmm-3.0-1 libgtksourceview-3.0-1 libgtksourceview-3.0-common libgtkspell0 libgtop2-10 libgtop2-common libgucharmap-2-90-7 libgweather-3-6 libgweather-common libgxps2 libido3-0.1-0 libindicator3-7 libinput7 libintl-perl libisofs6 libitm1 libjpeg-progs libjpeg-turbo-progs libjson0 libjte1 libkeybinder0 libkpathsea6 liblapack3 liblightdm-gobject-1-0 liblink-grammar4 libmessaging-menu0 libminiupnpc10 libnatpmp1 libnautilus-extension1a libnet-dbus-perl libnm-gtk-common libnm-gtk0 libnotify-bin liboauth0 liboobs-1-5 libots0 libpackagekit-glib2-16 libpanel-applet0 libpango-perl libpangomm-1.4-1 libpoppler-glib8 libportaudio2 libqqwing2 libquadmath0 librsvg2-2 librsvg2-common libsdl1.2debian libsigc++-2.0-0c2a libsignon-extension1 libsignon-glib1 libsignon-plugins-common1 libsignon-qt5-1 libsigsegv2 libsonic0 libspeechd2 libstdc++-4.9-dev libtagc0 libthunarx-2-0 libtidy-0.99-0 libtie-ixhash-perl libtimezonemap-data libtimezonemap1 libtumbler-1-0 libubsan0 libumfpack5.6.2 libunique-1.0-0 libunity-control-center1 libunity-protocol-private0 libunity-scopes-json-def-desktop libunity-settings-daemon1 libunity9 liburl-dispatcher1 libuuid-perl libvte-2.91-0 libvte-2.91-common libvte-common libvte9 libwacom-bin libwacom-common libwacom2 libwmf0.2-7 libwnck-3-0 libwnck-3-common libwnck-common libwnck22 libwv-1.2-4 libxfce4ui-1-0 libxfce4ui-2-0 libxfce4ui-common libxfce4ui-utils libxfce4util-bin libxfce4util-common libxfce4util7 libxfcegui4-4 libxfconf-0-2 libxklavier16 libxml-parser-perl libxml-twig-perl libxml-xpathengine-perl libxres1 libyaml-tiny-perl libyelp0 light-locker light-locker-settings lightdm lightdm-gtk-greeter lightdm-gtk-greeter-settings link-grammar-dictionaries-en linux-libc-dev lm-sensors manpages-dev menulibre mesa-utils mousepad mousetweaks mugshot nautilus-data network-manager-gnome network-manager-pptp-gnome numix-gtk-theme onboard onboard-data oneconf oneconf-common orage parole pastebinit pavucontrol pidgin pidgin-data pidgin-libnotify pidgin-otr pkg-config plymouth-theme-xubuntu-logo plymouth-theme-xubuntu-text python-aptdaemon python-aptdaemon.gtk3widgets python-bs4 python-cairo python-commandnotfound python-cups python-debtagshw python-defer python-defusedxml python-gdbm python-gi-cairo python-gtk2 python-html5lib python-lxml python-magic python-oneconf python-piston-mini-client python-psutil python-soappy python-wstools python-xdg python3-aptdaemon.gtk3widgets python3-aptdaemon.pkcompat python3-bs4 python3-cairo python3-crypto python3-gi-cairo python3-html5lib python3-httplib2 python3-lxml python3-oauthlib python3-oneconf python3-piston-mini-client python3-psutil python3-smbc python3-xdg ristretto session-migration sessioninstaller shimmer-themes signon-keyring-extension signon-plugin-oauth2 signon-ui signon-ui-service signon-ui-x11 signond simple-scan software-center software-center-aptdaemon-plugins software-properties-gtk speech-dispatcher speech-dispatcher-audio-plugins system-config-printer-common system-config-printer-gnome system-tools-backends systemd-shim thunar thunar-archive-plugin thunar-data thunar-media-tags-plugin thunar-volman thunderbird transmission-common transmission-gtk tumbler tumbler-common ubuntu-mono ubuntu-release-upgrader-gtk ubuntu-system-service ubuntu-touch-sounds unity-control-center unity-control-center-signon unity-greeter unity-settings-daemon update-manager update-notifier upstart upstart-bin xbrlapi xcursor-themes xdg-user-dirs-gtk xfburn xfce4-appfinder xfce4-cpugraph-plugin xfce4-dict xfce4-indicator-plugin xfce4-mailwatch-plugin xfce4-netload-plugin xfce4-notes xfce4-notes-plugin xfce4-notifyd xfce4-panel xfce4-places-plugin xfce4-power-manager xfce4-power-manager-data xfce4-power-manager-plugins xfce4-quicklauncher-plugin xfce4-screenshooter xfce4-session xfce4-settings xfce4-systemload-plugin xfce4-taskmanager xfce4-terminal xfce4-verve-plugin xfce4-volumed xfce4-weather-plugin xfce4-whiskermenu-plugin xfce4-xkb-plugin xfconf xfdesktop4 xfdesktop4-data xfwm4 xscreensaver xscreensaver-data xterm xubuntu-artwork xubuntu-community-wallpapers xubuntu-core xubuntu-default-settings xubuntu-desktop xubuntu-docs xubuntu-icon-theme xubuntu-wallpapers yelp yelp-xsl && sudo apt-get install kubuntu-desktop

Remove Lubuntu
Paste this command into the terminal.

sudo apt-get remove abiword abiword-common abiword-plugin-grammar abiword-plugin-mathview adwaita-icon-theme apg apport-gtk aptdaemon-data apturl audaciousaudacious-plugins audacious-plugins-data avahi-utils blueman cgmanager cheese-common cups-pk-helper dconf-cli desktop-base dmz-cursor-themeevince evince-common evolution-data-server evolution-data-server-common evolution-data-server-online-accounts ffmpegthumbnailer file-rollerfonts-lyx galculator gdebi gdebi-core geoclue geoclue-ubuntu-geoip giblib1 gir1.2-appindicator3-0.1 gir1.2-atk-1.0 gir1.2-dbusmenu-glib-0.4gir1.2-dee-1.0 gir1.2-freedesktop gir1.2-gconf-2.0 gir1.2-gdkpixbuf-2.0 gir1.2-gnomebluetooth-1.0 gir1.2-gnomekeyring-1.0gir1.2-gstreamer-1.0 gir1.2-gtk-3.0 gir1.2-gudev-1.0 gir1.2-ibus-1.0 gir1.2-javascriptcoregtk-3.0 gir1.2-notify-0.7gir1.2-packagekitglib-1.0 gir1.2-pango-1.0 gir1.2-udisks-2.0 gir1.2-unity-5.0 gir1.2-vte-2.90 gir1.2-vte-2.91 gir1.2-webkit-3.0gir1.2-wnck-3.0 gkbd-capplet gksu gnome-accessibility-themes gnome-bluetooth gnome-control-center-shared-data gnome-desktop-datagnome-desktop3-data gnome-disk-utility gnome-icon-theme gnome-icon-theme-full gnome-icon-theme-symbolic gnome-menus gnome-mplayergnome-power-manager gnome-screensaver gnome-session-bin gnome-settings-daemon-schemas gnome-system-tools gnome-themes-standardgnome-themes-standard-data gnome-user-guide gnome-user-share gnumeric gnumeric-common gnumeric-doc gpicview gsettings-ubuntu-schemasgstreamer1.0-clutter gtk2-engines gtk2-engines-pixbuf gtk3-engines-unico gucharmap guvcview gvfs-backends gvfs-fuse hardinfohumanity-icon-theme hwdata ibus indicator-applet indicator-application indicator-application-gtk2 indicator-bluetooth indicator-datetimeindicator-keyboard indicator-messages indicator-power indicator-session indicator-sound language-selector-gnome leafpad libaacs0libabiword-3.0 libaccount-plugin-1.0-0 libaccount-plugin-generic-oauth libaccount-plugin-google libaccounts-qt5-1 libappindicator3-1libass5 libaudcore2 libbinio1ldbl libbluray1 libbs2b0 libburn4 libcairo-perl libcamel-1.2-49 libcddb2 libcdio-cdda1 libcdio-paranoia1libcgmanager0 libchamplain-0.12-0 libchamplain-gtk-0.12-0 libcheese-gtk23 libcheese7 libclutter-1.0-0 libclutter-1.0-commonlibclutter-gst-2.0-0 libclutter-gtk-1.0-0 libcogl-common libcogl-pango20 libcogl-path20 libcogl20 libcompfaceg1 libcue1 libdbusmenu-gtk3-4libdca0 libdee-1.0-4 libdirectfb-1.2-9 libdiscid0 libebackend-1.2-7 libebook-1.2-14 libebook-contacts-1.2-0 libecal-1.2-16libedata-book-1.2-20 libedata-cal-1.2-23 libedataserver-1.2-18 libenca0 libept1.4.12 libevdocument3-4 libevent-2.0-5 libevview3-3libexo-1-0 libexo-common libexo-helpers libfaad2 libffmpegthumbnailer4 libfluidsynth1 libfm-data libfm-extra4 libfm-gtk-data libfm-gtk4libfm-modules libfm4 libgda-5.0-4 libgda-5.0-common libgdata-common libgdata19 libgdome2-0 libgdome2-cpp-smart0c2a libgee2 libgeocode-glib0libgksu2-0 libglade2-0 libglib-perl libgmlib1 libgmtk1 libgmtk1-data libgnome-bluetooth11 libgnome-desktop-3-10 libgnome-keyring-commonlibgnome-keyring0 libgnome-menu-3-0 libgnomekbd-common libgnomekbd8 libgoa-1.0-0b libgoa-1.0-common libgoffice-0.10-10libgoffice-0.10-10-common libgsf-1-114 libgsf-1-common libgsl0ldbl libgtk2-perl libgtkmathview0c2a libgtksourceview-3.0-1libgtksourceview-3.0-common libgtkspell0 libgtop2-10 libgtop2-common libgucharmap-2-90-7 libguess1 libguvcview-1.0-0 libgweather-3-6libgweather-common libgxps2 libid3tag0 libido3-0.1-0 libimlib2 libindicator3-7 libindicator7 libinput7 libisofs6 libjpeg-progslibjpeg-turbo-progs libjson0 libjte1 libkpathsea6 liblightdm-gobject-1-0 liblink-grammar4 liblircclient0 libmenu-cache-bin libmenu-cache3libmessaging-menu0 libminiupnpc10 libmms0 libmodplug1 libmpg123-0 libmusicbrainz3-6 libnatpmp1 libnautilus-extension1a libnet-dbus-perllibnm-gtk-common libnm-gtk0 libnotify-bin liboauth0 libobrender29 libobt2 libonig2 liboobs-1-5 libopts25 libots0 libpackagekit-glib2-16libpanel-applet0 libpango-perl libpisock9 libpoppler-glib8 libportaudio2 libpostproc52 libquadmath0 libquvi-scripts libquvi7 librarian0librsvg2-2 librsvg2-common libsdl1.2debian libsdl2-2.0-0 libsidplayfp3 libsignon-extension1 libsignon-glib1 libsignon-plugins-common1libsignon-qt5-1 libswscale3 libtidy-0.99-0 libtie-ixhash-perl libtimezonemap-data libtimezonemap1 libuniconf4.6 libunity-control-center1libunity-protocol-private0 libunity-scopes-json-def-desktop libunity-settings-daemon1 libunity9 liburl-dispatcher1 libvte-2.90-9libvte-2.90-common libvte-2.91-0 libvte-2.91-common libvte-common libvte9 libwacom-bin libwacom-common libwacom2 libwebcam0 libwmf0.2-7libwnck-3-0 libwnck-3-common libwnck-common libwnck22 libwv-1.2-4 libwvstreams4.6-base libwvstreams4.6-extras libxfce4ui-1-0libxfce4ui-common libxfce4util-bin libxfce4util-common libxfce4util7 libxfconf-0-2 libxklavier16 libxml-parser-perl libxml-twig-perllibxml-xpathengine-perl libxres1 libyelp0 light-locker light-locker-settings lightdm lightdm-gtk-greeter link-grammar-dictionaries-enlm-sensors lubuntu-artwork lubuntu-artwork-15-04 lubuntu-core lubuntu-default-session lubuntu-default-settings lubuntu-desktoplubuntu-icon-theme lubuntu-lxpanel-icons lubuntu-software-center lxappearance lxappearance-obconf lxde-common lxde-core lxinput lxlauncherlxmenu-data lxpanel lxpanel-data lxpanel-indicator-applet-plugin lxrandr lxsession lxsession-data lxsession-default-apps lxsession-logoutlxshortcut lxtask lxterminal mousetweaks mplayer2 mtools mtpaint nautilus-data network-manager-gnome ntp obconf openbox pcmanfm pidginpidgin-data pidgin-libnotify plymouth-theme-lubuntu-logo plymouth-theme-lubuntu-text python-aptdaemon python-aptdaemon.gtk3widgetspython-cairo python-commandnotfound python-defer python-gdbm python-gi-cairo python-gudev python-psutil python-pysqlite2 python-xdgpython3-aptdaemon.gtk3widgets python3-aptdaemon.pkcompat python3-bs4 python3-cairo python3-debian python3-html5lib python3-lxmlpython3-smbc python3-xdg rarian-compat scrot session-migration sessioninstaller signon-keyring-extension signon-plugin-oauth2 signon-uisignon-ui-service signon-ui-x11 signond simple-scan software-properties-gtk sylpheed sylpheed-doc sylpheed-i18n sylpheed-plugins synapticsyslinux syslinux-common syslinux-legacy system-config-printer-common system-config-printer-gnome system-tools-backends systemd-shimtransmission transmission-common transmission-gtk ubuntu-mono ubuntu-release-upgrader-gtk ubuntu-system-service ubuntu-touch-soundsunity-control-center unity-control-center-signon unity-greeter unity-settings-daemon update-manager update-notifier upstart upstart-binusb-creator-common usb-creator-gtk uvcdynctrl uvcdynctrl-data wvdial xbacklight xdg-user-dirs-gtk xfburn xfce4-notifyd xfce4-power-managerxfce4-power-manager-data xfce4-power-manager-plugins xfconf xfonts-100dpi xpad xscreensaver xscreensaver-data xterm yelp yelp-xsl && sudo apt-get install kubuntu-desktop

Remove Edubuntu
Paste this command into the terminal.

sudo apt-get remove account-plugin-aim account-plugin-facebook account-plugin-flickr account-plugin-google account-plugin-jabber account-plugin-salutaccount-plugin-yahoo activity-log-manager adium-theme-ubuntu adwaita-icon-theme aisleriot alacarte analitza-common analitza4-common apgappmenu-qt appmenu-qt5 apport-gtk aptdaemon-data apturl astrometry.net atomix atomix-data avahi-utils avogadro-data bamfdaemon baobabbinfmt-support blinken blt bluefish bluefish-data bluefish-plugins branding-ubuntu brasero brasero-cdrkit brasero-common breathe-icon-themebrltty build-essential calibre calibre-bin cantor cantor-backend-kalgebra celestia-common celestia-gnome cgmanager checkbox-gui checkbox-ngcheckbox-ng-service cheese cheese-common chemtool cli-common compiz compiz-core compiz-gnome compiz-plugins-default cups-pk-helperdconf-cli deja-dup deja-dup-backend-gvfs desktop-profiles dia dia-common dia-gnome dia-libs dia-shapes dmz-cursor-theme doc-base dpkg-devduplicity edubuntu-artwork edubuntu-desktop edubuntu-docs edubuntu-fonts edubuntu-menueditor edubuntu-wallpapers einsteinelementary-icon-theme empathy empathy-common eog epoptes epoptes-client espeak-data evince evince-common evolution evolution-commonevolution-data-server evolution-data-server-common evolution-data-server-online-accounts evolution-plugins example-content fakerootfile-roller folks-common fonts-beng fonts-beng-extra fonts-beteckna fonts-bpg-georgian fonts-breip fonts-century-catalogue fonts-devafonts-deva-extra fonts-dkg-handwriting fonts-dustin fonts-ecolier-court fonts-ecolier-lignes-court fonts-freefont-otf fonts-gargifonts-georgewilliams fonts-gubbi fonts-gujr fonts-gujr-extra fonts-inconsolata fonts-isabella fonts-junicode fonts-kalapi fonts-kndafonts-levien-museum fonts-levien-typoscript fonts-linex fonts-linuxlibertine fonts-lmodern fonts-lohit-beng-assamesefonts-lohit-beng-bengali fonts-lohit-deva fonts-lohit-gujr fonts-lohit-knda fonts-lohit-orya fonts-lohit-taml fonts-lohit-taml-classicalfonts-lohit-telu fonts-mathjax fonts-mgopen fonts-nakula fonts-navilu fonts-oflb-asana-math fonts-oflb-euterpe fonts-okolaks fonts-opendinfonts-orya fonts-orya-extra fonts-rufscript fonts-sahadeva fonts-samyak-deva fonts-samyak-gujr fonts-samyak-taml fonts-saraifonts-sil-andika fonts-sil-doulos fonts-sil-gentium fonts-taml fonts-telu fonts-telu-extra fritzing fritzing-data g++ g++-4.9 gaminegamine-data gawk gbrainy gcc gcc-4.9 gcompris gcompris-data gcompris-sound-en gedit gedit-common geoclue geoclue-ubuntu-geoip gimpgimp-data gir1.2-accounts-1.0 gir1.2-appindicator3-0.1 gir1.2-atk-1.0 gir1.2-atspi-2.0 gir1.2-dbusmenu-glib-0.4 gir1.2-dee-1.0gir1.2-freedesktop gir1.2-gdata-0.0 gir1.2-gdesktopenums-3.0 gir1.2-gdkpixbuf-2.0 gir1.2-gexiv2-0.10 gir1.2-gmenu-3.0gir1.2-gnomebluetooth-1.0 gir1.2-gnomedesktop-3.0 gir1.2-gnomekeyring-1.0 gir1.2-goa-1.0 gir1.2-gst-plugins-base-1.0 gir1.2-gstreamer-1.0gir1.2-gtk-3.0 gir1.2-gtksource-3.0 gir1.2-gudev-1.0 gir1.2-ibus-1.0 gir1.2-javascriptcoregtk-3.0 gir1.2-json-1.0 gir1.2-notify-0.7gir1.2-osmgpsmap-1.0 gir1.2-packagekitglib-1.0 gir1.2-panelapplet-5.0 gir1.2-pango-1.0 gir1.2-peas-1.0 gir1.2-rb-3.0 gir1.2-secret-1gir1.2-signon-1.0 gir1.2-totem-1.0 gir1.2-totem-plparser-1.0 gir1.2-udisks-2.0 gir1.2-unity-5.0 gir1.2-vte-2.91 gir1.2-webkit-3.0gir1.2-wnck-3.0 gkbd-capplet gnome-accessibility-themes gnome-applets gnome-applets-data gnome-bluetooth gnome-calculator gnome-contactsgnome-control-center-shared-data gnome-desktop3-data gnome-disk-utility gnome-flashback gnome-flashback-common gnome-font-viewergnome-icon-theme gnome-icon-theme-full gnome-icon-theme-gartoon-redux gnome-icon-theme-symbolic gnome-mahjongg gnome-media gnome-menusgnome-mines gnome-orca gnome-panel gnome-panel-data gnome-power-manager gnome-screensaver gnome-screenshot gnome-session-bingnome-session-canberra gnome-session-common gnome-session-flashback gnome-settings-daemon-schemas gnome-shell-common gnome-sudokugnome-system-log gnome-system-monitor gnome-terminal gnome-terminal-data gnome-themes-standard gnome-themes-standard-data gnome-tweak-toolgnome-user-guide gnome-user-share gnome-video-effects gobby gobby-infinote gramps graphviz grilo-plugins-0.2-base gsettings-ubuntu-schemasgsfonts-x11 gstreamer0.10-alsa gstreamer0.10-gconf gstreamer0.10-plugins-base-apps gstreamer0.10-pulseaudio gstreamer0.10-toolsgstreamer1.0-alsa gstreamer1.0-clutter gstreamer1.0-plugins-base-apps gstreamer1.0-tools gtk2-engines-pixbuf gucharmap guile-2.0-libsgvfs-backends gvfs-bin gvfs-fuse hud human-icon-theme human-theme humanity-icon-theme hwdata ibus ibus-gtk ibus-gtk3 ibus-tableicc-profiles-free imagemagick imagemagick-6.q16 imagemagick-common indi-bin indicator-applet indicator-applet-completeindicator-application indicator-appmenu indicator-bluetooth indicator-datetime indicator-keyboard indicator-messages indicator-powerindicator-printers indicator-session indicator-sound inkscape intel-gpu-tools jayatana kalgebra kalgebra-common kalzium kalzium-datakanagram kbruch kdebase-runtime kdeedu-data kdeedu-kvtml-data kgeography kgeography-data khangman kig klavaro klettres klettres-data kmplotkolourpaint4 krecipes krecipes-data krosspython kstars kstars-data ktouch ktouch-data ktuberling kturtle kwordquiz labylandscape-client-ui-install language-selector-gnome libaccount-plugin-1.0-0 libaccount-plugin-generic-oauth libaccount-plugin-googlelibaccounts-qt5-1 libalgorithm-diff-perl libalgorithm-diff-xs-perl libalgorithm-merge-perl libamd2.3.1 libanalitza5abi1 libanalitza6libanalitzagui5abi1 libanalitzagui6 libanalitzaplot5abi1 libanalitzaplot6 libanalitzawidgets6 libappindicator0.1-cil libappindicator1libappindicator3-1 libasan1 libastro1 libatk-adaptor libatkmm-1.6-1 libatomic1 libavahi-ui-gtk3-0 libavogadro1 libbabl-0.1-0 libbamf3-2libblas-common libblas3 libbonoboui2-0 libbonoboui2-common libboost-python1.55.0 libbrasero-media3-1 libbrlapi0.6 libburn4 libc-dev-binlibc6-dev libcairomm-1.0-1 libcamd2.3.1 libcamel-1.2-49 libcanberra-gtk-module libcanberra-gtk0 libccolamd2.8.0 libcdio-cdda1libcdio-paranoia1 libcdt5 libcfitsio2 libcgmanager0 libcgraph6 libcheese-gtk23 libcheese7 libcholmod2.1.2 libcilkrts5 libclutter-1.0-0libclutter-1.0-common libclutter-gst-2.0-0 libclutter-gtk-1.0-0 libcogl-common libcogl-pango20 libcogl-path20 libcogl20 libcolumbus1libcolumbus1-common libcompizconfig0 libcpufreq0 libdbus-glib2.0-cil libdbus2.0-cil libdbusmenu-gtk3-4 libdecoration0 libdee-1.0-4libdmapsharing-3.0-2 libdotconf0 libebackend-1.2-7 libebook-1.2-14 libebook-contacts-1.2-0 libecal-1.2-16 libedata-book-1.2-20libedata-cal-1.2-23 libedataserver-1.2-18 liberror-perl libespeak1 libevdocument3-4 libevent-2.0-5 libevolution libevview3-3 libexempi3libfakeroot libfftw3-double3 libfltk1.3 libfluidsynth1 libfolks-eds25 libfolks-telepathy25 libfolks25 libframe6 libftgl2 libgail-3-0libgail-common libgail18 libgc1c2 libgcc-4.9-dev libgconf2.0-cil libgdata-common libgdata19 libgdiplus libgee-0.8-2 libgee2 libgegl-0.2-0libgeis1 libgeocode-glib0 libgexiv2-2 libgfortran3 libgimp2.0 libgl2ps0 libglade2-0 libglewmx1.10 libglib2.0-cil libglibmm-2.4-1c2alibgmime-2.6-0 libgmime2.6-cil libgnome-bluetooth11 libgnome-control-center1 libgnome-desktop-3-10 libgnome-keyring-commonlibgnome-keyring0 libgnome-menu-3-0 libgnomecanvas2-0 libgnomecanvas2-common libgnomekbd-common libgnomekbd8 libgnomeui-0 libgnomeui-commonlibgnomevfs2-extra libgoa-1.0-0b libgoa-1.0-common libgrail6 libgrilo-0.2-1 libgsasl7 libgsettings-qt1 libgsl0ldbl libgtk2.0-cillibgtkglext1 libgtkhtml-4.0-0 libgtkhtml-4.0-common libgtkhtml-editor-4.0-0 libgtkmm-2.4-1c2a libgtkmm-3.0-1 libgtksourceview-3.0-1libgtksourceview-3.0-common libgtksourceview2.0-0 libgtksourceview2.0-common libgtkspell0 libgtkspell3-3-0 libgtop2-10 libgtop2-commonlibgucharmap-2-90-7 libgvc6 libgvpr2 libgweather-3-6 libgweather-common libgxps2 libhud2 libidl0 libido3-0.1-0 libimage-magick-perllibimage-magick-q16-perl libindi-data libindi0d libindialignmentdriver0d libindicator3-7 libindicator7 libindidriver0d libinfgtk3-0.6-0libinfinity-0.6-0 libinput7 libisofs6 libitm1 libjs-mathjax libjs-sphinxdoc libjson0 libjte1 libkdegames6abi1 libkeduvocdocument4libkeduvocdocument5 libkpathsea6 libkunitconversion4 liblapack3 liblightdm-gobject-1-0 liblircclient0 liblouis-data liblouis2 liblqr-1-0liblua5.1-0 libmagick++-6.q16-5 libmagickcore-6.q16-2 libmagickcore-6.q16-2-extra libmagickwand-6.q16-2 libmail-spf-perl libmarblewidget20libmediaart-1.0-0 libmessaging-menu0 libmetacity-private2 libmikmod3 libminiupnpc10 libmono-addins-gui0.2-cil libmono-addins0.2-cillibmono-cairo4.0-cil libmono-corlib4.0-cil libmono-corlib4.5-cil libmono-csharp4.0c-cil libmono-i18n-west4.0-cil libmono-i18n4.0-cillibmono-posix4.0-cil libmono-security4.0-cil libmono-sharpzip4.84-cil libmono-system-configuration4.0-cil libmono-system-core4.0-cillibmono-system-drawing4.0-cil libmono-system-security4.0-cil libmono-system-xml4.0-cil libmono-system4.0-cil libmuparser2 libnatpmp1libnautilus-extension1a libnetaddr-ip-perl libnetpbm10 libnm-gtk-common libnm-gtk0 libnotify-bin libnova-0.14-0 libntlm0 libnux-4.0-0libnux-4.0-common liboauth0 libopenal-data libopenal1 libopenbabel4 liborbit2 libosmgpsmap-1.0-0 liboxideqt-qmlplugin liboxideqtcore0liboxideqtquick0 libpackagekit-glib2-16 libpanel-applet0 libpangomm-1.4-1 libpathplan4 libpeas-1.0-0 libpeas-common libpocketsphinx1libpodofo0.9.0 libpoppler-glib8 libportaudio2 libpotrace0 libproxy1-plugin-gsettings libproxy1-plugin-networkmanager libpst4 libptexenc1libqextserialport1 libqqwing2 libqt4-webkit libqt5feedback5 libqt5organizer5 libqt5positioning5 libqtlocation1 libquadmath0 libquazip1libquvi-scripts libquvi7 librarian0 libraw10 librecad librecad-data libreoffice-gnome libreoffice-gtk libreoffice-ogltranslibreoffice-style-human librhythmbox-core8 librsvg2-2 librsvg2-common librsync1 libsdl-image1.2 libsdl-mixer1.2 libsdl-net1.2 libsdl-pango1libsdl-ttf2.0-0 libsdl1.2debian libshp2 libsigc++-2.0-0c2a libsignon-extension1 libsignon-glib1 libsignon-plugins-common1 libsignon-qt5-1libsigsegv2 libsonic0 libspeechd2 libsphinxbase1 libstdc++-4.9-dev libswitch-perl libsynctex1 libsys-hostname-long-perl libt4k-common0libtidy-0.99-0 libtimezonemap-data libtimezonemap1 libtotem-plparser18 libtotem0 libtracker-sparql-1.0-0 libubsan0 libufe-xidgetter0libumfpack5.6.2 libunique-3.0-0 libunity-action-qt1 libunity-control-center1 libunity-core-6.0-9 libunity-gtk2-parser0libunity-gtk3-parser0 libunity-misc4 libunity-protocol-private0 libunity-scopes-json-def-desktop libunity-settings-daemon1libunity-webapps0 libunity9 libunityvoice1 liburl-dispatcher1 libuuid-perl libvncserver0 libvte-2.91-0 libvte-2.91-common libvte-commonlibvte9 libwacom-bin libwacom-common libwacom2 libwcs4 libwlocate0 libwmf-bin libwmf0.2-7 libwmf0.2-7-gtk libwnck-3-0 libwnck-3-commonlibwxbase3.0-0 libwxgtk3.0-0 libxcomp3 libxklavier16 libxml++2.6-2 libxres1 libyaml-tiny-perl libyelp0 libytnef0 libzeitgeist-1.0-1libzeitgeist-2.0-0 libzzip-0-13 liferea liferea-data light-themes lightdm lightspeed linux-libc-dev lmodern lybniz manpages-dev marblemarble-data marble-plugins mcp-account-manager-uoa melting metacity metacity-common mono-4.0-gac mono-gac mono-runtime mono-runtime-commonmono-runtime-sgen mousetweaks mtools musescore-soundfont-gm mutter-common nautilus nautilus-data nautilus-sendto nautilus-share netpbmnetwork-manager-gnome network-manager-pptp-gnome notify-osd notify-osd-icons nux-tools nxproxy onboard onboard-data oneconf oneconf-commonopenbabel opendict otf-freefont overlay-scrollbar overlay-scrollbar-gtk2 overlay-scrollbar-gtk3 oxideqt-codecs pairs parley parley-datapastebinit pdfmod pencil2d perlmagick pkg-config plainbox-provider-checkbox plainbox-provider-resource-generic plainbox-secure-policyplymouth-theme-edubuntu plymouth-theme-ubuntu-logo python-apsw python-aptdaemon python-aptdaemon.gtk3widgets python-avogadropython-beautifulsoup python-bs4 python-cairo python-cherrypy3 python-commandnotfound python-cssselect python-cssutils python-cupspython-dateutil python-debtagshw python-defer python-dnspython python-ecdsa python-feedparser python-gconf python-gdbm python-geventpython-gi-cairo python-gnome2 python-greenlet python-gtk2 python-html5lib python-imaging python-kde4 python-ldb python-libxml2python-lockfile python-lxml python-markdown python-mechanize python-ndg-httpsclient python-netifaces python-notify python-ntdb python-numpypython-oneconf python-paramiko python-pil python-piston-mini-client python-pyfits python-pygments python-pyorbit python-pyparsingpython-pyqt5 python-pyqt5.qtsvg python-pyqt5.qtwebkit python-pysqlite2 python-qt4 python-repoze.lru python-requests python-routespython-samba python-simplejson python-sip python-tdb python-tk python-urllib3 python-utidylib python-vte python-webob python-wxgtk3.0python-wxversion python-x2go python-xdg python-xlib python-yaml python-zeitgeist python3-aptdaemon.gtk3widgets python3-aptdaemon.pkcompatpython3-brlapi python3-bs4 python3-bsddb3 python3-cairo python3-checkbox-ng python3-checkbox-support python3-crypto python3-debianpython3-feedparser python3-gi-cairo python3-html5lib python3-httplib2 python3-icu python3-louis python3-lxml python3-makopython3-markupsafe python3-oauthlib python3-oneconf python3-piston-mini-client python3-plainbox python3-pyatspi python3-pyparsingpython3-smbc python3-speechd python3-xdg qml-module-qt-labs-folderlistmodel qml-module-qt-labs-settings qml-module-qtfeedbackqml-module-qtquick-localstorage qml-module-ubuntu-onlineaccounts qt-at-spi qtdeclarative4-kqtquickcharts-1 qtdeclarative5-accounts-pluginqtdeclarative5-localstorage-plugin qtdeclarative5-qtfeedback-plugin qtdeclarative5-qtquick2-pluginqtdeclarative5-ubuntu-ui-extras-browser-plugin qtdeclarative5-ubuntu-ui-toolkit-plugin qtdeclarative5-ubuntu-web-pluginqtdeclarative5-ubuntu-web-plugin-assets qtdeclarative5-unity-action-plugin rarian-compat re2c remmina remmina-common remmina-plugin-rdpremmina-plugin-vnc rhythmbox rhythmbox-data rhythmbox-mozilla rhythmbox-plugin-cdrecorder rhythmbox-plugin-magnatunerhythmbox-plugin-zeitgeist rhythmbox-plugins ri-li ri-li-data rlwrap rocs sa-compile samba-common samba-common-bin screen scribusscribus-ng scrollkeeper seahorse session-migration sessioninstaller shotwell shotwell-common signon-keyring-extension signon-plugin-oauth2signon-plugin-password signon-ui signon-ui-service signon-ui-x11 signond simple-scan software-center software-center-aptdaemon-pluginssoftware-properties-gtk spamassassin spamc speech-dispatcher speech-dispatcher-audio-plugins sphinx-voxforge-hmm-en sphinx-voxforge-lm-ensqlite3 ssh-askpass-gnome steadyflow step suru-icon-theme syslinux syslinux-common syslinux-legacy system-config-printer-commonsystem-config-printer-gnome systemd-shim telepathy-idle telepathy-indicator tex-common texlive-base texlive-binaries texlive-latex-basetexlive-latex-base-doc thunderbird thunderbird-gnome-support tk8.6-blt2.5 tomboy totem totem-common totem-plugins transfigtransmission-common transmission-gtk ttf-adf-accanthis ttf-adf-baskervald ttf-adf-berenis ttf-adf-gillius ttf-adf-ikarius ttf-adf-irianisttf-adf-libris ttf-adf-mekanus ttf-adf-oldania ttf-adf-romande ttf-adf-switzera ttf-adf-tribun ttf-adf-universalis ttf-adf-veranattf-aenigma ttf-ancient-fonts ttf-atarismall ttf-bitstream-vera ttf-engadget ttf-essays1743 ttf-femkeklaver ttf-georgewilliamsttf-goudybookletter ttf-isabella ttf-marvosym ttf-radisnoir ttf-sjfonts ttf-staypuft tuxmath tuxmath-data tuxpaint tuxpaint-configtuxpaint-data tuxpaint-plugins-default tuxpaint-stamps-default tuxtype tuxtype-data ubuntu-artwork ubuntu-desktop ubuntu-docsubuntu-edu-preschool ubuntu-edu-primary ubuntu-edu-secondary ubuntu-edu-tertiary ubuntu-mobile-icons ubuntu-monoubuntu-release-upgrader-gtk ubuntu-session ubuntu-settings ubuntu-sounds ubuntu-sso-client-qt ubuntu-system-service ubuntu-touch-soundsubuntu-ui-toolkit-theme ubuntu-wallpapers ubuntu-wallpapers-vivid ubuntuone-client-data unity unity-asset-pool unity-control-centerunity-control-center-signon unity-greeter unity-gtk-module-common unity-gtk2-module unity-gtk3-module unity-lens-applicationsunity-lens-files unity-lens-music unity-lens-photos unity-lens-video unity-schemas unity-scope-audacious unity-scope-calculatorunity-scope-chromiumbookmarks unity-scope-clementine unity-scope-colourlovers unity-scope-devhelp unity-scope-firefoxbookmarksunity-scope-gdrive unity-scope-gmusicbrowser unity-scope-gourmet unity-scope-guayadeque unity-scope-home unity-scope-manpagesunity-scope-musicstores unity-scope-musique unity-scope-openclipart unity-scope-texdoc unity-scope-tomboy unity-scope-video-remoteunity-scope-virtualbox unity-scope-yelp unity-scope-zotero unity-scopes-master-default unity-scopes-runner unity-servicesunity-settings-daemon unity-voice-service unity-webapps-common unity-webapps-qml unity-webapps-service update-manager update-notifierupstart upstart-bin usb-creator-common usb-creator-gtk vim vim-runtime vino vym webaccounts-extension-common webapp-containerwebbrowser-app x11vnc x11vnc-data xaos xbrlapi xcursor-themes xdg-user-dirs-gtk xdiagnose xplanet xplanet-images xsltproc xtermxul-ext-unity xul-ext-webaccounts xul-ext-websites-integration xvnc4viewer yelp yelp-xsl yorick yorick-data yorick-z zeitgeistzeitgeist-core zeitgeist-datahub && sudo apt-get install kubuntu-desktop

I've been rooting and installing custom roms on Android phones since 2009. In general, it's been a fairly standard procedure. With the Moto X 2013 (and this may apply to the 2014 as well—I don't know—I can vouch only for the 2013), the procedure is slightly different.

Unlock bootloader
Get factory image
Get Motorola's fastboot
Get TWRP
Get the custom rom you want
Flash TWRP recovery to phone
Flashing the rom (and Google Apps)

Unlock bootloader

Go to the Motorola website to request to unlock your phone's bootloader. If you got a phone not locked to a carrier, there should be no issue with this.

The first time you unlock your bootloader, it will erase everything on your phone. Back up important stuff before you unlock the bootloader!

Get factory image

In case you decide you want to ever unroot and go back to the original Motorola factory image, you should now (before you do anything else) request from Motorola the original factory image for your Moto X. This may take a day or two. You'll make a request, and then you'll get an email with a link to the file. It's basically like a shared Google Doc file that you'll get read-only permission to view.

The last one I got was 4.4.4. If you want to get that one from a third-party and want to double-check the MD5 hash, the file name is TMO_RETAIL_XT1053_4.4.4_213.44.1.ghost_row.Retail.en.US_MR4_CFC.tgz, and the hash is 22773e5981cb04f6286a12e9488d0db5.

Get Motorola's fastboot

I'm not sure why, but apparently Motorola has its own fastboot, so you're supposed to use that one instead of the regular fastboot you'd find in the Android SDK (Google has also switched things up so if you go to get the Android SDK, you'll get an Android IDE app instead of just the raw files).

The weird thing is it's very difficult to find this Moto Fastboot anywhere on the Motorola website. I've found it only via third parties.

Here you can find a link to the Mac version.

And here you can find a link to the Windows version.

I wasn't able to track down Linux versions, but they supposedly exist.

Get TWRP

Next, you want to download the TWRP (Team Win Recovery Project) recovery for the Moto X 2013 (codenamed ghost). You can find the latest version on the TWRP website.

Get the custom rom you want

For this example, I'm going to recommend the Nexus Experience, but you can pick whatever rom you want. Unless you know you don't want Google Apps, be sure to download not just the rom but also the Google Apps .zip.

So one file should look something like Android5.1.1_NX_R9.4_MotoX2013.zip and another something like NX-GAPPS_L_Release3.3_Full.zip.

Plug your phone into your computer, and then copy those two files to the top-level /sdcard directory on your phone.

Flash TWRP recovery to phone

I'm sure there's a Windows equivalent for this using DOS, but I've done this only on a Mac, so I'm not 100% sure on the Windows procedure.

For Mac, put the TWRP file (something like twrp-2.8.6.0-ghost.img) in the same directory as your moto-fastboot-osx64 file (may be slightly different for Windows and Linux users, of course). For simplicity's sake, rename the TWRP file to be twrp.img.

Turn your Moto X 2013 off. Unplug it from your computer. Then, while holding the volume-down button down, press the power button. Don't let go of the volume-down button until your phone boots into fastboot mode.

Then, plug your phone back into your computer via USB.

In the Terminal.app (similar but different for Windows and Linux), navigate to the directory where your moto fastboot and twrp .img files are. If you don't know how to do that, type cd in the terminal (with a space after it), and then drag the folder over to the terminal. Then hit Enter.

Then, run the commands

./moto-fastboot-osx64 flash recovery twrp.img

Flashing the rom (and Google Apps)

You should still be at the fastboot screen, press the volume-down button once to highlight Recovery, and then press the volume-up button once to select it.

You should then see the teamwin logo.

After that, you'll get some touch-screen options.

First, select Wipe to wipe your current installation (you already backed up before unlocking the bootloader, right?). Then do a swipe to factory reset.

Once you're done, hit the back button to go back to the main menu. Next, select Install. Find your main rom (e.g., Android5.1.1_NX_R9.4_MotoX2013.zip) and flash that.

Go back to Install and flash Google Apps if you want (e.g., NX-GAPPS_L_Release3.3_Full.zip). If you don't know if you want Google Apps, flash it, just to be safe.

Then, go back to the main menu and select Reboot and then System.

It may take a while for your rom to boot up the first time, but then you're all set to use your custom rooted rom!

Pure Ubuntu 15.04

April 25th, 2015

Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.

These removal commands were created based on what Kubuntu, Xubuntu, etc. packages were added to a default Ubuntu 15.04 installation. It's possible that the commands might remove some other packages you have since added to the default and want to keep. If that's the case, keep track of which packages those are and reinstall them. Theoretically, your settings should still be there. I am not responsible for any damage you do to your *buntu installation. If you're worried about breaking anything, do a full back up of your *buntu installation.

Remove Kubuntu
Paste this command into the terminal.

sudo apt-get remove about-distro akonadi-backend-mysql akonadi-server akregator amarok amarok-common amarok-utils apport-kde apturl-kde ark baloo-kf5 baloo-utils bluedevil breeze breeze-cursor-theme breeze-icon-theme ca-certificates-java cdparanoia cdrdao consolekit cryptsetup cryptsetup-bin debconf-kde-data default-jre default-jre-headless docbook-xml docbook-xsl dolphin dragonplayer fonts-dejavu-extra frameworkintegration freerdp-x11 gnupg-agent gnupg2 gpgsm gstreamer-qapt gstreamer1.0-libav gstreamer1.0-plugins-ugly gstreamer1.0-plugins-ugly-amr gtk2-engines-oxygen gtk3-engines-oxygen gwenview i965-va-driver ibus-qt4 icoutils java-common javascript-common k3b k3b-data kactivities kaddressbook kamera kate kate-data kate5-data katepart kcalc kde-cli-tools kde-cli-tools-data kde-config-gtk-style kde-config-gtk-style-preview kde-config-sddm kde-config-tablet kde-config-telepathy-accounts kde-config-touchpad kde-config-whoopsie kde-runtime kde-runtime-data kde-style-breeze kde-style-breeze-qt4 kde-style-oxygen-qt5 kde-telepathy kde-telepathy-approver kde-telepathy-auth-handler kde-telepathy-call-ui kde-telepathy-contact-list kde-telepathy-data kde-telepathy-declarative kde-telepathy-filetransfer-handler kde-telepathy-integration-module kde-telepathy-kpeople kde-telepathy-legacy-presence-applet kde-telepathy-minimal kde-telepathy-send-file kde-telepathy-text-ui kdeconnect kdeconnect-plasma kded5 kdegraphics-strigi-analyzer kdelibs-bin kdelibs5-data kdelibs5-plugins kdemultimedia-kio-plugins kdenetwork-filesharing kdepim-kresources kdepim-runtime kdepimlibs-kio-plugins kdeplasma-addons-data kdesudo kdoctools khelpcenter khotkeys khotkeys-data kimageformat-plugins kinfocenter kinit kio kio-audiocd kio-extras kio-extras-data kio-mtp kmail kmenuedit kmix knotes konsole konsole-kpart konsole4-kpart kontact konversation konversation-data korganizer kpackagelauncherqml kpackagetool5 krdc kross kscreen ksnapshot ksshaskpass ksysguard ksysguard-data ksysguardd ksystemlog ktexteditor-data ktexteditor-katepart ktorrent ktorrent-data kubuntu-debug-installer kubuntu-desktop kubuntu-driver-manager kubuntu-notification-helper kubuntu-settings-desktop kubuntu-web-shortcuts kwalletmanager kwin kwin-addons kwin-data kwin-style-breeze kwrited liba52-0.7.4 libaccounts-qt1 libaio1 libakonadi-calendar4 libakonadi-contact4 libakonadi-kabc4 libakonadi-kcal4 libakonadi-kde4 libakonadi-kmime4 libakonadi-notes4 libakonadi-socialutils4 libakonadiprotocolinternals1 libao-common libao4 libatk-wrapper-java libatk-wrapper-java-jni libattica0.4 libavcodec56 libavformat56 libavresample2 libavutil54 libbaloocore4 libbaloofiles4 libbaloopim4 libbalooqueryparser4 libbaloowidgets4 libbalooxapian4 libbluedevil1 libbonobo2-0 libbonobo2-common libboost-program-options1.55.0 libboost-thread1.55.0 libcalendarsupport4 libchm1 libck-connector0 libcln6 libdebconf-kde1 libdlrestrictions1 libdmtx0a libdvdnav4 libdvdread4 libencode-locale-perl libepub0 libeventviews4 libfakekey0 libfile-listing-perl libflac++6 libfollowupreminder4 libfont-afm-perl libfreerdp-rail1.1 libgconf2-4 libgif4 libgit2-22 libgnome2-0 libgnome2-bin libgnome2-common libgnomevfs2-0 libgnomevfs2-common libgpgme++2 libgps21 libgrantlee-core0 libgrantlee-gui0 libgsm1 libhsqldb1.8.0-java libhtml-form-perl libhtml-format-perl libhtml-parser-perl libhtml-tagset-perl libhtml-tree-perl libhttp-cookies-perl libhttp-daemon-perl libhttp-date-perl libhttp-message-perl libhttp-negotiate-perl libhttp-parser2.1 libibus-qt1 libilmbase6 libincidenceeditorsng4 libio-html-perl libiso9660-8 libjs-jquery libjs-prototype libjs-scriptaculous libjs-underscore libk3b6 libk3b6-extracodecs libkabc4 libkactivities6 libkalarmcal2 libkatepartinterfaces4 libkblog4 libkcal4 libkcalcore4 libkcalutils4 libkcddb4 libkcmutils4 libkcompactdisc4 libkde3support4 libkdeclarative5 libkdecorations2-5 libkdecorations2private5 libkdecore5 libkdepim4 libkdepimdbusinterfaces4 libkdesu5 libkdeui5 libkdewebkit5 libkdgantt2-0 libkdnssd4 libkemoticons4 libkexiv2-11 libkexiv2-data libkf5activities5 libkf5archive5 libkf5attica5 libkf5auth-data libkf5auth5 libkf5baloo1 libkf5balooxapian1 libkf5bookmarks-data libkf5bookmarks5 libkf5codecs-data libkf5codecs5 libkf5completion-data libkf5completion5 libkf5config-bin libkf5config-data libkf5configcore5 libkf5configgui5 libkf5configwidgets-data libkf5configwidgets5 libkf5coreaddons-data libkf5coreaddons5 libkf5crash5 libkf5dbusaddons-bin libkf5dbusaddons-data libkf5dbusaddons5 libkf5declarative-data libkf5declarative5 libkf5dnssd-data libkf5dnssd5 libkf5emoticons-bin libkf5emoticons-data libkf5emoticons5 libkf5filemetadata-bin libkf5filemetadata-data libkf5filemetadata3 libkf5globalaccel-bin libkf5globalaccel-data libkf5globalaccel5 libkf5guiaddons5 libkf5i18n-data libkf5i18n5 libkf5iconthemes-bin libkf5iconthemes-data libkf5iconthemes5 libkf5idletime5 libkf5itemmodels5 libkf5itemviews-data libkf5itemviews5 libkf5jobwidgets-data libkf5jobwidgets5 libkf5js5 libkf5jsembed-data libkf5jsembed5 libkf5kcmutils-data libkf5kcmutils5 libkf5kdelibs4support-data libkf5kdelibs4support5 libkf5kdelibs4support5-bin libkf5khtml-bin libkf5khtml-data libkf5khtml5 libkf5kiocore5 libkf5kiofilewidgets5 libkf5kiontlm5 libkf5kiowidgets5 libkf5krosscore5 libkf5krossui5 libkf5modemmanagerqt6 libkf5networkmanagerqt6 libkf5newstuff-data libkf5newstuff5 libkf5notifications-data libkf5notifications5 libkf5notifyconfig-data libkf5notifyconfig5 libkf5package5 libkf5parts-data libkf5parts-plugins libkf5parts5 libkf5plasma5 libkf5plasmaquick5 libkf5prison1 libkf5pty-data libkf5pty5 libkf5quickaddons5 libkf5runner5 libkf5screen6 libkf5service-bin libkf5service-data libkf5service5 libkf5solid5 libkf5solid5-data libkf5sonnet5-data libkf5sonnetcore5 libkf5sonnetui5 libkf5style5 libkf5su-bin libkf5su5 libkf5sysguard5 libkf5sysguard5-data libkf5texteditor5 libkf5textwidgets-data libkf5textwidgets5 libkf5threadweaver5 libkf5unitconversion-data libkf5unitconversion5 libkf5wallet-bin libkf5wallet5 libkf5waylandclient5 libkf5waylandserver5 libkf5webkit5 libkf5widgetsaddons-data libkf5widgetsaddons5 libkf5windowsystem-data libkf5windowsystem5 libkf5xmlgui-bin libkf5xmlgui-data libkf5xmlgui5 libkf5xmlrpcclientprivate5 libkfbapi1 libkfile4 libkfilemetadata4 libkfontinst5 libkfontinstui5 libkgapi2-2 libkholidays4 libkhtml5 libkidletime4 libkimap4 libkio5 libkipi-data libkipi11 libkjsapi4 libkjsembed4 libkldap4 libkleo4 libkmanagesieve4 libkmbox4 libkmediaplayer4 libkmime4 libknewstuff2-4 libknewstuff3-4 libknotifyconfig4 libkntlm4 libkolab0 libkolabxml1 libkonq-common libkonq5-templates libkonq5abi1 libkontactinterface4 libkparts4 libkpeople4 libkpgp4 libkpimidentities4 libkpimtextedit4 libkpimutils4 libkprintutils4 libkpty4 libkresources4 libkrosscore4 libksane-data libksane0 libksba8 libksgrd5 libksieve4 libksieveui4 libksignalplotter5 libktexteditor4 libktnef4 libktorrent-l10n libktorrent5 libktpcommoninternalsprivate8 libktploggerprivate8 libktpmodelsprivate8 libktpotrprivate8 libktpwidgetsprivate8 libkubuntu1 libkwalletbackend5-5 libkwin4-effect-builtins1 libkwineffects6 libkwinglutils6 libkwinxrenderutils6 libkworkspace5-5 libkxmlrpcclient4 liblastfm1 libloudmouth1-0 liblwp-mediatypes-perl liblwp-protocol-https-perl libmad0 libmailcommon4 libmailimporter4 libmailtransport4 libmessagecomposer4 libmessagecore4 libmessagelist4 libmessageviewer4 libmicroblog4 libmp3lame0 libmpcdec6 libmpeg2-4 libmuon libmusicbrainz5-1 libmygpo-qt1 libmysqlclient18 libnet-http-perl libnoteshared4 libntrack-qt4-1 libntrack0 liboath0 libokularcore6 libopenconnect3 libopencore-amrnb0 libopencore-amrwb0 libopenexr6 libopenjpeg5 libopus0 liborbit-2-0 libotr5 liboxygenstyle5-5 liboxygenstyleconfig5-5 libpam-ck-connector libperl4-corelibs-perl libphonon4 libphonon4qt5-4 libpimcommon4 libplasma-geolocation-interface5 libplasma3 libpolkit-qt-1-1 libpolkit-qt5-1-1 libpoppler-qt4-4 libpoppler-qt5-1 libpowerdevilcore2 libpowerdevilui5 libprison0 libprocesscore5 libprocessui5 libpth20 libqalculate5 libqalculate5-data libqapt3 libqapt3-runtime libqca-qt5-2 libqca-qt5-2-plugins libqca2 libqca2-plugin-ossl libqca2-plugins libqgpgme1 libqgsttools-p1 libqimageblitz4 libqjson0 libqmobipocket1 libqrencode3 libqt4-qt3support libqt4-sql-mysql libqt5clucene5 libqt5concurrent5 libqt5designer5 libqt5designercomponents5 libqt5help5 libqt5multimedia5-plugins libqt5multimediaquick-p5 libqt5multimediawidgets5 libqt5script5 libqt5x11extras5 libqtglib-2.0-0 libqtgstreamer-1.0-0 libqtgstreamerui-1.0-0 libqtscript4-core libqtscript4-gui libqtscript4-network libqtscript4-sql libqtscript4-uitools libqtscript4-xml libreoffice-base libreoffice-base-drivers libreoffice-java-common libreoffice-kde libreoffice-sdbc-firebird libreoffice-sdbc-hsqldb libreoffice-style-breeze libreoffice-style-oxygen libruby2.1 libschroedinger-1.0-0 libscim8c2a libsendlater4 libservlet3.0-java libsidplay1 libsignon-qt1 libsolid4 libsoprano4 libssh-gcrypt-4 libssh2-1 libstoken1 libstreamanalyzer0 libstreams0 libsyndication4 libtag-extras1 libtaskmanager5 libtelepathy-logger-qt4-1 libtelepathy-qt4-2 libtelepathy-qt4-farstream2 libtelepathy-qt5-0 libtemplateparser4 libthreadweaver4 libtomcrypt0 libtommath0 libtwolame0 libva1 libvcdinfo0 libvdpau1 libweather-ion7 libwww-perl libwww-robotrules-perl libx264-142 libxcb-composite0 libxcb-damage0 libxcb-record0 libxcb-xtest0 libxerces-c3.1 libxfreerdp-client1.1 libxml2-utils libxvidcore4 libyaml-0-2 libzip2 milou muon-common muon-discover muon-notifier muon-updater mysql-client-core-5.6 mysql-common mysql-server-core-5.6 ntrack-module-libnl-0 okular okular-extra-backends openjdk-7-jre openjdk-7-jre-headless orion-gtk-theme oxygen-icon-theme oxygen-sounds p7zip-full pam-kwallet partitionmanager phonon phonon-backend-gstreamer phonon-backend-gstreamer-common phonon4qt5-backend-gstreamer pinentry-gtk2 pinentry-qt4 plasma-dataengines-addons plasma-desktop plasma-desktop-data plasma-framework plasma-nm plasma-runners-addons plasma-scriptengine-javascript plasma-wallpapers-addons plasma-widget-kimpanel plasma-widgets-addons plasma-workspace plymouth-theme-kubuntu-logo plymouth-theme-kubuntu-text polkit-kde-agent-1 powerdevil powerdevil-data print-manager python3-dbus.mainloop.pyqt5 python3-pykde4 python3-pyqt4 python3-pyqt5 python3-sip qapt-batch qapt-deb-installer qdbus-qt5 qml-module-org-kde-draganddrop qml-module-org-kde-extensionplugin qml-module-org-kde-kcoreaddons qml-module-org-kde-kio qml-module-org-kde-kquickcontrols qml-module-org-kde-kquickcontrolsaddons qml-module-org-kde-runnermodel qml-module-org-kde-solid qml-module-qtmultimedia qml-module-qtquick-controls qml-module-qtquick-controls-styles-breeze qml-module-qtwebkit qt5-image-formats-plugins qtdeclarative5-kf5declarative qtdeclarative5-kf5solid qtgstreamer-declarative qttools5-dev-tools ruby ruby2.1 rubygems-integration scdaemon sddm sddm-theme-breeze sgml-data skanlite socat software-properties-kde sonnet-plugins soprano-daemon sshfs systemsettings ttf-dejavu-core ttf-oxygen-font-family tzdata-java ubuntu-release-upgrader-qt user-manager va-driver-all vcdimager vdpau-va-driver && sudo apt-get install ubuntu-desktop

Remove Xubuntu
Paste this command into the terminal.

sudo apt-get remove abiword abiword-common abiword-plugin-grammar abiword-plugin-mathview apt-offline blueman brltty-x11 catfish desktop-base espeak exo-utils fonts-lyx gawk gigolo gimp gimp-data gir1.2-gconf-2.0 gmusicbrowser gnome-desktop-data gnome-icon-theme gnome-icon-theme-symbolic gnome-system-tools gnumeric gnumeric-common gnumeric-doc greybird-gtk-theme gstreamer1.0-libav gtk-theme-config hddtemp i965-va-driver inxi libabiword-3.0 libamd2.3.1 libavcodec56 libavformat56 libavresample2 libavutil54 libbabl-0.1-0 libblas-common libblas3 libcairo-perl libcamd2.3.1 libccolamd2.8.0 libchamplain-0.12-0 libchamplain-gtk-0.12-0 libcholmod2.1.2 libdigest-crc-perl libencode-locale-perl libexo-1-0 libexo-common libexo-helpers libfile-listing-perl libfont-afm-perl libgarcon-1-0 libgarcon-common libgdome2-0 libgdome2-cpp-smart0c2a libgegl-0.2-0 libgfortran3 libgimp2.0 libglade2-0 libglib-perl libgoffice-0.10-10 libgoffice-0.10-10-common libgsf-1-114 libgsf-1-common libgsm1 libgstreamer-perl libgtk2-notify-perl libgtk2-perl libgtk2-trayicon-perl libgtkmathview0c2a libgtkspell0 libhtml-form-perl libhtml-format-perl libhtml-parser-perl libhtml-tagset-perl libhtml-tree-perl libhttp-cookies-perl libhttp-daemon-perl libhttp-date-perl libhttp-message-perl libhttp-negotiate-perl libilmbase6 libintl-perl libio-html-perl libjpeg-progs libjpeg-turbo-progs libkeybinder0 liblapack3 liblink-grammar4 libloudmouth1-0 liblwp-mediatypes-perl liblwp-protocol-https-perl libmp3lame0 libnet-dbus-perl libnet-http-perl liboobs-1-5 libopenexr6 libopenjpeg5 libopus0 libotr5 libots0 libpango-perl libschroedinger-1.0-0 libsdl1.2debian libsigsegv2 libtagc0 libthunarx-2-0 libtidy-0.99-0 libtie-ixhash-perl libtumbler-1-0 libumfpack5.6.2 libunique-1.0-0 libva1 libvdpau1 libvte-common libvte9 libwnck-common libwnck22 libwv-1.2-4 libwww-perl libwww-robotrules-perl libx264-142 libxfce4ui-1-0 libxfce4ui-2-0 libxfce4ui-common libxfce4ui-utils libxfce4util-bin libxfce4util-common libxfce4util7 libxfcegui4-4 libxfconf-0-2 libxml-parser-perl libxml-twig-perl libxml-xpathengine-perl libxvidcore4 light-locker light-locker-settings lightdm-gtk-greeter lightdm-gtk-greeter-settings link-grammar-dictionaries-en lm-sensors menulibre mesa-utils mousepad mugshot numix-gtk-theme orage parole pastebinit pavucontrol pidgin pidgin-data pidgin-libnotify pidgin-otr plymouth-theme-xubuntu-logo plymouth-theme-xubuntu-text python-defusedxml python-gtk2 python-magic python-psutil python-soappy python-wstools python3-psutil ristretto shimmer-themes system-tools-backends thunar thunar-archive-plugin thunar-data thunar-media-tags-plugin thunar-volman tumbler tumbler-common va-driver-all vdpau-va-driver xfburn xfce4-appfinder xfce4-cpugraph-plugin xfce4-dict xfce4-indicator-plugin xfce4-mailwatch-plugin xfce4-netload-plugin xfce4-notes xfce4-notes-plugin xfce4-notifyd xfce4-panel xfce4-places-plugin xfce4-power-manager xfce4-power-manager-data xfce4-power-manager-plugins xfce4-quicklauncher-plugin xfce4-screenshooter xfce4-session xfce4-settings xfce4-systemload-plugin xfce4-taskmanager xfce4-terminal xfce4-verve-plugin xfce4-volumed xfce4-weather-plugin xfce4-whiskermenu-plugin xfce4-xkb-plugin xfconf xfdesktop4 xfdesktop4-data xfwm4 xscreensaver xscreensaver-data xubuntu-artwork xubuntu-community-wallpapers xubuntu-core xubuntu-default-settings xubuntu-desktop xubuntu-docs xubuntu-icon-theme xubuntu-wallpapers && sudo apt-get install ubuntu-desktop

Remove Lubuntu
Paste this command into the terminal.

sudo apt-get remove abiword abiword-common abiword-plugin-grammar abiword-plugin-mathview audacious audacious-plugins audacious-plugins-data blueman consolekit desktop-base docbook-xml ffmpegthumbnailer fonts-lyx galculator gdebi gdebi-core giblib1 gir1.2-gconf-2.0 gir1.2-vte-2.90 gksu gnome-desktop-data gnome-icon-theme gnome-icon-theme-full gnome-icon-theme-symbolic gnome-mplayer gnome-system-tools gnumeric gnumeric-common gnumeric-doc gpicview gtk2-engines gtk3-engines-unico guvcview hardinfo i965-va-driver indicator-application-gtk2 leafpad liba52-0.7.4 libaacs0 libabiword-3.0 libass5 libaudcore2 libavcodec56 libavformat56 libavresample2 libavutil54 libbinio1ldbl libbluray1 libbs2b0 libcairo-perl libcddb2 libchamplain-0.12-0 libchamplain-gtk-0.12-0 libck-connector0 libcompfaceg1 libcue1 libdca0 libdirectfb-1.2-9 libdiscid0 libdvdnav4 libdvdread4 libenca0 libencode-locale-perl libept1.4.12 libexo-1-0 libexo-common libexo-helpers libfaad2 libffmpegthumbnailer4 libfile-listing-perl libfluidsynth1 libfm-data libfm-extra4 libfm-gtk-data libfm-gtk4 libfm-modules libfm4 libfont-afm-perl libgda-5.0-4 libgda-5.0-common libgdome2-0 libgdome2-cpp-smart0c2a libgif4 libgksu2-0 libglade2-0 libglib-perl libgmlib1 libgmtk1 libgmtk1-data libgoffice-0.10-10 libgoffice-0.10-10-common libgsf-1-114 libgsf-1-common libgsl0ldbl libgsm1 libgtk2-perl libgtkmathview0c2a libgtkspell0 libguess1 libguvcview-1.0-0 libhtml-form-perl libhtml-format-perl libhtml-parser-perl libhtml-tagset-perl libhtml-tree-perl libhttp-cookies-perl libhttp-daemon-perl libhttp-date-perl libhttp-message-perl libhttp-negotiate-perl libid3tag0 libimlib2 libindicator7 libio-html-perl libjpeg-progs libjpeg-turbo-progs libjs-jquery liblink-grammar4 libloudmouth1-0 liblwp-mediatypes-perl liblwp-protocol-https-perl libmad0 libmenu-cache-bin libmenu-cache3 libmms0 libmodplug1 libmp3lame0 libmpg123-0 libmusicbrainz3-6 libnet-dbus-perl libnet-http-perl libobrender29 libobt2 libonig2 liboobs-1-5 libopenjpeg5 libopts25 libopus0 libots0 libpam-ck-connector libpango-perl libpisock9 libpostproc52 librarian0 libschroedinger-1.0-0 libsdl1.2debian libsdl2-2.0-0 libsidplayfp3 libswscale3 libtidy-0.99-0 libtie-ixhash-perl libuniconf4.6 libva1 libvdpau1 libvte-2.90-9 libvte-2.90-common libvte-common libvte9 libwebcam0 libwnck-common libwnck22 libwv-1.2-4 libwvstreams4.6-base libwvstreams4.6-extras libwww-perl libwww-robotrules-perl libx264-142 libxfce4ui-1-0 libxfce4ui-common libxfce4util-bin libxfce4util-common libxfce4util7 libxfconf-0-2 libxml-parser-perl libxml-twig-perl libxml-xpathengine-perl libxvidcore4 light-locker light-locker-settings lightdm-gtk-greeter link-grammar-dictionaries-en lm-sensors lubuntu-artwork lubuntu-artwork-15-04 lubuntu-core lubuntu-default-session lubuntu-default-settings lubuntu-desktop lubuntu-icon-theme lubuntu-lxpanel-icons lubuntu-software-center lxappearance lxappearance-obconf lxde-common lxde-core lxinput lxlauncher lxmenu-data lxpanel lxpanel-data lxpanel-indicator-applet-plugin lxrandr lxsession lxsession-data lxsession-default-apps lxsession-logout lxshortcut lxtask lxterminal mplayer2 mtpaint ntp obconf openbox pcmanfm pidgin pidgin-data pidgin-libnotify plymouth-theme-lubuntu-logo plymouth-theme-lubuntu-text python-gudev python-psutil python-pysqlite2 rarian-compat scrot sgml-data sylpheed sylpheed-doc sylpheed-i18n sylpheed-plugins synaptic system-tools-backends transmission uvcdynctrl uvcdynctrl-data va-driver-all vdpau-va-driver wvdial xbacklight xfburn xfce4-notifyd xfce4-power-manager xfce4-power-manager-data xfce4-power-manager-plugins xfconf xfonts-100dpi xpad xscreensaver xscreensaver-data && sudo apt-get install ubuntu-desktop && sudo /usr/lib/lightdm/lightdm-set-defaults -g unity-greeter

Remove Edubuntu
Paste this command into the terminal.

sudo apt-get remove akonadi-backend-mysql akonadi-server alacarte analitza-common analitza4-common astrometry.net atomix atomix-data avogadro-data binfmt-support blinken blt bluefish bluefish-data bluefish-plugins breathe-icon-theme calibre calibre-bin cantor cantor-backend-kalgebra celestia-common celestia-gnome chemtool cli-common consolekit desktop-profiles dia dia-common dia-gnome dia-libs dia-shapes docbook-xml docbook-xsl edubuntu-artwork edubuntu-desktop edubuntu-docs edubuntu-fonts edubuntu-menueditor edubuntu-wallpapers einstein elementary-icon-theme epoptes epoptes-client evolution evolution-common evolution-plugins fonts-beng fonts-beng-extra fonts-beteckna fonts-bpg-georgian fonts-breip fonts-century-catalogue fonts-deva fonts-deva-extra fonts-dkg-handwriting fonts-dustin fonts-ecolier-court fonts-ecolier-lignes-court fonts-freefont-otf fonts-gargi fonts-georgewilliams fonts-gubbi fonts-gujr fonts-gujr-extra fonts-inconsolata fonts-isabella fonts-junicode fonts-kalapi fonts-knda fonts-levien-museum fonts-levien-typoscript fonts-linex fonts-linuxlibertine fonts-lmodern fonts-lohit-beng-assamese fonts-lohit-beng-bengali fonts-lohit-deva fonts-lohit-gujr fonts-lohit-knda fonts-lohit-orya fonts-lohit-taml fonts-lohit-taml-classical fonts-lohit-telu fonts-mathjax fonts-mgopen fonts-nakula fonts-navilu fonts-oflb-asana-math fonts-oflb-euterpe fonts-okolaks fonts-opendin fonts-orya fonts-orya-extra fonts-rufscript fonts-sahadeva fonts-samyak-deva fonts-samyak-gujr fonts-samyak-taml fonts-sarai fonts-sil-andika fonts-sil-doulos fonts-sil-gentium fonts-taml fonts-telu fonts-telu-extra fritzing fritzing-data gamine gamine-data gawk gbrainy gcompris gcompris-data gcompris-sound-en gimp gimp-data gir1.2-gdesktopenums-3.0 gir1.2-gexiv2-0.10 gir1.2-gnomedesktop-3.0 gir1.2-osmgpsmap-1.0 gir1.2-panelapplet-5.0 gnome-applets gnome-applets-data gnome-flashback gnome-flashback-common gnome-icon-theme gnome-icon-theme-full gnome-icon-theme-gartoon-redux gnome-icon-theme-symbolic gnome-media gnome-panel gnome-panel-data gnome-session-flashback gnome-shell-common gnome-tweak-tool gobby gobby-infinote gramps graphviz gsfonts-x11 gstreamer0.10-gconf human-icon-theme human-theme icc-profiles-free icoutils imagemagick imagemagick-6.q16 imagemagick-common indi-bin indicator-applet-complete inkscape kactivities kalgebra kalgebra-common kalzium kalzium-data kanagram kate-data katepart kbruch kde-runtime kde-runtime-data kdebase-runtime kdeedu-data kdeedu-kvtml-data kdelibs-bin kdelibs5-data kdelibs5-plugins kdepim-runtime kdepimlibs-kio-plugins kdoctools kgeography kgeography-data khangman khelpcenter kig klavaro klettres klettres-data kmplot kolourpaint4 kpackagelauncherqml kpackagetool5 krecipes krecipes-data kross krosspython kstars kstars-data ktexteditor-data ktexteditor-katepart ktouch ktouch-data ktuberling kturtle kubuntu-debug-installer kwordquiz laby libaccounts-qt1 libaio1 libakonadi-calendar4 libakonadi-contact4 libakonadi-kabc4 libakonadi-kcal4 libakonadi-kde4 libakonadi-kmime4 libakonadi-notes4 libakonadi-socialutils4 libakonadiprotocolinternals1 libamd2.3.1 libanalitza5abi1 libanalitza6 libanalitzagui5abi1 libanalitzagui6 libanalitzaplot5abi1 libanalitzaplot6 libanalitzawidgets6 libappindicator0.1-cil libappindicator1 libastro1 libattica0.4 libavogadro1 libbabl-0.1-0 libblas-common libblas3 libbonobo2-0 libbonobo2-common libbonoboui2-0 libbonoboui2-common libboost-program-options1.55.0 libboost-python1.55.0 libboost-thread1.55.0 libcamd2.3.1 libccolamd2.8.0 libcdt5 libcfitsio2 libcgraph6 libchm1 libcholmod2.1.2 libck-connector0 libcln6 libcpufreq0 libdbus-glib2.0-cil libdbus2.0-cil libdlrestrictions1 libdmtx0a libencode-locale-perl liberror-perl libevolution libfftw3-double3 libfile-listing-perl libfltk1.3 libfluidsynth1 libfont-afm-perl libftgl2 libgconf2.0-cil libgdiplus libgegl-0.2-0 libgfortran3 libgif4 libgimp2.0 libgit2-22 libgl2ps0 libglade2-0 libglib2.0-cil libgmime2.6-cil libgnome2-0 libgnome2-bin libgnome2-common libgnomecanvas2-0 libgnomecanvas2-common libgnomeui-0 libgnomeui-common libgnomevfs2-0 libgnomevfs2-common libgnomevfs2-extra libgps21 libgrantlee-core0 libgsasl7 libgsl0ldbl libgtk2.0-cil libgtkglext1 libgtkhtml-4.0-0 libgtkhtml-4.0-common libgtkhtml-editor-4.0-0 libgtksourceview2.0-0 libgtksourceview2.0-common libgtkspell0 libgtkspell3-3-0 libgvc6 libgvpr2 libhtml-form-perl libhtml-format-perl libhtml-parser-perl libhtml-tagset-perl libhtml-tree-perl libhttp-cookies-perl libhttp-daemon-perl libhttp-date-perl libhttp-message-perl libhttp-negotiate-perl libhttp-parser2.1 libidl0 libilmbase6 libimage-magick-perl libimage-magick-q16-perl libindi-data libindi0d libindialignmentdriver0d libindicator7 libindidriver0d libinfgtk3-0.6-0 libinfinity-0.6-0 libio-html-perl libjs-jquery libjs-mathjax libjs-sphinxdoc libjs-underscore libkabc4 libkactivities6 libkalarmcal2 libkatepartinterfaces4 libkcal4 libkcalcore4 libkcalutils4 libkcmutils4 libkde3support4 libkdeclarative5 libkdecore5 libkdegames6abi1 libkdesu5 libkdeui5 libkdewebkit5 libkdnssd4 libkeduvocdocument4 libkeduvocdocument5 libkemoticons4 libkf5activities5 libkf5archive5 libkf5attica5 libkf5auth-data libkf5auth5 libkf5bookmarks-data libkf5bookmarks5 libkf5codecs-data libkf5codecs5 libkf5completion-data libkf5completion5 libkf5config-bin libkf5config-data libkf5configcore5 libkf5configgui5 libkf5configwidgets-data libkf5configwidgets5 libkf5coreaddons-data libkf5coreaddons5 libkf5crash5 libkf5dbusaddons-bin libkf5dbusaddons-data libkf5dbusaddons5 libkf5declarative-data libkf5declarative5 libkf5globalaccel-bin libkf5globalaccel-data libkf5globalaccel5 libkf5guiaddons5 libkf5i18n-data libkf5i18n5 libkf5iconthemes-bin libkf5iconthemes-data libkf5iconthemes5 libkf5itemviews-data libkf5itemviews5 libkf5jobwidgets-data libkf5jobwidgets5 libkf5js5 libkf5kcmutils-data libkf5kcmutils5 libkf5kdelibs4support-data libkf5kdelibs4support5 libkf5kdelibs4support5-bin libkf5khtml-bin libkf5khtml-data libkf5khtml5 libkf5kiocore5 libkf5kiofilewidgets5 libkf5kiowidgets5 libkf5krosscore5 libkf5krossui5 libkf5newstuff-data libkf5newstuff5 libkf5notifications-data libkf5notifications5 libkf5package5 libkf5parts-data libkf5parts-plugins libkf5parts5 libkf5quickaddons5 libkf5service-bin libkf5service-data libkf5service5 libkf5solid5 libkf5solid5-data libkf5sonnet5-data libkf5sonnetcore5 libkf5sonnetui5 libkf5texteditor5 libkf5textwidgets-data libkf5textwidgets5 libkf5wallet-bin libkf5wallet5 libkf5widgetsaddons-data libkf5widgetsaddons5 libkf5windowsystem-data libkf5windowsystem5 libkf5xmlgui-bin libkf5xmlgui-data libkf5xmlgui5 libkfbapi1 libkfile4 libkgapi2-2 libkholidays4 libkhtml5 libkidletime4 libkimap4 libkio5 libkjsapi4 libkjsembed4 libkldap4 libkmbox4 libkmediaplayer4 libkmime4 libknewstuff2-4 libknewstuff3-4 libknotifyconfig4 libkntlm4 libkolab0 libkolabxml1 libkparts4 libkpimidentities4 libkpimtextedit4 libkpimutils4 libkprintutils4 libkpty4 libkresources4 libkrosscore4 libktexteditor4 libkunitconversion4 libkwalletbackend5-5 libkxmlrpcclient4 liblapack3 liblqr-1-0 liblua5.1-0 liblwp-mediatypes-perl liblwp-protocol-https-perl libmad0 libmagick++-6.q16-5 libmagickcore-6.q16-2 libmagickcore-6.q16-2-extra libmagickwand-6.q16-2 libmail-spf-perl libmailtransport4 libmarblewidget20 libmicroblog4 libmikmod3 libmono-addins-gui0.2-cil libmono-addins0.2-cil libmono-cairo4.0-cil libmono-corlib4.0-cil libmono-corlib4.5-cil libmono-csharp4.0c-cil libmono-i18n-west4.0-cil libmono-i18n4.0-cil libmono-posix4.0-cil libmono-security4.0-cil libmono-sharpzip4.84-cil libmono-system-configuration4.0-cil libmono-system-core4.0-cil libmono-system-drawing4.0-cil libmono-system-security4.0-cil libmono-system-xml4.0-cil libmono-system4.0-cil libmuparser2 libmysqlclient18 libnet-http-perl libnetaddr-ip-perl libnetpbm10 libnova-0.14-0 libntlm0 libntrack-qt4-1 libntrack0 libopenal-data libopenal1 libopenbabel4 libopenexr6 liborbit-2-0 liborbit2 libosmgpsmap-1.0-0 libpam-ck-connector libpanel-applet0 libpathplan4 libphonon4 libphonon4qt5-4 libplasma3 libpodofo0.9.0 libpolkit-qt-1-1 libpolkit-qt5-1-1 libpotrace0 libprison0 libpst4 libptexenc1 libqalculate5 libqalculate5-data libqapt3 libqapt3-runtime libqca2 libqca2-plugins libqextserialport1 libqimageblitz4 libqjson0 libqrencode3 libqt4-qt3support libqt4-sql-mysql libqt4-webkit libqt5clucene5 libqt5designer5 libqt5help5 libqt5script5 libqt5x11extras5 libqtlocation1 libquazip1 librarian0 librecad librecad-data libruby2.1 libsdl-image1.2 libsdl-mixer1.2 libsdl-net1.2 libsdl-pango1 libsdl-ttf2.0-0 libsdl1.2debian libshp2 libsignon-qt1 libsigsegv2 libsolid4 libsoprano4 libssh-gcrypt-4 libssh2-1 libstreamanalyzer0 libstreams0 libswitch-perl libsynctex1 libsys-hostname-long-perl libt4k-common0 libthreadweaver4 libtidy-0.99-0 libumfpack5.6.2 libunique-3.0-0 libvncserver0 libvte-common libvte9 libwcs4 libwlocate0 libwmf-bin libwww-perl libwww-robotrules-perl libwxbase3.0-0 libwxgtk3.0-0 libxcomp3 libxerces-c3.1 libxml++2.6-2 libxml2-utils libyaml-0-2 libytnef0 libzzip-0-13 liferea liferea-data lightspeed lmodern lybniz marble marble-data marble-plugins melting metacity mono-4.0-gac mono-gac mono-runtime mono-runtime-common mono-runtime-sgen musescore-soundfont-gm mutter-common mysql-client-core-5.6 mysql-common mysql-server-core-5.6 netpbm ntrack-module-libnl-0 nxproxy openbabel opendict otf-freefont oxygen-icon-theme pairs parley parley-data pastebinit pdfmod pencil2d perlmagick phonon phonon-backend-gstreamer phonon-backend-gstreamer-common plasma-scriptengine-javascript plymouth-theme-edubuntu python-apsw python-avogadro python-beautifulsoup python-cherrypy3 python-cssselect python-cssutils python-dateutil python-dnspython python-ecdsa python-feedparser python-gconf python-gevent python-gnome2 python-greenlet python-gtk2 python-kde4 python-libxml2 python-markdown python-mechanize python-ndg-httpsclient python-netifaces python-notify python-numpy python-paramiko python-pyfits python-pygments python-pyorbit python-pyparsing python-pyqt5 python-pyqt5.qtsvg python-pyqt5.qtwebkit python-pysqlite2 python-repoze.lru python-requests python-routes python-simplejson python-tk python-urllib3 python-utidylib python-vte python-webob python-wxgtk3.0 python-wxversion python-x2go python-xlib python-yaml python3-bsddb3 python3-icu qapt-batch qtdeclarative4-kqtquickcharts-1 rarian-compat re2c ri-li ri-li-data rlwrap rocs ruby ruby2.1 rubygems-integration sa-compile screen scribus scribus-ng scrollkeeper sgml-data socat sonnet-plugins soprano-daemon spamassassin spamc sqlite3 sshfs steadyflow step tex-common texlive-base texlive-binaries texlive-latex-base texlive-latex-base-doc tk8.6-blt2.5 tomboy transfig ttf-adf-accanthis ttf-adf-baskervald ttf-adf-berenis ttf-adf-gillius ttf-adf-ikarius ttf-adf-irianis ttf-adf-libris ttf-adf-mekanus ttf-adf-oldania ttf-adf-romande ttf-adf-switzera ttf-adf-tribun ttf-adf-universalis ttf-adf-verana ttf-aenigma ttf-ancient-fonts ttf-atarismall ttf-bitstream-vera ttf-dejavu-core ttf-engadget ttf-essays1743 ttf-femkeklaver ttf-georgewilliams ttf-goudybookletter ttf-isabella ttf-marvosym ttf-radisnoir ttf-sjfonts ttf-staypuft tuxmath tuxmath-data tuxpaint tuxpaint-config tuxpaint-data tuxpaint-plugins-default tuxpaint-stamps-default tuxtype tuxtype-data ubuntu-edu-preschool ubuntu-edu-primary ubuntu-edu-secondary ubuntu-edu-tertiary vim vim-runtime vym x11vnc x11vnc-data xaos xplanet xplanet-images xsltproc xvnc4viewer yorick yorick-data yorick-z && sudo apt-get install ubuntu-desktop

Angry Asian Trademarks

February 18th, 2015


Angry Asian What?

I don't know how well these two folks are known outside the AAPI community, but I've been a big fan of both Lela Lee (creator of Angry Little Girls) and Phil Yu (a.k.a. Angry Asian Man) for years.

In the past couple of days, there's been a bit of a dust-up between the two of them regarding trademarks. If you believe Phil Yu's account, he's a victim being attacked by Lela Lee even though they've been "friends" and "collegial" with each other for years. If you believe Lela Lee's account, he has been stealing her stuff forever and now that he's gone from hobbyist to career blogger, he's now a threat to her trademark.

I can honestly see both sides of this.

In defense of Lela Lee

On the one hand, Lela Lee's lawyers are probably advising that if she doesn't aggressively defend her trademark, she may lose it. And she probably didn't think Phil was even thinking trademarks until he actually tried to trademark Angry Asian Man and then heard back from the USPTO that it was too similar to her patent.

In defense of Phil Yu

On the other hand, Phil Yu does have a good point that she has not been telling him for years "Hey, you're infringing on my trademark and need to change your name." They have, in fact, been collegial professional (if not actual friends). To have this drop on him with lawyers and stuff may seem to come out of the blue for him.

In defense of Lela Lee

That said, even in his own account of things...

  • He does seem to take unnecessarily long to get back to her on stuff.
  • Saying to her "I am honestly taking your advice seriously, and have been actively researching what it would take to gradually transition the name of my brand. It won't be easy, and it's going to take a while, but it's the right move in the long run" does essentially say he is going to transition, even though he contends "at no point in this message do I ever agree to change the name." Uh, saying it's the right move in the long run pretty much says to me you're going to transition, even if not right away.
  • If you try to trademark Angry Asian Man and then USPTO tells you it's too similar to Angry Little Asian Girl, the USPTO may, in fact, be wrong, but that would certainly raise my legal/business alarms if I were Lela Lee, not because I'd necessarily think Phil Yu was trying to get in on my turf, but because I'd be worried that the USPTO may still consider it a dilution of my brand.
  • In the correspondence Phil Yu posts from Lela Lee, she actually seems to be offering a lot of help in terms of trying to help him transition—certainly a lot more than she's legally obligated to do (which is zero)—even though he doesn't like any of the names she suggests.

I know Phil Yu has a lot invested in Angry Asian Man, but if he does feel it's best to transition out in the long term, he can transition out, and his loyal fanbase will go along with him (I certainly will). If he decides to call himself "Pissed Off Asian Dude" or "Not Really Angry But Outraged About Racism Guy," I'll just link to that blog and follow that blog on Facebook and whatnot. Check out this list of Bands Forced to Change Their Names. The Verve, apparently, dodged a lawsuit by changing its name from Verve to The Verve.

In defense of Phil Yu

Okay. I get that Lela Lee's lawyers are probably telling her to defend her trademark aggressively. So why get out the personal attacks about Phil Yu being "a Korean boy prince who was probably doted on by his parents"? Why not just say "I like you, but this is what my lawyers are telling me to do"? Do the good cop, bad cop. Be the good cop. Let your lawyers be the bad cop.

Also, really, USPTO—Angry Little Asian Girls and Angry Asian Man are easily confused? Seriously? One is a series of cute and clever (but angry) cartoons. Another is a series of blog posts about current events. One has a cartoon drawing as a logo. Another has a photo of a G.I. Joe action figure as the mascot.

What I'd like to see happen

I don't know Lela Lee or Phil Yu, either in real life or virtually. I'm a fan of both and have been following both for years. I like the work they do, but I don't know if they're nice people or jerks. I honestly think this is a terrible misunderstanding, and I'd like to see both parties try to work it out with the USPTO that the two names are distinct. If not, I guess Phil Yu should change the name and take his followers with him. And then I think Lela Lee should give Phil a huge apology... not that they'd ever really be on speaking terms again, but it'd be at least some kind of gesture of good will.

Honestly, I've been Psychocats for years, actually about as long as Phil Yu has been Angry Asian Man. If The Psycho Cats (some band, apparently?) successfully made a legal case that I was infringing on their trademark and diluting their brand, I honestly don't give a rat's posterior, and I would take my Ubuntu fans (and anyone else who reads this blog) and pick a different name. I'd be pissed. Sure, I'd be pissed. I would think the USPTO is batty (which is common knowledge but hopefully will change in the future), but I'd do it. I sure as hell would wait a lot longer than 30 days to relinquish control of the domain name, though, because that's traffic.

I hope this resolves itself soon. As one commenter on Lela Lee's site said, it's like Mom and Dad are fighting. Stay angry, you two, but don't stay angry at each other... I hope.

Further Reading
I am Angry Girl Comics and I am BEYOND Angry with “Angry Little Asian Girl”, AKA Lela Lee
Isn’t the internet big enough for more than one “Angry Asian”?
A comment to Lela Lee of Angry Little Asian Girl, by Min Jung Kim
Angry Little Asian Girl threatens to sue Angry Asian Man
Angry vs. Angry and why all of us lose