Pense nisso como um grande rio, com as pessoas que escrevem o software como a fonte do rio. Eles seriam a montante, a jusante seria sua distribuição, e no final do rio seria o usuário. O Ubuntu está no meio do rio.
O Ubuntu tem um desenvolvedor especial, o Debian, do qual o Ubuntu deriva. Então, eles são o upstream do Ubuntu para muitos pacotes, embora para alguns pacotes, como o kernel, pacotes do Ubuntu diretamente do projeto upstream, embora para a maioria dos pacotes o Debian seja o upstream para o Ubuntu, e o projeto que está empacotado seja upstream para o Debian .
Downstreams do Ubuntu seriam distribuições derivadas do Ubuntu, como o Linux Mint.
Exemplos de uso deste termo dependem do contexto. Então, por exemplo, se você tem um bug com o Firefox que o Ubuntu não introduziu, então você pode ouvir o termo "Certifique-se de que você está relatando esse bug upstream". A pessoa significa reportar o bug diretamente para o Firefox neste caso.
No caso do Ubuntu, obter o feedback correto dos usuários para os desenvolvedores do upstream é uma coisa importante que fazemos. Aqui estão alguns links do que fazemos:
- Upstream informações para desenvolvedores de aplicativos. Eu mantenho esse namespace como uma landing page para desenvolvedores de aplicativos upstream que querem entender como trabalhar com o Ubuntu.
- Relatando bugs upstream , veja o relatório .
- Garantindo que os patches dos usuários recebam o backup para que eles possam ser integrados. Lembre-se de que cada patch realizado em uma distro tem um custo de engenharia E melhorar o software para todos é uma meta.
- Nosso trabalho com o Debian.
Para responder melhor à sua pergunta, aqui estão alguns exemplos de como alguém diria para você falar com um desenvolvedor:
- "Eu quero fazer um aplicativo multimídia para o Ubuntu" - Você usaria o framework gstreamer upstream.
- "Eu quero que meu aplicativo converse com outros aplicativos pela internet" - Você usaria a estrutura de telepatia upstream.
- "Eu quero adicionar um recurso ao Firefox." - Você iria falar diretamente com o Firefox e fazer tudo o que funciona upstream.
- "Eu quero adicionar um recurso específico do Ubuntu ao Firefox" - Você falaria com o Ubuntu já que é provável que o desenvolvedor não queira ou não se preocupe com o recurso. Um mantenedor o informará.
- Da mesma forma, se você relatasse um bug para um aplicativo upstream (como o Firefox) causado por algo no Ubuntu, não no Firefox, eles indicariam o bug do downstream. (obrigado tj111 )