Here are the latest commented ideas about Ubuntu.
When setting the mouse as left handed, use a 'left-handed' pointer also
Written by kenden the 18 Apr 08 at 16:24.
Global category: Accessibility.
New
When the mouse is set as default (right-handed mouse), the mouse pointer points to the left, like a right arm aiming.
So, when the mouse is set as Left-handed, the pointer should point to the right, like a left arm aiming.
It feels strange to have the pointer in the 'wrong direction' when using the mouse with the left hand!
Installer support for swap on file instead of partition
Written by andrearatto the 2 Mar 08 at 10:22.
Global category: System.
New
Swap can be put on a file with almost no trouble.
This way a simple installation will require just one partition, and changing swap size would also be easier.
The file can be preallocated of a given size so that there is no security risk of filling the partition that contains it.
Also computers with more than 1gb of ram are very unlikely to swap, for them swap performance is not a problem.
Suspend can be configured to resume from files too.
Let's add an option to the installer to configure swap on file!
Solution #1:
Auto-generated solution of idea #2436
Ubuntu Brainstorm was updated in January 2009. Since the
idea #2436 was submitted before this update, its rationale and solution are not separated. Please vote accordingly, and if you have the necessary rights, please separate the rationale from the solution. Thanks!
<i>Ubuntu Brainstorm was updated in January 2009. Since the idea #2436 was submitted before this update, its rationale and solution are not separated. Please vote accordingly, and if you have the necessary rights, please separate the rationale from the solution.</i><br /> Thanks!
Solution #2:
swap file with dynamic size and alternatively a swap partition
Written by
rsimone the 21 Dec 09 at 09:30.
Indeed nowadays the computers have a lot of memory. This would (following the well-known rule) to create a very large swap partition. This leads to a big waste of space and in the future the problem will only get worse.
At times the choice is required, otherwise it can't be exploited the hibernation to disk.
I propose to use (by default) a swap file with dynamic size and give the user the possibility, through advanced choices made in the installation step, of use a swap partition instead a swap file (for example, might come handy when you make multiple installations and you want share the swap partition)
Indeed nowadays the computers have a lot of memory. This would (following the well-known rule) to create a very large swap partition. This leads to a big waste of space and in the future the problem will only get worse.
At times the choice is required, otherwise it can't be exploited the hibernation to disk.
I propose to use (by default) a swap file with dynamic size and give the user the possibility, through advanced choices made in the installation step, of use a swap partition instead a swap file (for example, might come handy when you make multiple installations and you want share the swap partition)
Windows programmes in Ubuntu for human beings
Written by tuxest the 24 May 12 at 21:12.
Related project: Ubuntu Software Center .
New
Yes, I know that there are many alternatives to Windows programmes that run natively in Ubuntu. Some are as good, some are better and some are worse but that is not the point here. The point is that whatever the reason Ubuntu user might want or need to use Windows software from time to time.
I know that Windows is not open source and therefore creating compatibility for Windows programs in Ubuntu is a difficult and complex task (to put it mildly). Yet some free and paid options do exist that enable it with some success. Ironically most of these options are not that well presented to those users that need them the most. That is, people who are former Windows users who are not that computer savvy and don't really aspire to be – they just want “a working computer” to get their things done. This means that Wine is too complex, its free front-end PlayOnLinux can be added only by using terminal (it is not in the Ubuntu repository), commercial CrossOver software hard to come by if you already don't know about it before and running Windows in a VM not that convincing solution (the question posed at that is that why not use Windows instead?).
My question is how to make these already existing options more visible to user and possibly much easier to use?
Possibility to choose in wich Wine prefix an application should be run
Written by lukenpi the 20 May 12 at 18:06.
Related project: Wine .
New
Every time a Windows executable is launched the path of Wine is defaulted to ~/.wine
Since some Windows application need a bit of manipulation to work properly (dlls, runtimes etc) this prefix get dirty pretty soon, with the possibility to blow up the other applications which used to work.
Unity should differentiate between same filename in different parent folder
Written by a.s. the 25 May 12 at 10:51.
Related project: Unity .
New
If I have many customers, each one with one folder "bill", "jim", ... and a subfolder on each named "Sales", when I search for "Sales" in Unity (in main dsh or in files-folder lens) several "Sales" folders appear in the "files and folders" results. I don't know which is the customer (parent folder) it belongs to until I open it... many times the wrong one. Both left-click and right-click do nothing but opening.
Using `sudo` messes with permissions in home directory
Written by cousteau the 25 May 12 at 08:10.
Global category: Security.
New
Using `sudo program` sometimes messes with file permissions at the user's $HOME directory (often graphical applications, or any application that modifies the content of ~ or $HOME).
The usual way to get around this problem is to use `gksudo` in those cases, but one might sometimes forget that (specially, but not limited to, new users).
Many game/software vendor dislikes packaging systems
Written by Lachu the 10 Sep 09 at 07:55.
Global category: System.
New
The problem is software vendors don't like apt/yum, etc. and provide own installers. Giving some tools, like installer root privileges is a security hole! Many installers actually needs root privileges - it's very bad situation.
Solution #1:
Create D-BUS API for installers
Written by
Lachu the 10 Sep 09 at 07:55.
Ubuntu(and other distribution) should provide D-BUS based API for installer/uninstallers. You will get extra points if you integrate it with package database ;-) .
It should been integrated with PolicyKit, so administrators can give users access to install many kind of software(example software, which no needs setting suid bit and installing in /opt and don't change any files, can be installed by normal user; software which needs install in /sbin or /bin or /usr/bin, /usr/sbin should be installed only by superuser; or whatever).
This API should gives many functions, like copy executable into system directory(/bin), copy executable into superuser directory(/sbin, /usr/sbin or whatever), install user library(/usr/lib), install system-wide library(/lib), change file(delete existing file or writing own in the same place), change group of file, change owner of file, set uid bit, set guid bit, install nonexecutables(data) to /usr/share/*, installing user software(only have access to /opt), start installation.
All this action will be logged and reported. Additionally user may have simple uninstall software by system tools, because all performed operation are logged.
Installer should first call start installer function, so system show message to user like: This program will install software - continue? If user agree, DBUS returns the path, where the installer should unpack all of the files (in /tmp directory). Of course installer should register software name, etc., but it is long term task. If this is a game, it should install in /opt, so it call DBUS API to copy file from unpack folder into specify /opt folder, like copy_file_to_opt(file_name, opt_suffix).
I know is less secure than installing package, but is more secure than giving installer root privileges.
Ubuntu(and other distribution) should provide D-BUS based API for installer/uninstallers. You will get extra points if you integrate it with package database ;-) .
It should been integrated with PolicyKit, so administrators can give users access to install many kind of software(example software, which no needs setting suid bit and installing in /opt and don't change any files, can be installed by normal user; software which needs install in /sbin or /bin or /usr/bin, /usr/sbin should be installed only by superuser; or whatever).
This API should gives many functions, like copy executable into system directory(/bin), copy executable into superuser directory(/sbin, /usr/sbin or whatever), install user library(/usr/lib), install system-wide library(/lib), change file(delete existing file or writing own in the same place), change group of file, change owner of file, set uid bit, set guid bit, install nonexecutables(data) to /usr/share/*, installing user software(only have access to /opt), start installation.
All this action will be logged and reported. Additionally user may have simple uninstall software by system tools, because all performed operation are logged.
Installer should first call start installer function, so system show message to user like: This program will install software - continue? If user agree, DBUS returns the path, where the installer should unpack all of the files (in /tmp directory). Of course installer should register software name, etc., but it is long term task. If this is a game, it should install in /opt, so it call DBUS API to copy file from unpack folder into specify /opt folder, like copy_file_to_opt(file_name, opt_suffix).
I know is less secure than installing package, but is more secure than giving installer root privileges.
Solution #2:
Create a universal package format
Written by
dandart the 10 Sep 09 at 20:43.
Create a format that all distros can use and is easy to implement. Perhaps integrate into Apt/Rpm or have packages that both can understand somehow. Then we can download "Linux" package without having to worry if we want Apt or Rpm.
Create a format that all distros can use and is easy to implement. Perhaps integrate into Apt/Rpm or have packages that both can understand somehow. Then we can download "Linux" package without having to worry if we want Apt or Rpm.
Solution #3:
Support applications for single users
Written by
andruk the 11 Sep 09 at 02:12.
The reason apt needs root permissions is because the applications it installs are installed system-wide and therefore affect other users. If we allowed users to install programs to their home directory, then they could run their installed applications without affecting other users, and therefore wouldn't need to give apt root access.
This would have advantages with home users because my Applications menu wouldn't get cluttered when my daughter installs Barbietown to her home directory.
This would have advantages with sysadmins because they can run a piece of software from their home directory to test it out before installing it system-wide.
The system paths would have to be modified to look for libraries and executables in the home directory, but applications like Xournal already support this. This would also require the Applications menu to look in the user's home directory for the menus as well.
The reason apt needs root permissions is because the applications it installs are installed system-wide and therefore affect other users. If we allowed users to install programs to their home directory, then they could run their installed applications without affecting other users, and therefore wouldn't need to give apt root access.
This would have advantages with home users because my Applications menu wouldn't get cluttered when my daughter installs Barbietown to her home directory.
This would have advantages with sysadmins because they can run a piece of software from their home directory to test it out before installing it system-wide.
The system paths would have to be modified to look for libraries and executables in the home directory, but applications like Xournal already support this. This would also require the Applications menu to look in the user's home directory for the menus as well.
Solution #4:
Create libraries/shell script allowing to install package in specify directory
Written by
Lachu the 12 Sep 09 at 17:59.
Like in solution #3:
The main problem is many application have hardcoded path. There's no way to detect/guess path of specified file. Of course, we can recompile package, but it lack functionality for users.
The solution is simple. Create script scheme for setting environment, where specify files are placed. It should set PATH, LD_LIBRATY_PATH, XDG_HOME, CONFIG_PATH, etc. Script will also checking dependency and fixing it if not satisfied(also using install into directory technology).
Create also library, which allows program to read these setting/environment. Program should don't read file from /etc/program_config, but from $CONFIG_PATH/program_config.
If some environment isn't set, library should return default value.
User will have many scheme of installing application - install in: user home directory, system-wide(/), opt(/opt), custom paths.
And of course -- allow to set flag SUPPORT_PATH_SELECTING for package.
Like in solution #3:
The main problem is many application have hardcoded path. There's no way to detect/guess path of specified file. Of course, we can recompile package, but it lack functionality for users.
The solution is simple. Create script scheme for setting environment, where specify files are placed. It should set PATH, LD_LIBRATY_PATH, XDG_HOME, CONFIG_PATH, etc. Script will also checking dependency and fixing it if not satisfied(also using install into directory technology).
Create also library, which allows program to read these setting/environment. Program should don't read file from /etc/program_config, but from $CONFIG_PATH/program_config.
If some environment isn't set, library should return default value.
User will have many scheme of installing application - install in: user home directory, system-wide(/), opt(/opt), custom paths.
And of course -- allow to set flag SUPPORT_PATH_SELECTING for package.
Solution #5:
Autopackage, anyone?
This is much like #2, but why start from scratch?
We could push for better support and integration of autopackage with apt, rpm, etc.
Also, I think the need for root-permissions itself is not the real problem, it's the need to blindly trust the file you just downloaded. Of course, there is always a way to mess with a system, when the user executes your software, but this would be way better than "sudo ./somefileijustdownloaded". Autopackage can run with user rights and install into your home directory. And you can still integrate gpg-keys with this solution.
I'm not suggesting this as THE universal package format, but as a common solution for third party/proprietary software and commercial games.
This is much like #2, but why start from scratch?
We could push for better support and integration of autopackage with apt, rpm, etc.
Also, I think the need for root-permissions itself is not the real problem, it's the need to blindly trust the file you just downloaded. Of course, there is always a way to mess with a system, when the user executes your software, but this would be way better than "sudo ./somefileijustdownloaded". Autopackage can run with user rights and install into your home directory. And you can still integrate gpg-keys with this solution.
I'm not suggesting this as THE universal package format, but as a common solution for third party/proprietary software and commercial games.
Solution #6:
apt capable of install and manage any software on earth
Written by
darkjavi the 21 Sep 09 at 16:47.
And what about giving to apt/aptitude/synaptic the ability to control/install any software on earth not only deb packages.
apt could run the instalation from is inside and chroot the destination of the files generated by the installer into his own folders, so we can manage all the computer software from a single interface
And what about giving to apt/aptitude/synaptic the ability to control/install any software on earth not only deb packages.
apt could run the instalation from is inside and chroot the destination of the files generated by the installer into his own folders, so we can manage all the computer software from a single interface
Solution #7:
Sandbox for installers.
Written by
Lachu the 23 Sep 09 at 17:29.
Create sandbox for installers. It will check selinux context and when it isn't designed for installers, it will change it and fork with exec on executable file! It can't sets UID/GID bits or change any existing file, but can access to system directories.
Create sandbox for installers. It will check selinux context and when it isn't designed for installers, it will change it and fork with exec on executable file! It can't sets UID/GID bits or change any existing file, but can access to system directories.
Solution #8:
New compatibility layer
You all know how Wine works, right: importing an opensource clone of the Windows API. Now, imagine that for the Red Hat YUM/RPM compatibility. It's already opensourced, so you won't have to actually clone it. Also, you already have most of what you need because it's all Linux :>. Just offer it as a regular package and when users click on the .rpm just offer a dialog asking if they want to install it or Alien, showing all the pros and cons.
You all know how Wine works, right: importing an opensource clone of the Windows API. Now, imagine that for the Red Hat YUM/RPM compatibility. It's already opensourced, so you won't have to actually clone it. Also, you already have most of what you need because it's all Linux :>. Just offer it as a regular package and when users click on the .rpm just offer a dialog asking if they want to install it or Alien, showing all the pros and cons.
Solution #9:
make a gui for alien, and make it be default for rpm files
that would fix the rpm issue. beginners seem to get "scared" of the command line, and a gui saves time. that way, no matter whether they download an rpm or a deb, they are covered.
making it the default app for rpm would make it so a beginner wouldn't extract it by accident with archive manager. maybe you could then auto-load the resulting .deb.
that would fix the rpm issue. beginners seem to get "scared" of the command line, and a gui saves time. that way, no matter whether they download an rpm or a deb, they are covered.
making it the default app for rpm would make it so a beginner wouldn't extract it by accident with archive manager. maybe you could then auto-load the resulting .deb.
Solution #10:
DEB packages are good!!! Promote them harder!!!
Do not multiply another installer formats, apis, ect. they only do unnecesary complicity of Ubuntu. Promote DEB packages to become unofficial standard for every linux. Develop visual tools for easy and fast creation of deb files (something like debGLADE?).
Do not multiply another installer formats, apis, ect. they only do unnecesary complicity of Ubuntu. Promote DEB packages to become unofficial standard for every linux. Develop visual tools for easy and fast creation of deb files (something like debGLADE?).
Solution #11:
Create hybrid/common package format.
Written by
Lachu the 28 Oct 09 at 07:42.
Not create new package format/packaging system, but allow to pack many packages into single archive. Structure will looks like this:
root
|
+definition&scripts
| |
| +deb
| +rpm
| .....
|
+files(must have structure like tar.gz - if in specify distribution one file must be moved into other directory, it's task for script)
|
+common definitions (name of author, license, features - installation into directory, etc.)
How distribution should handle it? In simple way. It will only unpack it into /tmp and handle as normal package(ex. run installation script for this distribution). It can also generate .deb or .rpm.
It should helps users, who like to download software from network. It can also helps game creators, because CD's can be used as repository of software.
Maybe there can occurs some problems with binaries, but most data of program is a resources, like icons, graphics, etc. Resources are shared, so there is a reason to create hybrid format.
Not create new package format/packaging system, but allow to pack many packages into single archive. Structure will looks like this:
root
|
+definition&scripts
| |
| +deb
| +rpm
| .....
|
+files(must have structure like tar.gz - if in specify distribution one file must be moved into other directory, it's task for script)
|
+common definitions (name of author, license, features - installation into directory, etc.)
How distribution should handle it? In simple way. It will only unpack it into /tmp and handle as normal package(ex. run installation script for this distribution). It can also generate .deb or .rpm.
It should helps users, who like to download software from network. It can also helps game creators, because CD's can be used as repository of software.
Maybe there can occurs some problems with binaries, but most data of program is a resources, like icons, graphics, etc. Resources are shared, so there is a reason to create hybrid format.
Solution #12:
Add Autopackage support in Ubuntu Software Center
Written by
ivo000 the 1 Mar 11 at 20:11.
Integrate Autopackage package installer in Ubuntu Software Center
Integrate Autopackage package installer in Ubuntu Software Center
No app indicator template for Quickly
Written by lauterzsolti the 23 May 12 at 08:42.
Related project: Unity .
New
The Quickly development tool has a few nice templates to start a new graphical or cli app or unity lens project easily (and quickly) but it still doesn't have a template for application indicators.
Update manager should notify in advance if installing updates needs rebooting.
Written by amoalsale the 3 May 12 at 04:52.
Related project: Update manager .
New
Many times when we get notification that updates are available for the system we often click on install update button without even looking at the details as we know keeping the system up-to-date keeps it stable. But many times once updating is finished systems asks for reboot and everytime its not possible to reboot immediately. For example when we are working on remote sessions on telnet or ssh or editing something important on internet.
It may also be observed that untill you do not reboot the system it behaves irratically.