ou talvez até mesmo fornecer um diretório base / debian /.
Contexto: Stretch (novo estável), descartou Celestia. Isso é uma grande perda para o ecossistema Debian e usuários.
(e, aliás, a perda da fonte de possíveis contribuidores também)
@drzraf Alexell não funciona com Linux e não está absolutamente familiarizado com o acima. Agora não temos uma pessoa que entenda o código Celestia para Linux.
Descreva o que exatamente devemos fazer para resolver o problema? Quem pode fazer isso?
[] alguém usando Debian que já criou um pacote Debian (ou quer aprender)
[] instale o ambiente de construção Linux necessário para Celestia
O mais padrão são as ferramentas de construção necessárias (autotools, cmake, ..) o melhor / mais simples
[] construir, executar e testar o Celestia no Debian
A partir disso, pode-se criar os arquivos Debian necessários (possivelmente modificando a versão antiga) que estipulam algumas características do programa.
[] as dependências que precisa ser construído [software / versões]
[] as dependências que ele precisa para ser executado [software / versões]
Se por algum motivo ele travar, bug, ... alguns patches personalizados são necessários
e estes são freqüentemente os trabalhos mais dolorosos para o mantenedor do Debian.
Ter a maioria das correções rapidamente dentro do código upstream ajuda muito aqui.
Na melhor das hipóteses, o Debian / Linux não precisaria de patches adicionais para construir ou executar. Então, o empacotamento seria apenas alguns arquivos básicos de distância (https://wiki.debian.org/Packaging) e então baixável / instalável facilmente.
Ter o pacote distribuído (novamente) no repositório do Debian 9 é um pouco mais de "trabalho social", mas acho que a construção / estabilidade de software no Linux é o único obstáculo real possível.
Outra direção / alternativa a propósito: flatpak
@drzraf Você é bem versado no que escreve. Talvez você possa fazer tudo sozinho? Ficaremos muito gratos pela ajuda.
Tentei instalar o Celestia no Stretch e tive problemas com glu.h, libjpg, libpng e a versão de lua solicitada é muito antiga, mesmo depois de ter configurado com sucesso o make falhou
pode ser útil
ok, eu e principalmente meus filhos estamos sentindo falta da Celestia há algum tempo. Minha primeira tentativa também foi apenas construir a partir do código para 1.6.1 da página do projeto celestia (quão difícil pode ser ...). Algumas correções de código depois, um erro do vinculador me impediu. Hoje comecei a rodar pela primeira vez depois de alguns anos no Ububtu 17.10.
Qual o proximo? Existe alguma maneira de fornecer minhas mudanças e trazer Celestia de volta algum tempo?
Uma pergunta, já que definitivamente não sou um guru de automake ... Eu precisava contornar um aspecto na linha de comando:
-ldl -llua5.1 ../celengine/libcelengine.a -ldl ../celtxf/libceltxf.a
o problema era que todas as bibliotecas celestia estão em uma variável automake $ (all_libraries) e por alguma razão o -ldl precisa estar exatamente atrás de libcelengine.a .... o primeiro -ldl não ajuda. Posso colocar um sinalizador de vinculador para uma biblioteca específica como libcelengine.a?
Fico feliz em ajudar a recuperá-lo - meus filhos ficarão felizes porque a Celestia é realmente uma maneira ótima e interessante de ver o nosso universo :).
Ótimo @TheBigW.
Você acha que o ajuste de compilação de -ldl
foi este no pacote Debian Celestia anterior ?
Veja https://sources.debian.net/src/celestia/1.6.1%2Bdfsg-3.1/debian/patches/ (OP) para a lista de patches necessários para construir Celestia em versões anteriores do Debian.
Tenho a impressão de que partir do diretório debian/
do pacote 1.6.1 pode ser a direção certa. Então, usando dpkg-buildpackage
, você deve ser capaz de produzir um pacote Debian.
O que provavelmente teria que ser adaptado do diretório debian / atual são provavelmente:
control
(use a versão Stretch do Debian)Eu ficaria feliz em poder dpkg-buildpackage
sozinho (estou no Debian Stretch) com as mudanças que você adicionará ao diretório debian /. Então, eu poderia testar a estabilidade do pacote resultante.
(em algum ponto, você pode abrir um bug ITP ( Intend to Package
) no bugtracker do Debian e esperar que um pacote estável possa voltar aos repositórios e agradar a tantos usuários Debian.
Oi drzraf,
o -ldl mencionado acima deve funcionar, mas até onde eu vi apenas corrige no arquivo de configuração. Se eu não estiver errado, o próximo ./configure irá substituí-lo - mas para compilar o pacote isso funcionará (ainda melhor do que o link manual na linha de comando :)).
Uma pergunta: usei o pacote Ubuntu src que encontrei como zip para download. Isso funciona para mim, mas é claro que falta todos os detalhes do Debian (changelog etc ...). Você sabe como posso fazer o pacote debian celestia src anterior rodar em um linux diferente (estou no Ubuntu 17.10). Eu sei que o pior caso em que posso colocar Jessie em uma VM e fazer um "apt-get source", mas uma maneira mais fácil é preferível.
ok, encontrei um pacote fonte aqui (basicamente o mesmo que encontrei na página de pacotes do ubuntu):
http://http.debian.net/debian/pool/main/c/celestia/celestia_1.6.1+dfsg.orig.tar.gz
O problema é que para manter o histórico, o changelog etc. Eu provavelmente precisaria da subpasta completa do debian do seu link de origem. Se estiver tudo bem para compilar a partir do rascunho do pacote fonte acima, posso prosseguir, mas o histórico deb / pacote anterior seria perdido mesmo se eu copiar pelo menos o changelog. Ainda vale a pena ir em frente?
e para responder (talvez) mais especificamente ao ponto:
Vamos executar ping do ex-mantenedor
... e cite o problema original que levou à separação do pacote há 2 anos:
Upstream não produziu nenhum novo lançamento nos últimos 4 anos.
Nesse meio tempo, o pacote está acumulando bugs devido ao bitrot. Já
não era um pacote sem problemas, devido a alguns recursos muito importantes que não
sendo compatível com DFSG.
Para colocar o Celestia de volta no Debian, você precisa abordar os motivos pelos quais tive que removê-lo em primeiro lugar:
Por último, mas não menos importante, Celestia realmente precisa de uma reformulação séria. Mude para C ++ 11, use a biblioteca padrão e Boost quando apropriado, altere o mecanismo de renderização para exigir OpenGL ES 2.0 e elimine o suporte para qualquer coisa mais antiga do que isso. Não tente oferecer suporte a 5 front-ends diferentes no Linux (e isso sem contar as coisas do Windows e do Mac), mas vá para algo que seja verdadeiramente multiplataforma e fique com isso. Se você puder fazer sem um kit de ferramentas de widget completo, eu escolheria o SDL2, caso contrário, recomendaria o Qt5. Se você não se comprometer com isso, receio não ver um futuro brilhante para Celestia.
apenas quando terminei de criar os primeiros pacotes deb não assinados para teste :). Basicamente, seria bom para mim (e talvez para outros) se houvesse alguma maneira de instalá-lo / rodar no debian / Ubuntu novamente. Isso não significa necessariamente tê-lo como parte do arquivo principal debian.
O problema no momento é que nenhum dos pacotes (nem o antigo pacote deb nem o pacote diretamente do site do celestia) conseguiu passar de compilação ...
Posso lidar com os aspectos do código, desde que isso signifique limpeza (sem aviso, C ++ 11 etc.) - qualquer coisa além disso é uma tarefa muito grande. Refazer parece interessante ... talvez algo para se pensar ...
Ok, parece que a equipe celestia nos ouviu e está desenvolvendo uma nova versão QT5 para windows agora :):
https://github.com/CelestiaProject/Celestia
Eu tenho compilado para o Ubuntu agora e funciona fora da caixa. Discutirei com eles como devolver minhas alterações e também verei como fazer um pacote binário .deb.
Isso é algo a ser considerado novamente ou devo apenas me concentrar em fazer o suporte Linux funcionar para eles e tê-lo apenas hospedado do lado deles?
Oi,
aqui vem minha instrução passo a passo para criar um pacote celestia para o Debian 9.
Feliz construção :-)
apt-get install git build-essential autoconf debhelper freeglut3-dev liblua5.1-dev libgnomeui-dev libgtkglext1-dev libtheora-dev chrpath libjpeg-dev
git clone https://github.com/CelestiaProject/Celestia.git
cd celestia
autoreconf -iv
./configure --with-gnome --enable-cairo --enable-theora --with-lua --disable-warnings --prefix = / usr
make -j2
exportar MKDIR_P = 'mkdir -p'
checkinstall -D --pkgversion 1.6.1 make install-strip
mkdir debian
toque debian / control
dpkg-shlibdeps / usr / bin / celestia
cat debian / substvars
dpkg-deb -R celestia_1.6.1-1_amd64.deb.
[Desktop Entry]
Codificação = UTF-8
Versão = 1.6.1
Type = Application
Exec = celestia -c /usr/share/celestia/celestia.cfg
Ícone = celestia
X-GNOME-DocPath =
Terminal = falso
Nome = Celestia
Comentário = Simulador Espacial
StartupNotify = true
Categorias = Astronomia; Ciência; Aplicação; Educação;
dpkg-deb --build. ../celestia_1.6.1-1_amd64.deb
Na segunda-feira, 4 de dezembro de 2017 às 06:26:59 +0000, m23project escreveu:
aqui vem minha instrução passo a passo para criar um pacote celestia para o Debian 9.
NÃO é assim que os pacotes Debian apropriados devem ser construídos. Isso nunca vai
ser aceito no Debian, e acho que você está prestando um péssimo serviço aos outros ao
apresentar essas instruções.
Por favor, veja https://wiki.debian.org/Packaging/Intro e / ou os links
postado por @dzraf.
-
Met vriendelijke groet / com os melhores cumprimentos,
Guus Sliepen [email protected]
Oi,
não era minha intenção construir um pacote valioso para ser incluído no Debian.
É apenas um passo a passo para pessoas que desejam criar um pacote por conta própria.
Cu Hauke
Oi! Atualmente estou trabalhando em um pacote para a distro baseada em debian HuayraLinux . Quando eu tiver um pacote mais utilizável (usando o frontend Qt5) (e a pasta debian/
que o recria), irei atualizá-lo.
Eu vi que versões anteriores do celestia foram divididas em vários pacotes no debian (principalmente para resons legais). Alguém pode me dar algum apoio sobre o que vai acontecer? Não tenho experiência em questões legais, mas se eu puder construir um pacote utilizável, acho que pode ser realmente útil para a redistribuição de Celestia.
PS: Continue com o bom trabalho! Celestia é um software maravilhoso!
EDIT: Eu tenho um pacote de trabalho rápido e sujo que usa o pacote WorkInProgress debian
Eu apreciaria muito se vocês fornecerem imagens instantâneas ou flatpack.
fornecemos * .deb e * .appimage por meio de https://build.opensuse.org/package/show/home : munix9: unstable / celestia
Oi,
Eu sou da equipe Debian Astro .
Uma vez que os arquivos Debian já parecem bons: você consideraria manter o pacote diretamente dentro do Debian? Isso permitiria que as pessoas instalassem o Celestia sem nenhum esforço adicional da maneira padrão.
Atenciosamente
Ole
Oi olé,
Esse era realmente o meu plano, mas quando o 1.7 for lançado. Para uma próxima versão 1.6.2, ainda temos o antigo problema com licenças para algumas texturas. E para sistemas semelhantes ao Unix, 1.6.x fornece interfaces glut e gtk2 apenas e temo que o Debian irá abandoná-lo (gtk2) mais cedo ou mais tarde.
Comentários muito úteis
Oi,
aqui vem minha instrução passo a passo para criar um pacote celestia para o Debian 9.
Feliz construção :-)
Instale dependências de compilação
apt-get install git build-essential autoconf debhelper freeglut3-dev liblua5.1-dev libgnomeui-dev libgtkglext1-dev libtheora-dev chrpath libjpeg-dev
Busque a fonte
git clone https://github.com/CelestiaProject/Celestia.git
Configure-o
cd celestia
autoreconf -iv
./configure --with-gnome --enable-cairo --enable-theora --with-lua --disable-warnings --prefix = / usr
Compilar
make -j2
Solução alternativa para erro
exportar MKDIR_P = 'mkdir -p'
Construir pacote Debian
checkinstall -D --pkgversion 1.6.1 make install-strip
Obtenha dependências de pacote
mkdir debian
toque debian / control
dpkg-shlibdeps / usr / bin / celestia
cat debian / substvars
Extrair pacote
dpkg-deb -R celestia_1.6.1-1_amd64.deb.
Adicione dependências a DEBIAN / control (adicione uma nova linha com "Depends:")
Alterar o arquivo de entrada do menu: usr / share / applications / celestia.desktop
[Desktop Entry]
Codificação = UTF-8
Versão = 1.6.1
Type = Application
Exec = celestia -c /usr/share/celestia/celestia.cfg
Ícone = celestia
X-GNOME-DocPath =
Terminal = falso
Nome = Celestia
Comentário = Simulador Espacial
StartupNotify = true
Categorias = Astronomia; Ciência; Aplicação; Educação;
Construir pacote alterado
dpkg-deb --build. ../celestia_1.6.1-1_amd64.deb