Script para habilitar webcam no skype [RESOLVIDO]

Iniciado por Cálcio, 31 de Dezembro de 2009, 15:25

tópico anterior - próximo tópico

Cálcio

Boa tarde galera...
com um pouco de ajuda do pessoal aki e pesquisa fiz um script para automatizar a webcam no skype.

Mas estou com um problema em uma parte...

#! /bin/bash
sudo chmod +x /usr/bin/skype

echo "Deseja executar o script de configuração da webcam no Skype? [S/N]"
read resp
test "$resp" = "N" && exit

### Renomeia o skype para skype.bkp
sudo mv /usr/bin/skype /usr/bin/skype.bkp

### Cria e Atribui o conteúdo abaixo no arquivo skype
sudo cat /usr/bin/skype
sudo echo "#!/bin/bash" > /usr/bin/skype
sudo echo "LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so skype.bkp" >> /usr/bin/skype

### Permissão para execução
sudo chmod  +x /usr/bin/skype


o problema é nessa parte:
### Cria e Atribui o conteúdo abaixo no arquivo skype
sudo cat /usr/bin/skype
sudo echo "#!/bin/bash" > /usr/bin/skype
sudo echo "LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so skype.bkp" >> /usr/bin/skype


O que preciso com essa parte é criar um arquivo chamado skype em /usr/bin e adicionar essas 2 linhas de comando.

Agradeço desde já!
UA,
Cálcio

jeflui

sudo cat /usr/bin/skype
CitarVai querer exibir um arquivo que não existe mais?

errado
sudo echo "#!/bin/bash" > /usr/bin/skype

certo
sudo echo '#!/bin/bash' > /usr/bin/skype Note as aspas simples.

CitarAqui sim cria o arquivo já com o conteúdo do echo

sudo echo "LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so skype.bkp" >> /usr/bin/skype
CitarVai adicionar esse conteúdo no echo ao anterior

Obs. Se você executar o script com sudo não precisa do "sudo" em todos os comandos no script, pois já vai ter permissão de super usuário (root).



Cálcio

#2
jeflui, Obrigado pela ajuda!
Mas ainda sim ele cria o arquivo skype.

O uso do Cat foi uma forma desesperada de forçar a criação do arquivo. rs
Existe um comando que crie um arquivo, tipo que existe no PHP, ASP, .NET?

Eu fiz uma gambiarra digna de uma certificação Gambi Pattener Designer. kkkkk
Foi a seguinte criar o aquivo no local onde o script é executado e depois mover. O + estranho é q da forma que fiz ele cria o arquivo. só q qnd tento criar direto em /usr/bin ñ vai.

Seria o caso de no momento que rodo o script dar permissão de escrita nessa pasta para o usuário que está logado e depois voltar a permissão pro root?

Segue a gambi que fiz

#! /bin/bash
#sudo chmod +x /skype

echo "Deseja executar o script de configuração da webcam no Skype? [S/N]"
read resp
test "$resp" = "N" && exit

### Cria e Atribui o conteúdo abaixo no arquivo skype
sudo echo "#!/bin/bash" > skype
sudo echo "LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so skype.bkp" >> skype
sudo chmod  +x skype

### Renomeia o skype para skype.bkp
sudo mv /usr/bin/skype /usr/bin/skype.bkp

### Move aquivo criado para a pasta certa
sudo mv skype /usr/bin/skype

### Permissão para execução
#sudo chmod  +x /usr/bin/skype


Só que msm assim a webcam ñ funciona... rs

jeflui

Então o comando touch cria um arquivo.
Exemplo:
touch teste

Não entendi uma coisa, qual o problema do
sudo echo '#!/bin/bash' > /usr/bin/skype
??

Cálcio

Citação de: jeflui online 01 de Janeiro de 2010, 22:05
Então o comando touch cria um arquivo.
Exemplo:
touch teste
Cria o arquivo mas ñ adiciona nenhum conteúdo

Citação de: jeflui online 01 de Janeiro de 2010, 22:05
Não entendi uma coisa, qual o problema do
sudo echo '#!/bin/bash' > /usr/bin/skype
??
Cara sinceramente ñ sei. Simplesmente ele ñ cria o arquivo dentro de /usr/bin. Se eu colocar o caminho pra onde executo o arquivo ele cria numa boa.
Como na bambiarra que mostrei mais acima.

clcampos

Citação de: Cálcio online 02 de Janeiro de 2010, 10:26
Citação de: jeflui online 01 de Janeiro de 2010, 22:05
Então o comando touch cria um arquivo.
Exemplo:
touch teste
Cria o arquivo mas ñ adiciona nenhum conteúdo

...

Não entendo o porque de se criar um arquivo usando o touch.

Para criar um arquivo eu uso o seguinte:

Citar> Teste

ou

Citarecho "" > Teste

ou

Citarecho "Conteúdo" > Teste

Inclusive gasta menos processamento e tempo criando assim.
Cristiano/Timóteo - MG
.: Como Fazer Perguntas de Forma Inteligente :.                
Com dúvida? pesquise!

Cálcio

Ola clcampos!

Então esse é meu problema. estou usando o codigo abaixo para isso e simplesmente na pasta que quero que execute ñ funciona.

### Cria e Atribui o conteúdo abaixo no arquivo skype
sudo echo "#!/bin/bash" > /usr/bin/skype
sudo echo "LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so skype.bkp" >> /usr/bin/skype


Repare que esta como foi exemplificado. veja também que fiz uma gambiarra em um post acima. mas ñ queria deixar o script com gambiarra rs

clcampos

Porque você coloca um sudo em cada comando?

Porque não chamar o script com sudo de uma vez? Assim todos os comandos serão executados assim.

E se seu usuário é admin do sistema não tem porque não funcionar.
Cristiano/Timóteo - MG
.: Como Fazer Perguntas de Forma Inteligente :.                
Com dúvida? pesquise!

Cálcio

#8
Finalmente consegui fazer funcionar..
Para variar o erro é o típico caso de T&C.

Eu ñ estava conseguindo executar pelo terminal e estava indo direto na pasta e executando pela opção executar pelo terminal e isso ñ sei por que ñ deixava a criação da pasta ser executada.
Então tentei executar direto pelo terminal mais uma vez, e ñ conseguia de jeito nenhum, por isso tentava rodar pelo método acima, só que lembrei que eu estava chamando o caminho errado.

valeu galera pela ajuda de vcs e irei colocar o script na área de scripts úteis.

Irei agora estudar ele para fazer algumas validações e deixar ele + organizado e estruturado!

#! /bin/bash

echo "Deseja executar o script de configuração da webcam no Skype? [S/N]"
read resp
test "$resp" = "N" && exit

### Renomeia o skype para skype.bkp
mv /usr/bin/skype /usr/bin/skype.bkp

echo "#!/bin/bash" > /usr/bin/skype
echo "LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so skype.bkp" >> /usr/bin/skype

### Permissão para execução
chmod  +x /usr/bin/skype

cameloti

Peço desculpas pela minha ignorância, pois não sou programador, apenas um aficionado do Ubuntu.
Estou com problemas para fazer a minha webcam funcionar no skype e vi esta solução de script. só que não sei o que fazer com ele.
Isto é, o script está desenvolvido, mas o que fazer ? qual n ome dar ? acrescentar em que local ? vai ser um lançador ? ou toda vez que quiser utilizar o skype é necessário entrar no terminal e digitar tudo ?
às vezes as conversas de vocês ficam num nível por demais elevado e no final com a solução, nunca há uma dica utilizável por idiotas como eu.
Será que não há como vocês lembrarem destas pobres bactérias do universo Linux, que desejam utilizar o sistema, mas que nada entendem de linguagem e programação ?
Agradeço a atenção.

Kamei Hyoga

camelotl esse script você só vai utilizar uma vez. Pode dar o nome que você quiser, como "cameraskype", por exemplo. Pode salvar o programa dentro da sua pasta pessoal também.

Então vamos passo a passo:

1- Abra o Gedit e cole :


#! /bin/bash

echo "Deseja executar o script de conficuração da webcam no Skype? [S/N]"
read resp
test "$resp" = "N" && exit

### Renomeia o skype para skype.bkp
mv /usr/bin/skype /usr/bin/skype.bkp

echo "#!/bin/bash" > /usr/bin/skype
echo "LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so skype.bkp" >> /usr/bin/skype

### Permissão para execução
chmod  +x /usr/bin/skype


Salve na sua pasta principal (/home/camelotl - se for esse seu usuario) com o nome cameraskype.

2- Dê permissão de execução para o arquivo:

Vamos fazer isso graficamente? Clique com o botão direito no arquivo recem  criado e vá em propriedades. Depois, na aba permissões, marque a caixa "Permitir execução do arquivo como programa"

4- Rodando o programa:

Agora abra o terminal (Acessórios>Consola ou Acessórios>Terminal) e digite: sudo ./cameraskype

Responda "S" para a pergunta e está feito.

cameloti

Agradeço pelo tutorial, vocês deveriam fazer isso mais vezes. Funcionou perfeitamente.
Obrigado pela atenção às pobres bactérias do Universo Linux.

snell

Demais!

Valeu, resolveu o problema do meu skype!

[]'s
Notebook
Intel Core i7 2620, 4Gb RAM, 750 Gb HD
Ubuntu 14.04

rborowski

Muito bom cara, parabéns mesmo! Simples e funcional, de lambuja ainda ganhamos uma aula grátis de script!!!

platao

Ola companheiros, aqui eu fiz assim;

criei um arquivo de texto simples e dei o nome de .skype-start na minha home e colei o conteudo;

#!/bin/bash
export XLIB_SKIP_ARGB_VISUALS=1
env LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so skype

cliquei com o direito do mouse em propriedades e dei as permissoes

Depois fui nos menus e criei um novo lançador ocultando o original;

nome Skype
comando /home/seu nome aqui/.skype-start
cometario Voip
icone /usr/share/icons/skype.png

\\\\\\\\Apostilas Dicas e Guias do Ubuntu\\\\\\\\\> http://ubuntuforum-br.org/index.php/topic,79368.msg440997.html#msg440997