Paulo Cavalcanti wrote at about 16:40:54 -0200 on Friday, December 18, 2009: > On Fri, Dec 18, 2009 at 2:08 PM, Jeffrey J. Kosowsky > <atr...@kosowsky.org>wrote: > > > Paulo Cavalcanti wrote at about 15:40:40 -0200 on Friday, December 4, 2009: > > > I adapted "/usr/sbin/nvidia-graphics-switch" for doing what you want: > > > > > > > > http://people.atrpms.net/~pcavalcanti/patches/nvidia-graphics-switch<http://people.atrpms.net/%7Epcavalcanti/patches/nvidia-graphics-switch> > > > > > > It creates a "/etc/modprobe.d/nvidia.conf". > > > > > > This is what should appear in nvidia.conf, by running > > > > > > sudo ./nvidia-graphics-switch 190.42 > > > > > > ------------------------------------------------------ > > > > > > # put nouveau out of the game > > > blacklist nouveau > > > # nvidia kernel module > > > alias char-major-195 nvidia-190_42 > > > alias nvidia nvidia-190_42 > > > > > > > Couple of questions/comments: > > 1. First, when (if ever) will such a patch be integrated into the > > regular atrpms package. It seems pretty critical and at the same time > > non-obvious for newbies (or even some experienced users) > > > > 2. Now for some questions regarding your code: > > test -e /etc/modprobe.d/nvidia.conf || touch > > /etc/modprobe.d/nvidia.conf > > for file in /etc/modprobe.d/nvidia.conf; do > > if [ -e $file ]; then > > mv $file $file.backup > > grep -Ev '(NVdriver|nvidia|nouveau)' < $file.backup > $file > > echo "# put nouveau out of the game" >> $file > > echo "blacklist nouveau" >> $file > > echo "# nvidia kernel module" >> $file > > for NVavail in $available; do > > if [ "$NVavail" != "$NVversion" ]; then > > echo "blacklist nvidia-$NVavail" | sed -e's,\.,_,g' >> $file > > fi > > done > > echo "alias char-major-195 $NVmodule" >> $file > > echo "alias nvidia $NVmodule" >> $file > > fi > > done > > > > A. Why do you need to use a 'for' loop? It seems like it's just a > > single file so how does the loop help. > > > > I just used the previous code from the original script. The loop is not > really necessary here any more. > OK. And the code has a fair bit of other presumably residual fluff (see below).
> > > > B. Why do you touch and then mv to backup. If there wasn't a file > > there before, why would you want to create a backup? > > > > > There can be a previous nvidia.conf or not, it it is the first time. Exactly - so I would only have made the backup *if* there was one there previously. Here is my (untested) rewrite: file=/etc/modprobe.d/nvidia.conf if [ -e $file ]; then mv $file $file.backup grep -Ev '(NVdriver|nvidia|nouveau)' < $file.backup > $file else touch $file fi echo "# put nouveau out of the game" >> $file echo "blacklist nouveau" >> $file echo "# nvidia kernel module" >> $file for NVavail in $available; do if [ "$NVavail" != "$NVversion" ]; then echo "blacklist nvidia-$NVavail" | sed -e's,\.,_,g' >> $file fi done echo "alias char-major-195 $NVmodule" >> $file echo "alias nvidia $NVmodule" >> $file _______________________________________________ atrpms-users mailing list atrpms-users@atrpms.net http://lists.atrpms.net/mailman/listinfo/atrpms-users